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/slayer | |
| 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/slayer')
| -rw-r--r-- | src/main/java/at/hannibal2/skyhanni/features/slayer/SlayerProfitTracker.kt | 29 |
1 files changed, 7 insertions, 22 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/features/slayer/SlayerProfitTracker.kt b/src/main/java/at/hannibal2/skyhanni/features/slayer/SlayerProfitTracker.kt index 7efaed3d3..229d9007c 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/slayer/SlayerProfitTracker.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/slayer/SlayerProfitTracker.kt @@ -48,7 +48,6 @@ object SlayerProfitTracker { private var itemLogCategory = "" private var baseSlayerType = "" - private var display = emptyList<List<Any>>() private val logger = LorenzLogger("slayer/profit_tracker") private var lastClickDelay = 0L private val trackers = mutableMapOf<String, SkyHanniTracker<Data>>() @@ -106,7 +105,6 @@ object SlayerProfitTracker { getTracker()?.modify { it.slayerSpawnCost += price } - update() } private var allowedItems = mapOf<String, List<NEUInternalName>>() @@ -135,14 +133,13 @@ object SlayerProfitTracker { val newSlayer = event.newSlayer itemLogCategory = newSlayer.removeColor() baseSlayerType = itemLogCategory.substringBeforeLast(" ") - update() + getTracker()?.update() } private fun addMobKillCoins(coins: Int) { getTracker()?.modify { it.mobKillCoins += coins } - update() } private fun addItemPickup(internalName: NEUInternalName, stackSize: Int) { @@ -152,8 +149,6 @@ object SlayerProfitTracker { slayerItemProfit.timesDropped++ slayerItemProfit.totalAmount += stackSize } - - update() } private fun getTracker(): SkyHanniTracker<Data>? { @@ -165,7 +160,7 @@ object SlayerProfitTracker { itemLogCategory ) { Data() } } - SkyHanniTracker("$itemLogCategory Profit Tracker", { Data() }, getStorage) { update() } + SkyHanniTracker("$itemLogCategory Profit Tracker", { Data() }, getStorage) { drawDisplay(it) } } } @@ -174,8 +169,6 @@ object SlayerProfitTracker { getTracker()?.modify { it.slayerCompletedCount++ } - - update() } @SubscribeEvent @@ -238,16 +231,9 @@ object SlayerProfitTracker { return internalName in allowedList } - fun update() { - val tracker = getTracker() ?: return - display = drawDisplay(tracker) - } - - private fun drawDisplay(tracker: SkyHanniTracker<Data>) = buildList<List<Any>> { - val itemLog = tracker.currentDisplay() ?: return@buildList - + private fun drawDisplay(itemLog: Data) = buildList<List<Any>> { + val tracker = getTracker() ?: return@buildList addAsSingletonList("§e§l$itemLogCategory Profit Tracker") - tracker.addDisplayModeToggle(this) var profit = 0.0 val map = mutableMapOf<Renderable, Long>() @@ -291,7 +277,7 @@ object SlayerProfitTracker { itemProfit.hidden = !hidden lastClickDelay = System.currentTimeMillis() } - update() + tracker.update() } } else Renderable.string(text) if (tracker.isInventoryOpen() || !hidden) { @@ -349,11 +335,10 @@ object SlayerProfitTracker { isCurrent = { it.ordinal == config.priceFrom }, onChange = { config.priceFrom = it.ordinal - update() + tracker.update() } ) } - tracker.addSessionResetButton(this) } private fun getPrice(internalName: NEUInternalName) = when (config.priceFrom) { @@ -368,7 +353,7 @@ object SlayerProfitTracker { if (!isEnabled()) return if (!SlayerAPI.isInCorrectArea) return - getTracker()?.renderDisplay(config.pos, display) + getTracker()?.renderDisplay(config.pos) } fun isEnabled() = LorenzUtils.inSkyBlock && config.enabled |
