private boolean checkLine(Pair<Integer, Integer> coords,
			Piece squareColour, Direction dir, boolean found) {
		if (isInBoundary(getAdjacent(coords, dir))) {
			Piece nextColour = getColour(getAdjacent(coords, dir));
			if (squareColour == nextColour) {
				if (!found) {
					return false;
				}
				return true;
			} else if (squareColour.opposite() == nextColour) {
				return checkLine(getAdjacent(coords, dir), squareColour, dir,
						true);
			} else {
				return false;
			}
		} else {
			return false;
		}
	}