From cffa6d199e5e3d610840fcd936810cec6da8fd4d Mon Sep 17 00:00:00 2001 From: pietru Date: Sat, 28 Dec 2024 23:33:12 +0100 Subject: [PATCH] update has_perm check, update setup cmd --- .../java/net/pietru/cookie_utils/api/TextCommands.java | 10 +++++++--- .../pietru/cookie_utils/permissions/Permissions.java | 7 ++----- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/main/java/net/pietru/cookie_utils/api/TextCommands.java b/src/main/java/net/pietru/cookie_utils/api/TextCommands.java index f9a93f0..906eb59 100644 --- a/src/main/java/net/pietru/cookie_utils/api/TextCommands.java +++ b/src/main/java/net/pietru/cookie_utils/api/TextCommands.java @@ -105,18 +105,22 @@ public class TextCommands { commands.put("setup",(args, networkIdentity, channelHandlerContext) -> { Account account = ServerSingletons.getAccount(networkIdentity); boolean cancel = false; + boolean setup_perm_check = false; boolean started = false; if (args.length==2) { boolean a = has_perm(account.getUniqueId(), Setup.get_perm(args[1])); - boolean b = has_perm(account.getUniqueId(), "setup.*"); if (args[1].equalsIgnoreCase("cancel")) cancel = Setup.cancel(account.getUniqueId()); - else if (a || b) + else if (a) started = Setup.start(account.getUniqueId(), args[1]); } - MessagePacket packet = new MessagePacket((started || cancel) ? (cancel ? "[Server] Setup canceled.." : "[Server] Starting setup..") : "[Server] Failed to start setup... (There might be one running)"); + MessagePacket packet = new MessagePacket( + (started || cancel) + ? + (cancel ? "[Server] Setup canceled.." : "[Server] Starting setup..") : + (setup_perm_check ? "[Server] Failed to start setup... (There might be one running)" : "[Server] No setup perm...")); packet.setupAndSend(channelHandlerContext); if (started){ diff --git a/src/main/java/net/pietru/cookie_utils/permissions/Permissions.java b/src/main/java/net/pietru/cookie_utils/permissions/Permissions.java index 3f1925c..7f46e83 100644 --- a/src/main/java/net/pietru/cookie_utils/permissions/Permissions.java +++ b/src/main/java/net/pietru/cookie_utils/permissions/Permissions.java @@ -123,10 +123,7 @@ public class Permissions { if (j < i) perm_test.append(perm_parts[j]).append("."); else { - if (perm_parts.length == i + 1) - perm_test.append(perm_parts[j]); - else - perm_test.append("*"); + perm_test.append("*"); } } if (group.has_perm(perm_test.toString())) { @@ -135,7 +132,7 @@ public class Permissions { } } } - return has_user_special_perm(playerId) || has_valid_perm; + return has_user_special_perm(playerId) || has_valid_perm || group.has_perm(perm); } public static GroupPerms get_group(String playerId){