static void Main(string[] аргументи) { string command = string.Empty; char[,] board = CreateBoard(); char[,] bombs = PlaceBombs(); int counter = 0; bool isDetonate = false; List<PlayerStatistic> playerStatistics = new List<PlayerStatistic>(6); int row = 0; int column = 0; bool isOnMenu = true; const int nonMineFieldCount = 35; bool isSuccessGame = false; do { if (isOnMenu) { Console.WriteLine("Hajde da igraem na “Mini4KI”. Probvaj si kasmeta da otkriesh poleteta bez mini4ki." + " Komanda 'top' pokazva klasiraneto, 'restart' po4va nova igra, 'exit' izliza i hajde 4ao!"); PrintBoard(board); isOnMenu = false; } Console.Write("Daj red i kolona : "); command = Console.ReadLine().Trim(); if (command.Length >= 3) { if (int.TryParse(command[0].ToString(), out row) && int.TryParse(command[2].ToString(), out column) && row <= board.GetLength(0) && column <= board.GetLength(1)) { command = "turn"; } } switch (command) { case "top": PrintStatistic(playerStatistics); break; case "restart": board = CreateBoard(); bombs = PlaceBombs(); PrintBoard(board); isDetonate = false; isOnMenu = false; break; case "exit": Console.WriteLine("4a0, 4a0, 4a0!"); break; case "turn": if (bombs[row, column] != '*') { if (bombs[row, column] == '-') { MakeMove(board, bombs, row, column); counter++; } if (nonMineFieldCount == counter) { isSuccessGame = true; } else { PrintBoard(board); } } else { isDetonate = true; } break; default: Console.WriteLine("\nGreshka! nevalidna Komanda\n"); break; } if (isDetonate) { PrintBoard(bombs); Console.Write("\nHrrrrrr! Umria gerojski s {0} to4ki. " + "Daj si niknejm: ", counter); string name = Console.ReadLine(); PlayerStatistic playerStatistic = new PlayerStatistic(name, counter); if (playerStatistics.Count < 5) { playerStatistics.Add(playerStatistic); } else { for (int i = 0; i < playerStatistics.Count; i++) { if (playerStatistics[i].Score < playerStatistic.Score) { playerStatistics.Insert(i, playerStatistic); playerStatistics.RemoveAt(playerStatistics.Count - 1); break; } } } playerStatistics.Sort((PlayerStatistic firstPlayerStatistic, PlayerStatistic secondPlayerStatistic) => secondPlayerStatistic.Name.CompareTo(firstPlayerStatistic.Name)); playerStatistics.Sort((PlayerStatistic firstPlayerStatistic, PlayerStatistic secondPlayerStatistic) => secondPlayerStatistic.Score.CompareTo(firstPlayerStatistic.Score)); PrintStatistic(playerStatistics); board = CreateBoard(); bombs = PlaceBombs(); counter = 0; isDetonate = false; isOnMenu = true; } if (isSuccessGame) { Console.WriteLine("\nBRAVOOOS! Otvri 35 kletki bez kapka kryv."); PrintBoard(bombs); Console.WriteLine("Daj si imeto, batka: "); string name = Console.ReadLine(); PlayerStatistic playerStatistic = new PlayerStatistic(name, counter); playerStatistics.Add(playerStatistic); PrintStatistic(playerStatistics); board = CreateBoard(); bombs = PlaceBombs(); counter = 0; isSuccessGame = false; isOnMenu = true; } } while (command != "exit"); Console.WriteLine("Made in Bulgaria - Uauahahahahaha!"); Console.WriteLine("AREEEEEEeeeeeee."); Console.Read(); }
static void Main(string[] аргументи) { string command = string.Empty; char[,] board = CreateBoard(); char[,] bombs = PlaceBombs(); int counter = 0; bool isDetonate = false; List <PlayerStatistic> playerStatistics = new List <PlayerStatistic>(6); int row = 0; int column = 0; bool isOnMenu = true; const int nonMineFieldCount = 35; bool isSuccessGame = false; do { if (isOnMenu) { Console.WriteLine("Hajde da igraem na “Mini4KI”. Probvaj si kasmeta da otkriesh poleteta bez mini4ki." + " Komanda 'top' pokazva klasiraneto, 'restart' po4va nova igra, 'exit' izliza i hajde 4ao!"); PrintBoard(board); isOnMenu = false; } Console.Write("Daj red i kolona : "); command = Console.ReadLine().Trim(); if (command.Length >= 3) { if (int.TryParse(command[0].ToString(), out row) && int.TryParse(command[2].ToString(), out column) && row <= board.GetLength(0) && column <= board.GetLength(1)) { command = "turn"; } } switch (command) { case "top": PrintStatistic(playerStatistics); break; case "restart": board = CreateBoard(); bombs = PlaceBombs(); PrintBoard(board); isDetonate = false; isOnMenu = false; break; case "exit": Console.WriteLine("4a0, 4a0, 4a0!"); break; case "turn": if (bombs[row, column] != '*') { if (bombs[row, column] == '-') { MakeMove(board, bombs, row, column); counter++; } if (nonMineFieldCount == counter) { isSuccessGame = true; } else { PrintBoard(board); } } else { isDetonate = true; } break; default: Console.WriteLine("\nGreshka! nevalidna Komanda\n"); break; } if (isDetonate) { PrintBoard(bombs); Console.Write("\nHrrrrrr! Umria gerojski s {0} to4ki. " + "Daj si niknejm: ", counter); string name = Console.ReadLine(); PlayerStatistic playerStatistic = new PlayerStatistic(name, counter); if (playerStatistics.Count < 5) { playerStatistics.Add(playerStatistic); } else { for (int i = 0; i < playerStatistics.Count; i++) { if (playerStatistics[i].Score < playerStatistic.Score) { playerStatistics.Insert(i, playerStatistic); playerStatistics.RemoveAt(playerStatistics.Count - 1); break; } } } playerStatistics.Sort((PlayerStatistic firstPlayerStatistic, PlayerStatistic secondPlayerStatistic) => secondPlayerStatistic.Name.CompareTo(firstPlayerStatistic.Name)); playerStatistics.Sort((PlayerStatistic firstPlayerStatistic, PlayerStatistic secondPlayerStatistic) => secondPlayerStatistic.Score.CompareTo(firstPlayerStatistic.Score)); PrintStatistic(playerStatistics); board = CreateBoard(); bombs = PlaceBombs(); counter = 0; isDetonate = false; isOnMenu = true; } if (isSuccessGame) { Console.WriteLine("\nBRAVOOOS! Otvri 35 kletki bez kapka kryv."); PrintBoard(bombs); Console.WriteLine("Daj si imeto, batka: "); string name = Console.ReadLine(); PlayerStatistic playerStatistic = new PlayerStatistic(name, counter); playerStatistics.Add(playerStatistic); PrintStatistic(playerStatistics); board = CreateBoard(); bombs = PlaceBombs(); counter = 0; isSuccessGame = false; isOnMenu = true; } }while (command != "exit"); Console.WriteLine("Made in Bulgaria - Uauahahahahaha!"); Console.WriteLine("AREEEEEEeeeeeee."); Console.Read(); }