@EventHandler(priority = EventPriority.LOW, ignoreCancelled = true) public void onPlayerCommand(PlayerCommandSendEvent event) { CommandLocals locals = new CommandLocals(); locals.put(Actor.class, plugin.wrapCommandSender(event.getPlayer())); Set<String> toRemove = plugin.getWorldEdit().getPlatformManager().getCommandManager().getDispatcher().getCommands().stream() .filter(commandMapping -> !commandMapping.getCallable().testPermission(locals)) .map(CommandMapping::getPrimaryAlias) .collect(Collectors.toSet()); event.getCommands().removeIf(toRemove::contains); }
public static void help(CommandContext args, WorldEdit we, Actor actor) { CommandCallable callable = we.getPlatformManager().getCommandManager().getDispatcher();