add permission on tab completer and pre execute

This commit is contained in:
alexcrea 2026-03-03 03:59:58 +01:00
parent 2dd48a8041
commit bc7ed5af85
Signed by: alexcrea
GPG key ID: E346CD16413450E3

View file

@ -24,8 +24,6 @@ class CustomAnvilCmd(plugin: CustomAnvil) : CommandExecutor, TabCompleter {
) )
init { init {
println(plugin.getCommand(genericCommandName))
val self = plugin.getCommand(genericCommandName)!! val self = plugin.getCommand(genericCommandName)!!
self.setExecutor(this) self.setExecutor(this)
self.tabCompleter = this self.tabCompleter = this
@ -48,7 +46,7 @@ class CustomAnvilCmd(plugin: CustomAnvil) : CommandExecutor, TabCompleter {
newargs = args.copyOfRange(1, args.size) newargs = args.copyOfRange(1, args.size)
} }
if(subcmd == null) { if(subcmd == null || !subcmd.allowed(sender)) {
sender.sendMessage("Invalid subcommand. run `$cmdstr help` to see available commands") sender.sendMessage("Invalid subcommand. run `$cmdstr help` to see available commands")
return true return true
} }
@ -78,6 +76,8 @@ class CustomAnvilCmd(plugin: CustomAnvil) : CommandExecutor, TabCompleter {
if(subcmd != null) { if(subcmd != null) {
val newArgs = args.copyOfRange(1, args.size) val newArgs = args.copyOfRange(1, args.size)
if(!subcmd.allowed(sender)) return result
subcmd.tabCompleter(sender, newArgs, result) subcmd.tabCompleter(sender, newArgs, result)
} }
} }