Project1

标题: 【新手求教】套用战斗画面美化脚本出错 [打印本页]

作者: 莫芦    时间: 2013-8-8 15:11
标题: 【新手求教】套用战斗画面美化脚本出错
本帖最后由 莫芦 于 2013-8-8 15:10 编辑

我用的是“战斗底部我方状态框加上头像”里面的脚本,但一运行则显示出错。出错的是标蓝色的那条,请问大神应该怎样解决?

#==============================================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息
#==============================================================================
#==============================================================================
# ■ Window_BattleStatus
#------------------------------------------------------------------------------
#  显示战斗画面同伴状态的窗口。
#==============================================================================
class Window_BattleStatus < Window_Selectable
  #--------------------------------------------------------------------------
  # ● 初始化对像
  #--------------------------------------------------------------------------
  def initialize
    super(0, 0, 416, 128)
    self.contents.font.size = 18
    refresh
    self.active = false
  end
  #--------------------------------------------------------------------------
  # ● 释放
  #--------------------------------------------------------------------------
  def dispose
    super
  end
  #--------------------------------------------------------------------------
  # ● 刷新
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    @item_max = $game_party.members.size
    for i in 0...@item_max
      draw_item(i)
    end
    draw_6Rface(@index) if @index >= 0
  end
  #--------------------------------------------------------------------------
  # ● 描绘项目
  #     index : 项目编号
  #--------------------------------------------------------------------------
  def draw_item(index)
    rect = item_rect(index)
    rect.x += 4
    rect.width -= 8
    self.contents.clear_rect(rect)
    self.contents.font.color = normal_color
    actor = $game_party.members[index]
    draw_actor_name(actor, 124, rect.y + 2)
    begin_x = self.contents.text_size(actor.name).width + 4
    draw_actor_state(actor, begin_x, rect.y, 24)
    draw_actor_hp(actor, 230, rect.y, 65)
    draw_actor_mp(actor, 310, rect.y, 65)
  end
  #--------------------------------------------------------------------------
  # ● 描绘人物头像
  #     index : 项目编号
  #--------------------------------------------------------------------------
  def draw_6Rface(index)
    rect = Rect.new(0, 0, 96, 96)
    self.contents.clear_rect(rect)
    actor = $game_party.members[index]
    draw_actor_face(actor, 0, 0, 96)
  end   
  #--------------------------------------------------------------------------
  # ● 设置光标的位置
  #     index : 新的光标位置
  #--------------------------------------------------------------------------
  def index=(index)
    @index = index
    update_cursor
    refresh
  end  
  #--------------------------------------------------------------------------
  # ● 获取项目描画矩形
  #     index : 项目编号
  #--------------------------------------------------------------------------
  def item_rect(index)
    rect = Rect.new(0, 0, 0, 0)
    rect.width = contents.width - 113
    rect.height = WLH
    rect.x = 113
    rect.y = index / @column_max * WLH
    return rect
  end   
  #--------------------------------------------------------------------------
  # ● 更新光标矩形
  #--------------------------------------------------------------------------
  def update_cursor
    if @index < 0                   # 光标位置不满 0 的情况下
      self.cursor_rect.empty        # 光标无效
    else                            # 光标位 0 以上的情况下
      row = @index / @column_max    # 获取当前的行
      if row < top_row              # 当前行被显示开头行前面的情况下
        self.top_row = row          # 从当前行向开头行滚动
      end
      if row > bottom_row           # 当前行被显示末尾行之后的情况下
        self.bottom_row = row       # 从当前行向末尾滚动
      end
      rect = item_rect(@index)      # 获取选择项的矩形
      rect.y -= self.oy             # 矩形滚动的位置加起来
      self.cursor_rect = rect       # 更新光标矩形
    end
  end
end
#==============================================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息
#==============================================================================
作者: 紫英晓狼1130    时间: 2013-8-8 15:47
定义字体的大小?!把contents删掉再试试,我认为没啥用…
作者: 莫芦    时间: 2013-8-8 16:04
不行啊,删了之后 def refresh
    self.contents.clear
    @item_max = $game_party.members.size
    for i in 0...@item_max
      draw_item(i)
    end
    draw_6Rface(@index) if @index >= 0
  end
这段也显示出错啊
作者: 1095884734    时间: 2013-8-8 21:20
移到描绘项目里面去试试……
作者: 芯☆淡茹水    时间: 2013-8-9 06:52
把 self. 删掉。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1