From d1b890a9126632e988b3ac86d75f40928822ef91 Mon Sep 17 00:00:00 2001 From: envizar Date: Sun, 29 Dec 2024 14:13:37 +0300 Subject: [PATCH] toggle command with arg --- .../lol/pyr/znpcsplus/commands/ToggleCommand.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/plugin/src/main/java/lol/pyr/znpcsplus/commands/ToggleCommand.java b/plugin/src/main/java/lol/pyr/znpcsplus/commands/ToggleCommand.java index c6d1c06..764f771 100644 --- a/plugin/src/main/java/lol/pyr/znpcsplus/commands/ToggleCommand.java +++ b/plugin/src/main/java/lol/pyr/znpcsplus/commands/ToggleCommand.java @@ -11,6 +11,7 @@ import net.kyori.adventure.text.format.NamedTextColor; import java.util.Collections; import java.util.List; +import java.util.Set; public class ToggleCommand implements CommandHandler { private final NpcRegistryImpl npcRegistry; @@ -21,9 +22,14 @@ public class ToggleCommand implements CommandHandler { @Override public void run(CommandContext context) throws CommandExecutionException { - context.setUsage(context.getLabel() + " toggle "); + context.setUsage(context.getLabel() + " toggle []"); NpcImpl npc = context.parse(NpcEntryImpl.class).getNpc(); - boolean enabled = !npc.isEnabled(); + boolean enabled; + if (context.argSize() == 1) { + enabled = context.popString().equals("enable"); + } else { + enabled = !npc.isEnabled(); + } npc.setEnabled(enabled); context.send(Component.text("NPC has been " + (enabled ? "enabled" : "disabled"), NamedTextColor.GREEN)); } @@ -31,6 +37,7 @@ public class ToggleCommand implements CommandHandler { @Override public List suggest(CommandContext context) throws CommandExecutionException { if (context.argSize() == 1) return context.suggestCollection(npcRegistry.getModifiableIds()); + if (context.argSize() == 2) return context.suggestLiteral("enable", "disable"); return Collections.emptyList(); } }