public void PlaceShips_Click(object sender, RoutedEventArgs e) { gameBoard.PlaceShips(gameBoard.playerOne.playerGrid); Confirm_Ships_Button.IsEnabled = true; Player_Canvas.Children.Clear(); //Two for loops to clear out previous ship locations before creating new ships //Assumes that ships have been created once before by the user gameBoard.playerOne.playerGrid.ClearGrid(); for (int x = 0; x < gameBoard.playerOne.playerGrid.playerShips.Length; x++) { DrawShipOnGrid(CreateShip(gameBoard.playerOne.playerGrid.playerShips[x].GetShipName(), gameBoard.playerOne.playerGrid.playerShips[x].GetShipLength(), gameBoard.playerOne.playerGrid.playerShips[x].GetShipDirection()), Player_Canvas, gameBoard.playerOne.playerGrid.playerShips[x]); } //Player battleship visibility Player_Battleship.Visibility = Visibility.Hidden; Player_Carrier.Visibility = Visibility.Hidden; Player_Destroyer.Visibility = Visibility.Hidden; Player_PatrolBoat.Visibility = Visibility.Hidden; Player_Sub.Visibility = Visibility.Hidden; //Enemy Battleship visibility Enemy_Battleship.Visibility = Visibility.Visible; Enemy_Carrier.Visibility = Visibility.Visible; Enemy_Destroyer.Visibility = Visibility.Visible; Enemy_PatrolBoat.Visibility = Visibility.Visible; Enemy_Sub.Visibility = Visibility.Visible; }
public void StartGame() { Console.WriteLine("{0} game started. Good luck!", _difficulty); _board = new Board(_difficulty); _ships = new List <IShip>(); switch (_gameMode) { case "unlimited": switch (_difficulty) { default: case "easy": _ships.Add(new SmallShip()); _ships.Add(new SmallShip()); _ships.Add(new MediumShip()); _board.Draw(); _board.PlaceShips(_ships); _boardShipsHealth = TotalShipHealth(); EasyModeTakeGuesses(); break; case "medium": _ships.Add(new SmallShip()); _ships.Add(new SmallShip()); _ships.Add(new MediumShip()); _ships.Add(new MediumShip()); _board.Draw(); _board.PlaceShips(_ships); _boardShipsHealth = TotalShipHealth(); EasyModeTakeGuesses(); break; case "hard": _ships.Add(new SmallShip()); _ships.Add(new SmallShip()); _ships.Add(new SmallShip()); _ships.Add(new MediumShip()); _ships.Add(new MediumShip()); _board.Draw(); _board.PlaceShips(_ships); _boardShipsHealth = TotalShipHealth(); EasyModeTakeGuesses(); break; case "very hard": _ships.Add(new SmallShip()); _ships.Add(new SmallShip()); _ships.Add(new SmallShip()); _ships.Add(new MediumShip()); _ships.Add(new MediumShip()); _ships.Add(new LargeShip()); _board.Draw(); _board.PlaceShips(_ships); _boardShipsHealth = TotalShipHealth(); EasyModeTakeGuesses(); break; } break; case "limited": switch (_difficulty) { default: case "easy": _ships.Add(new SmallShip()); _ships.Add(new SmallShip()); _ships.Add(new MediumShip()); _board.Draw(); _board.PlaceShips(_ships); _player = new Player { NumberOfTurns = 20 }; _boardShipsHealth = TotalShipHealth(); TakeGuesses(); break; case "medium": _ships.Add(new SmallShip()); _ships.Add(new SmallShip()); _ships.Add(new MediumShip()); _ships.Add(new MediumShip()); _board.Draw(); _board.PlaceShips(_ships); _player = new Player { NumberOfTurns = 30 }; _boardShipsHealth = TotalShipHealth(); TakeGuesses(); break; case "hard": _ships.Add(new SmallShip()); _ships.Add(new SmallShip()); _ships.Add(new SmallShip()); _ships.Add(new MediumShip()); _ships.Add(new MediumShip()); _board.Draw(); _board.PlaceShips(_ships); _player = new Player { NumberOfTurns = 40 }; _boardShipsHealth = TotalShipHealth(); TakeGuesses(); break; case "very hard": _ships.Add(new SmallShip()); _ships.Add(new SmallShip()); _ships.Add(new SmallShip()); _ships.Add(new MediumShip()); _ships.Add(new MediumShip()); _ships.Add(new LargeShip()); _board.Draw(); _board.PlaceShips(_ships); _player = new Player { NumberOfTurns = 60 }; _boardShipsHealth = TotalShipHealth(); TakeGuesses(); break; } break; } }