赞 | 40 |
VIP | 559 |
好人卡 | 234 |
积分 | 47 |
经验 | 251834 |
最后登录 | 2024-12-30 |
在线时间 | 5241 小时 |
Lv3.寻梦者 (版主) 八宝粥的基叔
- 梦石
- 0
- 星屑
- 4714
- 在线时间
- 5241 小时
- 注册时间
- 2009-4-29
- 帖子
- 14318
|
本帖最后由 protosssonny 于 2011-11-7 20:43 编辑
在Game_Battler类下面找到def make_attack_damage_value(attacker),添加第8行即可:- #--------------------------------------------------------------------------
- # ● 计算普通攻击造成的伤害
- # attacker : 攻击者
- # 结果代入 @hp_damage。
- #--------------------------------------------------------------------------
- def make_attack_damage_value(attacker)
- damage = attacker.atk * 4 - self.def * 2 # 基本计算
- damage /= 3 if $game_party.item_number($data_items[35]) == 0 #添加本行
- damage = 0 if damage < 0 # 减少为 0
- damage *= elements_max_rate(attacker.element_set) # 修正属性
- damage /= 100
- if damage == 0 # 伤害为 0
- damage = rand(2) # 1/2 概率为伤害 1
- elsif damage > 0 # 伤害为正数
- @critical = (rand(100) < attacker.cri) # 判断会心一击
- @critical = false if prevent_critical # 防止会心一击?
- damage *= 3 if @critical # 会心一击修正
- end
- damage = apply_variance(damage, 20) # 分散
- damage = apply_guard(damage) # 防御修正
- @hp_damage = damage # HP 伤害
- end
复制代码 在35号弹药为0时,攻击力为原来的1/3。
公式什么的可以自己修改,就是damage=……就可以了。
这里的1/3只是我的举例!
|
|