diff options
author | hannibal2 <24389977+hannibal00212@users.noreply.github.com> | 2023-11-09 18:39:30 +0100 |
---|---|---|
committer | hannibal2 <24389977+hannibal00212@users.noreply.github.com> | 2023-11-09 18:39:30 +0100 |
commit | e03ba746fa0ab6258fcd5e6855d1590b0ba6f5c9 (patch) | |
tree | 2de4b40f7e7466e52e5d1b16eb8a45c3d5f4eabe /src/main/java/at/hannibal2/skyhanni/features/event | |
parent | d2d6162ce5830099418e85b69f02b958625ad6a7 (diff) | |
download | skyhanni-e03ba746fa0ab6258fcd5e6855d1590b0ba6f5c9.tar.gz skyhanni-e03ba746fa0ab6258fcd5e6855d1590b0ba6f5c9.tar.bz2 skyhanni-e03ba746fa0ab6258fcd5e6855d1590b0ba6f5c9.zip |
SkyHanniTracker now handles the display list as well.
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/features/event')
-rw-r--r-- | src/main/java/at/hannibal2/skyhanni/features/event/jerry/frozentreasure/FrozenTreasureTracker.kt | 28 |
1 files changed, 5 insertions, 23 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/features/event/jerry/frozentreasure/FrozenTreasureTracker.kt b/src/main/java/at/hannibal2/skyhanni/features/event/jerry/frozentreasure/FrozenTreasureTracker.kt index fa10aa501..bfae2a7d8 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/event/jerry/frozentreasure/FrozenTreasureTracker.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/event/jerry/frozentreasure/FrozenTreasureTracker.kt @@ -8,7 +8,6 @@ import at.hannibal2.skyhanni.data.ScoreboardData import at.hannibal2.skyhanni.events.GuiRenderEvent import at.hannibal2.skyhanni.events.LorenzChatEvent import at.hannibal2.skyhanni.events.LorenzWorldChangeEvent -import at.hannibal2.skyhanni.events.PreProfileSwitchEvent import at.hannibal2.skyhanni.utils.LorenzUtils.addAsSingletonList import at.hannibal2.skyhanni.utils.LorenzUtils.addOrPut import at.hannibal2.skyhanni.utils.LorenzUtils.isInIsland @@ -24,7 +23,6 @@ import kotlin.concurrent.fixedRateTimer object FrozenTreasureTracker { private val config get() = SkyHanniMod.feature.event.winter.frozenTreasureTracker - private var display = emptyList<List<Any>>() private var estimatedIce = 0L private var lastEstimatedIce = 0L private var icePerSecond = mutableListOf<Long>() @@ -32,7 +30,7 @@ object FrozenTreasureTracker { private var stoppedChecks = 0 private var compactPattern = "COMPACT! You found an Enchanted Ice!".toPattern() private val tracker = SkyHanniTracker("Frozen Treasure Tracker", { Data() }, { it.frozenTreasureTracker }) - { saveAndUpdate() } + { formatDisplay(drawDisplay(it)) } init { fixedRateTimer(name = "skyhanni-frozen-treasure-tracker", period = 1000) { @@ -64,7 +62,7 @@ object FrozenTreasureTracker { icePerHour = 0 stoppedChecks = 0 icePerSecond = mutableListOf() - saveAndUpdate() + tracker.update() } private fun calculateIcePerHour() { @@ -99,11 +97,7 @@ object FrozenTreasureTracker { val newList = mutableListOf<List<Any>>() for (index in config.textFormat) { newList.add(map[index]) - if (newList.size == 1) { - tracker.addDisplayModeToggle(newList) - } } - tracker.addSessionResetButton(newList) return newList } @@ -118,7 +112,6 @@ object FrozenTreasureTracker { tracker.modify { it.compactProcs += 1 } - saveAndUpdate() if (config.hideMessages) event.blockedReason = "frozen treasure tracker" } @@ -128,18 +121,13 @@ object FrozenTreasureTracker { it.treasuresMined += 1 it.treasureCount.addOrPut(treasure, 1) } - saveAndUpdate() if (config.hideMessages) event.blockedReason = "frozen treasure tracker" } } } - @SubscribeEvent - fun onPreProfileSwitch(event: PreProfileSwitchEvent) { - display = emptyList() - } - - private fun drawTreasureDisplay(data: Data) = buildList<List<Any>> { + private fun drawDisplay(data: Data) = buildList<List<Any>> { + calculateIce(data) addAsSingletonList("§1§lFrozen Treasure Tracker") addAsSingletonList("§6${formatNumber(data.treasuresMined)} Treasures Mined") addAsSingletonList("§3${formatNumber(estimatedIce)} Total Ice") @@ -160,12 +148,6 @@ object FrozenTreasureTracker { return "$amount" } - private fun saveAndUpdate() { - val data = tracker.currentDisplay() ?: return - calculateIce(data) - display = formatDisplay(drawTreasureDisplay(data)) - } - private fun calculateIce(data: Data) { estimatedIce = data.compactProcs * 160L for (treasure in FrozenTreasure.entries) { @@ -180,7 +162,7 @@ object FrozenTreasureTracker { if (!onJerryWorkshop()) return if (config.onlyInCave && !inGlacialCave()) return - tracker.renderDisplay(config.position, display) + tracker.renderDisplay(config.position) } @SubscribeEvent |