查看: 2551|回复: 6

[已经解决] 关于状态扣HP的问题

[复制链接]
梦石
0
星屑
884
在线时间
40 小时
注册时间
2016-9-12
回帖
10
发表于 2017-10-24 12:52:14 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
如何让角色陷入某种状态时固定扣HP500点
梦石
0
星屑
39236
在线时间
11155 小时
注册时间
2009-3-15
回帖
4768
发表于 2017-10-24 13:27:36 | 显示全部楼层
用公共事件..
如下图..
500.png

回复

使用道具 举报

梦石
0
星屑
884
在线时间
40 小时
注册时间
2016-9-12
回帖
10
 楼主| 发表于 2017-10-24 14:09:44 | 显示全部楼层
我说的是在战斗中 每回合固定扣HP500点
回复

使用道具 举报

梦石
0
星屑
39236
在线时间
11155 小时
注册时间
2009-3-15
回帖
4768
发表于 2017-10-24 14:19:53 | 显示全部楼层
本帖最后由 soulsaga 于 2017-10-24 16:55 编辑
topbluegun 发表于 2017-10-24 14:09
我说的是在战斗中 每回合固定扣HP500点

[pre lang="ruby"]class Game_Battler < Game_BattlerBase
  def regenerate_hp
    damage = 500
    perform_map_damage_effect if $game_party.in_battle && damage > 0
    @result.hp_damage = [damage, max_slip_damage].min
    self.hp -= @result.hp_damage
end
  end[/pre]

插入到MAIN上面..每回合自动扣百分比血变成扣500HP
未测试..不知可用否..
回复

使用道具 举报

梦石
0
星屑
884
在线时间
40 小时
注册时间
2016-9-12
回帖
10
 楼主| 发表于 2017-10-24 16:27:54 | 显示全部楼层
不行,脚本第四行出错
而且,我要制作的这种状态不只一种,减HP的程度也不一样
回复

使用道具 举报

梦石
0
星屑
39236
在线时间
11155 小时
注册时间
2009-3-15
回帖
4768
发表于 2017-10-24 16:46:34 | 显示全部楼层
本帖最后由 soulsaga 于 2017-10-24 16:55 编辑
topbluegun 发表于 2017-10-24 16:27
不行,脚本第四行出错
而且,我要制作的这种状态不只一种,减HP的程度也不一样 ...
那想不到方法了..

回复

使用道具 举报

梦石
0
星屑
884
在线时间
40 小时
注册时间
2016-9-12
回帖
10
 楼主| 发表于 2017-10-24 17:27:40 | 显示全部楼层
问题已解决 在Game_Battler类第750行左右的def regenerate_hp处修改。
例子:
#格式[[状态ID,扣HP点数]]
def regenerate_hp
     array_slip_damage_states = [[2, 500], [40, 2000], [46, 1000]]
    damage = 0
    for i in array_slip_damage_states
      if self.state?(i[0])
        damage += i[1]
      end
    end
    perform_map_damage_effect if $game_party.in_battle && damage > 0
    @result.hp_damage = [damage, max_slip_damage].min
    self.hp -= @result.hp_damage
  end
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部