From 5ca15aa117887e7d9653f2ccb8f993ec8931f2a0 Mon Sep 17 00:00:00 2001 From: Chaoscaot Date: Mon, 10 Nov 2025 11:50:39 +0100 Subject: [PATCH] Refactor `PersonalKitTable` to use explicit ID column initialization and update `create` method to utilize `insert` operation. Signed-off-by: Chaoscaot --- .../SQL/src/de/steamwar/sql/PersonalKit.kt | 31 ++++++++++++------- 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/CommonCore/SQL/src/de/steamwar/sql/PersonalKit.kt b/CommonCore/SQL/src/de/steamwar/sql/PersonalKit.kt index cbe97fd7..cd774d3c 100644 --- a/CommonCore/SQL/src/de/steamwar/sql/PersonalKit.kt +++ b/CommonCore/SQL/src/de/steamwar/sql/PersonalKit.kt @@ -60,15 +60,17 @@ class InternalKit(id: EntityID): CompositeEntity(id) { @JvmStatic fun create(userId: Int, gamemode: String, kitName: String, rawInventory: String, rawArmor: String) = useDb { - PersonalKitTable.insert { - it[this.userId] = EntityID(userId, SteamwarUserTable) - it[this.gamemode] = gamemode - it[this.kitName] = kitName - it[this.inventory] = rawInventory - it[this.armor] = rawArmor - it[this.inUse] = true + new( + CompositeID { + it[PersonalKitTable.userId] = EntityID(userId, SteamwarUserTable) + it[PersonalKitTable.gamemode] = gamemode + it[PersonalKitTable.kitName] = kitName + } + ) { + this.inventory = rawInventory + this.armor = rawArmor + this.inUse = true } - get(userId, gamemode, kitName) } @JvmStatic @@ -80,10 +82,15 @@ class InternalKit(id: EntityID): CompositeEntity(id) { var userID by PersonalKitTable.userId.transform({ EntityID(it, SteamwarUserTable) }, { it.value }) private set - var gamemode by PersonalKitTable.gamemode - private set - var name by PersonalKitTable.kitName + private var gameMode by PersonalKitTable.gamemode + val gamemode: String + get() = gameMode.value + + var kitName by PersonalKitTable.kitName private set + val name: String + get() = kitName.value + var rawInventory by PersonalKitTable.inventory private set var rawArmor by PersonalKitTable.armor @@ -99,7 +106,7 @@ class InternalKit(id: EntityID): CompositeEntity(id) { set(value) = useDb { rawArmor = value } fun setDefault() = useDb { - find { PersonalKitTable.userId eq userID and (PersonalKitTable.gamemode eq gamemode) and (PersonalKitTable.inUse eq true) } + find { PersonalKitTable.userId eq userID and (PersonalKitTable.gamemode eq gameMode) and (PersonalKitTable.inUse eq true) } .forEach { it.inUse = false } inUse = true }