From cdb75dbc960d18aea2c56aa66448c8c28d493fb9 Mon Sep 17 00:00:00 2001 From: fullwall Date: Tue, 27 Dec 2022 19:57:48 +0800 Subject: [PATCH] Add warning for npc select within commands --- .../commands/NPCCommandSelector.java | 4 ++-- .../citizensnpcs/commands/NPCCommands.java | 5 ++++- .../main/java/net/citizensnpcs/util/Util.java | 20 ++++++++++--------- 3 files changed, 17 insertions(+), 12 deletions(-) diff --git a/main/src/main/java/net/citizensnpcs/commands/NPCCommandSelector.java b/main/src/main/java/net/citizensnpcs/commands/NPCCommandSelector.java index 55dd5dc27..9e2eac728 100644 --- a/main/src/main/java/net/citizensnpcs/commands/NPCCommandSelector.java +++ b/main/src/main/java/net/citizensnpcs/commands/NPCCommandSelector.java @@ -107,8 +107,8 @@ public class NPCCommandSelector extends NumericPrompt { String name = args.getString(1); List possible = Lists.newArrayList(); double range = -1; - if (args.hasValueFlag("r")) { - range = Math.abs(args.getFlagDouble("r")); + if (args.hasValueFlag("range")) { + range = Math.abs(args.getFlagDouble("range")); } for (NPC test : npcRegistry) { if (test.getName().equalsIgnoreCase(name)) { diff --git a/main/src/main/java/net/citizensnpcs/commands/NPCCommands.java b/main/src/main/java/net/citizensnpcs/commands/NPCCommands.java index 9757d19fa..0b415467b 100644 --- a/main/src/main/java/net/citizensnpcs/commands/NPCCommands.java +++ b/main/src/main/java/net/citizensnpcs/commands/NPCCommands.java @@ -455,6 +455,9 @@ public class NPCCommands { if (permissions != null) { perms.addAll(Arrays.asList(permissions.split(","))); } + if (command.startsWith("npc select")) { + throw new CommandException("npc select not currently supported within commands. Use --id instead"); + } try { int id = commands.addCommand(new NPCCommandBuilder(command, hand).addPerms(perms) .player(args.hasFlag('p') || args.hasFlag('o')).op(args.hasFlag('o')).cooldown(cooldown) @@ -2270,7 +2273,7 @@ public class NPCCommands { @Command( aliases = { "npc" }, - usage = "select|sel [id|name] (--r range) (--registry [name])", + usage = "select|sel [id|name] (--range range) (--registry [name])", desc = "Select a NPC with the given ID or name", modifiers = { "select", "sel" }, min = 1, diff --git a/main/src/main/java/net/citizensnpcs/util/Util.java b/main/src/main/java/net/citizensnpcs/util/Util.java index b5f421338..a2b4cb248 100644 --- a/main/src/main/java/net/citizensnpcs/util/Util.java +++ b/main/src/main/java/net/citizensnpcs/util/Util.java @@ -355,27 +355,29 @@ public class Util { Messaging.debug("Running command " + interpolatedCommand + " on NPC " + (npc == null ? -1 : npc.getId()) + " clicker " + clicker); } + if (!player) { Bukkit.getServer().dispatchCommand(Bukkit.getConsoleSender(), interpolatedCommand); return; } + boolean wasOp = clicker.isOp(); if (op) { clicker.setOp(true); } - if (bungeeServer != null) { - ByteArrayDataOutput out = ByteStreams.newDataOutput(); - out.writeUTF("Connect"); - out.writeUTF(bungeeServer); + try { + if (bungeeServer != null) { + ByteArrayDataOutput out = ByteStreams.newDataOutput(); + out.writeUTF("Connect"); + out.writeUTF(bungeeServer); - clicker.sendPluginMessage(CitizensAPI.getPlugin(), "BungeeCord", out.toByteArray()); - } else { - try { + clicker.sendPluginMessage(CitizensAPI.getPlugin(), "BungeeCord", out.toByteArray()); + } else { clicker.chat("/" + interpolatedCommand); - } catch (Throwable t) { - t.printStackTrace(); } + } catch (Throwable t) { + t.printStackTrace(); } if (op) {