diff --git a/nms-patches/CommandDispatcher.patch b/nms-patches/CommandDispatcher.patch index cc91a04785..f199c5b4fb 100644 --- a/nms-patches/CommandDispatcher.patch +++ b/nms-patches/CommandDispatcher.patch @@ -140,20 +140,10 @@ argumentbuilder.requires((icompletionprovider) -> { return true; -@@ -218,11 +297,15 @@ - } +@@ -222,7 +301,7 @@ + argumentbuilder.redirect((CommandNode) map.get(argumentbuilder.getRedirect())); } -- if (argumentbuilder.getRedirect() != null) { -- argumentbuilder.redirect((CommandNode) map.get(argumentbuilder.getRedirect())); -+ // Craftbukkit start - fix redirected CommandNodes not being properly redirected if it is mapped after commandNode2 -+ CommandNode destination = commandnode2.getRedirect(); -+ if (destination != null) { -+ this.a(destination, (CommandNode) destination.createBuilder().build(), commandlistenerwrapper, map); -+ argumentbuilder.redirect((CommandNode) map.get(destination)); - } -+ // Craftbukkit end - - CommandNode commandnode3 = argumentbuilder.build(); + CommandNode commandnode3 = argumentbuilder.build(); // CraftBukkit - decompile error