Support Component placeholders in language API

Add support for passing Components as placeholders in LanguageManager (getComponent, getMessageList) and add Player extension overloads (sendMsg, trans) that accept component pairs. Replace usages of legacy serialized strings with direct Component placeholders across kits, scoreboard, and listeners (remove legacySerializer imports/usages). Also normalize placeholder keys (remove angle brackets in ConnectListener) and scope legacySerializer as private in Extensions.
This commit is contained in:
TDSTOS
2026-03-25 18:29:21 +01:00
parent 9385269c50
commit 237ce56614
6 changed files with 52 additions and 26 deletions

View File

@@ -4,7 +4,6 @@ import club.mcscrims.speedhg.SpeedHG
import club.mcscrims.speedhg.game.GameState
import club.mcscrims.speedhg.kit.Playstyle
import club.mcscrims.speedhg.kit.impl.BackupKit
import club.mcscrims.speedhg.util.legacySerializer
import club.mcscrims.speedhg.util.sendMsg
import org.bukkit.command.Command
import org.bukkit.command.CommandExecutor
@@ -74,14 +73,14 @@ class KitCommand : CommandExecutor, TabCompleter {
plugin.kitManager.selectPlaystyle( player, playstyle )
plugin.kitManager.applyKit( player )
player.sendMsg( "commands.kit.selected", "playstyle" to playstyle.displayName, "kit" to legacySerializer.serialize( kit.displayName ))
player.sendMsg( "commands.kit.selected", mapOf( "playstyle" to playstyle.displayName ), "kit" to kit.displayName )
return true
}
plugin.kitManager.selectKit( player, kit )
plugin.kitManager.selectPlaystyle( player, playstyle )
player.sendMsg( "commands.kit.selected", "playstyle" to playstyle.displayName, "kit" to legacySerializer.serialize( kit.displayName ))
player.sendMsg( "commands.kit.selected", mapOf( "playstyle" to playstyle.displayName ), "kit" to kit.displayName )
return true
}