#============================================================================== # ■ 追尾攻撃(軽量版) by Claimh #============================================================================== module Add_attack #============================================================================== # □ カスタマイズSTART #============================================================================== # 追尾攻撃発動キー ADD_ATK_KEY = Input::C # 追尾攻撃成功時に鳴らすSE ADD_ATK_SE = "020-Teleport03" # 不要ならnil #============================================================================== # □ カスタマイズEND #============================================================================== end class Scene_Battle include Add_attack #-------------------------------------------------------------------------- # ● フレーム更新 (メインフェーズ ステップ 1 : アクション準備) #-------------------------------------------------------------------------- alias update_phase4_step1_add_atk update_phase4_step1 def update_phase4_step1 update_phase4_step1_add_atk @add_atk_flg = false # 追尾攻撃開始 @add_atk_exercise = false # 追尾攻撃実行中 @add_atk_end = false # 追尾攻撃終了 @add_atk_check_key = false # 追尾判定実行中 @add_atk_success = false # 追尾成功 end #-------------------------------------------------------------------------- # ● フレーム更新 (メインフェーズ ステップ 3 : 行動側アニメーション) #-------------------------------------------------------------------------- alias update_phase4_step3_add_atk update_phase4_step3 def update_phase4_step3 # 追尾実行中ならステップ4に強制移行 if @add_atk_exercise # ステップ 4 に移行 @phase4_step = 4 return elsif @active_battler.current_action.basic == 0 if @active_battler.is_a?(Game_Actor) @add_atk_flg = true end end update_phase4_step3_add_atk # 原物 end #-------------------------------------------------------------------------- # ● フレーム更新 (メインフェーズ ステップ 4 : 対象側アニメーション) #-------------------------------------------------------------------------- alias update_phase4_step4_add_atk update_phase4_step4 def update_phase4_step4 # 追尾攻撃 if @add_atk_flg # キーチェックを開始する @add_atk_check_key = true dead_count = 0 for target in @target_battlers if !target.dead? dead_count += 1 end end if dead_count == 0 @add_atk_check_key = false end end update_phase4_step4_add_atk # 原物 end #-------------------------------------------------------------------------- # ● フレーム更新 (メインフェーズ ステップ 5 : ダメージ表示) #-------------------------------------------------------------------------- alias update_phase4_step5_add_atk update_phase4_step5 def update_phase4_step5 # キーチェック終了 @add_atk_check_key = false # 追尾成功 if @add_atk_success # 追尾実行中に移行 @add_atk_exercise = true end update_phase4_step5_add_atk # 原物 # 追尾終了or追尾失敗 if @add_atk_end or !@add_atk_success @add_atk_exercise = false @add_atk_flg = false @add_atk_end = false end if @add_atk_exercise @add_atk_success = false # 追尾開始 @phase4_step = 2 end end #-------------------------------------------------------------------------- # ● フレーム更新 #-------------------------------------------------------------------------- alias update_add_atk update def update if @add_atk_check_key and @add_atk_flg # 追尾攻撃発動チェック if Input.trigger?(ADD_ATK_KEY) @add_atk_success = true @add_atk_check_key = false # 追尾成功SEを鳴らしてみる if ADD_ATK_SE != nil and !@add_atk_end Audio.se_play("Audio/SE/" + ADD_ATK_SE) end end end update_add_atk # 原物 end #-------------------------------------------------------------------------- # ● フレーム更新 (メインフェーズ ステップ 6 : リフレッシュ) #-------------------------------------------------------------------------- alias update_phase4_step6_add_atk update_phase4_step6 def update_phase4_step6 @add_atk_flg = false # 追尾攻撃開始 @add_atk_exercise = false # 追尾攻撃実行中 @add_atk_end = false # 追尾攻撃終了 @add_atk_check_key = false # 追尾判定実行中 @add_atk_success = false # 追尾成功 update_phase4_step6_add_atk end end