From 17fbbf5553d60200ff2e6d30ecaac34c634d2100 Mon Sep 17 00:00:00 2001 From: Frank van der Heijden <22407829+FrankHeijden@users.noreply.github.com> Date: Thu, 6 Aug 2020 18:02:51 +0200 Subject: [PATCH] Add visualizingNearbyClaims flag to VisualizationEvent (#940) --- .../GriefPrevention/PlayerEventHandler.java | 2 +- .../events/VisualizationEvent.java | 24 +++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/src/main/java/me/ryanhamshire/GriefPrevention/PlayerEventHandler.java b/src/main/java/me/ryanhamshire/GriefPrevention/PlayerEventHandler.java index 48a7e83..ff74742 100644 --- a/src/main/java/me/ryanhamshire/GriefPrevention/PlayerEventHandler.java +++ b/src/main/java/me/ryanhamshire/GriefPrevention/PlayerEventHandler.java @@ -1957,7 +1957,7 @@ class PlayerEventHandler implements Listener Set claims = this.dataStore.getNearbyClaims(player.getLocation()); // alert plugins of a visualization - Bukkit.getPluginManager().callEvent(new VisualizationEvent(player, claims)); + Bukkit.getPluginManager().callEvent(new VisualizationEvent(player, claims, true)); //visualize boundaries Visualization visualization = Visualization.fromClaims(claims, player.getEyeLocation().getBlockY(), VisualizationType.Claim, player.getLocation()); diff --git a/src/main/java/me/ryanhamshire/GriefPrevention/events/VisualizationEvent.java b/src/main/java/me/ryanhamshire/GriefPrevention/events/VisualizationEvent.java index f5d953d..d4156c8 100644 --- a/src/main/java/me/ryanhamshire/GriefPrevention/events/VisualizationEvent.java +++ b/src/main/java/me/ryanhamshire/GriefPrevention/events/VisualizationEvent.java @@ -16,6 +16,7 @@ public class VisualizationEvent extends PlayerEvent private static final HandlerList handlers = new HandlerList(); private final Collection claims; private final boolean showSubdivides; + private final boolean visualizingNearbyClaims; /** * New visualization being sent to player @@ -28,6 +29,7 @@ public class VisualizationEvent extends PlayerEvent super(player); this.claims = Collections.singleton(claim); this.showSubdivides = true; + this.visualizingNearbyClaims = false; } /** @@ -37,10 +39,23 @@ public class VisualizationEvent extends PlayerEvent * @param claims Claims being visualized (without subdivides) */ public VisualizationEvent(Player player, Collection claims) + { + this(player, claims, false); + } + + /** + * New visualization being sent to player + * + * @param player Player receiving visuals + * @param claims Claims being visualized (without subdivides) + * @param visualizingNearbyClaims If the event is called on nearby claims (shift inspecting) + */ + public VisualizationEvent(Player player, Collection claims, boolean visualizingNearbyClaims) { super(player); this.claims = claims; this.showSubdivides = false; + this.visualizingNearbyClaims = visualizingNearbyClaims; } /** @@ -63,6 +78,15 @@ public class VisualizationEvent extends PlayerEvent return showSubdivides; } + /** + * Check if event was called through shift-inspecting with the inspection tool. + * @return True if shift-inspecting + */ + public boolean isVisualizingNearbyClaims() + { + return visualizingNearbyClaims; + } + @Override public HandlerList getHandlers() {