コード例 #1
0
 private BoardPosition processPosition(Position position) {
   if (board.positionWasShotAt(position)) {
     if (board.positionIsTakenByShip(position)) {
       Ship ship = board.getShipAtPosition(position);
       if (ship.sunk()) {
         return BoardPosition.createShipSunk();
       }
       return BoardPosition.createShipHit();
     }
     return BoardPosition.createWaterHit();
   }
   if (mask) {
     return BoardPosition.createUnknown();
   }
   if (board.positionIsTakenByShip(position)) {
     return BoardPosition.createShip();
   }
   return BoardPosition.createWater();
 }
コード例 #2
0
 /** Create a new {@code BoardPosition} with the same values as the one specified */
 public static BoardPosition valueOf(BoardPosition bp) {
   return valueOf(bp.getX(), bp.getY());
 }