赞 | 41 |
VIP | 0 |
好人卡 | 0 |
积分 | 101 |
经验 | 0 |
最后登录 | 2024-4-5 |
在线时间 | 589 小时 |
Lv4.逐梦者
- 梦石
- 3
- 星屑
- 7135
- 在线时间
- 589 小时
- 注册时间
- 2019-9-15
- 帖子
- 113
|
本帖最后由 Cupidk爱呗茶 于 2020-6-20 02:25 编辑
粗略看了一下 感觉问题出在
- def stored_dmg
- 0 unless can_store_damage?
- val = @stored_dmg
- @stored_dmg = 0 #执行完一次该方法后储存伤害清零
- remove_storedmg_state # 清除状态时还会在判断一次伤害清零
- val
- end
复制代码
然后主楼贴出的第二个脚本def make_damage_value(user, item) 第16行中在判断技能ID在获取伤害之前 就已经执行过一次公式方法了导致这个伤害被清零
解决思路大概就是 直接吧797号技能的伤害判定放到方法最前端执行 来试试看行不行
- #--------------------------------------------------------------------------
- # ● 計算傷害
- #--------------------------------------------------------------------------
- def make_damage_value(user, item)
- if item.is_a?(RPG::Skill) and item.id == 797
- value = item.damage.eval(user, self, $game_variables)
- return @result.make_damage(value.to_i, item)
- end
- value = 2
- if user.is_a?(Game_Actor)
- value *= user.level
- else
- value *= 5
- end
- value += 10
- value *= user.atk if item.physical?
- value *= user.mat if item.magical?
- value *= item.damage.eval(user, self, $game_variables)
- value /= 250
- value /= self.def if item.physical?
- value /= self.mdf if item.magical?
- value += 2
- value *= item_element_rate(user, item)
- value *= pdr if item.physical?
- value *= mdr if item.magical?
- value *= rec if item.damage.recover?
- value = apply_critical(value) if @result.critical
- value = apply_variance(value, item.damage.variance)
- value = apply_guard(value)
- @result.make_damage(value.to_i, item)
- end
复制代码 |
评分
-
查看全部评分
|