public void doAction(Player_Action action, out BattleStates newState) { if (action.GetType() == typeof(Header_Option)) { updateUI_State((Header_Option)action); newState = BattleStates.PLAYER; } else { action.execute(player: this.StartingPlayer.Current_Pokemon, enemy: this.enemy, this.StartingPlayer.PokeList); this.StartingPlayer.Current_Pokemon.chosenAction = action; newState = BattleStates.PLAYER_ANIMATION; } }