From dd1f42d4200edc878b9e9fec5deb913e2525bbd1 Mon Sep 17 00:00:00 2001 From: NorbiPeti Date: Sun, 16 Feb 2020 18:21:10 +0100 Subject: [PATCH] Check subcommand perms, show help text on wrong sender type #89 --- .../src/main/java/buttondevteam/lib/chat/Command2.java | 1 + .../src/main/java/buttondevteam/lib/chat/Command2MC.java | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/Chroma-Core/src/main/java/buttondevteam/lib/chat/Command2.java b/Chroma-Core/src/main/java/buttondevteam/lib/chat/Command2.java index a9aead8..1d20d08 100644 --- a/Chroma-Core/src/main/java/buttondevteam/lib/chat/Command2.java +++ b/Chroma-Core/src/main/java/buttondevteam/lib/chat/Command2.java @@ -186,6 +186,7 @@ public abstract class Command2 params.add(cg); else { sender.sendMessage("§cYou need to be a " + sendertype.getSimpleName() + " to use this command."); + sender.sendMessage(sd.helpText); //Send what the command is about, could be useful for commands like /member where some subcommands aren't player-only return; } val paramArr = sd.method.getParameters(); diff --git a/Chroma-Core/src/main/java/buttondevteam/lib/chat/Command2MC.java b/Chroma-Core/src/main/java/buttondevteam/lib/chat/Command2MC.java index 3093f9a..ff4b7f4 100644 --- a/Chroma-Core/src/main/java/buttondevteam/lib/chat/Command2MC.java +++ b/Chroma-Core/src/main/java/buttondevteam/lib/chat/Command2MC.java @@ -63,8 +63,11 @@ public class Command2MC extends Command2 implemen if (command == null) return true; //Allow viewing the command - it doesn't do anything anyway String pg; boolean p = true; + var cmdperm = "chroma.command." + command.getCommandPath().replace(' ', '.'); + var path = getCommandPath(method.getName(), '.'); String[] perms = { - "chroma.command." + command.getCommandPath().replace(' ', '.'), + path.length() > 0 ? cmdperm + path : null, + cmdperm, (pg = permGroup(command, method)).length() > 0 ? "chroma." + pg : null }; for (String perm : perms) {