public static boolean isReachable(Location l) {
		if(GameManager.getSelectedObj() instanceof Ship) {
			tempSelectedLoc = null;
			if(Location.distance(((Ship)(GameManager.getSelectedObj())).getLoc(), l) <= ((Ship)(GameManager.getSelectedObj())).getSpeed()) {
				return true;
			}
		} else if(GameManager.getSelectedObj() instanceof Location) {
			if(GameManager.getSelectedObj() != tempSelectedLoc) {
				Ship[] ships = ((Location)(GameManager.getSelectedObj())).getOccupants();
				maxSpeed = Float.MAX_VALUE;
				for(int i = 0; i < ships.length; i++) {
					if(ships[i].getLoyalty() == currentPlayer && ships[i].getSpeed() < maxSpeed) {
						maxSpeed = ships[i].getSpeed();
					}
				}
				if(maxSpeed >= Float.MAX_VALUE) {
					maxSpeed = 0.0f;
				}
				tempSelectedLoc = (Location)(GameManager.getSelectedObj());
			}
			if(Location.distance((Location)(GameManager.getSelectedObj()), l) <= maxSpeed) {
				return true;
			}
		}
		return false;
	}