赞 | 0 |
VIP | 0 |
好人卡 | 5 |
积分 | 1 |
经验 | 11941 |
最后登录 | 2018-9-22 |
在线时间 | 347 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 143
- 在线时间
- 347 小时
- 注册时间
- 2010-7-7
- 帖子
- 128
|
4楼
楼主 |
发表于 2012-9-27 15:11:59
|
只看该作者
yjl494356020 发表于 2012-9-27 14:20
应该不是抗性的关系,用技能打就会中该状态,换成攻击附加就中不了。。。 ...
真的不是抗性的问题,调到最低还是不行,换成技能就每次都中状态。。。就攻击附加不行。。。前几天还是好使的,是不是脚本冲突了?我是脚本小白,麻烦帮看下是不是这个有冲突。- #==============================================================================
- # ■ Game_Battler
- #------------------------------------------------------------------------------
- # 处理战斗者的类。Game_Actor 和 Game_Enemy 类的父类。
- #==============================================================================
- class Game_Battler < Game_BattlerBase
- #--------------------------------------------------------------------------
- # ● 应用技能/物品的效果
- #--------------------------------------------------------------------------
- def item_apply(user, item)
- @result.clear
- @result.used = item_test(user, item)
- @result.missed = (@result.used && rand >= item_hit(user, item))
- @result.evaded = ([email protected] && rand < item_eva(user, item))
- special_state(user, item) # 添加本行,调用自定义函数special_state
- if @result.hit?
- unless item.damage.none?
- @result.critical = (rand < item_cri(user, item))
- make_damage_value(user, item)
- execute_damage(user)
- end
- item.effects.each {|effect| item_effect_apply(user, item, effect) }
- item_user_effect(user, item)
- end
- end
- #--------------------------------------------------------------------------
- # ● 特技附加指定的状态效果(自定义函数)
- #--------------------------------------------------------------------------
- def special_state(user, item)
- return unless item.is_a?(RPG::Skill)
- case item.id
- when 157
- user.add_state(191) if rand(100) < 30
- when 158
- user.add_state(191) if rand(100) < 45
- when 159
- user.add_state(193) if rand(100) < 60
- when 190
- user.add_state(194) if rand(100) < 30
- when 191
- user.add_state(195) if rand(100) < 45
- when 192
- user.add_state(196) if rand(100) < 60
- when 206
- user.add_state(197) if rand(100) < 30
- when 207
- user.add_state(198) if rand(100) < 45
- when 208
- user.add_state(199) if rand(100) < 60
- when 266
- user.add_state(200) if rand(100) < 30
- when 267
- user.add_state(201) if rand(100) < 45
- when 268
- user.add_state(202) if rand(100) < 60
- when 278
- user.add_state(203) if rand(100) < 30
- when 279
- user.add_state(204) if rand(100) < 45
- when 280
- user.add_state(205) if rand(100) < 60
- when 291
- user.add_state(206) if rand(100) < 30
- when 292
- user.add_state(207) if rand(100) < 45
- when 293
- user.add_state(208) if rand(100) < 60
- when 304
- user.add_state(209) if rand(100) < 30
- when 305
- user.add_state(210) if rand(100) < 45
- when 306
- user.add_state(211) if rand(100) < 60
- when 334
- user.add_state(212) if rand(100) < 30
- when 335
- user.add_state(213) if rand(100) < 45
- when 336
- user.add_state(214) if rand(100) < 60
- end
- end
- end
- #==============================================================================
- # ■ Game_BattlerBase
- #------------------------------------------------------------------------------
- # 管理战斗者的类。主要含有能力值计算的方法。Game_Battler 类的父类。
- #==============================================================================
- class Game_BattlerBase
- #--------------------------------------------------------------------------
- # ● 判定是否足够扣除技能的使用消耗
- #--------------------------------------------------------------------------
- def skill_cost_payable?(skill)
- return true if self.state?(26) and skill.id == 128
- tp >= skill_tp_cost(skill) and mp >= skill_mp_cost(skill)
- end
- #--------------------------------------------------------------------------
- # ● 扣除技能的使用消耗
- #--------------------------------------------------------------------------
- def pay_skill_cost(skill)
- self.mp -= skill_mp_cost(skill) unless self.state?(26) and skill.id == 128
- self.tp -= skill_tp_cost(skill)
- end
- end
- #==============================================================================
- # ■ Game_Battler
- #------------------------------------------------------------------------------
- # 处理战斗者的类。Game_Actor 和 Game_Enemy 类的父类。
- #==============================================================================
- class Game_Battler < Game_BattlerBase
- #--------------------------------------------------------------------------
- # ● 计算伤害
- #--------------------------------------------------------------------------
- def make_damage_value(user, item)
- value = item.damage.eval(user, self, $game_variables)
- value += 1000 if item.is_a?(RPG::Skill) and item.id == 127 and user.state?(27)
- 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
- end
复制代码 |
|