private boolean cannotPlaceTileAtPosition(GridModel.GridPosition gridPosition) {
   BoardTileModel tileAtPosition;
   try {
     tileAtPosition = gridModel.get(gridPosition);
     if (tileAtPosition instanceof StartTileModel
         || tileAtPosition instanceof EndTileModel
         || tileAtPosition.isFull()) {
       return true;
     }
     if (!(tileAtPosition instanceof EmptyTileModel)) {
       MessagingCenter.getInstance().postGameEventMessage(GameConfig.GameEvent.TILE_DESTROYED);
     }
     return false;
   } catch (GridPositionOutOfBoundsException e) {
     return true;
   }
 }