Skip to content

Commit 2b4b50d

Browse files
Runtime error when calculating distance between different worlds (#8196)
* Return infinity when calculating distance between different worlds * Throw a runtime error when calculating distance between different worlds * add world names to runtime error message suggestion made by sovdeeth Co-authored-by: sovdee <[email protected]> * fix runtime error message suggestion by sovdeeth * Update runtime error message Co-authored-by: sovdee <[email protected]> * Update ExprDistance.java
1 parent bcaa8c2 commit 2b4b50d

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

src/main/java/ch/njol/skript/expressions/ExprDistance.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import ch.njol.skript.lang.Literal;
1111
import ch.njol.skript.lang.SkriptParser.ParseResult;
1212
import ch.njol.skript.lang.util.SimpleExpression;
13+
import ch.njol.skript.registrations.Classes;
1314
import ch.njol.util.Kleenean;
1415
import org.bukkit.Location;
1516
import org.bukkit.event.Event;
@@ -43,8 +44,12 @@ public boolean init(Expression<?>[] vars, int matchedPattern, Kleenean isDelayed
4344
protected Number[] get(Event event) {
4445
Location l1 = loc1.getSingle(event);
4546
Location l2 = loc2.getSingle(event);
46-
if (l1 == null || l2 == null || l1.getWorld() != l2.getWorld())
47+
if (l1 == null || l2 == null)
4748
return new Number[0];
49+
if (l1.getWorld() != l2.getWorld()) {
50+
error("Cannot calculate the distance between locations from two different worlds! (" + Classes.toString(l1.getWorld()) + " and " + Classes.toString(l2.getWorld()) + ")");
51+
return new Number[0];
52+
}
4853
return new Number[] {l1.distance(l2)};
4954
}
5055

0 commit comments

Comments
 (0)