From cb100bb797aaa1c56c35d8587b1da5d68f87916f Mon Sep 17 00:00:00 2001 From: aromaa Date: Tue, 20 Sep 2022 12:35:33 +0300 Subject: [PATCH] Improve compatibility with the new onClearValue --- .../worldguard/session/handler/FlagValueChangeHandler.java | 6 ++++-- .../sk89q/worldguard/session/handler/NotifyExitFlag.java | 4 ++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/worldguard-core/src/main/java/com/sk89q/worldguard/session/handler/FlagValueChangeHandler.java b/worldguard-core/src/main/java/com/sk89q/worldguard/session/handler/FlagValueChangeHandler.java index 065b4191..a8f144e3 100644 --- a/worldguard-core/src/main/java/com/sk89q/worldguard/session/handler/FlagValueChangeHandler.java +++ b/worldguard-core/src/main/java/com/sk89q/worldguard/session/handler/FlagValueChangeHandler.java @@ -81,7 +81,9 @@ public abstract class FlagValueChangeHandler extends Handler { protected abstract boolean onAbsentValue(LocalPlayer player, Location from, Location to, ApplicableRegionSet toSet, T lastValue, MoveType moveType); protected void onClearValue(LocalPlayer player, ApplicableRegionSet set) { - Location current = player.getLocation(); - onAbsentValue(player, current, current, set, lastValue, MoveType.OTHER_NON_CANCELLABLE); + if (lastValue != null) { + Location current = player.getLocation(); + onAbsentValue(player, current, current, set, lastValue, MoveType.OTHER_NON_CANCELLABLE); + } } } diff --git a/worldguard-core/src/main/java/com/sk89q/worldguard/session/handler/NotifyExitFlag.java b/worldguard-core/src/main/java/com/sk89q/worldguard/session/handler/NotifyExitFlag.java index 7fd779b8..4da1af8d 100644 --- a/worldguard-core/src/main/java/com/sk89q/worldguard/session/handler/NotifyExitFlag.java +++ b/worldguard-core/src/main/java/com/sk89q/worldguard/session/handler/NotifyExitFlag.java @@ -59,4 +59,8 @@ public class NotifyExitFlag extends FlagValueChangeHandler { WorldGuard.getInstance().getPlatform().broadcastNotification(new Notify(player.getName(), " left NOTIFY region").create()); return true; } + + @Override + protected void onClearValue(LocalPlayer player, ApplicableRegionSet set) { + } }