#============================================================================== # 混乱動作変更(ポケモン風向け) ver1.00 #------------------------------------------------------------------------------ #[概要] # 混乱の仕様を変更します。 # #[仕様] # 50%の確率で設定通りの行動をし、 # 50%の確率で設定したスキルを自分に対して使用します。 # #[導入上の注意] # 再定義した関数がありますが、競合の可能性の低いものなので、 # 下の方に導入しても大丈夫だと思います。 # もし競合した場合は、できるだけ上の方に導入してください。 # # 作成:ぶちょー # ホム:http://nyannyannyan.bake-neko.net/ # 著作:自分で作ったとか言わないで>< # 改造はご自由にどうぞ。 # リードミーとかに私の名前の載せたりするのは任意で。 #============================================================================== #============================================================================== # バージョンアップ情報 # ver1.00 公開 #============================================================================== #============================================================================== # 設定項目 #============================================================================== module Kazari module PokeConfusion # 混乱時に使用するスキルのID SKILL_ID = 84 end end #============================================================================== # ここまで #============================================================================== #============================================================================== # ■ Game_Battler #============================================================================== class Game_Battler #-------------------------------------------------------------------------- # ● コマンド入力可能判定 #-------------------------------------------------------------------------- alias kazari_poke_confuse_inputable inputable? def inputable? return true if confusion? return kazari_poke_confuse_inputable end end #============================================================================== # ■ Game_Actor #============================================================================== class Game_Actor < Game_Battler #-------------------------------------------------------------------------- # ● スキルの使用可能判定 #-------------------------------------------------------------------------- alias kazari_poke_confuse_skill_can_use? skill_can_use? def skill_can_use?(skill) return true if skill.id == Kazari::PokeConfusion::SKILL_ID return kazari_poke_confuse_skill_can_use?(skill) end end #============================================================================== # ■ Game_Enemy #============================================================================== class Game_Enemy < Game_Battler #-------------------------------------------------------------------------- # ● スキルの使用可能判定 #-------------------------------------------------------------------------- alias kazari_poke_confuse_skill_can_use? skill_can_use? def skill_can_use?(skill) return true if skill.id == Kazari::PokeConfusion::SKILL_ID return kazari_poke_confuse_skill_can_use?(skill) end end #============================================================================== # ■ Game_BattleAction #============================================================================== class Game_BattleAction #-------------------------------------------------------------------------- # ● 行動準備 ※ 再定義 #-------------------------------------------------------------------------- def prepare if battler.berserker? # 暴走なら set_attack # 通常攻撃に変更 elsif battler.confusion? && rand(2) == 0 # 混乱かつ50%の確率で set_skill(Kazari::PokeConfusion::SKILL_ID) end end #-------------------------------------------------------------------------- # ● スキルまたはアイテムのターゲット作成 #-------------------------------------------------------------------------- alias kazari_poke_confuse_make_obj_targets make_obj_targets def make_obj_targets(obj) if battler.confusion? && skill? && obj.id == Kazari::PokeConfusion::SKILL_ID return [battler] else return kazari_poke_confuse_make_obj_targets(obj) end end end