Project1

标题: 轩辕剑菜单怎么在角色旁边加血槽 [打印本页]

作者: 200878242    时间: 2008-11-19 04:16
标题: 轩辕剑菜单怎么在角色旁边加血槽
轩辕剑菜单怎么在角色旁边加血槽 [LINE]1,#dddddd[/LINE]此贴于 2008-11-21 11:25:37 被版主darkten提醒,请楼主看到后对本贴做出回应。 [LINE]1,#dddddd[/LINE]版务信息:版主帮忙结贴~
作者: 3nξhα0_lim    时间: 2008-11-19 04:35
提示: 作者被禁止或删除 内容自动屏蔽
作者: 3nξhα0_lim    时间: 2008-11-19 04:44
提示: 作者被禁止或删除 内容自动屏蔽
作者: 200878242    时间: 2008-11-19 05:02
下面是范例
http://rpg.blue/web/htm/news567.htm
下面是“示例图片”把在圈中的HP.SP加上血槽,

作者: clap_pl    时间: 2008-11-19 10:19
从脚本编辑器的左边那列里找到这一项 Window_MenuStatus New!
找到下面这段话 把彩色的部分删掉
#==============================================================================
# ■ Window_MenuStatus
#------------------------------------------------------------------------------
#  显示菜单画面和同伴状态的窗口。
#==============================================================================

class Window_MenuStatus < Window_Selectable
  #--------------------------------------------------------------------------
  # ● 初始化目标
  #--------------------------------------------------------------------------
  def initialize
    super(0, 0, 160, 352)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
    self.active = false
    self.index = -2
  end
  #--------------------------------------------------------------------------
  # ● 刷新
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    @item_max = $game_party.actors.size
    for i in 0...$game_party.actors.size
      x = 64
      y = i * 80
      actor = $game_party.actors
      bitmap = Bitmap.new("Graphics/System/menu/headp/" + actor.name + ".png")
      src_rect = Rect.new(0, 0, 42, 66)
      self.contents.blt(x - 64, y + 10, bitmap, src_rect)
      self.draw_actor_state(actor, x - 60, y + 34 + 17)
      # 我全写成散的!                  =。=
      self.contents.font.color = normal_color
      self.contents.font.size = 20
      self.contents.draw_text(x - 30, y, 120, 32, actor.name)
      self.contents.font.color = system_color
      self.contents.font.color = normal_color
      self.contents.font.size = 16
      self.contents.font.color = system_color      
      self.contents.draw_text(x - 30, y + 17 + 17, 32, 32, $data_system.words.hp)
      self.contents.font.color = actor.hp == 0 ? knockout_color :
        actor.hp <= actor.maxhp / 4 ? crisis_color : normal_color
      self.contents.draw_text(x - 6, y + 17 + 17, 32, 32, actor.hp.to_s, 2)
      self.contents.font.color = normal_color
      self.contents.draw_text(x - 26 + 48, y + 17 + 17, 12, 32, "/", 1)
      self.contents.draw_text(x - 24 + 56, y + 17 + 17, 32, 32, actor.maxhp.to_s)
      self.contents.font.color = system_color
      self.contents.draw_text(x - 30, y + 34 +17, 32, 32, $data_system.words.sp)
      self.contents.font.color = actor.sp == 0 ? knockout_color :
        actor.sp <= actor.maxsp / 4 ? crisis_color : normal_color
      self.contents.draw_text(x - 6, y + 34 + 17, 32, 32, actor.sp.to_s, 2)
      self.contents.font.color = normal_color
      self.contents.draw_text(x - 26 + 48, y + 34 + 17, 12, 32, "/", 1)
      self.contents.draw_text(x - 24 + 56, y + 34 + 17, 32, 32, actor.maxsp.to_s)

      end
  end


########################################################################

注意 还 没完
删掉彩色部分后
把这两句放在那里就可以了

draw_actor_hp(actor,x-20,y+17+17,80)
draw_actor_sp(actor,x-20,y+17+17+17,80)



[LINE]1,#dddddd[/LINE]系统信息:本贴由本区版主认可为正确答案,66RPG感谢您的热情解答~
作者: 200878242    时间: 2008-11-20 02:57
怎么只显示满的“体”和"气"啊,可以在显示剩余的吗?如750/900
作者: clap_pl    时间: 2008-11-20 04:29
本来显示的就是剩余的HP和SP
因为actor_draw_hp里面有这么一段
if width - 32 >= 108
flag = true
就是说宽度减去32>=108时 才显示上限
你的状态窗口不够宽
所以就没有显示上限

作者: clap_pl    时间: 2008-11-20 04:41
好吧 因为你显示状态的窗口不够宽 所以如果要显示上限 可能需要改动
actor_draw_hp
这个方法
因为其他的地方也有调用这个方法
如果改了 很可能别的地方也会出现改动

要改的话 把window_base里面的
def draw_actor_hp
里面的
self.contents.draw_text(sp_x, y, 48, 32, actor.hp.to_s, 2)
    # 描绘 MaxHP
    if flag
      self.contents.font.color = normal_color
      self.contents.draw_text(hp_x + 48, y, 12, 32, "/", 1)
      self.contents.draw_text(hp_x + 60, y, 48, 32, actor.maxhp.to_s)
    end
这段删掉
用 self.contents.draw_text(x, y, width, 32, actor.hp.to_s+"/"+actor.maxhp.to_s, 2)
self.contents.font.color = normal_color
来代替

SP的也类似如此
作者: 200878242    时间: 2008-11-20 06:13
菜单的状态剩余HP.SP显示两个455 455/900,要怎么修改
作者: clap_pl    时间: 2008-11-20 12:40
没删干净
self.contents.draw_text(x, y, width, 32, actor.hp.to_s)
这种语句
作者: 200878242    时间: 2009-6-12 08:00
什么意思




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