From 1c6e6d6660175ffe203b063e73154ba453e35b40 Mon Sep 17 00:00:00 2001 From: JaTiTV Date: Mon, 28 Mar 2022 21:56:57 +0200 Subject: [PATCH 1/3] 2.6.2_Snapshop-1 The GUI listener has been redesigned in terms of code and improved in terms of performance. --- CommandGUI V2/pom.xml | 4 +- .../Spigot/Listener/GUI_Listener.java | 543 +++++++----------- .../Spigot/Listener/ItemChange.java | 3 - .../Spigot/Listener/PluginEvent.java | 8 +- .../Listener/UseItem_Listener/Events.java | 21 - .../Spigot/Objekte/Obj_Select.java | 2 - 6 files changed, 200 insertions(+), 381 deletions(-) diff --git a/CommandGUI V2/pom.xml b/CommandGUI V2/pom.xml index a1ed8ea..d80906f 100644 --- a/CommandGUI V2/pom.xml +++ b/CommandGUI V2/pom.xml @@ -6,7 +6,7 @@ net.t2code CommandGUI_V2 - 2.6.1 + 2.6.2_Snapshop-1 jar CommandGUI @@ -82,7 +82,7 @@ net.t2code T2CodeLib - 10.3 + 11.2 net.t2code diff --git a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/GUI_Listener.java b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/GUI_Listener.java index ed003b5..150f660 100644 --- a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/GUI_Listener.java +++ b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/GUI_Listener.java @@ -22,6 +22,7 @@ import org.bukkit.event.Listener; import org.bukkit.event.inventory.ClickType; import org.bukkit.event.inventory.InventoryClickEvent; import org.bukkit.plugin.Plugin; +import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.scheduler.BukkitRunnable; import java.io.File; @@ -36,362 +37,208 @@ public class GUI_Listener implements Listener { @EventHandler public void onInventoryClick(InventoryClickEvent e) { Player player = (Player) e.getWhoClicked(); - if (e.getInventory() != null && e.getCurrentItem() != null) { - for (Object gui : Main.guiHashMap.values()) { - if (player.getOpenInventory().getTitle().equals(Replace.replace(prefix, GUICode + gui.GUI_Name)) - || (Main.PaPi && player.getOpenInventory().getTitle().equals(Replace.replace(prefix, player, GUICode + gui.GUI_Name)))) { - e.setCancelled(true); - for (Slot slot : gui.GUI_Slots) { - /* if (!slot.ItemsRemovable) { - e.setCancelled(true); - } - */ - - if (e.getSlot() == slot.Slot) { - if (!slot.Perm - || player.hasPermission("commandgui.gui." + gui.Command_Command + ".slot." + (slot.Slot + 1)) - || player.hasPermission("commandgui.gui." + gui.Command_Command + ".slot." + (slot.Slot + 1) + ".use") - || player.hasPermission("commandgui.admin")) { - if (slot.Enable) { - if (e.getCurrentItem().getItemMeta().getDisplayName().equals(Replace.replace(prefix, slot.Name))) { - if (e.getCurrentItem().getType() == ItemVersion.getHead() || e.getCurrentItem().getType() == Material.valueOf(slot.Item.toUpperCase().replace(".", "_"))) { - if (slot.Cost_Enable) { - if (slot.Command_Enable || slot.Message_Enable || slot.OpenGUI_Enable || slot.ServerChange) { - if (Vault.buy(prefix, player, slot.Price)) { - player.sendMessage(SelectMessages.Buy_msg.replace("[itemname]", Replace.replace(prefix, slot.Name)) - .replace("[price]", slot.Price + " " + SelectConfig.Currency)); - if (slot.Command_Enable) { - - new BukkitRunnable() { - @Override - public void run() { - player.closeInventory(); - } - }.runTaskLater(plugin, 1L); - - new BukkitRunnable() { - @Override - public void run() { - if (slot.Command_BungeeCommand && SelectConfig.Bungee) { - for (String cmd : slot.Command) { - Bungee_Sender_Reciver.sendToBungee(player, cmd.replace("[player]", player.getName()), slot.CommandAsConsole); - } - } else { - if (slot.CommandAsConsole) { - for (String cmd : slot.Command) { - Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), cmd.replace("[player]", player.getName())); - } - } else { - for (String cmd : slot.Command) { - player.chat("/" + cmd.replace("[player]", player.getName())); - } - } - } - } - }.runTaskLater(plugin, 2L); - } - if (slot.OpenGUI_Enable) { - new BukkitRunnable() { - @Override - public void run() { - player.closeInventory(); - - } - }.runTaskLater(plugin, 1L); - new BukkitRunnable() { - @Override - public void run() { - OpenGUI.openGUI(player, Main.guiHashMap.get(slot.OpenGUI), slot.OpenGUI); - } - }.runTaskLater(plugin, 2L); - } - if (slot.Message_Enable) { - new BukkitRunnable() { - @Override - public void run() { - player.closeInventory(); - } - }.runTaskLater(plugin, 1L); - - for (String msg : slot.Message) { - if (Main.PaPi) { - player.sendMessage(Replace.replacePrice(prefix, player, msg, slot.Price + " " + SelectConfig.Currency)); - } else - player.sendMessage(Replace.replacePrice(prefix, msg, slot.Price + " " + SelectConfig.Currency)); - } - } - if (slot.ServerChange) { - new BukkitRunnable() { - @Override - public void run() { - player.closeInventory(); - } - }.runTaskLater(plugin, 1L); - - send.player(player, SelectMessages.onServerChange.replace("[server]", slot.ServerChangeServer)); - new BukkitRunnable() { - @Override - public void run() { - ServerChange.send(player, slot.ServerChangeServer); - } - }.runTaskLater(Main.plugin, 20L); - } - if (slot.SetConfigEnable) { - File config = new File(slot.ConfigFilePath); - YamlConfiguration yamlConfiguration = YamlConfiguration.loadConfiguration(config); - /*if (slot.ConfigChatInput){ - ConfigChat.EditChat.put(player, slot.ConfigOptionPath); - player.sendMessage(DefaultValue.SettingsGUIchatSet.replace("[setting]", "Shop Name Chest small")); - player.sendMessage(DefaultValue.SettingsGUIchatCancel); - } else - { - */ - if (e.getClick() == ClickType.LEFT) { - if (slot.ConfigOptionPremat.equals("String")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigStringValueLeft); - } else if (slot.ConfigOptionPremat.equals("Boolean")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigBooleanValueLeft); - } else if (slot.ConfigOptionPremat.equals("Integer")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigIntegerValueLeft); - } else if (slot.ConfigOptionPremat.equals("Double")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigDoubleValueLeft); - } else if (slot.ConfigOptionPremat.equals("List")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigListValueLeft); - } else { - player.sendMessage("§cCheck the Option §6SetConfig/Option/Premat"); //todo - } - } - if (e.getClick() == ClickType.RIGHT) { - if (slot.ConfigOptionPremat.equals("String")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigStringValueRight); - } else if (slot.ConfigOptionPremat.equals("Boolean")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigBooleanValueRight); - } else if (slot.ConfigOptionPremat.equals("Integer")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigIntegerValueRight); - } else if (slot.ConfigOptionPremat.equals("Double")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigDoubleValueRight); - } else if (slot.ConfigOptionPremat.equals("List")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigListValueRight); - } else { - player.sendMessage("§cCheck the Option §6SetConfig/Option/Premat"); //todo - } - } - try { - yamlConfiguration.save(config); - } catch (IOException tac) { - tac.printStackTrace(); - } - if (slot.PluginReloadEnable) { - Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), slot.PluginReloadCommand); - } - new BukkitRunnable() { - @Override - public void run() { - player.closeInventory(); - } - }.runTaskLater(plugin, 1L); - } - - if (SelectConfig.Sound_Enable && SelectConfig.Sound_Click_Enable) { - if (slot.CustomSound_Enable) { - if (!slot.CustomSound_NoSound) { - try { - player.playSound(player.getLocation(), Sound.valueOf(slot.CustomSound_Sound.toUpperCase().replace(".", "_")), 3, 1); - - } catch (Exception e1) { - send.console("§4\n§4\n§4\n" + SelectMessages.SoundNotFound.replace("[prefix]", prefix) - .replace("[sound]", "§6GUI: §e" + Replace.replace(prefix, gui.GUI_Name) + "§r §6Slot: §e" + slot.Slot + " §6CustomSound: §9" + slot.CustomSound_Sound)); - player.playSound(player.getLocation(), SelectConfig.Sound_Click, 3, 1); - } - } - } else - player.playSound(player.getLocation(), SelectConfig.Sound_Click, 3, 1); - } - - } else { - - new BukkitRunnable() { - @Override - public void run() { - player.closeInventory(); - } - }.runTaskLater(plugin, 1L); - - player.sendMessage(SelectMessages.No_money); - if (SelectConfig.Sound_NoMoney_Enable && SelectConfig.Sound_Enable) { - player.playSound(player.getLocation(), SelectConfig.Sound_NoMoney, 3, 1); - } - } - } - } else { - if (slot.Command_Enable) { - new BukkitRunnable() { - @Override - public void run() { - player.closeInventory(); - } - }.runTaskLater(plugin, 1L); - - new BukkitRunnable() { - @Override - public void run() { - if (slot.Command_BungeeCommand) { - if (SelectConfig.Bungee) { - for (String cmd : slot.Command) { - Bungee_Sender_Reciver.sendToBungee(player, cmd.replace("[player]", player.getName()), slot.CommandAsConsole); - } - } else { - send.console(prefix + " §4To use bungee commands, enable the Bungee option in the config."); - send.player(player, prefix + " §4To use bungee commands, enable the Bungee option in the config."); - } - - } else { - if (slot.CommandAsConsole) { - for (String cmd : slot.Command) { - Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), cmd.replace("[player]", player.getName())); - } - } else { - for (String cmd : slot.Command) { - player.chat("/" + cmd); - } - } - } - } - }.runTaskLater(plugin, 2L); - } - if (slot.OpenGUI_Enable) { - new BukkitRunnable() { - @Override - public void run() { - player.closeInventory(); - } - }.runTaskLater(plugin, 1L); - new BukkitRunnable() { - @Override - public void run() { - - OpenGUI.openGUI(player, Main.guiHashMap.get(slot.OpenGUI), slot.OpenGUI); - } - }.runTaskLater(plugin, 2L); - } - if (slot.Message_Enable) { - new BukkitRunnable() { - @Override - public void run() { - player.closeInventory(); - } - }.runTaskLater(plugin, 1L); - - - for (String msg : slot.Message) { - if (Main.PaPi) { - player.sendMessage(Replace.replace(prefix, player, msg.replace("[prefix]", prefix))); - } else - player.sendMessage(Replace.replace(prefix, msg.replace("[prefix]", prefix))); - } - } - if (slot.ServerChange) { - new BukkitRunnable() { - @Override - public void run() { - player.closeInventory(); - } - }.runTaskLater(plugin, 1L); - - send.player(player, SelectMessages.onServerChange.replace("[server]", slot.ServerChangeServer)); - - - new BukkitRunnable() { - @Override - public void run() { - ServerChange.send(player, slot.ServerChangeServer); - } - }.runTaskLater(Main.plugin, 20L); - } - if (slot.SetConfigEnable) { - File config = new File(slot.ConfigFilePath); - YamlConfiguration yamlConfiguration = YamlConfiguration.loadConfiguration(config); - /*if (slot.ConfigChatInput){ - ConfigChat.EditChat.put(player, slot.ConfigOptionPath); - player.sendMessage(DefaultValue.SettingsGUIchatSet.replace("[setting]", "Shop Name Chest small")); - player.sendMessage(DefaultValue.SettingsGUIchatCancel); - } else - { - */ - if (e.isLeftClick()) { - if (slot.ConfigOptionPremat.equals("String")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigStringValueLeft); - } else if (slot.ConfigOptionPremat.equals("Boolean")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigBooleanValueLeft); - } else if (slot.ConfigOptionPremat.equals("Integer")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigIntegerValueLeft); - } else if (slot.ConfigOptionPremat.equals("Double")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigDoubleValueLeft); - } else if (slot.ConfigOptionPremat.equals("List")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigListValueLeft); - } else { - player.sendMessage("§cCheck the Option §6SetConfig/Option/Premat"); //todo - } - } - if (e.isRightClick()) { - if (slot.ConfigOptionPremat.equals("String")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigStringValueRight); - } else if (slot.ConfigOptionPremat.equals("Boolean")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigBooleanValueRight); - } else if (slot.ConfigOptionPremat.equals("Integer")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigIntegerValueRight); - } else if (slot.ConfigOptionPremat.equals("Double")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigDoubleValueRight); - } else if (slot.ConfigOptionPremat.equals("List")) { - yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigListValueRight); - } else { - player.sendMessage("§cCheck the Option §6SetConfig/Option/Premat"); //todo - } - } - try { - yamlConfiguration.save(config); - } catch (IOException tac) { - tac.printStackTrace(); - } - if (slot.PluginReloadEnable) { - Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), slot.PluginReloadCommand); - } - new BukkitRunnable() { - @Override - public void run() { - player.closeInventory(); - } - }.runTaskLater(plugin, 1L); - } - if (SelectConfig.Sound_Enable && SelectConfig.Sound_Click_Enable) { - if (slot.CustomSound_Enable) { - if (!slot.CustomSound_NoSound) { - try { - player.playSound(player.getLocation(), Sound.valueOf(slot.CustomSound_Sound.toUpperCase().replace(".", "_")), 3, 1); - - } catch (Exception e1) { - send.console("§4\n§4\n§4\n" + SelectMessages.SoundNotFound.replace("[prefix]", prefix) - .replace("[sound]", "§6GUI: §e" + Replace.replace(prefix, gui.GUI_Name) + "§r §6Slot: §e" + slot.Slot + " §6CustomSound: §9" + slot.CustomSound_Sound)); - player.playSound(player.getLocation(), SelectConfig.Sound_Click, 3, 1); - } - } - } else - player.playSound(player.getLocation(), SelectConfig.Sound_Click, 3, 1); - } + JavaPlugin plugin = Main.plugin; + if (e.getInventory() == null) return; + if (e.getCurrentItem() == null) return; + for (Object gui : Main.guiHashMap.values()) { + if (player.getOpenInventory().getTitle().equals(Replace.replace(prefix, GUICode + gui.GUI_Name)) + || (Main.PaPi && player.getOpenInventory().getTitle().equals(Replace.replace(prefix, player, GUICode + gui.GUI_Name)))) { + e.setCancelled(true); + for (Slot slot : gui.GUI_Slots) { + if (e.getSlot() != slot.Slot) continue; + if (!slot.Perm + || player.hasPermission("commandgui.gui." + gui.Command_Command + ".slot." + (slot.Slot + 1)) + || player.hasPermission("commandgui.gui." + gui.Command_Command + ".slot." + (slot.Slot + 1) + ".use") + || player.hasPermission("commandgui.admin")) { + if (!slot.Enable) continue; + if (!e.getCurrentItem().getItemMeta().getDisplayName().equals(Replace.replace(prefix, slot.Name))) continue; + if (e.getCurrentItem().getType() == ItemVersion.getHead() || e.getCurrentItem().getType() == Material.valueOf(slot.Item.toUpperCase().replace(".", "_"))) { + if (slot.Cost_Enable) { + if (slot.Command_Enable || slot.Message_Enable || slot.OpenGUI_Enable || slot.ServerChange) { + if (!Vault.buy(prefix, player, slot.Price)) { + new BukkitRunnable() { + @Override + public void run() { + player.closeInventory(); } - } + }.runTaskLater(plugin, 1L); + player.sendMessage(SelectMessages.No_money); + if (SelectConfig.Sound_NoMoney_Enable && SelectConfig.Sound_Enable) player.playSound(player.getLocation(), SelectConfig.Sound_NoMoney, 3, 1); + } else { + player.sendMessage(SelectMessages.Buy_msg.replace("[itemname]", Replace.replace(prefix, slot.Name)) + .replace("[price]", slot.Price + " " + SelectConfig.Currency)); + execute(slot, player, e, gui); } } - } else { - player.sendMessage(SelectMessages.NoPermissionForItem.replace("[item]", Replace.replace(prefix, slot.Name)) - .replace("[perm]", "commandgui.gui." + gui.Command_Command + ".slot." + (slot.Slot + 1))); - } + } else execute(slot, player, e, gui); } - } + } else player.sendMessage(SelectMessages.NoPermissionForItem.replace("[item]", Replace.replace(prefix, slot.Name)) + .replace("[perm]", "commandgui.gui." + gui.Command_Command + ".slot." + (slot.Slot + 1))); } } } } + + private static void execute(Slot slot, Player player, InventoryClickEvent e, Object gui) { + if (slot.Command_Enable) command(slot, player); + if (slot.OpenGUI_Enable) openGUI(slot, player); + if (slot.Message_Enable) message(slot, player); + if (slot.ServerChange) serverChange(slot, player); + if (slot.SetConfigEnable) setConfig(slot, player, e); + if (SelectConfig.Sound_Enable && SelectConfig.Sound_Click_Enable) sound(slot, player, gui); + } + + private static void command(Slot slot, Player player) { + new BukkitRunnable() { + @Override + public void run() { + player.closeInventory(); + } + }.runTaskLater(plugin, 1L); + new BukkitRunnable() { + @Override + public void run() { + if (slot.Command_BungeeCommand) { + if (SelectConfig.Bungee) { + for (String cmd : slot.Command) { + Bungee_Sender_Reciver.sendToBungee(player, cmd.replace("[player]", player.getName()), slot.CommandAsConsole); + } + } else { + send.console(prefix + " §4To use bungee commands, enable the Bungee option in the config."); + send.player(player, prefix + " §4To use bungee commands, enable the Bungee option in the config."); + } + } else { + for (String cmd : slot.Command) { + if (slot.CommandAsConsole) { + Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), cmd.replace("[player]", player.getName())); + } else player.chat("/" + cmd.replace("[player]", player.getName())); + } + } + } + }.runTaskLater(plugin, 2L); + } + + private static void openGUI(Slot slot, Player player) { + new BukkitRunnable() { + @Override + public void run() { + player.closeInventory(); + } + }.runTaskLater(plugin, 1L); + new BukkitRunnable() { + @Override + public void run() { + OpenGUI.openGUI(player, Main.guiHashMap.get(slot.OpenGUI), slot.OpenGUI); + } + }.runTaskLater(plugin, 2L); + } + + private static void message(Slot slot, Player player) { + new BukkitRunnable() { + @Override + public void run() { + player.closeInventory(); + } + }.runTaskLater(plugin, 1L); + for (String msg : slot.Message) { + if (Main.PaPi) { + if (slot.Cost_Enable) { + player.sendMessage(Replace.replacePrice(prefix, player, msg, slot.Price + " " + SelectConfig.Currency)); + } else player.sendMessage(Replace.replace(prefix, player, msg.replace("[prefix]", prefix))); + } else { + if (slot.Cost_Enable) { + player.sendMessage(Replace.replacePrice(prefix, msg, slot.Price + " " + SelectConfig.Currency)); + } else player.sendMessage(Replace.replace(prefix, msg.replace("[prefix]", prefix))); + } + } + } + + private static void serverChange(Slot slot, Player player) { + new BukkitRunnable() { + @Override + public void run() { + player.closeInventory(); + } + }.runTaskLater(plugin, 1L); + send.player(player, SelectMessages.onServerChange.replace("[server]", slot.ServerChangeServer)); + new BukkitRunnable() { + @Override + public void run() { + ServerChange.send(player, slot.ServerChangeServer); + } + }.runTaskLater(Main.plugin, 20L); + } + + private static void setConfig(Slot slot, Player player, InventoryClickEvent e) { + File config = new File(slot.ConfigFilePath); + YamlConfiguration yamlConfiguration = YamlConfiguration.loadConfiguration(config); + /*if (slot.ConfigChatInput){ + ConfigChat.EditChat.put(player, slot.ConfigOptionPath); + player.sendMessage(DefaultValue.SettingsGUIchatSet.replace("[setting]", "Shop Name Chest small")); + player.sendMessage(DefaultValue.SettingsGUIchatCancel); + } else + { + */ + if (e.getClick() == ClickType.LEFT) { + if (slot.ConfigOptionPremat.equals("String")) { + yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigStringValueLeft); + } else if (slot.ConfigOptionPremat.equals("Boolean")) { + yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigBooleanValueLeft); + } else if (slot.ConfigOptionPremat.equals("Integer")) { + yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigIntegerValueLeft); + } else if (slot.ConfigOptionPremat.equals("Double")) { + yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigDoubleValueLeft); + } else if (slot.ConfigOptionPremat.equals("List")) { + yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigListValueLeft); + } else { + player.sendMessage("§cCheck the Option §6SetConfig/Option/Premat"); //todo + } + } + if (e.getClick() == ClickType.RIGHT) { + if (slot.ConfigOptionPremat.equals("String")) { + yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigStringValueRight); + } else if (slot.ConfigOptionPremat.equals("Boolean")) { + yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigBooleanValueRight); + } else if (slot.ConfigOptionPremat.equals("Integer")) { + yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigIntegerValueRight); + } else if (slot.ConfigOptionPremat.equals("Double")) { + yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigDoubleValueRight); + } else if (slot.ConfigOptionPremat.equals("List")) { + yamlConfiguration.set(slot.ConfigOptionPath.replace("/", "."), slot.ConfigListValueRight); + } else { + player.sendMessage("§cCheck the Option §6SetConfig/Option/Premat"); //todo + } + } + try { + yamlConfiguration.save(config); + } catch (IOException tac) { + tac.printStackTrace(); + } + if (slot.PluginReloadEnable) { + Bukkit.getServer().dispatchCommand(Bukkit.getServer().getConsoleSender(), slot.PluginReloadCommand); + } + new BukkitRunnable() { + @Override + public void run() { + player.closeInventory(); + } + }.runTaskLater(plugin, 1L); + } + + private static void sound(Slot slot, Player player, Object gui) { + if (slot.CustomSound_Enable) { + if (!slot.CustomSound_NoSound) { + try { + player.playSound(player.getLocation(), Sound.valueOf(slot.CustomSound_Sound.toUpperCase().replace(".", "_")), 3, 1); + + } catch (Exception e1) { + send.console("§4\n§4\n§4\n" + SelectMessages.SoundNotFound.replace("[prefix]", prefix) + .replace("[sound]", "§6GUI: §e" + Replace.replace(prefix, gui.GUI_Name) + "§r §6Slot: §e" + slot.Slot + " §6CustomSound: §9" + slot.CustomSound_Sound)); + player.playSound(player.getLocation(), SelectConfig.Sound_Click, 3, 1); + } + } + } else player.playSound(player.getLocation(), SelectConfig.Sound_Click, 3, 1); + } } diff --git a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/ItemChange.java b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/ItemChange.java index 7f75c33..4e2f9b8 100644 --- a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/ItemChange.java +++ b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/ItemChange.java @@ -23,7 +23,6 @@ public class ItemChange { slot = Select_Database.selectSlot(player); } } - if (!SelectConfig.UseItem_Enable) { return; } @@ -101,7 +100,6 @@ public class ItemChange { } } }.runTaskLater(Main.plugin, 1L * 1); - } private static void setCursor(Player player, int slot) { @@ -153,6 +151,5 @@ public class ItemChange { } } } - } } diff --git a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/PluginEvent.java b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/PluginEvent.java index ee662f0..f3e7a78 100644 --- a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/PluginEvent.java +++ b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/PluginEvent.java @@ -23,10 +23,9 @@ public class PluginEvent implements Listener { public void onJoinEvent(PlayerLoginEvent event) { Player player = event.getPlayer(); Select_Database.nameCheck(player); - UpdateAPI.join(Main.plugin,prefix, "commandgui.updatemsg", event.getPlayer(), Util.getSpigot(), Util.getDiscord()); + UpdateAPI.join(Main.plugin, prefix, "commandgui.updatemsg", event.getPlayer(), Util.getSpigot(), Util.getDiscord()); } - @EventHandler public void onClearServer(ServerCommandEvent event) { if (SelectConfig.UseItem_KeepAtCommandClear) { @@ -36,11 +35,11 @@ public class PluginEvent implements Listener { public void run() { try { Player player = Bukkit.getPlayer(event.getCommand().replace("/", "").replace("clear ", "")); - if (player == null){ + if (player == null) { return; } clearGive(player); - } catch (Exception ex){ + } catch (Exception ex) { ex.printStackTrace(); return; } @@ -50,7 +49,6 @@ public class PluginEvent implements Listener { } } - @EventHandler public void onClearPlayer(PlayerCommandPreprocessEvent event) { if (SelectConfig.UseItem_KeepAtCommandClear) { diff --git a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/UseItem_Listener/Events.java b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/UseItem_Listener/Events.java index fd17a5e..ac00ae0 100644 --- a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/UseItem_Listener/Events.java +++ b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/UseItem_Listener/Events.java @@ -80,25 +80,6 @@ public class Events implements Listener { Player player = e.getPlayer(); if (SelectConfig.UseItem_Enable) { ItemChange.itemChange(player, false); - //if (!SelectConfig.UseItem_AllowToggle || Select_Database.selectItemStatus(player)) { - // if (SelectConfig.UseItem_GiveOnlyOnFirstJoin) { - // if (!player.hasPlayedBefore()) { - // new BukkitRunnable() { - // @Override - // public void run() { - // Give_UseItem.onGive(player); - // } - // }.runTaskLater(Main.plugin, 20L * 1); - // } - // } else { - // new BukkitRunnable() { - // @Override - // public void run() { - // Give_UseItem.onGive(player); - // } - // }.runTaskLater(Main.plugin, 20L * 1); - // } - //} } } @@ -130,7 +111,6 @@ public class Events implements Listener { }.runTaskLater(Main.plugin, SelectConfig.UseItemWorldChangeDelayInTicks * 1L); } - @EventHandler(priority = EventPriority.HIGHEST) public void onInteract(PlayerInteractEvent e) { Player p = e.getPlayer(); @@ -206,7 +186,6 @@ public class Events implements Listener { } } - @EventHandler(priority = EventPriority.HIGHEST) public void onItemMove(InventoryDragEvent e) { if (!SelectConfig.UseItem_BlockMoveAndDrop || !SelectConfig.UseItem_Enable) return; diff --git a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Objekte/Obj_Select.java b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Objekte/Obj_Select.java index 55a3761..74cb8d9 100644 --- a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Objekte/Obj_Select.java +++ b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Objekte/Obj_Select.java @@ -93,7 +93,6 @@ public class Obj_Select { yamlConfiguration_gui.getBoolean("Slots." + key + ".SetConfig.PluginReload.Enable"), yamlConfiguration_gui.getString("Slots." + key + ".SetConfig.PluginReload.Command")); slots.add(slot); - } Object objekt = new Object(GUI_Enable, GUI_Lines, GUI_Name, GUI_FillItem_Enable, GUI_FillItem_Item, config_gui.getName().replace(".yml", ""), Command_Alias_Enable, Command_Permission, slots); @@ -107,7 +106,6 @@ public class Obj_Select { e.printStackTrace(); } } - } } } From 17b1a0568e0f841d7f35f1143aee4e08c524f7fb Mon Sep 17 00:00:00 2001 From: JaTiTV Date: Wed, 6 Apr 2022 20:21:19 +0200 Subject: [PATCH 2/3] bugfix If you didn't have the permission to see an item, you could still click on it and get the message that you don't have the permission. This has now been changed so that you only get the message if you can see the item. --- CommandGUI V2/pom.xml | 2 +- .../Spigot/Listener/GUI_Listener.java | 21 ++++++++++--------- .../de/jatitv/commandguiv2/Spigot/Main.java | 3 ++- 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/CommandGUI V2/pom.xml b/CommandGUI V2/pom.xml index d80906f..457f4f6 100644 --- a/CommandGUI V2/pom.xml +++ b/CommandGUI V2/pom.xml @@ -6,7 +6,7 @@ net.t2code CommandGUI_V2 - 2.6.2_Snapshop-1 + 2.6.2_Snapshot-2 jar CommandGUI diff --git a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/GUI_Listener.java b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/GUI_Listener.java index 150f660..0a95d66 100644 --- a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/GUI_Listener.java +++ b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Listener/GUI_Listener.java @@ -46,13 +46,13 @@ public class GUI_Listener implements Listener { e.setCancelled(true); for (Slot slot : gui.GUI_Slots) { if (e.getSlot() != slot.Slot) continue; - if (!slot.Perm - || player.hasPermission("commandgui.gui." + gui.Command_Command + ".slot." + (slot.Slot + 1)) - || player.hasPermission("commandgui.gui." + gui.Command_Command + ".slot." + (slot.Slot + 1) + ".use") - || player.hasPermission("commandgui.admin")) { - if (!slot.Enable) continue; - if (!e.getCurrentItem().getItemMeta().getDisplayName().equals(Replace.replace(prefix, slot.Name))) continue; - if (e.getCurrentItem().getType() == ItemVersion.getHead() || e.getCurrentItem().getType() == Material.valueOf(slot.Item.toUpperCase().replace(".", "_"))) { + if (e.getCurrentItem().getType() == ItemVersion.getHead() || e.getCurrentItem().getType() == Material.valueOf(slot.Item.toUpperCase().replace(".", "_"))) { + if (!slot.Perm + || player.hasPermission("commandgui.gui." + gui.Command_Command + ".slot." + (slot.Slot + 1)) + || player.hasPermission("commandgui.gui." + gui.Command_Command + ".slot." + (slot.Slot + 1) + ".use") + || player.hasPermission("commandgui.admin")) { + if (!slot.Enable) continue; + if (!e.getCurrentItem().getItemMeta().getDisplayName().equals(Replace.replace(prefix, slot.Name))) continue; if (slot.Cost_Enable) { if (slot.Command_Enable || slot.Message_Enable || slot.OpenGUI_Enable || slot.ServerChange) { if (!Vault.buy(prefix, player, slot.Price)) { @@ -63,7 +63,8 @@ public class GUI_Listener implements Listener { } }.runTaskLater(plugin, 1L); player.sendMessage(SelectMessages.No_money); - if (SelectConfig.Sound_NoMoney_Enable && SelectConfig.Sound_Enable) player.playSound(player.getLocation(), SelectConfig.Sound_NoMoney, 3, 1); + if (SelectConfig.Sound_NoMoney_Enable && SelectConfig.Sound_Enable) + player.playSound(player.getLocation(), SelectConfig.Sound_NoMoney, 3, 1); } else { player.sendMessage(SelectMessages.Buy_msg.replace("[itemname]", Replace.replace(prefix, slot.Name)) .replace("[price]", slot.Price + " " + SelectConfig.Currency)); @@ -71,9 +72,9 @@ public class GUI_Listener implements Listener { } } } else execute(slot, player, e, gui); - } - } else player.sendMessage(SelectMessages.NoPermissionForItem.replace("[item]", Replace.replace(prefix, slot.Name)) + } else player.sendMessage(SelectMessages.NoPermissionForItem.replace("[item]", Replace.replace(prefix, slot.Name)) .replace("[perm]", "commandgui.gui." + gui.Command_Command + ".slot." + (slot.Slot + 1))); + } } } } diff --git a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Main.java b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Main.java index 040854a..741f0a7 100644 --- a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Main.java +++ b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/Main.java @@ -69,7 +69,8 @@ public final class Main extends JavaPlugin { if (PluginCheck.plotSquaredGUI()) { PlotSquaredGUI = true; addonEnable(Bukkit.getPluginManager().getPlugin("PlotSquaredGUI")); - }if (PluginCheck.luckyBox()) { + } + if (PluginCheck.luckyBox()) { LuckyBox = true; addonEnable(Bukkit.getPluginManager().getPlugin("T2C-LuckyBox")); } From 58409dc52304f23b62ea13725fef87f8f8599a27 Mon Sep 17 00:00:00 2001 From: JaTiTV Date: Fri, 15 Apr 2022 20:30:20 +0200 Subject: [PATCH 3/3] Update pom.xml --- CommandGUI V2/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CommandGUI V2/pom.xml b/CommandGUI V2/pom.xml index 457f4f6..34b78cb 100644 --- a/CommandGUI V2/pom.xml +++ b/CommandGUI V2/pom.xml @@ -82,7 +82,7 @@ net.t2code T2CodeLib - 11.2 + 11.4 net.t2code