diff --git a/CommandGUI V2/pom.xml b/CommandGUI V2/pom.xml
index cc1b140..2956aaa 100644
--- a/CommandGUI V2/pom.xml
+++ b/CommandGUI V2/pom.xml
@@ -6,7 +6,7 @@
net.t2code
CommandGUI_V2
- 2.7.0_Snapshot-2
+ 2.7.0_Snapshot-3
jar
CommandGUI
diff --git a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/cmdManagement/Help.java b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/cmdManagement/Help.java
index 1483836..e89c908 100644
--- a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/cmdManagement/Help.java
+++ b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/cmdManagement/Help.java
@@ -31,9 +31,6 @@ public class Help {
if (sender.hasPermission("commandgui.command.info")) {
send.sender(sender, Prefix + " " + SelectMessages.HelpInfo);
}
- // if (sender.hasPermission("commandgui.command.give")) {
- // send.sender(sender, Prefix + " " + Select_msg.HelpGive);
- // }
if (sender.hasPermission("commandgui.admin")) {
send.sender(sender, Prefix + " " + SelectMessages.HelpCreateDefaultGUI.replace("[directory]", Main.getPath()+ "\\GUIs\\default.yml"));
send.sender(sender, Prefix + " " + SelectMessages.HelpReload);
diff --git a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/system/RegisterPermissions.java b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/system/RegisterPermissions.java
index e7bfed2..57e4fd1 100644
--- a/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/system/RegisterPermissions.java
+++ b/CommandGUI V2/src/main/java/de/jatitv/commandguiv2/Spigot/system/RegisterPermissions.java
@@ -4,22 +4,76 @@ import de.jatitv.commandguiv2.Spigot.Main;
import de.jatitv.commandguiv2.Spigot.objects.guis.Gui;
import de.jatitv.commandguiv2.Spigot.objects.functions.Function;
import de.jatitv.commandguiv2.Spigot.objects.slots.Slot;
+import net.t2code.lib.Spigot.Lib.register.Register;
import org.bukkit.Bukkit;
import org.bukkit.permissions.Permission;
+import org.bukkit.permissions.PermissionDefault;
+import org.bukkit.plugin.Plugin;
public class RegisterPermissions {
+ private static final Plugin plugin = Main.plugin;
+
+ public static final String key = "commandgui.";
+ public static final String command = key + "command";
+ public static final String info = key + "command.info";
+ public static final String bypass = key + "bypass";
+ public static final String useitemToggle = key + "useitem.toggle";
+ public static final String useitem = key + "useitem";
+ public static final String getGuiItemAtLogin = key + "get.guiitem.at.login";
+ public static final String updatemsg = key + "updatemsgupdatemsg";
+
+ public static final String player = key + "player";
+ public static final String admin = key + "admin";
+
+ public static final PermissionDefault op = PermissionDefault.OP;
+ public static final PermissionDefault notOp = PermissionDefault.NOT_OP;
+
public static void onPermRegister() {
+ Register.permission(command, op, plugin);
+ Register.permissionDescription(command, "Required permission to open GUIs via command", plugin);
+
+ Register.permission(getGuiItemAtLogin, op, plugin);
+ Register.permissionDescription(getGuiItemAtLogin, "Only players with this permission will receive the GUI item", plugin);
+
+ Register.permission(useitem, op, plugin);
+ Register.permissionDescription(useitem, "Required permission to use the GUI Item", plugin);
+
+ Register.permission(useitemToggle, op, plugin);
+ Register.permissionDescription(useitemToggle, "Required permission to enable/disable the GUI Item for itself (if the function UseItem/AllowToggle is set to true)", plugin);
+
+ Register.permission(updatemsg, op, plugin);
+ Register.permissionDescription(updatemsg, "Players with this permission get the update message when joining if an update is available", plugin);
+
+ Register.permission(bypass, op, plugin);
+ Register.permissionDescription(bypass, "Bypass to open disabled GUIs", plugin);
+
+ Register.permission(info, notOp, plugin);
+ Register.permissionDescription(info, "Permission to view CommandGUI info", plugin);
+
+ Register.permission(player, op, command, true, plugin);
+ Register.permission(player, op, getGuiItemAtLogin, true, plugin);
+ Register.permission(player, op, useitem, true, plugin);
+ Register.permission(player, op, useitemToggle, true, plugin);
+ Register.permissionDescription(player, "All permissions from CommandGUI for Player", plugin);
+
+ Register.permission(admin, op, command, true, plugin);
+ Register.permission(admin, op, getGuiItemAtLogin, true, plugin);
+ Register.permission(admin, op, useitem, true, plugin);
+ Register.permission(admin, op, useitemToggle, true, plugin);
+ Register.permission(admin, op, updatemsg, true, plugin);
+ Register.permission(admin, op, bypass, true, plugin);
+ Register.permission(admin, op, info, true, plugin);
+ Register.permissionDescription(admin, "All permissions from CommandGUI", plugin);
+
+
for (Gui gui : Main.guiHashMap.values()) {
- if (Bukkit.getPluginManager().getPermission("commandgui.command." + gui.Command_Command) == null) {
- Bukkit.getPluginManager().addPermission(new Permission("commandgui.command." + gui.Command_Command));
- }
+ Register.permission("commandgui.command." + gui.Command_Command, op, plugin);
+ Register.permission(admin, op, "commandgui.command." + gui.Command_Command, true, plugin);
for (Slot slot : gui.slots) {
- if (Bukkit.getPluginManager().getPermission(slot.permissionToUse) == null) {
- Bukkit.getPluginManager().addPermission(new Permission(slot.permissionToUse));
- }
- if (Bukkit.getPluginManager().getPermission(slot.permissionToSee) == null) {
- Bukkit.getPluginManager().addPermission(new Permission(slot.permissionToSee));
- }
+ Register.permission(slot.permissionToUse, op, plugin);
+ Register.permission(admin, op, slot.permissionToUse, true, plugin);
+ Register.permission(slot.permissionToSee, op, plugin);
+ Register.permission(admin, op, slot.permissionToSee, true, plugin);
}
}
}
diff --git a/CommandGUI V2/src/main/resources/plugin.yml b/CommandGUI V2/src/main/resources/plugin.yml
index 90ebe99..3459066 100644
--- a/CommandGUI V2/src/main/resources/plugin.yml
+++ b/CommandGUI V2/src/main/resources/plugin.yml
@@ -19,56 +19,54 @@ commands:
commandguihelp:
description: CommandGUI Help
aliases: [cguihelp, guihelp]
- # commandguiadmin:
- # aliases: [cguiadmin, cguia]
commandgui-item:
aliases: [gui-item]
-permissions:
- commandgui.admin:
- description: All permissions from CommandGUI
- default: op
- children:
- commandgui.updatemsg: true
- commandgui.command: true
- commandgui.get.guiitem.at.login: true
- commandgui.useitem: true
- commandgui.useitem.toggle: true
- commandgui.bypass: true
- commandgui.command.info: true
- commandgui.command.give: true
-
- commandgui.player:
- description: All permissions from CommandGUI
- default: op
- children:
- commandgui.command: true
- commandgui.get.guiitem.at.login: true
- commandgui.useitem: true
- commandgui.useitem.toggle: true
-
- commandgui.updatemsg:
- description: Players with this permission get the update message when joining if an update is available
- default: op
- commandgui.command:
- description: Required permission to open GUIs via command
- default: op
- commandgui.get.guiitem.at.login:
- description: Only players with this permission will receive the GUI item
- default: op
- commandgui.useitem:
- description: Required permission to use the GUI Item
- default: op
- commandgui.useitem.toggle:
- description: Required permission to enable/disable the GUI Item for itself (if the function UseItem/AllowToggle is set to true)
- default: op
- commandgui.bypass:
- description: Bypass to open disabled GUIs
- default: op
- commandgui.command.info:
- description: Permission to view CommandGUI info
- default: not op
- commandgui.command.give:
- description: Kommend in V2.1.0
- default: op
\ No newline at end of file
+#permissions:
+# commandgui.admin:
+# description: All permissions from CommandGUI
+# default: op
+# children:
+# commandgui.command: true
+# commandgui.get.guiitem.at.login: true
+# commandgui.useitem: true
+# commandgui.useitem.toggle: true
+# commandgui.updatemsg: true
+# commandgui.bypass: true
+# commandgui.command.info: true
+# commandgui.command.give: true
+#
+# commandgui.player:
+# description: All permissions from CommandGUI
+# default: op
+# children:
+# commandgui.command: true
+# commandgui.get.guiitem.at.login: true
+# commandgui.useitem: true
+# commandgui.useitem.toggle: true
+#
+# commandgui.updatemsg:
+# description: Players with this permission get the update message when joining if an update is available
+# default: op
+# commandgui.command:
+# description: Required permission to open GUIs via command
+# default: op
+# commandgui.get.guiitem.at.login:
+# description: Only players with this permission will receive the GUI item
+# default: op
+# commandgui.useitem:
+# description: Required permission to use the GUI Item
+# default: op
+# commandgui.useitem.toggle:
+# description: Required permission to enable/disable the GUI Item for itself (if the function UseItem/AllowToggle is set to true)
+# default: op
+# commandgui.bypass:
+# description: Bypass to open disabled GUIs
+# default: op
+# commandgui.command.info:
+# description: Permission to view CommandGUI info
+# default: not op
+# commandgui.command.give:
+# description: Kommend in V2.1.0
+# default: op
\ No newline at end of file