From c36ac056d5717b5a32f1c54fe522a108a315a982 Mon Sep 17 00:00:00 2001 From: Adrian Date: Fri, 28 Apr 2023 18:25:19 -0500 Subject: [PATCH] Simplified suggestions --- .../velocity/command/VelocityMainCommand.java | 32 +++---------------- 1 file changed, 4 insertions(+), 28 deletions(-) diff --git a/CommandWhitelistVelocity/src/main/java/eu/endermite/commandwhitelist/velocity/command/VelocityMainCommand.java b/CommandWhitelistVelocity/src/main/java/eu/endermite/commandwhitelist/velocity/command/VelocityMainCommand.java index 2be1d35..c00b953 100644 --- a/CommandWhitelistVelocity/src/main/java/eu/endermite/commandwhitelist/velocity/command/VelocityMainCommand.java +++ b/CommandWhitelistVelocity/src/main/java/eu/endermite/commandwhitelist/velocity/command/VelocityMainCommand.java @@ -5,7 +5,6 @@ import com.mojang.brigadier.arguments.StringArgumentType; import com.mojang.brigadier.builder.LiteralArgumentBuilder; import com.mojang.brigadier.builder.RequiredArgumentBuilder; -import com.mojang.brigadier.context.ParsedArgument; import com.mojang.brigadier.tree.LiteralCommandNode; import com.velocitypowered.api.command.BrigadierCommand; import com.velocitypowered.api.command.CommandManager; @@ -21,8 +20,6 @@ import net.kyori.adventure.text.Component; import java.nio.file.Path; -import java.util.ArrayList; -import java.util.List; public final class VelocityMainCommand { @Inject @@ -50,8 +47,7 @@ public void register() { .requires(src -> src.hasPermission(CWPermission.ADMIN.permission())) .then(RequiredArgumentBuilder.argument("group", StringArgumentType.word()) .suggests((ctx, builder) -> { - groupSuggestions(plugin.getConfigCache(), ctx.getArguments().get("group")) - .forEach(builder::suggest); + plugin.getConfigCache().getGroupList().keySet().forEach(builder::suggest); return builder.buildFuture(); }) .then(RequiredArgumentBuilder.argument("command", StringArgumentType.word()) @@ -59,7 +55,6 @@ public void register() { CWGroup group = plugin.getConfigCache().getGroupList().get(ctx.getArgument("group", String.class)); if (group == null) return builder.buildFuture(); - String stringArgument = stringArgument(ctx.getArguments().get("command")); for (String cmd : plugin.getServerCommands()) { if (cmd.charAt(0) == '/') cmd = cmd.substring(1); @@ -69,8 +64,7 @@ public void register() { cmd = cmdSplit[1]; } if (group.getCommands().contains(cmd)) continue; - if (stringArgument == null || cmd.startsWith(stringArgument)) - builder.suggest(cmd); + builder.suggest(cmd); } return builder.buildFuture(); }) @@ -93,8 +87,7 @@ public void register() { .requires(src -> src.hasPermission(CWPermission.ADMIN.permission())) .then(RequiredArgumentBuilder.argument("group", StringArgumentType.word()) .suggests((ctx, builder) -> { - groupSuggestions(plugin.getConfigCache(), ctx.getArguments().get("group")) - .forEach(builder::suggest); + plugin.getConfigCache().getGroupList().keySet().forEach(builder::suggest); return builder.buildFuture(); }) .then(RequiredArgumentBuilder.argument("command", StringArgumentType.word()) @@ -102,10 +95,8 @@ public void register() { CWGroup group = plugin.getConfigCache().getGroupList().get(ctx.getArgument("group", String.class)); if (group == null) return builder.buildFuture(); - String stringArgument = stringArgument(ctx.getArguments().get("command")); for (String s : group.getCommands()) { - if (stringArgument == null || s.startsWith(stringArgument)) - builder.suggest(s); + builder.suggest(s); } return builder.buildFuture(); }) @@ -149,19 +140,4 @@ public void register() { final BrigadierCommand command = new BrigadierCommand(node); commandManager.register(commandManager.metaBuilder(command).plugin(plugin).build(), command); } - - private List groupSuggestions(ConfigCache configCache, ParsedArgument argument) { - final String stringArgument = stringArgument(argument); - List groups = new ArrayList<>(); - for (String s : configCache.getGroupList().keySet()) { - if (stringArgument == null || s.startsWith(stringArgument)) - groups.add(s); - } - return groups; - } - - private String stringArgument(ParsedArgument argument) { - return argument == null - ? null : (String) argument.getResult(); - } }