diff --git a/src/main/java/me/goodandevil/skyblock/island/IslandManager.java b/src/main/java/me/goodandevil/skyblock/island/IslandManager.java index 79f52a4e..ca812814 100644 --- a/src/main/java/me/goodandevil/skyblock/island/IslandManager.java +++ b/src/main/java/me/goodandevil/skyblock/island/IslandManager.java @@ -1381,6 +1381,7 @@ public class IslandManager { } public boolean isLocationAtIsland(Island island, org.bukkit.Location location, IslandWorld world) { + if (LocationUtil.isLocationAtLocationRadius(location, island.getLocation(world, IslandEnvironment.Island), island.getRadius())) { return true; diff --git a/src/main/java/me/goodandevil/skyblock/listeners/Move.java b/src/main/java/me/goodandevil/skyblock/listeners/Move.java index 0f919e1f..eab52ce2 100644 --- a/src/main/java/me/goodandevil/skyblock/listeners/Move.java +++ b/src/main/java/me/goodandevil/skyblock/listeners/Move.java @@ -104,6 +104,7 @@ public class Move implements Listener { Island island = islandManager .getIsland(Bukkit.getServer().getOfflinePlayer(playerData.getIsland())); + if (island != null) { if (islandManager.isLocationAtIsland(island, to)) { Config config = fileManager.getConfig(new File(skyblock.getDataFolder(), "config.yml")); diff --git a/src/main/java/me/goodandevil/skyblock/utils/world/LocationUtil.java b/src/main/java/me/goodandevil/skyblock/utils/world/LocationUtil.java index 9cd164e1..5bdbb7bf 100644 --- a/src/main/java/me/goodandevil/skyblock/utils/world/LocationUtil.java +++ b/src/main/java/me/goodandevil/skyblock/utils/world/LocationUtil.java @@ -50,8 +50,8 @@ public final class LocationUtil { return false; } - double x = Math.abs(location1.getX() - location2.getX()); - double z = Math.abs(location1.getZ() - location2.getZ()); + double x = Math.abs(location1.getX() - location2.getX()) - 1; + double z = Math.abs(location1.getZ() - location2.getZ()) - 1; return x < radius && z < radius; }