public static int getGoodMove(Board board) {
		int color;
		int goodMove;
		int threePointBlock = -1;
		for (int x = 0; x < board.getBoardWidth(); x++) {
			for (int y = 0; y < board.getBoardWidth(); y++) {
				color = board.getPoint(x, y);
				if (color != Board.VACANT) {
					goodMove = checkColor(board, x, y);
					if (goodMove != -1) {
						return goodMove;
					}
					if ((threePointBlock == -1)
							&& (color != board.getColorToPlay())) {
						threePointBlock = check3Color(board, x, y);
					}
				} else {
					goodMove = checkVacant(board, x, y);
					if (goodMove != -1) {
						return goodMove;
					}
					if (threePointBlock == -1) {
						threePointBlock = check3Vacant(board, x, y);
					}
				}

			}
		}
		return threePointBlock;
	}