Project1

标题: 战斗结束 状态恢复 [打印本页]

作者: 黑米馒头    时间: 2022-5-9 15:01
标题: 战斗结束 状态恢复
如何让ID大于50的角色,战斗结束气血魔法回复最大值

我这样写没用

if $game_actors.id > 50
  actor.hp = actor.maxhp
  actor.sp = actor.maxsp
end


作者: 白鬼    时间: 2022-5-9 17:54
本帖最后由 白鬼 于 2022-5-9 18:00 编辑

试一试
  1. for i in 0...$game_party.actors.size
  2.   if $game_party.actors[i].id > 50
  3.     $game_party.actors[i].hp = $game_party.actors[i].maxhp
  4.     $game_party.actors[i].sp = $game_party.actors[i].maxsp
  5.   end
  6. end
复制代码


如果是默认战斗系统
放在
  # ● 画面更新 (结束战斗回合)
  #--------------------------------------------------------------------------
  def update_phase5
里面
作者: 黑米馒头    时间: 2022-5-9 20:52
白鬼 发表于 2022-5-9 17:54
试一试

完美解决!
作者: guoxiaomi    时间: 2022-5-10 00:19
你这样写当然没用,$game_actors保存的是所有游戏中存在的角色,是对ruby数组的封装,它只有一个方法就是:[]。Game_Actor 的实例才有 id 方法。$game_party.actors是一个数组,保存了队伍里存在的角色
  1. $game_party.actors.each do |actor|
  2.   if actor.id > 50
  3.     actor.hp = actor.maxhp
  4.     actor.sp = actor.maxsp
  5.   end
  6. end
复制代码





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