# ▼▲▼ XRXS66. イミディエイト・ダメージ ▼▲▼ # # publish - # update 2006/ 5/24 # #============================================================================== # --- ウェイトカウント予約 モジュール --- #============================================================================== module XRXS_WAIT_COUNT_PLAN @@wait_count_plan_enable = false @@wait_count_plan = [] end #============================================================================== # --- ダメージタイミング モジュール --- #============================================================================== module XRXS_TIMINGS def self.get(animation_id) return [] if animation_id == 0 set = [] for timing in $data_animations[animation_id].timings if timing.condition == 1 set.push(timing.frame) end end return set end end #============================================================================== # --- エフェクト表示中判定:予約時は false --- #============================================================================== class Spriteset_Battle include XRXS_WAIT_COUNT_PLAN alias xrxs66_effect? effect? def effect? return false if @@wait_count_plan_enable return xrxs66_effect? end end #============================================================================== # ■ Scene_Battle #============================================================================== class Scene_Battle #-------------------------------------------------------------------------- # ◇ インクルード #-------------------------------------------------------------------------- include XRXS_WAIT_COUNT_PLAN #-------------------------------------------------------------------------- # ● フレーム更新 (メインフェーズ ステップ 2 : アクション開始) #-------------------------------------------------------------------------- alias xrxs66_update_phase4_step2 update_phase4_step2 def update_phase4_step2 # 呼び戻す xrxs66_update_phase4_step2 # ステップ 5 へいく場合 if @phase4_step == 5 # ウェイトカウント予約をが空でないならシフト @wait_count = @@wait_count_plan.shift unless @@wait_count_plan.empty? end end #-------------------------------------------------------------------------- # ● フレーム更新 (メインフェーズ ステップ 4 : 対象側アニメーション) #-------------------------------------------------------------------------- alias xrxs66_update_phase4_step4 update_phase4_step4 def update_phase4_step4 # 呼び戻す xrxs66_update_phase4_step4 # アニメーションの長さによって、待機フレーム数を設定 if @animation2_id > 0 and @@wait_count_plan.empty? for frame in XRXS_TIMINGS.get(@animation2_id) previous_count = @@wait_count_plan.reverse[0].to_i next_count = frame * 2 - previous_count if next_count > 0 @@wait_count_plan.push(next_count) end end @@wait_count_plan_enable = true end # ウェイトカウント予約をが空でないならシフト @wait_count = @@wait_count_plan.shift unless @@wait_count_plan.empty? end #-------------------------------------------------------------------------- # ● フレーム更新 (メインフェーズ ステップ 6 : リフレッシュ) #-------------------------------------------------------------------------- alias xrxs66_update_phase4_step6 update_phase4_step6 def update_phase4_step6 # ウェイト予約の終了 @@wait_count_plan_enable = false @@wait_count_plan.clear # 呼び戻す xrxs66_update_phase4_step6 end end