37 lines
1.6 KiB
Diff
37 lines
1.6 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: willies952002 <admin@domnian.com>
|
|
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 0d6dcb670c583f47a299cd96574426932d3b98c8..8072e45c656e8de0f9061360d353675554ae0182 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
@@ -2563,5 +2563,24 @@ public final class CraftServer implements Server {
|
|
DefaultPermissions.registerCorePermissions();
|
|
CraftDefaultPermissions.registerCorePermissions();
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public boolean reloadCommandAliases() {
|
|
+ Set<String> 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
|
|
}
|