From d8793bc2bbf79154aeea858ed36477aa9622dc60 Mon Sep 17 00:00:00 2001 From: Auxilor Date: Fri, 12 May 2023 16:54:03 +0100 Subject: [PATCH] Fixed command aliases --- eco-api/src/main/java/com/willfp/eco/core/Eco.java | 2 +- .../willfp/eco/internal/command/EcoPluginCommand.kt | 12 +++++------- .../kotlin/com/willfp/eco/internal/spigot/EcoImpl.kt | 2 +- 3 files changed, 7 insertions(+), 9 deletions(-) diff --git a/eco-api/src/main/java/com/willfp/eco/core/Eco.java b/eco-api/src/main/java/com/willfp/eco/core/Eco.java index 26b421cd..70ca19dd 100644 --- a/eco-api/src/main/java/com/willfp/eco/core/Eco.java +++ b/eco-api/src/main/java/com/willfp/eco/core/Eco.java @@ -170,7 +170,7 @@ public interface Eco { * @return The PluginCommandBase implementation */ @NotNull - PluginCommandBase createPluginCommand(@NotNull CommandBase parentDelegate, + PluginCommandBase createPluginCommand(@NotNull PluginCommandBase parentDelegate, @NotNull EcoPlugin plugin, @NotNull String name, @NotNull String permission, diff --git a/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/command/EcoPluginCommand.kt b/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/command/EcoPluginCommand.kt index 972d798f..aa4b411c 100644 --- a/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/command/EcoPluginCommand.kt +++ b/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/command/EcoPluginCommand.kt @@ -7,7 +7,7 @@ import com.willfp.eco.core.command.PluginCommandBase import org.bukkit.Bukkit class EcoPluginCommand( - parentDelegate: CommandBase, + private val parentDelegate: PluginCommandBase, plugin: EcoPlugin, name: String, permission: String, @@ -23,9 +23,6 @@ class EcoPluginCommand( if (command == null) { unregister() commandMap.register(plugin.name.lowercase(), DelegatedBukkitCommand(this)) - for (alias in aliases) { - commandMap.register(plugin.name.lowercase(), DelegatedBukkitCommand(this, alias)) - } } else { command.setExecutor(this) command.tabCompleter = this @@ -37,13 +34,14 @@ class EcoPluginCommand( } override fun unregister() { - for (s in (this.aliases + name)) { - commandMap.getCommand(s)?.unregister(commandMap) - } + commandMap.getCommand(name)?.unregister(commandMap) Eco.get().unregisterCommand(this) Eco.get().syncCommands() } + + override fun getAliases(): List = parentDelegate.aliases + override fun getDescription(): String? = parentDelegate.description } class EcoSubcommand( diff --git a/eco-core/core-plugin/src/main/kotlin/com/willfp/eco/internal/spigot/EcoImpl.kt b/eco-core/core-plugin/src/main/kotlin/com/willfp/eco/internal/spigot/EcoImpl.kt index 7ef58409..8bf8d79f 100644 --- a/eco-core/core-plugin/src/main/kotlin/com/willfp/eco/internal/spigot/EcoImpl.kt +++ b/eco-core/core-plugin/src/main/kotlin/com/willfp/eco/internal/spigot/EcoImpl.kt @@ -184,7 +184,7 @@ class EcoImpl : EcoSpigotPlugin(), Eco { } override fun createPluginCommand( - parentDelegate: CommandBase, + parentDelegate: PluginCommandBase, plugin: EcoPlugin, name: String, permission: String,