diff options
author | tylermurphy534 <tylermurphy534@gmail.com> | 2022-10-30 21:40:59 -0400 |
---|---|---|
committer | tylermurphy534 <tylermurphy534@gmail.com> | 2022-10-30 21:40:59 -0400 |
commit | 1325e042a6e7af37669bcd32e9d7a133f2ae22e6 (patch) | |
tree | e6703c90dcdbefac6954a1f2023b78892c0dc788 /src/main/java/net/tylermurphy/hideAndSeek/util/CommandHandler.java | |
parent | start adding multi map support (diff) | |
download | kenshinshideandseek-1325e042a6e7af37669bcd32e9d7a133f2ae22e6.tar.gz kenshinshideandseek-1325e042a6e7af37669bcd32e9d7a133f2ae22e6.tar.bz2 kenshinshideandseek-1325e042a6e7af37669bcd32e9d7a133f2ae22e6.zip |
finish beta build of multi map support
Diffstat (limited to '')
-rw-r--r-- | src/main/java/net/tylermurphy/hideAndSeek/util/CommandHandler.java | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/util/CommandHandler.java b/src/main/java/net/tylermurphy/hideAndSeek/util/CommandHandler.java index 2dda402..3b0f1b4 100644 --- a/src/main/java/net/tylermurphy/hideAndSeek/util/CommandHandler.java +++ b/src/main/java/net/tylermurphy/hideAndSeek/util/CommandHandler.java @@ -30,6 +30,7 @@ import org.bukkit.entity.Player; import java.util.Arrays; import java.util.LinkedHashMap; import java.util.Map; +import java.util.stream.Collectors; import static net.tylermurphy.hideAndSeek.configuration.Config.errorPrefix; import static net.tylermurphy.hideAndSeek.configuration.Config.permissionsRequired; @@ -65,6 +66,10 @@ public class CommandHandler { registerCommand(new Top()); registerCommand(new Wins()); registerCommand(new Debug()); + registerCommand(new AddMap()); + registerCommand(new RemoveMap()); + registerCommand(new ListMaps()); + registerCommand(new SetMap()); } public static boolean handleCommand(CommandSender sender, String[] args) { @@ -85,8 +90,15 @@ public class CommandHandler { } else if (permissionsRequired && !sender.hasPermission("hideandseek."+args[0].toLowerCase())) { sender.sendMessage(errorPrefix + message("COMMAND_NOT_ALLOWED")); } else { + try { - COMMAND_REGISTER.get(args[0].toLowerCase()).execute(player,Arrays.copyOfRange(args, 1, args.length)); + ICommand command = COMMAND_REGISTER.get(args[0].toLowerCase()); + int parameters = (int) Arrays.stream(command.getUsage().split(" ")).filter(p -> p.startsWith("<") && !p.startsWith("<*")).count(); + if(args.length - 1 < parameters) { + sender.sendMessage(errorPrefix + message("ARGUMENT_COUNT")); + return true; + } + command.execute(player,Arrays.copyOfRange(args, 1, args.length)); } catch (Exception e) { sender.sendMessage(errorPrefix + "An error has occurred."); e.printStackTrace(); |