public int CountAdjacent(Location loc, int dir)
	{
		Player owner = loc.getPiece().getOwner();
		int status1, status2;

		ArrayList<Location> nghbrs = SomeNeighbors(loc, dir, owner);
		if (nghbrs.size() == 2)
		{
			// Store the neighbors status's to make sure at least one has moved (req to become a mill)
			status1 = nghbrs.get(0).getPiece().getStatus();
			status2 = nghbrs.get(1).getPiece().getStatus();	

		} else if (nghbrs.size() == 1) {
			status1 = nghbrs.get(0).getPiece().getStatus();

			// See if the neighbor has another adjacent neighbor.
			nghbrs = SomeNeighbors(nghbrs.get(0), dir, owner);
			nghbrs.remove(loc);

			if(nghbrs.size() == 1)
			{
				status2 = nghbrs.get(0).getPiece().getStatus();
			} else
				return 0;
		} else
			return 0;

		// Make sure at least one piece of the mill has moved.
		if (status1 == GamePiece.MOVED || status2 == GamePiece.MOVED || loc.getPiece().getStatus() == GamePiece.MOVED)
			return 3;
		else
			return 0;
		
	}