--- a/net/minecraft/commands/Commands.java +++ b/net/minecraft/commands/Commands.java @@ -265,11 +_,11 @@ JfrCommand.register(this.dispatcher); } - if (SharedConstants.DEBUG_CHASE_COMMAND) { + if (org.purpurmc.purpur.PurpurConfig.registerMinecraftDisabledCommands || SharedConstants.DEBUG_CHASE_COMMAND) { // Purpur - register disabled minecraft commands ChaseCommand.register(this.dispatcher); } - if (SharedConstants.DEBUG_DEV_COMMANDS || SharedConstants.IS_RUNNING_IN_IDE) { + if (org.purpurmc.purpur.PurpurConfig.registerMinecraftDebugCommands || SharedConstants.DEBUG_DEV_COMMANDS || SharedConstants.IS_RUNNING_IN_IDE) { // Purpur - register minecraft debug commands RaidCommand.register(this.dispatcher, context); DebugPathCommand.register(this.dispatcher); DebugMobSpawningCommand.register(this.dispatcher); @@ -297,6 +_,14 @@ StopCommand.register(this.dispatcher); TransferCommand.register(this.dispatcher); WhitelistCommand.register(this.dispatcher); + org.purpurmc.purpur.command.CreditsCommand.register(this.dispatcher); // Purpur - Add credits command + org.purpurmc.purpur.command.DemoCommand.register(this.dispatcher); // Purpur - Add demo command + org.purpurmc.purpur.command.PingCommand.register(this.dispatcher); // Purpur - Add ping command + org.purpurmc.purpur.command.UptimeCommand.register(this.dispatcher); // Purpur - Add uptime command + org.purpurmc.purpur.command.TPSBarCommand.register(this.dispatcher); // Purpur - Implement TPSBar + org.purpurmc.purpur.command.CompassCommand.register(this.dispatcher); // Purpur - Add compass command + org.purpurmc.purpur.command.RamBarCommand.register(this.dispatcher); // Purpur - Add rambar command + org.purpurmc.purpur.command.RamCommand.register(this.dispatcher); // Purpur - Add ram command } if (selection.includeIntegrated) { @@ -522,6 +_,7 @@ private void runSync(ServerPlayer player, java.util.Collection bukkit, RootCommandNode rootCommandNode) { // Paper end - Perf: Async command map building new com.destroystokyo.paper.event.brigadier.AsyncPlayerSendCommandsEvent(player.getBukkitEntity(), (RootCommandNode) rootCommandNode, true).callEvent(); // Paper - Brigadier API + if (org.bukkit.event.player.PlayerCommandSendEvent.getHandlerList().getRegisteredListeners().length > 0) { // Purpur - Skip events if there's no listeners org.bukkit.event.player.PlayerCommandSendEvent event = new org.bukkit.event.player.PlayerCommandSendEvent(player.getBukkitEntity(), new java.util.LinkedHashSet<>(bukkit)); event.getPlayer().getServer().getPluginManager().callEvent(event); @@ -532,6 +_,8 @@ } } // CraftBukkit end + } // Purpur - Skip events if there's no listeners + player.connection.send(new ClientboundCommandsPacket(rootCommandNode, COMMAND_NODE_INSPECTOR)); }