From cf891f77a86e1a15798525dfeea4e8d4dc2a1a00 Mon Sep 17 00:00:00 2001 From: SamB440 Date: Tue, 23 Jun 2020 20:16:23 +0100 Subject: [PATCH] Add icon commands --- .../java/net/islandearth/rpgregions/gui/DiscoveryGUI.java | 3 ++- .../rpgregions/managers/data/region/ConfiguredRegion.java | 8 ++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/rpgregions/src/main/java/net/islandearth/rpgregions/gui/DiscoveryGUI.java b/rpgregions/src/main/java/net/islandearth/rpgregions/gui/DiscoveryGUI.java index e14e87b..de6df6c 100644 --- a/rpgregions/src/main/java/net/islandearth/rpgregions/gui/DiscoveryGUI.java +++ b/rpgregions/src/main/java/net/islandearth/rpgregions/gui/DiscoveryGUI.java @@ -247,7 +247,8 @@ public class DiscoveryGUI extends RPGRegionsGUI { if (configuredRegion.getWorld() == null) Translations.CANNOT_TELEPORT.send(player); else PaperLib.teleportAsync(player, new Location(configuredRegion.getWorld(), x, y, z)); } - + + if (!configuredRegion.getIconCommand().isEmpty()) player.performCommand(configuredRegion.getIconCommand().replace("%region%", configuredRegion.getId())); event.setCancelled(true); })); } diff --git a/rpgregions/src/main/java/net/islandearth/rpgregions/managers/data/region/ConfiguredRegion.java b/rpgregions/src/main/java/net/islandearth/rpgregions/managers/data/region/ConfiguredRegion.java index d54fa32..8ae70be 100644 --- a/rpgregions/src/main/java/net/islandearth/rpgregions/managers/data/region/ConfiguredRegion.java +++ b/rpgregions/src/main/java/net/islandearth/rpgregions/managers/data/region/ConfiguredRegion.java @@ -38,6 +38,7 @@ public class ConfiguredRegion { private final Sound sound; private final String icon; private final String undiscoveredIcon; + private final String iconCommand; private final boolean showCoords; private int x; private int y; @@ -66,6 +67,7 @@ public class ConfiguredRegion { this.sound = XSound.UI_TOAST_CHALLENGE_COMPLETE.parseSound(); this.icon = XMaterial.TOTEM_OF_UNDYING.name(); this.undiscoveredIcon = XMaterial.TOTEM_OF_UNDYING.name(); + this.iconCommand = ""; this.showCoords = false; this.x = x; this.y = y; @@ -91,6 +93,7 @@ public class ConfiguredRegion { this.sound = sound; this.icon = icon.name(); this.undiscoveredIcon = icon.name(); + this.iconCommand = ""; this.showCoords = false; this.x = x; this.y = y; @@ -138,6 +141,11 @@ public class ConfiguredRegion { return XMaterial.valueOf(undiscoveredIcon).parseItem(true); } + @NotNull + public String getIconCommand() { + return iconCommand == null ? "" : iconCommand; + } + public int getX() { return x; }