Add KitCommand

This commit is contained in:
TDSTOS
2026-03-25 02:37:16 +01:00
parent 9d6bd6a6b8
commit 72c461ab28
4 changed files with 82 additions and 4 deletions

View File

@@ -0,0 +1,67 @@
package club.mcscrims.speedhg.command
import club.mcscrims.speedhg.SpeedHG
import club.mcscrims.speedhg.util.legacySerializer
import club.mcscrims.speedhg.util.sendMsg
import org.bukkit.command.Command
import org.bukkit.command.CommandExecutor
import org.bukkit.command.CommandSender
import org.bukkit.command.TabCompleter
import org.bukkit.entity.Player
class KitCommand : CommandExecutor, TabCompleter {
private val plugin = SpeedHG.instance
override fun onCommand(
sender: CommandSender,
command: Command,
label: String,
args: Array<out String>?
): Boolean
{
val player = sender as? Player
if ( player == null )
{
sender.sendMessage( "§cOnly players can execute this command." )
return true
}
if ( args.isNullOrEmpty() )
{
player.sendMsg( "commands.kit.usage" )
return true
}
val kitName = args[0]
val kit = plugin.kitManager.getKit( kitName )
if ( kit == null )
{
player.sendMsg( "commands.kit.kitNotFound", "kit" to kitName )
return true
}
plugin.kitManager.selectKit( player, kit )
player.sendMsg( "commands.kit.selected", "kit" to legacySerializer.serialize( kit.displayName ))
return true
}
override fun onTabComplete(
sender: CommandSender,
command: Command,
label: String,
args: Array<out String>?
): List<String?>
{
if ( args.isNullOrEmpty() )
return listOf()
if ( args.size == 1 )
return plugin.kitManager.getRegisteredKits().map { it.id }
return listOf()
}
}