37 Zeilen
1.6 KiB
Diff
37 Zeilen
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 a380fb3b192dea5805126f616390da52312749c1..028f2e2d24a6a1eac07c04d79c44bbdfe87108cb 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
@@ -2547,5 +2547,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
|
|
}
|