summaryrefslogtreewikicommitdiff
path: root/src/main/java/net/tylermurphy/hideAndSeek/util/CommandHandler.java
diff options
context:
space:
mode:
authortylermurphy534 <tylermurphy534@gmail.com>2022-10-31 23:28:45 -0400
committertylermurphy534 <tylermurphy534@gmail.com>2022-10-31 23:28:45 -0400
commit7530fe5e2dad89cabd694aefc91758a651ca9196 (patch)
tree0fc693e6b33b05a20c85ef0027a4c3638ae1511f /src/main/java/net/tylermurphy/hideAndSeek/util/CommandHandler.java
parentfinish beta build of multi map support (diff)
downloadkenshinshideandseek-7530fe5e2dad89cabd694aefc91758a651ca9196.tar.gz
kenshinshideandseek-7530fe5e2dad89cabd694aefc91758a651ca9196.tar.bz2
kenshinshideandseek-7530fe5e2dad89cabd694aefc91758a651ca9196.zip
1.7.0 beta 1
Diffstat (limited to 'src/main/java/net/tylermurphy/hideAndSeek/util/CommandHandler.java')
-rw-r--r--src/main/java/net/tylermurphy/hideAndSeek/util/CommandHandler.java111
1 files changed, 0 insertions, 111 deletions
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/util/CommandHandler.java b/src/main/java/net/tylermurphy/hideAndSeek/util/CommandHandler.java
deleted file mode 100644
index 3b0f1b4..0000000
--- a/src/main/java/net/tylermurphy/hideAndSeek/util/CommandHandler.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * This file is part of Kenshins Hide and Seek
- *
- * Copyright (c) 2021 Tyler Murphy.
- *
- * Kenshins Hide and Seek free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * he Free Software Foundation version 3.
- *
- * Kenshins Hide and Seek is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- */
-
-package net.tylermurphy.hideAndSeek.util;
-
-import net.tylermurphy.hideAndSeek.command.*;
-import net.tylermurphy.hideAndSeek.command.location.SetExitLocation;
-import net.tylermurphy.hideAndSeek.command.location.SetLobbyLocation;
-import net.tylermurphy.hideAndSeek.command.location.SetSeekerLobbyLocation;
-import net.tylermurphy.hideAndSeek.command.location.SetSpawnLocation;
-import org.bukkit.command.CommandSender;
-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;
-import static net.tylermurphy.hideAndSeek.configuration.Localization.LOCAL;
-import static net.tylermurphy.hideAndSeek.configuration.Localization.message;
-
-public class CommandHandler {
-
- public static final Map<String,ICommand> COMMAND_REGISTER = new LinkedHashMap<>();
-
- private static void registerCommand(ICommand command) {
- if (!COMMAND_REGISTER.containsKey(command.getLabel())) {
- COMMAND_REGISTER.put(command.getLabel().toLowerCase(), command);
- }
- }
-
- public static void registerCommands() {
- registerCommand(new About());
- registerCommand(new Help());
- registerCommand(new Setup());
- registerCommand(new Start());
- registerCommand(new Stop());
- registerCommand(new SetSpawnLocation());
- registerCommand(new SetLobbyLocation());
- registerCommand(new SetSeekerLobbyLocation());
- registerCommand(new SetExitLocation());
- registerCommand(new SetBorder());
- registerCommand(new Reload());
- registerCommand(new SaveMap());
- registerCommand(new SetBounds());
- registerCommand(new Join());
- registerCommand(new Leave());
- 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) {
- if (!(sender instanceof Player)) {
- sender.sendMessage(errorPrefix + message("COMMAND_PLAYER_ONLY"));
- return true;
- }
- Player player = (Player) sender;
- if (args.length < 1 || !COMMAND_REGISTER.containsKey(args[0].toLowerCase()) ) {
- if (permissionsRequired && !sender.hasPermission("hideandseek.about")) {
- sender.sendMessage(errorPrefix + LOCAL.get(""));
- } else {
- COMMAND_REGISTER.get("about").execute(player, null);
- }
- } else {
- if (!args[0].equalsIgnoreCase("about") && !args[0].equalsIgnoreCase("help") && SaveMap.runningBackup) {
- sender.sendMessage(errorPrefix + message("MAPSAVE_INPROGRESS"));
- } else if (permissionsRequired && !sender.hasPermission("hideandseek."+args[0].toLowerCase())) {
- sender.sendMessage(errorPrefix + message("COMMAND_NOT_ALLOWED"));
- } else {
-
- try {
- 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();
- }
- }
- }
- return true;
- }
-
-}