private static void ConductBattle(FightQueue queue) { while (queue.AllAlive()) { int dmg; if (queue.CurrentUnit() is Player player) { Console.WriteLine("Choose type of attack: 1) Melee, 2) Magic"); ConsoleKeyInfo input = Console.ReadKey(); // TODO: Convert ConsoleKeyInfo value to AttackType enumerator. dmg = CalculatePlayerDamage(player, input); } else { dmg = queue.CurrentUnit().Attack + RollD4(); } queue.NextUnit().Hp -= dmg; Console.WriteLine($"Unit {queue.CurrentUnit().Name} dealt {dmg} damage."); if (queue.NextUnit().IsAlive == false) { Console.WriteLine($"Unit {queue.NextUnit().Name} is dead"); break; } queue.AdvanceQueue(); } }