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() {