package de.jatitv.commandguiv2.Spigot.cmdManagement; import de.jatitv.commandguiv2.Spigot.Listener.UseItem_Listener.Events; import de.jatitv.commandguiv2.Spigot.Main; import de.jatitv.commandguiv2.Spigot.objects.Obj_Select; import de.jatitv.commandguiv2.Spigot.objects.guis.Gui; import de.jatitv.commandguiv2.Spigot.cmdManagement.register.AliasRegister; import de.jatitv.commandguiv2.Spigot.gui.OpenGUI; import de.jatitv.commandguiv2.Spigot.system.Give_UseItem; import de.jatitv.commandguiv2.Spigot.config.config.ConfigCreate; import de.jatitv.commandguiv2.Spigot.config.config.SelectConfig; import de.jatitv.commandguiv2.Spigot.config.languages.LanguagesCreate; import de.jatitv.commandguiv2.Spigot.config.languages.SelectMessages; import de.jatitv.commandguiv2.Spigot.system.RegisterPermissions; import de.jatitv.commandguiv2.Spigot.system.database.Select_Database; import de.jatitv.commandguiv2.Util; import net.t2code.lib.Spigot.Lib.items.ItemVersion; import net.t2code.lib.Spigot.Lib.messages.send; import net.t2code.lib.Spigot.Lib.update.UpdateAPI; import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; public class Commands { public static void info(CommandSender sender) { if (sender instanceof Player) { Player player = (Player) sender; send.player(player, Util.getPrefix() + "§4======= §8[§4Command§9GUI§8] §4======="); send.player(player, Util.getPrefix() + " §2Autor: §6" + String.valueOf(Main.autor).replace("[", "").replace("]", "")); if (UpdateAPI.PluginVersionen.get(Main.plugin.getName()).publicVersion.equalsIgnoreCase(Main.version)) { send.player(player, Util.getPrefix() + " §2Version: §6" + Main.version); } else { UpdateAPI.sendUpdateMsg(Util.getPrefix(), Util.getSpigot(), Util.getDiscord(), Main.version, UpdateAPI.PluginVersionen.get(Main.plugin.getName()).publicVersion, player); } send.player(player, Util.getPrefix() + " §2Spigot: §6" + Util.getSpigot()); send.player(player, Util.getPrefix() + " §2Discord: §6" + Util.getDiscord()); send.player(player, Util.getPrefix() + "§4======= §8[§4Command§9GUI§8] §4======="); } else { send.sender(sender, Util.getPrefix() + "§4======= §8[§4Command§9GUI§8] §4======="); send.sender(sender, Util.getPrefix() + " §2String.valueOf(Main.autor): §6" + String.valueOf(String.valueOf(Main.autor)).replace("[", "").replace("]", "")); if (UpdateAPI.PluginVersionen.get(Main.plugin.getName()).publicVersion.equalsIgnoreCase(Main.version)) { send.sender(sender, Util.getPrefix() + " §2Version: §6" + Main.version); } else { UpdateAPI.sendUpdateMsg(Util.getPrefix(), Util.getSpigot(), Util.getDiscord(), Main.version, UpdateAPI.PluginVersionen.get(Main.plugin.getName()).publicVersion); } send.sender(sender, Util.getPrefix() + " §2Spigot: §6" + Util.getSpigot()); send.sender(sender, Util.getPrefix() + " §2Discord: §6" + Util.getDiscord()); send.sender(sender, Util.getPrefix() + "§4======= §8[§4Command§9GUI§8] §4======="); } } public static void reload(CommandSender sender) { if (sender instanceof Player) sender.sendMessage(SelectMessages.ReloadStart); send.console(Util.getPrefix() + "§8-------------------------------"); send.console(Util.getPrefix() + " §6Plugin reload..."); send.console(Util.getPrefix() + "§8-------------------------------"); CmdExecuter_GUITab.arg1.clear(); CmdExecuter_GUITab.arg1.put("admin", "commandgui.admin;commandgui.giveitem.other;commandgui.command.info"); ConfigCreate.configCreate(); SelectConfig.onSelect(); Main.plugin.reloadConfig(); LanguagesCreate.langCreate(); Obj_Select.onSelect(); SelectMessages.onSelect(Util.getPrefix()); SelectConfig.sound(Util.getPrefix()); try { AliasRegister.onRegister(); } catch (Exception e) { e.printStackTrace(); } try { RegisterPermissions.onPermRegister(); } catch (Exception e) { e.printStackTrace(); } if (SelectConfig.Bungee) { Bukkit.getMessenger().registerOutgoingPluginChannel(Main.plugin, "commandgui:bungee"); } if (sender instanceof Player) sender.sendMessage(SelectMessages.ReloadEnd); send.console(Util.getPrefix() + "§8-------------------------------"); send.console(Util.getPrefix() + " §2Plugin successfully reloaded."); send.console(Util.getPrefix() + "§8-------------------------------"); } public static void give(CommandSender sender, Player target) { if (Bukkit.getPlayer(target.getName()) != null) { Give_UseItem.onGive(target); send.sender(sender, SelectMessages.Give_Sender.replace("[player]", target.getName()).replace("[item]", SelectConfig.UseItem_Name)); send.player(target, SelectMessages.Give_Receiver.replace("[sender]", sender.getName()).replace("[item]", SelectConfig.UseItem_Name)); if (SelectConfig.Sound_Give_Enable && SelectConfig.Sound_Enable) { target.playSound(target.getLocation(), SelectConfig.Sound_Give, 3, 1); } } else { sender.sendMessage(SelectMessages.PlayerNotFond.replace("[player]", target.getName())); if (SelectConfig.Sound_PlayerNotFound_Enable && SelectConfig.Sound_Enable) { if (sender instanceof Player) ((Player) sender).playSound(((Player) sender).getLocation(), SelectConfig.Sound_PlayerNotFound, 3, 1); } } } public static void itemOn(Player player) { for (int iam = 0; iam < player.getInventory().getSize() - 5; iam++) { ItemStack itm = player.getInventory().getItem(iam); if (itm != null) { if (itm.getType() == Material.valueOf(SelectConfig.UseItem_Material) || itm.getType() == ItemVersion.getHead()) { if (itm.getItemMeta().getDisplayName().equals(SelectConfig.UseItem_Name)) { player.getInventory().remove(itm); player.updateInventory(); break; } } } } Integer slot = null; if (SelectConfig.UseItem_InventorySlotEnforce) { slot = SelectConfig.UseItem_InventorySlot; } else { if (Events.useItemSlotHashMap.get(player) == null) { slot = SelectConfig.UseItem_InventorySlot; } else { slot = Events.useItemSlotHashMap.get(player); } } send.debug(Main.plugin, String.valueOf(slot)); if (player.getInventory().getItem(slot - 1) == null) { Select_Database.setItemStatusTrue(player); Give_UseItem.onGive(player); } else { boolean empty = false; for (int i = 0; i < 9; i++) { if (player.getInventory().getItem(i) == null) { empty = true; break; } } if (empty) { Select_Database.setItemStatusTrue(player); Give_UseItem.onGiveADD(player); send.player(player, SelectMessages.ItemON); } else { player.sendMessage(SelectMessages.NoInventorySpace); if (SelectConfig.Sound_NoInventorySpace_Enable && SelectConfig.Sound_Enable) { player.playSound(player.getLocation(), SelectConfig.Sound_NoInventorySpace, 3, 1); } } } } public static void itemOff(Player player) { Select_Database.setItemStatusFalse(player); for (int iam = 0; iam < player.getInventory().getSize() - 5; iam++) { ItemStack itm = player.getInventory().getItem(iam); if (itm != null) { if (itm.getType() == Material.valueOf(SelectConfig.UseItem_Material) || itm.getType() == ItemVersion.getHead()) { if (itm.getItemMeta().getDisplayName().equals(SelectConfig.UseItem_Name)) { player.getInventory().remove(itm); player.updateInventory(); send.player(player, SelectMessages.ItemOFF); } } } } } public static void onSetSlot(Player player, Integer setSlot) { if (SelectConfig.UseItem_AllowSetSlot) { if (setSlot < 1) { send.player(player, SelectMessages.ItemSlot_wrongValue); return; } if (setSlot > 9) { send.player(player, SelectMessages.ItemSlot_wrongValue); return; } ItemStack itm1 = player.getInventory().getItem(setSlot - 1); if (itm1 != null) { if (itm1.getType() == Material.valueOf(SelectConfig.UseItem_Material) || itm1.getType() == ItemVersion.getHead()) { if (itm1.getItemMeta().getDisplayName().equals(SelectConfig.UseItem_Name)) { player.sendMessage(SelectMessages.ItemSlotAlreadySet.replace("[slot]", setSlot.toString())); return; } } } if (SelectConfig.UseItem_InventorySlotEnforce || player.getInventory().getItem(setSlot - 1) != null) { send.player(player, SelectMessages.ItemSlotNotEmpty.replace("[slot]", setSlot.toString())); return; } for (int iam = 0; iam < player.getInventory().getSize() - 5; iam++) { ItemStack itm = player.getInventory().getItem(iam); if (itm != null) { if (itm.getType() == Material.valueOf(SelectConfig.UseItem_Material) || itm.getType() == ItemVersion.getHead()) { if (itm.getItemMeta().getDisplayName().equals(SelectConfig.UseItem_Name)) { player.getInventory().remove(itm); player.updateInventory(); break; } } } } Select_Database.setSlot(player, setSlot); if (Events.useItemHashMap.get(player)) { Give_UseItem.onGive(player); } send.player(player, SelectMessages.ItemSlot.replace("[slot]", setSlot.toString())); } else player.sendMessage(Util.getPrefix() + " §4Function disabled"); } public static void gui(Player player) { if (Main.guiHashMap.containsKey(SelectConfig.DefaultGUI)) { Gui gui = Main.guiHashMap.get(SelectConfig.DefaultGUI); if (gui.GUI_Enable || player.hasPermission("commandgui.bypass")) { if (!gui.Command_Permission_Enable || player.hasPermission("commandgui.command") || player.hasPermission("commandgui.bypass")) { OpenGUI.openGUI(player, SelectConfig.DefaultGUI); } else player.sendMessage(SelectMessages.NoPermissionForCommand.replace("[cmd]", "/commandgui") .replace("[perm]", "commandgui.command")); } else player.sendMessage(SelectMessages.GUIIsDisabled.replace("[gui]", gui.GUI_Name)); } } public static void gui(Player player, String arg) { if (Main.guiHashMap.containsKey(arg)) { Gui gui = Main.guiHashMap.get(arg); if (gui.GUI_Enable || player.hasPermission("commandgui.bypass")) { if (!gui.Command_Permission_Enable || player.hasPermission("commandgui.command." + gui.Command_Command) || player.hasPermission("commandgui.bypass")) { OpenGUI.openGUI(player, arg); } else player.sendMessage(SelectMessages.NoPermissionForCommand.replace("[cmd]", "/commandgui " + gui.Command_Command) .replace("[perm]", "commandgui.command." + arg.toLowerCase())); } else player.sendMessage(SelectMessages.GUIIsDisabled.replace("[gui]", gui.Command_Command)); } else player.sendMessage(SelectMessages.GUInotFound); } }