Project1

标题: 如何做这个被动:当角色中负面状态时敌人也会中该状态 [打印本页]

作者: 是猪别乱叫    时间: 2016-4-26 09:55
标题: 如何做这个被动:当角色中负面状态时敌人也会中该状态
如何做这个被动:当特定角色中负面状态时敌人也会中该状态。注意是被动!!(ΦωΦ)
本来想用悬赏来的,但充值的时候显示“此用户受到限制”。。。是我水的不够吗? (|||゚Д゚)
作者: 狼人弟弟    时间: 2016-4-26 14:47
本帖最后由 狼人弟弟 于 2016-4-26 14:51 编辑

因为通常“负面状态”都是通过魔法或特技,战技来附加的,所以如下图:


在你所要选择的特定角色的“特性”框里,选择能力==>添加能力==>魔法放射几率100%,
那么对方在给你这个角色施加状态的同时,也将给自己施加状态。

============
补充:
想了想,似乎缺陷好大,这样一来特定主角不是反射所有魔法力{:2_250:}

好吧,我也期待楼下的回答。。。。。。

作者: 是猪别乱叫    时间: 2016-4-26 16:07
看来没办法了,就让此贴沉沦吧。
作者: howhow1314    时间: 2016-4-26 16:18
RUBY 代码复制
  1. class Game_Actor
  2.   def pyjy
  3.     self.skills.any? {|skill| skill.pyjy}
  4.   end
  5. end
  6.  
  7. class RPG::Skill
  8.   def pyjy
  9.     self.note.include?("<pyjy>")
  10.   end
  11. end
  12.  
  13. class Game_Enemy
  14.   def pyjy
  15.     self.enemy.note.include?("<pyjy>")
  16.   end
  17. end
  18.  
  19. class RPG::State
  20.   def debuff?
  21.     self.note.include?("<debuff>")
  22.   end
  23. end
  24.  
  25. class Game_Battler
  26.   def item_effect_add_state_attack(user, item, effect)
  27.     user.atk_states.each do |state_id|
  28.       chance = effect.value1
  29.       chance *= state_rate(state_id)
  30.       chance *= user.atk_states_rate(state_id)
  31.       chance *= luk_effect_rate(user)
  32.       if rand < chance
  33.         add_state(state_id)
  34.         @result.success = true
  35.         if self.pyjy && $data_states[state_id].debuff?
  36.           user.add_state(state_id)
  37.         end
  38.       end
  39.     end
  40.   end
  41.   def item_effect_add_state_normal(user, item, effect)
  42.     chance = effect.value1
  43.     chance *= state_rate(effect.data_id) if opposite?(user)
  44.     chance *= luk_effect_rate(user)      if opposite?(user)
  45.     if rand < chance
  46.       add_state(effect.data_id)
  47.       @result.success = true
  48.       if self.pyjy && $data_states[effect.data_id].debuff?
  49.         user.add_state(effect.data_id)
  50.       end
  51.     end
  52.   end
  53. end


使用方法是在技能或敵人的備注欄加入<pyjy>(加在敵人備注欄的話就是敵人持有該被動技能囉), 另外只對備注欄有<debuff>的狀態有效

啊還有就是~ 顯示戰鬥訊息之類的可能要你自己加囉~
作者: 是猪别乱叫    时间: 2016-4-27 09:08
howhow1314 发表于 2016-4-26 16:18
class Game_Actor
  def pyjy
    self.skills.any? {|skill| skill.pyjy}

亲测有效,谢谢,不过要配合自动附加状态的脚本才能达到天赋被动的目的。
加我QQ,我给你发个5块红包吧,234926741




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