From 8dbb982c625689f7e40c8134d8200d6b1fddef7b Mon Sep 17 00:00:00 2001 From: willies952002 Date: Mon, 28 Nov 2016 10:21:52 -0500 Subject: [PATCH] Allow Reloading of Command Aliases Reload the aliases stored in commands.yml diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java index 1f0e63a1c2..2757ed338c 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2062,5 +2062,24 @@ public final class CraftServer implements Server { DefaultPermissions.registerCorePermissions(); CraftDefaultPermissions.registerCorePermissions(); } + + @Override + public boolean reloadCommandAliases() { + Set removals = getCommandAliases().keySet().stream() + .map(key -> key.toLowerCase(java.util.Locale.ENGLISH)) + .collect(java.util.stream.Collectors.toSet()); + getCommandMap().getKnownCommands().keySet().removeIf(removals::contains); + File file = getCommandsConfigFile(); + try { + commandsConfiguration.load(file); + } catch (FileNotFoundException ex) { + return false; + } catch (IOException | org.bukkit.configuration.InvalidConfigurationException ex) { + Bukkit.getLogger().log(Level.SEVERE, "Cannot load " + file, ex); + return false; + } + commandMap.registerServerAliases(); + return true; + } // Paper end } -- 2.21.0