mirror of
https://github.com/EngineHub/WorldGuard.git
synced 2025-02-18 21:32:49 +01:00
Don't call boundary crossing handlers unless a boundary was crossed.
This commit is contained in:
parent
7ecf73165b
commit
a3d2a1b127
@ -206,9 +206,11 @@ public Location testMoveTo(Player player, Location to, MoveType moveType, boolea
|
|||||||
Set<ProtectedRegion> entered = Sets.difference(toSet.getRegions(), lastRegionSet);
|
Set<ProtectedRegion> entered = Sets.difference(toSet.getRegions(), lastRegionSet);
|
||||||
Set<ProtectedRegion> exited = Sets.difference(lastRegionSet, toSet.getRegions());
|
Set<ProtectedRegion> exited = Sets.difference(lastRegionSet, toSet.getRegions());
|
||||||
|
|
||||||
for (Handler handler : handlers.values()) {
|
if (!entered.isEmpty() || !exited.isEmpty()) {
|
||||||
if (!handler.onCrossBoundary(player, lastValid, to, toSet, entered, exited, moveType) && moveType.isCancellable()) {
|
for (Handler handler : handlers.values()) {
|
||||||
return lastValid;
|
if (!handler.onCrossBoundary(player, lastValid, to, toSet, entered, exited, moveType) && moveType.isCancellable()) {
|
||||||
|
return lastValid;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user