查看: 2052|回复: 3

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

[复制链接]
梦石
0
星屑
50
在线时间
39 小时
注册时间
2014-1-24
回帖
10
发表于 2014-7-15 10:46:23 | 显示全部楼层 |阅读模式

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

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

×
是酱的,我为了丰富游戏,做了好多异常状态(魅惑啊,致盲什么的)
但是,某晚上灵感来了!
状态:凋零,血量低于50%时每回合失去5%的体力,想到是想到了,然后……计算公式错误了
所以,怎么写啊QAQ
立于浮华之世
   奏响天籁之音

…あたしは天

梦石
0
星屑
2308
在线时间
4033 小时
注册时间
2010-10-4
回帖
10548

开拓者贵宾

发表于 2014-7-15 11:07:10 来自手机 | 显示全部楼层
本帖最后由 taroxd 于 2014-7-18 17:07 编辑

未测试

[pre lang="ruby" line="1"]
class Game_BattlerBase
  alias hrg_without_state hrg
  def hrg
    hrg_without_state - (state?(27) && hp_rate < 0.5 ? 0.05 : 0)
  end
end
   
[/pre]

评分

参与人数 1梦石 +1 收起 理由
VIPArcher + 1 风味更佳~

查看全部评分

回复

使用道具 举报

无限の剣制

梦石
0
星屑
10445
在线时间
5019 小时
注册时间
2013-2-28
回帖
4942

开拓者贵宾

发表于 2014-7-16 14:11:10 | 显示全部楼层
本帖最后由 VIPArcher 于 2014-7-18 17:03 编辑
  1. class Game_Battler < Game_BattlerBase
  2.   #--------------------------------------------------------------------------
  3.   # ● HP 自动恢复
  4.   #--------------------------------------------------------------------------
  5.   def regenerate_hp
  6.     if state?(状态ID)  && hp_rate < 0.5         #判断状态 状态ID为凋零的ID
  7.       newhrg = hrg - 0.05 #更改HP恢复
  8.     else
  9.       newhrg = hrg
  10.     end
  11.     damage = -(mhp * newhrg).to_i
  12.     perform_map_damage_effect if $game_party.in_battle && damage > 0
  13.     @result.hp_damage = [damage, max_slip_damage].min
  14.     self.hp -= @result.hp_damage
  15.   end
  16. end
复制代码
未详细测试

你用这个吧~[pre lang="ruby" line="1"]class Game_BattlerBase
  def hrg              # HP再生速度      Hp ReGeneration rate
    if state?(27)  && hp_rate < 0.5   #判断状态和HP比率 状态ID为凋零的ID
      xparam(7) - 0.05                  #更改HP恢复
    else
      xparam(7)
    end
  end
end
[/pre]

点评

使用alias,风味更佳233  发表于 2014-7-18 17:05
哦。  发表于 2014-7-18 16:32
直观个啥,第11行下面就没动过 还有 hp / mhp < 1 是什么情况,是 hp_rate < 0.5 吧  发表于 2014-7-18 16:26
如果这是一个状态,你还需要判定这个状态  发表于 2014-7-17 13:28
我觉得在这里改比较直观。233  发表于 2014-7-16 17:15

评分

参与人数 1梦石 +1 收起 理由
taroxd + 1 直接重定义hrg不就好了233

查看全部评分

回复

使用道具 举报

梦石
0
星屑
50
在线时间
39 小时
注册时间
2014-1-24
回帖
10
 楼主| 发表于 2014-7-18 16:23:07 | 显示全部楼层
啊,这几天没时间测试。。。。感谢大大们
ps:吐槽为什么全是2333.....
立于浮华之世
   奏响天籁之音
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部