diff options
Diffstat (limited to 'bukkit/src')
| -rw-r--r-- | bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/DistancefromTaskType.java | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/DistancefromTaskType.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/DistancefromTaskType.java index f150327d..4ffaa126 100644 --- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/DistancefromTaskType.java +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/DistancefromTaskType.java @@ -8,12 +8,12 @@ import com.leonardobishop.quests.common.player.questprogressfile.TaskProgress; import com.leonardobishop.quests.common.quest.Quest; import com.leonardobishop.quests.common.quest.Task; import org.bukkit.Bukkit; -import org.bukkit.Location; import org.bukkit.World; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.EventPriority; import org.bukkit.event.player.PlayerMoveEvent; +import org.bukkit.util.NumberConversions; public final class DistancefromTaskType extends BukkitTaskType { @@ -84,8 +84,7 @@ public final class DistancefromTaskType extends BukkitTaskType { int distance = (int) task.getConfigValue("distance"); int distanceSquared = distance * distance; - Location location = new Location(world, x, y, z); - double playerDistanceSquared = player.getLocation().distanceSquared(location); + double playerDistanceSquared = distanceSquarred(player, x, y, z); super.debug("Player is " + playerDistanceSquared + "m squared away", quest.getId(), task.getId(), player.getUniqueId()); @@ -95,4 +94,10 @@ public final class DistancefromTaskType extends BukkitTaskType { } } } + + private static double distanceSquarred(Player player, int x, int y, int z) { + return NumberConversions.square(player.getX() - x) + + NumberConversions.square(player.getY() - y) + + NumberConversions.square(player.getZ() - z); + } } |
