查看: 1126|回复: 3

如何写选择装备的固定光标?

  [复制链接]
头像被屏蔽
梦石
0
星屑
50
在线时间
0 小时
注册时间
2009-6-12
回帖
254
发表于 2008-12-27 01:23:28 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
梦石
0
星屑
7095
在线时间
1666 小时
注册时间
2008-10-29
回帖
6612

贵宾

发表于 2008-12-27 01:53:29 | 显示全部楼层
其实你的意思我还是没看得太明白,反正光标矩形和描绘的文字是2个部分
调整光标矩形的位置长宽就加个刷新的定义就行了
描绘的文字图标那些东西是在refresh里面

#==============================================================================
# ■ Window_EquipRight
#------------------------------------------------------------------------------
#  装备画面、显示角色现在装备的物品的窗口。
#==============================================================================

class Window_EquipRight < Window_Selectable
  #--------------------------------------------------------------------------
  # ● 初始化对像
  #     actor : 角色
  #--------------------------------------------------------------------------
  def initialize(actor)
    super(272, 64, 368, 192)
    self.contents = Bitmap.new(width - 32, height - 32)
    @actor = actor
    refresh
    self.index = 0
  end
  #--------------------------------------------------------------------------
  # ● 获取物品
  #--------------------------------------------------------------------------
  def item
    return @data[self.index]
  end
  #--------------------------------------------------------------------------
  # ● 刷新
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    @data = []
    @data.push($data_weapons[@actor.weapon_id])
    @data.push($data_armors[@actor.armor1_id])
    @data.push($data_armors[@actor.armor2_id])
    @data.push($data_armors[@actor.armor3_id])
    @data.push($data_armors[@actor.armor4_id])
    @item_max = @data.size
    self.contents.font.color = system_color
    self.contents.draw_text(4, 32 * 0, 92, 32, $data_system.words.weapon)
    self.contents.draw_text(4, 32 * 1, 92, 32, $data_system.words.armor1)
    self.contents.draw_text(4, 32 * 2, 92, 32, $data_system.words.armor2)
    self.contents.draw_text(4, 32 * 3, 92, 32, $data_system.words.armor3)
    self.contents.draw_text(5, 32 * 4, 92, 32, $data_system.words.armor4)
    draw_item_name(@data[0], 92, 32 * 0)
    draw_item_name(@data[1], 92, 32 * 1)
    draw_item_name(@data[2], 92, 32 * 2)
    draw_item_name(@data[3], 92, 32 * 3)
    draw_item_name(@data[4], 92, 32 * 4)
  end
  #--------------------------------------------------------------------------
  # ● 刷新帮助文本
  #--------------------------------------------------------------------------
  def update_help
    @help_window.set_text(self.item == nil ? "" : self.item.description)
  end
  #--------------------------------------------------------------------------
  # ● 刷新光标矩形
  #--------------------------------------------------------------------------
  def update_cursor_rect
    if @index < 0
      self.cursor_rect.empty
    else
      case @index
      when 0
        self.cursor_rect.set(24, 0, 104, 32)
      when 1
        self.cursor_rect.set(0, 32, 104, 32)
      when 2
        self.cursor_rect.set(36, 64, 90, 32)
      when 3
        self.cursor_rect.set(48, 96, 104, 32)
      when 4
        self.cursor_rect.set(12, 128, 104, 32)
      end
    end
  end
end

系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~











你知道得太多了

回复

使用道具 举报

头像被屏蔽
梦石
0
星屑
50
在线时间
0 小时
注册时间
2009-6-12
回帖
254
 楼主| 发表于 2008-12-27 02:39:43 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复

使用道具 举报

梦石
0
星屑
7095
在线时间
1666 小时
注册时间
2008-10-29
回帖
6612

贵宾

发表于 2008-12-27 19:48:40 | 显示全部楼层
以下引用倚天于2008-12-26 18:39:43的发言:

在穿装备和卸装备时出现问题了,上装备时位置没有错误,卸装备有的装备不能卸.

……这样的情况好像和刷新光标矩形没直接联系











你知道得太多了

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部