Project1

标题: 战斗HP.SP 状态怎么改位置?求大家 [打印本页]

作者: linfeng2014n    时间: 2014-8-21 12:05
标题: 战斗HP.SP 状态怎么改位置?求大家

不想要这样的显示
想改一下 求大家帮忙

把血什么的放在下面不爱事的地方

求脚本
作者: 白鬼    时间: 2014-8-21 12:34
本帖最后由 白鬼 于 2014-8-21 13:02 编辑

这个HP SP是定义在
Window_BattleStatus
脚本中的39行起
      draw_actor_name(actor, actor_x, 0)  #描绘角色姓名(该序列的角色ID,根据角色序列定义的X坐标,y坐标)
      draw_actor_hp(actor, actor_x, 32, 120)  #描绘角色HP(该序列的角色ID,根据角色序列定义的X坐标,y坐标)
      draw_actor_sp(actor, actor_x, 64, 120)  #描绘角色SP(该序列的角色ID,根据角色序列定义的X坐标,y坐标)
如果要改位置,就是修改x和y坐标来进行调整
X坐标是对应角色位置的,基本不用动
如果想让HP,SP向下移动,那么就要调整y坐标
你可以把Y坐标加大试试
建议每次增加20左右,然后测试看效果


需要注意的是,因为HP,SP是定义在Window_BattleStatus 窗口中的
所以不要超出 Window_BattleStatus窗口的大小(宽640,高160)
否则就看不见了
你的图片效果不行,目测超出了XP的窗口大小(宽640,高480)

如果你不想看见Window_BattleStatus窗口的框框,只想保留内容
可以在  Scene_Battle 1  脚本中,第40行下面加入:
@status_window.back_opacity = 0

当然,这意味着你要修改Window_BattleStatus窗口的大小
还要重新调整上述的坐标

总之,试试效果再做微调吧!
===============================
===============================
字体调小一点我测试的效果如下:


作者: kuerlulu    时间: 2014-8-21 12:36
Window_BattleStatus中refresh部分相信初中英语水平的都知道怎么改
作者: linfeng2014n    时间: 2014-8-21 12:41
白鬼 发表于 2014-8-21 12:34
这个HP SP是定义在
Window_BattleStatus
脚本中的39行起

光标框怎么让他消失
作者: linfeng2014n    时间: 2014-8-21 12:48
kuerlulu 发表于 2014-8-21 12:36
Window_BattleStatus中refresh部分相信初中英语水平的都知道怎么改

小学没毕业
作者: linfeng2014n    时间: 2014-8-21 12:50
#==============================================================================
# ■ Window_BattleStatus
#------------------------------------------------------------------------------
#  显示战斗画面同伴状态的窗口。
#==============================================================================

class Window_BattleStatus < Window_Base
  #--------------------------------------------------------------------------
  # ● 初始化对像
  #--------------------------------------------------------------------------
  def initialize
    super(0, 320, 640, 160)
    self.contents = Bitmap.new(width - 32, height - 32)
    @level_up_flags = [false, false, false, false]
    refresh
  end
  #--------------------------------------------------------------------------
  # ● 释放
  #--------------------------------------------------------------------------
  def dispose
    super
  end
  #--------------------------------------------------------------------------
  # ● 设置升级标志
  #     actor_index : 角色索引
  #--------------------------------------------------------------------------
  def level_up(actor_index)
    @level_up_flags[actor_index] = true
  end
  #--------------------------------------------------------------------------
  # ● 刷新
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    @item_max = $game_party.actors.size
    for i in 0...$game_party.actors.size
      actor = $game_party.actors[i]
      actor_x = i * 160 + 4
      draw_actor_name(actor, actor_x, 0)
      draw_actor_hp(actor, actor_x, 32, 120)
      draw_actor_sp(actor, actor_x, 64, 120)
      if @level_up_flags[i]
        self.contents.font.color = normal_color
        self.contents.draw_text(actor_x, 96, 120, 32, "LEVEL UP!")
      else
        draw_actor_state(actor, actor_x, 96)
      end
    end
  end
  #--------------------------------------------------------------------------
  # ● 刷新画面
  #--------------------------------------------------------------------------
  def update
    super
    # 主界面的不透明度下降
    if $game_temp.battle_main_phase
      self.contents_opacity -= 4 if self.contents_opacity > 191
    else
      self.contents_opacity += 4 if self.contents_opacity < 255
    end
  end
end
改了没变化
作者: linfeng2014n    时间: 2014-8-21 12:52
#--------------------------------------------------------------------------
  # ● 刷新
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    @item_max = $game_party.actors.size
    for i in 0...$game_party.actors.size
      actor = $game_party.actors[i]
      actor_x = i * 160 + 4
      draw_actor_name(actor, actor_x, 0)《=====改了120 没变化
      draw_actor_hp(actor, actor_x, 32, 120)
      draw_actor_sp(actor, actor_x, 64, 120)
      if @level_up_flags[i]
        self.contents.font.color = normal_color
        self.contents.draw_text(actor_x, 96, 120, 32, "LEVEL UP!")
      else
        draw_actor_state(actor, actor_x, 96)
      end
    end
  end

作者: linfeng2014n    时间: 2014-8-21 12:53
想把人物提高向上移动 血和SP 向下移动位置
作者: linfeng2014n    时间: 2014-8-21 12:54
白鬼 发表于 2014-8-21 12:34
这个HP SP是定义在
Window_BattleStatus
脚本中的39行起

人物向上移动位置 HP 和SP 向下移动位置
作者: 白鬼    时间: 2014-8-21 13:13
你试一下:Window_BattleStatus
39-46行完全替换如下:
      draw_actor_name(actor, actor_x, 52)
      draw_actor_hp(actor, actor_x, 70, 120)
      draw_actor_sp(actor, actor_x, 88, 120)
      if @level_up_flags[i]
        self.contents.font.color = normal_color
        self.contents.draw_text(actor_x, 104, 120, 32, "LEVEL UP!")
      else
        draw_actor_state(actor, actor_x, 104)
作者: linfeng2014n    时间: 2014-8-21 14:26
现在是这样的 还差点


要这样的效果 就差这一步了 求
作者: linfeng2014n    时间: 2014-8-21 14:31
白鬼 发表于 2014-8-21 13:13
你试一下:Window_BattleStatus
39-46行完全替换如下:
      draw_actor_name(actor, actor_x, 52)

差一步 框向下 到血的位置 我发图了 其他的好了 谢谢你
作者: linfeng2014n    时间: 2014-8-21 14:42
kuerlulu 发表于 2014-8-21 12:36
Window_BattleStatus中refresh部分相信初中英语水平的都知道怎么改

那个框真么移动下去 啊 我有图请进 帮个忙在那里改?
作者: linfeng2014n    时间: 2014-8-21 14:47
改成这样
作者: 白鬼    时间: 2014-8-21 20:07
linfeng2014n 发表于 2014-8-21 14:47
改成这样

把  Window_BattleStatus  窗口变宅的方法:
    super(0, 320, 640, 160)
这一行,最后一个数字160减少X,同时320加上X
X是数字,你可以自己改一改试试
需要说明的是,因为窗口改小了,首先 draw_actor_name 的默认位置就超出了窗口范围。
你可以试试看效果再说。





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