From a4c1f8ed65865af208a2821ac69c6738815682e6 Mon Sep 17 00:00:00 2001 From: Alex 'mcmonkey' Goodwin Date: Thu, 22 Oct 2020 20:14:57 -0700 Subject: [PATCH] ellipsoidtag: don't error from null world --- .../java/com/denizenscript/denizen/objects/EllipsoidTag.java | 4 ++-- .../java/com/denizenscript/denizen/objects/LocationTag.java | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/plugin/src/main/java/com/denizenscript/denizen/objects/EllipsoidTag.java b/plugin/src/main/java/com/denizenscript/denizen/objects/EllipsoidTag.java index 417c90a5c7..05c0aca5b8 100644 --- a/plugin/src/main/java/com/denizenscript/denizen/objects/EllipsoidTag.java +++ b/plugin/src/main/java/com/denizenscript/denizen/objects/EllipsoidTag.java @@ -312,10 +312,10 @@ public boolean equals(Object other) { if (!center.getWorldName().equals(ellipsoid2.center.getWorldName())) { return false; } - if (center.distanceSquared(ellipsoid2.center) >= 0.25) { + if (center.distanceSquaredNoWorld(ellipsoid2.center) >= 0.25) { return false; } - if (size.distanceSquared(ellipsoid2.size) >= 0.25) { + if (size.distanceSquaredNoWorld(ellipsoid2.size) >= 0.25) { return false; } return true; diff --git a/plugin/src/main/java/com/denizenscript/denizen/objects/LocationTag.java b/plugin/src/main/java/com/denizenscript/denizen/objects/LocationTag.java index 9d65b8880f..c0fe903618 100644 --- a/plugin/src/main/java/com/denizenscript/denizen/objects/LocationTag.java +++ b/plugin/src/main/java/com/denizenscript/denizen/objects/LocationTag.java @@ -44,6 +44,7 @@ import org.bukkit.potion.PotionEffect; import org.bukkit.potion.PotionEffectType; import org.bukkit.util.BlockIterator; +import org.bukkit.util.NumberConversions; import org.bukkit.util.RayTraceResult; import org.bukkit.util.Vector; @@ -605,6 +606,10 @@ public LocationTag multiply(double input) { return this; } + public double distanceSquaredNoWorld(Location loc2) { + return NumberConversions.square(getX() - loc2.getX()) + NumberConversions.square(getY() - loc2.getY()) + NumberConversions.square(getZ() - loc2.getZ()); + } + public boolean hasInventory() { return getBlockState() instanceof InventoryHolder; }