Allow plugins to override Vanilla commands with aliases

Spigot broke this in 1.12, re-adding the logic back
This commit is contained in:
Aikar 2017-06-20 18:59:23 -04:00
parent eb67c684d9
commit a96a996213

View File

@ -0,0 +1,23 @@
From 0699a9e10e95f8f42a46728f02ac195d688515cd Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 20 Jun 2017 18:58:35 -0400
Subject: [PATCH] Allow plugins to override Vanilla commands with aliases
Spigot broke this in 1.12, re-adding the logic back
diff --git a/src/main/java/org/bukkit/command/SimpleCommandMap.java b/src/main/java/org/bukkit/command/SimpleCommandMap.java
index 6f733fe0..ac3d5035 100644
--- a/src/main/java/org/bukkit/command/SimpleCommandMap.java
+++ b/src/main/java/org/bukkit/command/SimpleCommandMap.java
@@ -99,7 +99,7 @@ public class SimpleCommandMap implements CommandMap {
*/
private synchronized boolean register(String label, Command command, boolean isAlias, String fallbackPrefix) {
knownCommands.put(fallbackPrefix + ":" + label, command);
- if (isAlias && knownCommands.containsKey(label)) {
+ if (("minecraft".equals(fallbackPrefix) || isAlias) && knownCommands.containsKey(label)) { // Paper - allow plugins to override vanilla commands as aliases
// Request is for an alias/fallback command and it conflicts with
// a existing command or previous alias ignore it
// Note: This will mean it gets removed from the commands list of active aliases
--
2.13.0