private Board BuildBoard(string playerName) { Board board = new Board(); for (ShipType s = ShipType.Destroyer; s <= ShipType.Carrier; s++) { bool isValidPlacement = false; do { PlaceShipRequest request = new PlaceShipRequest(); request.Coordinate = ConsoleInput.GetCoord(playerName, s); request.Direction = ConsoleInput.GetDir(playerName, s); request.ShipType = s; var result = board.PlaceShip(request); if (result == ShipPlacement.Overlap) { ConsoleOutput.ShipOverlap(playerName); } else if (result == ShipPlacement.NotEnoughSpace) { ConsoleOutput.NotEnoughSpace(playerName); } else { ConsoleOutput.ShipPlaceOk(playerName); isValidPlacement = true; } } while (!isValidPlacement); } return(board); }