#============================================================================== # ■ VXAce-RGSS3-40 コマンドスキル [battle] by Claimh #============================================================================== #============================================================================== # ■ Scene_Battle #============================================================================== class Scene_Battle < Scene_Base #-------------------------------------------------------------------------- # ● 攻撃コマンド有効判定 #-------------------------------------------------------------------------- def attack_cmdbtl?(battler) action = battler.current_action return false unless battler.actor? return false unless action.attack? return false if battler.confusion? or action.forcing or battler.auto_battle? true end #-------------------------------------------------------------------------- # ● 戦闘行動の実行 #-------------------------------------------------------------------------- alias execute_action_cmdbtl execute_action def execute_action attack_cmdbtl?(@subject) ? execute_atkcmd : execute_action_cmdbtl end #-------------------------------------------------------------------------- # ● 攻撃コマンドウィンドウ生成 #-------------------------------------------------------------------------- def create_attack_command @action_cmd = Window_ActorAtkCommand.new(@subject) update_basic while !@action_cmd.slide_in end #-------------------------------------------------------------------------- # ● 攻撃コマンドウィンドウ破棄 #-------------------------------------------------------------------------- def destroy_attack_command @action_cmd.dispose @action_cmd = nil end #-------------------------------------------------------------------------- # ● 攻撃コマンドの実行 #-------------------------------------------------------------------------- def execute_atkcmd create_attack_command update_basic while !@action_cmd.finish @action_cmd.cmds.times do |i| execute_action_cmdbtl @subject.remove_current_action break if $game_troop.all_dead? end update_basic while !@action_cmd.slide_out destroy_attack_command end end