094bb03a37
- Lots of itemstack cloning removed. Only clone if the item is actually moved - Return true when a plugin cancels inventory move item event instead of false, as false causes pulls to cycle through all items. However, pushes do not exhibit the same behavior, so this is not something plugins could of been relying on. - Add option (Default on) to cooldown hoppers when they fail to move an item due to full inventory - Skip subsequent InventoryMoveItemEvents if a plugin does not use the item after first event fire for an iteration
39 lines
1.4 KiB
Diff
39 lines
1.4 KiB
Diff
From 94f0fb32132cd32cac475ba9205a1079d7204385 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 c8cb4f226..701c90679 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
@@ -1889,5 +1889,24 @@ public final class CraftServer implements Server {
|
|
});
|
|
}
|
|
}
|
|
+
|
|
+ @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
|
|
}
|
|
--
|
|
2.16.1
|
|
|