public void EndTurn() { Console.WriteLine($"{GetType().Name} - ExecuteOption - End"); TurnSystem.End(); while (TurnSystem.Active is Enemy enemy && !enemy.IsDead && enemy.EnemyType != EnemyType.Enviroment) { enemyAISysytem.ExecuteEnemyTurn(this, TurnSystem.Active); } TargetSystem.Cleanup(); if (Enemies.TrueForAll(enemy => enemy.IsDead)) { BattleStateStore.State = BattleState.ENDED; Enemies.ForEach(enemy => enemy.OnKilled -= Enemy_OnKilled); } ActionMenu.Process(); HealthCounter.Show(); }