Update kit management & anchor kit

This commit is contained in:
TDSTOS
2025-12-09 01:01:00 +01:00
parent a3b521940c
commit 728b7534ac
6 changed files with 395 additions and 121 deletions

View File

@@ -5,11 +5,17 @@ import club.mcscrims.core.config.ConfigFormat
import club.mcscrims.core.config.ConfigLoader
import club.mcscrims.core.database.DatabaseConfig
import club.mcscrims.core.database.mongodb.MongoManager
import club.mcscrims.speedhg.ability.AbilityContext
import club.mcscrims.speedhg.ability.AbilityHitListener
import club.mcscrims.speedhg.ability.CooldownManager
import club.mcscrims.speedhg.ability.HitCounterManager
import club.mcscrims.speedhg.config.KitConfig
import club.mcscrims.speedhg.config.MessageConfig
import club.mcscrims.speedhg.config.PluginConfig
import club.mcscrims.speedhg.database.StatsRepository
import club.mcscrims.speedhg.game.GameManager
import club.mcscrims.speedhg.kit.KitListener
import club.mcscrims.speedhg.kit.KitManager
import club.mcscrims.speedhg.listener.GameStateListener
import club.mcscrims.speedhg.listener.LunarClientListener
import club.mcscrims.speedhg.world.WorldManager
@@ -20,13 +26,22 @@ import club.mcscrims.spigot.scheduler.SchedulerManager
import club.mcscrims.spigot.util.WorldEditUtils
import com.mongodb.client.model.Indexes
import kotlinx.coroutines.runBlocking
import net.kyori.adventure.text.Component
import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer
import net.luckperms.api.LuckPerms
import org.bukkit.plugin.java.JavaPlugin
class SpeedHG : JavaPlugin() {
companion object {
internal lateinit var instance: SpeedHG
fun Component.content(): String
{
return LegacyComponentSerializer.legacySection().serialize( this )
}
}
private lateinit var configLoader: ConfigLoader
@@ -47,6 +62,9 @@ class SpeedHG : JavaPlugin() {
internal lateinit var gameManager: GameManager
internal lateinit var worldManager: WorldManager
internal lateinit var abilityContext: AbilityContext
internal lateinit var kitManager: KitManager
internal lateinit var worldEditUtils: WorldEditUtils
internal lateinit var luckPerms: LuckPerms
@@ -84,12 +102,20 @@ class SpeedHG : JavaPlugin() {
gameManager = GameManager( this )
gameManager.initialize()
val cooldownManager = CooldownManager()
val hitCounterManager = HitCounterManager()
abilityContext = AbilityContext( cooldownManager, hitCounterManager )
kitManager = KitManager( this )
kitManager.initialize()
setupLuckPerms()
registerListener()
}
override fun onDisable()
{
kitManager.clearAll()
mongoManager.shutdown()
networkManager.shutdown()
}
@@ -97,6 +123,8 @@ class SpeedHG : JavaPlugin() {
private fun registerListener()
{
server.pluginManager.registerEvents(GameStateListener( this, gameManager ), this )
server.pluginManager.registerEvents(KitListener( this, kitManager ), this )
server.pluginManager.registerEvents(AbilityHitListener( this, abilityContext ), this )
LunarClientListener( this )
}