Skip to content

Commit 86e1c71

Browse files
committed
add selectEntities
1 parent 4c65087 commit 86e1c71

File tree

1 file changed

+14
-7
lines changed

1 file changed

+14
-7
lines changed

src/main/java/cat/nyaa/nyaacore/CommandReceiver.java

+14-7
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package cat.nyaa.nyaacore;
22

33
import cat.nyaa.nyaacore.utils.OfflinePlayerUtils;
4-
import com.earth2me.essentials.I18n;
54
import com.google.common.base.Strings;
65
import org.bukkit.Bukkit;
76
import org.bukkit.Material;
@@ -10,6 +9,7 @@
109
import org.bukkit.command.CommandExecutor;
1110
import org.bukkit.command.CommandSender;
1211
import org.bukkit.command.TabCompleter;
12+
import org.bukkit.entity.Entity;
1313
import org.bukkit.entity.Player;
1414
import org.bukkit.inventory.ItemStack;
1515
import org.bukkit.plugin.java.JavaPlugin;
@@ -175,7 +175,7 @@ public List<String> getSubcommands() {
175175
// acceptCommand() will be called directly in subcommand classes
176176
@Override
177177
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
178-
Arguments cmd = Arguments.parse(args);
178+
Arguments cmd = Arguments.parse(args, sender);
179179
if (cmd == null) return false;
180180
acceptCommand(sender, cmd);
181181
return true;
@@ -244,7 +244,7 @@ public void acceptCommand(CommandSender sender, Arguments cmd) {
244244
@Override
245245
public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
246246
try {
247-
Arguments cmd = Arguments.parse(args);
247+
Arguments cmd = Arguments.parse(args, sender);
248248
if (cmd == null) return null;
249249
return acceptTabComplete(sender, cmd);
250250
} catch (Exception ex) {
@@ -361,12 +361,14 @@ public static class Arguments {
361361

362362
private List<String> parsedArguments = new ArrayList<>();
363363
private int index = 0;
364+
private CommandSender sender;
364365

365-
private Arguments() {
366+
private Arguments(CommandSender sender) {
367+
this.sender = sender;
366368
}
367369

368-
public static Arguments parse(String[] rawArg) {
369-
if (rawArg.length == 0) return new Arguments();
370+
public static Arguments parse(String[] rawArg, CommandSender sender) {
371+
if (rawArg.length == 0) return new Arguments(sender);
370372
String cmd = rawArg[0];
371373
for (int i = 1; i < rawArg.length; i++)
372374
cmd += " " + rawArg[i];
@@ -414,7 +416,7 @@ public static Arguments parse(String[] rawArg) {
414416
if (tmp.length() > 0) cmdList.add(tmp);
415417
if (escape || quote) return null;
416418

417-
Arguments ret = new Arguments();
419+
Arguments ret = new Arguments(sender);
418420
ret.parsedArguments = cmdList;
419421
return ret;
420422
}
@@ -542,6 +544,11 @@ public OfflinePlayer nextOfflinePlayer() {
542544
return player;
543545
}
544546

547+
public List<Entity> nextSelectorEntities() {
548+
String name = next();
549+
return Bukkit.selectEntities(sender, name);
550+
}
551+
545552
public Arguments nextAssert(String string) {
546553
String top = next();
547554
if (top == null && string == null) return this;

0 commit comments

Comments
 (0)