Project1

标题: 持续伤害怎么和变量相关? [打印本页]

作者: wan5337088    时间: 2017-10-25 16:15
标题: 持续伤害怎么和变量相关?
比如体力再生,每回合恢复变量的1/2
或者毒状态,每回合失去变量1/2的体力。

作者: 1892389717    时间: 2017-10-25 18:07
本帖最后由 1892389717 于 2017-10-25 18:13 编辑

战斗即时事件应用。
如图,可以在战斗即时事件中将触发条件改为并行处理,随后利用变量的反向导出(改脚本)来进行回血。

如果战斗之外,那就更简单了,在“恢复HP”里面自动关联变量即可。




作者: wan5337088    时间: 2017-10-25 20:24
1892389717 发表于 2017-10-25 18:07
战斗即时事件应用。
如图,可以在战斗即时事件中将触发条件改为并行处理,随后利用变量的反向导出(改脚本 ...

战斗之外,怎么关联变量啊?
作者: 1892389717    时间: 2017-10-25 21:11
这样就可以了。




作者: 300英雄    时间: 2017-10-28 15:08
我告诉你一个很完美的办法
Game_Battler中找到HP自动回复
damage = -(mhp * hrg).to_i下
perform_map_damage_effect if $game_party.in_battle && damage > 0上的地方
比如你要2号状态的扣血是变量1的值/2
那么脚本结果就是
  1. def regenerate_hp
  2.     damage = -(mhp * hrg).to_i
  3. if self.state?(2)
  4. damege += $game_variables[1] / 2 #最好变量的值为整数,万一给队友会出现小数点,整数法:$game_variables[1]  = $game_variables[1] .to_i
  5. end
  6.     perform_map_damage_effect if $game_party.in_battle && damage > 0
  7.     @result.hp_damage = [damage, max_slip_damage].min
  8.     self.hp -= @result.hp_damage
  9.   end
复制代码

作者: 300英雄    时间: 2017-10-28 15:12
我讲解一下,如果 目标持有2号状态,持续伤害+变量1值的一半
damage是HP里面的相关扣除变量。
下面有个MP相关的
def regenerate_mp
    @result.mp_damage = -(mmp * mrg).to_i
插入相关判定与效果
    self.mp -= @result.mp_damage
  end
@result.mp_damage是MP的相关扣除变量
以上内容均在Game_Battler中找到745行HP和760行MP
他的本质就是self.hp -= damage self.mp [email protected]_damage这两行是效果,其他都是一些判定或者其他处理




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