class Game_Enemy #-------------------------------------------------------------------------- # ● オブジェクト初期化 #-------------------------------------------------------------------------- alias etc_initialize initialize def initialize(index, enemy_id) etc_initialize(index, enemy_id) @turn_count = 0 end #-------------------------------------------------------------------------- # ● 現在の戦闘行動を除去 #-------------------------------------------------------------------------- alias etc_remove_current_action remove_current_action def remove_current_action etc_remove_current_action @turn_count += 1 reset_actions end #-------------------------------------------------------------------------- # ● 行動条件合致判定[ターン数] #-------------------------------------------------------------------------- def conditions_met_turns?(param1, param2) n = @turn_count # ☆ if param2 == 0 n == param1 else n > 0 && n >= param1 && n % param2 == param1 % param2 end end #-------------------------------------------------------------------------- # ● 戦闘行動の再作成 #-------------------------------------------------------------------------- def reset_actions return if @actions.empty? action_list = enemy.actions.select {|a| action_valid?(a) } return if action_list.empty? rating_max = action_list.collect {|a| a.rating }.max rating_zero = rating_max - 3 action_list.reject! {|a| a.rating <= rating_zero } @actions.each do |action| action.set_enemy_action(select_enemy_action(action_list, rating_zero)) end end end