public boolean shiftOmino(int ominoIndex, Direction direction)
	{
		Omino omino;
		Set<Tile> borderCheck;
		Tile translation;
		if(ominoIndex < 0 || ominoIndex >= pieceOrder.size())
			return false;
		omino = pieceOrder.get(ominoIndex);
		switch (direction) {
		case UP:
			borderCheck = omino.getBorderUp();
			translation = Tile.UP;
			break;
		case DOWN:
			borderCheck = omino.getBorderDown();
			translation = Tile.DOWN;
			break;
		case LEFT:
			borderCheck = omino.getBorderLeft();
			translation = Tile.LEFT;
			break;
		case RIGHT:
			borderCheck = omino.getBorderRight();
			translation = Tile.RIGHT;
			break;
		default:
			return false;
		}
		for(Tile tile : borderCheck)
		{
			if(!isAvailable(new Tile(tile, allPieces.get(omino))))
				return false;
		}
		allPieces.put(omino,  new Tile(allPieces.get(omino), translation));
		lastPieceMoved = ominoIndex;
		return true;
	}