diff --git a/cloud-paper/src/main/java/org/incendo/cloud/paper/ModernPaperBrigadier.java b/cloud-paper/src/main/java/org/incendo/cloud/paper/ModernPaperBrigadier.java index bc270d90..847e545c 100644 --- a/cloud-paper/src/main/java/org/incendo/cloud/paper/ModernPaperBrigadier.java +++ b/cloud-paper/src/main/java/org/incendo/cloud/paper/ModernPaperBrigadier.java @@ -205,19 +205,11 @@ public boolean registerCommand(final @NonNull Command command) { } if (this.aliases.containsKey(command.rootComponent().name())) { - final CommandDispatcher dispatcher = - unsafeGet(commands, Commands::getDispatcher); + final RootCommandNode root = unsafeGet(commands, cmds -> cmds.getDispatcher().getRoot()); final Set registered = this.aliases.get(command.rootComponent().name()); - final LiteralCommandNode newRoot = this.createRootNode( - this.manager.commandTree().getNamedNode(command.rootComponent().name()), - command.rootComponent().name() - ); + final CommandNode rootNode = this.manager.commandTree().getNamedNode(command.rootComponent().name()); for (final String label : registered) { - final com.mojang.brigadier.tree.CommandNode node = - dispatcher.getRoot().getChild(label); - for (final com.mojang.brigadier.tree.CommandNode newChild : newRoot.getChildren()) { - node.addChild(newChild); - } + root.addChild(this.createRootNode(rootNode, label)); } } else { unsafeOperation(commands, cmds -> this.registerCommand(