2024-07-08 00:52:07 +02:00

101 lines
4.2 KiB
Java

package net.t2code.commandguiv2.api;
import net.t2code.commandguiv2.Spigot.config.config.Config;
import net.t2code.commandguiv2.Spigot.config.gui.GuiFile;
import net.t2code.commandguiv2.Spigot.config.languages.Languages;
import net.t2code.commandguiv2.Spigot.useItem.ItemChange;
import net.t2code.commandguiv2.Spigot.useItem.Events;
import net.t2code.commandguiv2.Spigot.Main;
import net.t2code.commandguiv2.Spigot.cmdManagement.Commands;
import net.t2code.commandguiv2.Spigot.cmdManagement.Help;
import net.t2code.commandguiv2.Spigot.system.Permissions;
import net.t2code.commandguiv2.Spigot.database.SelectDatabase;
import net.t2code.commandguiv2.Util;
import net.t2code.t2codelib.SPIGOT.api.debug.T2C_Debug;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.jetbrains.annotations.NotNull;
import java.util.Objects;
public class CGuiAPI {
public static Boolean JoinDisable = false;
public static void onItemChange(Player player) {
onItemChange(player,false);
}
public static void onItemChange(Player player, Boolean setCursor) {
ItemChange.itemChange(player, setCursor);
}
public static boolean hasUseItemInMainHand(@NotNull Player player) {
ItemStack item = player.getInventory().getItemInMainHand();
return item.hasItemMeta() && Objects.requireNonNull(item.getItemMeta()).hasDisplayName()
&& item.getItemMeta().getDisplayName().equals( Config.VALUES.useItemName.getValue().toString());
}
public static boolean hasUseItemInOffHand(@NotNull Player player) {
ItemStack item = player.getInventory().getItemInOffHand();
return item.hasItemMeta() && Objects.requireNonNull(item.getItemMeta()).hasDisplayName()
&& item.getItemMeta().getDisplayName().equals(Config.VALUES.useItemName.getValue().toString());
}
public static void disableItemGiveOnJoin(Boolean disableItemGiveOnJoin) {
T2C_Debug.debug(Main.getPlugin(), "CGuiAPI: " + disableItemGiveOnJoin);
JoinDisable = disableItemGiveOnJoin;
}
public static Boolean selectPlayerItemEnable(@NotNull Player player) {
return Events.useItemHashMap.get(player.getName());
}
public static Integer selectPlayerItemSlot(@NotNull Player player) {
return Events.useItemSlotHashMap.get(player.getName());
}
public static void setPlayerItemEnable(Player player, @NotNull Boolean value) {
if (value) {
SelectDatabase.setItemStatusTrue(player);
} else SelectDatabase.setItemStatusFalse(player);
}
public static void setPlayerItemSlot(Player player, Integer value) {
SelectDatabase.setSlot(player, value);
}
public static void openDefaultGUI(Player player) {
Commands.gui(player);
}
public static void openGUI(Player player, String GUI_CommandName) {
Commands.gui(player, GUI_CommandName);
}
public static void sendHelp(CommandSender sender) {
Help.sendHelp(sender, Util.getPrefix());
}
public static void sendPluginInfo(@NotNull CommandSender sender) {
if (sender.hasPermission(Permissions.info)) {
Commands.info(sender);
} else sender.sendMessage(Languages.VALUES.NoPermissionForCommand.getValue().toString()
.replace("[cmd]", "/commandgui admin").replace("[perm]", Permissions.info));
}
public static void createDefaultGUI(@NotNull CommandSender sender) {
if (sender.hasPermission(Permissions.admin)) {
GuiFile.createDefault(true);
sender.sendMessage(Languages.VALUES.DefaultGUIcreate.getValue().toString().replace("[directory]", Main.getPath() + "\\GUIs\\default.yml"));
} else sender.sendMessage(Languages.VALUES.NoPermissionForCommand.getValue().toString()
.replace("[cmd]", "/commandgui admin").replace("[perm]", Permissions.admin));
}
public static void reload(@NotNull CommandSender sender) {
if (sender.hasPermission(Permissions.admin)) {
Commands.reload(sender);
} else sender.sendMessage(Languages.VALUES.NoPermissionForCommand.getValue().toString()
.replace("[cmd]", "/commandgui admin").replace("[perm]", Permissions.admin));
}
}