private void InitGame(string playername) { turn_possible_content.Add("Your turn!"); turn_possible_content.Add("AI turn!"); player1 = new GameObjects.Player(playername) { RoundsNo = 0 }; aiplayer = new GameObjects.AiPlayer { RoundsNo = 0 }; AiShipPlacement(aiplayer); GameObjects.Functions.UpdateRemainingShipsForAi(NumberofHits, enemy_remaining_ships, aiplayer, player1); }
private void PlaceBoats(GameObjects.Player player, GameObjects.AiPlayer aiplayer) { if (aiplayer == null) { foreach (GameObjects.Ship ship in player.RemainingShips) { DrawBoat(ship, false); } } else { foreach (GameObjects.Ship ship in aiplayer.RemainingShips) { DrawBoat(ship, true); } } }
private void AiShipPlacement(GameObjects.AiPlayer aiplayer) { const string range = "ABCDEFGHIJ"; Random rnd = new Random(); do { int dice = rnd.Next(1, 11); rotated = rnd.Next(0, 2) == 0; string Coord1 = new string(Enumerable.Range(1, 1).Select(x => range[rnd.Next(0, range.Length)]).ToArray()); CreateShipOnPosition("PatrolBoat", Coord1 + dice.ToString(), aiplayer, true); } while (aiplayer.RemainingShips.Count < 1); do { int dice = rnd.Next(1, 11); rotated = rnd.Next(0, 2) == 0; string Coord1 = new string(Enumerable.Range(1, 1).Select(x => range[rnd.Next(0, range.Length)]).ToArray()); CreateShipOnPosition("Submarine", Coord1 + dice.ToString(), aiplayer, true); } while (aiplayer.RemainingShips.Count < 2); do { int dice = rnd.Next(1, 11); rotated = rnd.Next(0, 2) == 0; string Coord1 = new string(Enumerable.Range(1, 1).Select(x => range[rnd.Next(0, range.Length)]).ToArray()); CreateShipOnPosition("Destroyer", Coord1 + dice.ToString(), aiplayer, true); } while (aiplayer.RemainingShips.Count < 3); do { int dice = rnd.Next(1, 11); rotated = rnd.Next(0, 2) == 0; string Coord1 = new string(Enumerable.Range(1, 1).Select(x => range[rnd.Next(0, range.Length)]).ToArray()); CreateShipOnPosition("Battleship", Coord1 + dice.ToString(), aiplayer, true); } while (aiplayer.RemainingShips.Count < 4); do { int dice = rnd.Next(1, 11); rotated = rnd.Next(0, 2) == 0; string Coord1 = new string(Enumerable.Range(1, 1).Select(x => range[rnd.Next(0, range.Length)]).ToArray()); CreateShipOnPosition("Carrier", Coord1 + dice.ToString(), aiplayer, true); } while (aiplayer.RemainingShips.Count < 5); }
public static void UpdateRemainingShipsForAi(Label NumberofHits, Label enemy_remaining_ships, AiPlayer aiplayer, Player player1) { NumberofHits.Content = player1.PlayerHits.Count.ToString(); if (aiplayer.RemainingShips.Count <= 5) { enemy_remaining_ships.Content = aiplayer.RemainingShips.Count.ToString(); } }
public static void UpdateRemainingShips(Label NumberofHits, Label player_remaining_ships, AiPlayer aiplayer, Player player1, bool init) { if (!init) { NumberofHits.Content = aiplayer.PlayerHits.Count.ToString(); } if (player1.RemainingShips.Count <= 5) { player_remaining_ships.Content = player1.RemainingShips.Count.ToString(); } }