From d5b4a817e2b9e7e5c88eb0c8212b9a6e678bd92f Mon Sep 17 00:00:00 2001 From: Walker Selby Date: Mon, 11 Dec 2023 13:59:52 -0800 Subject: Internal: Migrate Deprecated Config Values to Enums (#790) Migrate Deprecated Config Values to Enums. #790 --- .../skyhanni/utils/tracker/SkyHanniItemTracker.kt | 5 +++-- .../hannibal2/skyhanni/utils/tracker/SkyHanniTracker.kt | 15 +++++++++++++-- 2 files changed, 16 insertions(+), 4 deletions(-) (limited to 'src/main/java/at/hannibal2/skyhanni/utils') diff --git a/src/main/java/at/hannibal2/skyhanni/utils/tracker/SkyHanniItemTracker.kt b/src/main/java/at/hannibal2/skyhanni/utils/tracker/SkyHanniItemTracker.kt index e7b1faacb..6812476df 100644 --- a/src/main/java/at/hannibal2/skyhanni/utils/tracker/SkyHanniItemTracker.kt +++ b/src/main/java/at/hannibal2/skyhanni/utils/tracker/SkyHanniItemTracker.kt @@ -2,6 +2,7 @@ package at.hannibal2.skyhanni.utils.tracker import at.hannibal2.skyhanni.SkyHanniMod import at.hannibal2.skyhanni.config.Storage +import at.hannibal2.skyhanni.config.features.misc.TrackerConfig.PriceFromEntry import at.hannibal2.skyhanni.test.PriceSource import at.hannibal2.skyhanni.utils.ItemUtils.getNameWithEnchantment import at.hannibal2.skyhanni.utils.KeyboardManager @@ -50,9 +51,9 @@ class SkyHanniItemTracker( lists.addSelector( "", getName = { type -> type.displayName }, - isCurrent = { it.ordinal == config.priceFrom }, + isCurrent = { it.ordinal == config.priceFrom.ordinal }, // todo avoid ordinal onChange = { - config.priceFrom = it.ordinal + config.priceFrom = PriceFromEntry.entries[it.ordinal] // todo avoid ordinal update() } ) diff --git a/src/main/java/at/hannibal2/skyhanni/utils/tracker/SkyHanniTracker.kt b/src/main/java/at/hannibal2/skyhanni/utils/tracker/SkyHanniTracker.kt index 888d47361..80202fab0 100644 --- a/src/main/java/at/hannibal2/skyhanni/utils/tracker/SkyHanniTracker.kt +++ b/src/main/java/at/hannibal2/skyhanni/utils/tracker/SkyHanniTracker.kt @@ -1,11 +1,14 @@ package at.hannibal2.skyhanni.utils.tracker import at.hannibal2.skyhanni.SkyHanniMod +import at.hannibal2.skyhanni.config.ConfigUpdaterMigrator import at.hannibal2.skyhanni.config.Storage import at.hannibal2.skyhanni.config.core.config.Position +import at.hannibal2.skyhanni.config.features.misc.TrackerConfig.PriceFromEntry import at.hannibal2.skyhanni.data.ProfileStorageData import at.hannibal2.skyhanni.features.bazaar.BazaarApi.Companion.getBazaarData import at.hannibal2.skyhanni.features.misc.items.EstimatedItemValue +import at.hannibal2.skyhanni.utils.ConfigUtils import at.hannibal2.skyhanni.utils.LorenzUtils import at.hannibal2.skyhanni.utils.LorenzUtils.addAsSingletonList import at.hannibal2.skyhanni.utils.NEUInternalName @@ -16,6 +19,7 @@ import at.hannibal2.skyhanni.utils.SimpleTimeMark import at.hannibal2.skyhanni.utils.renderables.Renderable import net.minecraft.client.Minecraft import net.minecraft.client.gui.inventory.GuiInventory +import net.minecraftforge.fml.common.eventhandler.SubscribeEvent import kotlin.time.Duration.Companion.seconds open class SkyHanniTracker( @@ -36,8 +40,8 @@ open class SkyHanniTracker( private val storedTrackers get() = SkyHanniMod.feature.storage.trackerDisplayModes fun getPricePer(name: NEUInternalName) = when (config.priceFrom) { - 0 -> name.getBazaarData()?.sellPrice ?: name.getPriceOrNull() ?: 0.0 - 1 -> name.getBazaarData()?.buyPrice ?: name.getPriceOrNull() ?: 0.0 + PriceFromEntry.INSTANT_SELL -> name.getBazaarData()?.sellPrice ?: name.getPriceOrNull() ?: 0.0 + PriceFromEntry.SELL_OFFER -> name.getBazaarData()?.buyPrice ?: name.getPriceOrNull() ?: 0.0 else -> name.getNpcPriceOrNull() ?: 0.0 } @@ -172,4 +176,11 @@ open class SkyHanniTracker( override fun toString() = display } + + @SubscribeEvent + fun onConfigFix(event: ConfigUpdaterMigrator.ConfigFixEvent) { + event.transform(14, "misc.tracker.priceFrom") { element -> + ConfigUtils.migrateIntToEnum(element, PriceFromEntry::class.java) + } + } } -- cgit