Project1

标题: 请问如何转化属性 [打印本页]

作者: irothala    时间: 2011-6-18 20:51
标题: 请问如何转化属性
本帖最后由 irothala 于 2011-6-18 23:21 编辑

就是说比如我想设定主角每5点敏捷增加一点攻击力,该把语句插在哪里?Game_Actor里似乎没地方插dsu_plus_rewardpost_czw
作者: wbsy8241    时间: 2011-6-18 21:27
本帖最后由 wbsy8241 于 2011-6-18 21:29 编辑

Game_Actor

225  #--------------------------------------------------------------------------
226  # ● 获取基本攻击力
227  #--------------------------------------------------------------------------
228  def base_atk
229    n = actor.parameters[2, @level]
230    for item in equips.compact do n += item.atk end
231    return n + agi / 5
232  end

作者: irothala    时间: 2011-6-18 22:03
本帖最后由 irothala 于 2011-6-18 22:17 编辑

晕,这样可以啊
还以为这么插 当装备或状态变化敏捷时不变化攻击呢 看来是我多虑了
多谢了

不过希望能再请教一个问题
我想让主角有个被动技能:提高10%HP
如果直接用同样的方法显然会循环多次计算
求解

作者: 冰舞蝶恋    时间: 2011-6-18 22:27
irothala 发表于 2011-6-18 22:03
晕,这样可以啊
还以为这么插 当装备或状态变化敏捷时不变化攻击呢 看来是我多虑了
多谢了

站上有县城的KGC的被动技能脚本,你搜索下
作者: wbsy8241    时间: 2011-6-18 22:55
irothala 发表于 2011-6-18 22:03
晕,这样可以啊
还以为这么插 当装备或状态变化敏捷时不变化攻击呢 看来是我多虑了
多谢了

角色只有1个,被动技能不需要显示的情况:

Game_Actor

213  #--------------------------------------------------------------------------
214  # ● 获取基本体力最大值
215  #--------------------------------------------------------------------------
216  def base_maxhp
217    return actor.parameters[0, @level]  * 11 / 10
218  end

不要用到 maxhp    这个方法的缺点是额外增加的体力不会多10%

另一方法是
在Game_Actor 插入 Game_Battler 里的一段脚本并改变为如下:
Game_Battler:140  #--------------------------------------------------------------------------
Game_Battler:141  # ● 获取 最大体力值
Game_Battler:142  #--------------------------------------------------------------------------
Game_Battler:143  def maxhp
Game_Battler:144    return [[base_maxhp + @maxhp_plus, 1].max * 11 / 10, maxhp_limit].min
Game_Battler:145  end
作者: irothala    时间: 2011-6-18 23:03
谢谢了 我也想到了用上面一种方法 就这么写了

反正游戏里没有设计额外增加HP的物品和技能




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