Project1

标题: 指定防具每回合回复HP [打印本页]

作者: fjm    时间: 2016-10-16 20:43
标题: 指定防具每回合回复HP
装备特定防具,战斗时每回合恢复MP2点,不是百分比回复,该怎么做呢,知道的告诉下,谢谢
作者: 御曹司    时间: 2016-10-16 21:53
如果你的能作战的角色不多的话、可以在敌群事件里面分支判定
作者: fjm    时间: 2016-10-16 22:15
御曹司 发表于 2016-10-16 21:53
如果你的能作战的角色不多的话、可以在敌群事件里面分支判定


不懂,下面是XP的脚本,用到VA里的话,哪里要修改下
RUBY 代码复制
  1. class Game_Battler
  2.   alias rsa_cmcc20140904 remove_states_auto
  3.   def remove_states_auto
  4.     if self.is_a?(Game_Actor)
  5.       self.hp += 25 if [27].include?(self.armor4_id)
  6.       self.sp += 15 if [27].include?(self.armor4_id)
  7.     end
  8.     rsa_cmcc20140904
  9.   end
  10. end

作者: RaidenInfinity    时间: 2016-10-16 22:30
本帖最后由 RaidenInfinity 于 2016-10-16 22:32 编辑
  1. class Game_Battler < Game_BattlerBase
  2.   def regenerate_hp
  3.     damage = -(mhp * hrg + extra_hp).to_i
  4.     perform_map_damage_effect if $game_party.in_battle && damage > 0
  5.     @result.hp_damage = [damage, max_slip_damage].min
  6.     self.hp -= @result.hp_damage
  7.   end

  8.   def regenerate_mp
  9.     @result.mp_damage = -(mmp * mrg + extra_mp).to_i
  10.     self.mp -= @result.mp_damage
  11.   end
  12.   
  13.   def extra_hp
  14.       return 0 if !$game_party.in_battle || !self.actor?
  15.       return HP量 if self.equips.include?($data_armors[防具ID])
  16.       return 0
  17.   end
  18.   
  19.   def extra_mp
  20.       return 0 if !$game_party.in_battle || !self.actor?
  21.       return MP量 if self.equips.include?($data_armors[防具ID])
  22.       return 0
  23.     end
  24. end
复制代码


使用此插件脚本,设置量和防具ID。
作者: fjm    时间: 2016-10-16 22:54
RaidenInfinity 发表于 2016-10-16 22:30
使用此插件脚本,设置量和防具ID。

非常感谢,可以用了




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