From 0043a3e82c3f55fc6c4134e23ba62ea3cfbf7e2f Mon Sep 17 00:00:00 2001 From: TDSTOS Date: Thu, 26 Mar 2026 01:07:12 +0100 Subject: [PATCH] Update Stats Management --- build.gradle.kts | 2 -- .../kotlin/club/mcscrims/speedhg/database/StatsManager.kt | 8 ++++---- .../club/mcscrims/speedhg/listener/StatsListener.kt | 2 +- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 94c33bb..ab0260e 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -45,8 +45,6 @@ tasks { archiveBaseName.set("GameModes-SpeedHG") archiveClassifier.set("") archiveVersion.set(project.version.toString()) - relocate("com.zaxxer.hikari", "club.mcscrims.speedhg.libs.hikari") - relocate("com.mysql", "club.mcscrims.speedhg.libs.mysql") } build { diff --git a/src/main/kotlin/club/mcscrims/speedhg/database/StatsManager.kt b/src/main/kotlin/club/mcscrims/speedhg/database/StatsManager.kt index f729b24..fd190bf 100644 --- a/src/main/kotlin/club/mcscrims/speedhg/database/StatsManager.kt +++ b/src/main/kotlin/club/mcscrims/speedhg/database/StatsManager.kt @@ -85,9 +85,9 @@ class StatsManager(private val plugin: SpeedHG) { * * @return Das [PlayerStats]-Objekt (neu aus DB oder aus Cache). */ - suspend fun loadStats(uuid: UUID): PlayerStats = withContext(Dispatchers.IO) { + suspend fun loadStats(uuid: UUID, name: String): PlayerStats = withContext(Dispatchers.IO) { cache.getOrPut(uuid) { - repository.findByUUID(uuid) ?: PlayerStats(uuid) // Neuer Spieler → Defaults + repository.findByUUID(uuid) ?: PlayerStats(uuid, name) // Neuer Spieler → Defaults } } @@ -95,9 +95,9 @@ class StatsManager(private val plugin: SpeedHG) { * Startet das Laden im Hintergrund ohne zu warten. * Für Fälle wo kein `runBlocking` erwünscht ist. */ - fun loadStatsAsync(uuid: UUID) { + fun loadStatsAsync(uuid: UUID, name: String) { scope.launch { - loadStats(uuid) + loadStats(uuid, name) } } diff --git a/src/main/kotlin/club/mcscrims/speedhg/listener/StatsListener.kt b/src/main/kotlin/club/mcscrims/speedhg/listener/StatsListener.kt index 09affbc..465ecbd 100644 --- a/src/main/kotlin/club/mcscrims/speedhg/listener/StatsListener.kt +++ b/src/main/kotlin/club/mcscrims/speedhg/listener/StatsListener.kt @@ -38,7 +38,7 @@ class StatsListener : Listener { fun onPreLogin(event: AsyncPlayerPreLoginEvent) { // Wir sind auf einem Async-Thread — runBlocking ist hier korrekt. runBlocking { - plugin.statsManager.loadStats(event.uniqueId) + plugin.statsManager.loadStats(event.uniqueId, event.name) } }