diff options
author | hannibal2 <24389977+hannibal00212@users.noreply.github.com> | 2024-01-11 12:42:13 +0100 |
---|---|---|
committer | hannibal2 <24389977+hannibal00212@users.noreply.github.com> | 2024-01-11 12:42:13 +0100 |
commit | 8c5e53facf75158bd8b0f4875f71133bf6a365e3 (patch) | |
tree | 999e48fcd0d449c26339ac9ad60abb33839ab016 /src/main/java/at/hannibal2 | |
parent | e92fdc4d5e06fd70566f4ec844ecc2625f720a8a (diff) | |
download | skyhanni-8c5e53facf75158bd8b0f4875f71133bf6a365e3.tar.gz skyhanni-8c5e53facf75158bd8b0f4875f71133bf6a365e3.tar.bz2 skyhanni-8c5e53facf75158bd8b0f4875f71133bf6a365e3.zip |
creating function addTotalProfit for item trackers and fixed wrong calculation when zero bosses killed in slayer profit trackers
Diffstat (limited to 'src/main/java/at/hannibal2')
4 files changed, 18 insertions, 30 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/features/event/diana/DianaProfitTracker.kt b/src/main/java/at/hannibal2/skyhanni/features/event/diana/DianaProfitTracker.kt index 67468351f..5b8776bec 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/event/diana/DianaProfitTracker.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/event/diana/DianaProfitTracker.kt @@ -81,19 +81,7 @@ object DianaProfitTracker { ) ) - val profitFormat = profit.addSeparators() - val profitPrefix = if (profit < 0) "§c" else "§6" - - val profitPerBurrow = profit / data.burrowsDug - val profitPerBurrowFormat = NumberUtil.format(profitPerBurrow) - - val text = "§eTotal Profit: $profitPrefix$profitFormat coins" - addAsSingletonList( - Renderable.hoverTips( - text, - listOf("§7Profit per burrow: $profitPrefix$profitPerBurrowFormat") - ) - ) + addAsSingletonList(tracker.addTotalProfit(profit, data.burrowsDug, "burrow")) tracker.addPriceFromButton(this) } diff --git a/src/main/java/at/hannibal2/skyhanni/features/fishing/tracker/FishingProfitTracker.kt b/src/main/java/at/hannibal2/skyhanni/features/fishing/tracker/FishingProfitTracker.kt index 979fa845f..1ccac83de 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/fishing/tracker/FishingProfitTracker.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/fishing/tracker/FishingProfitTracker.kt @@ -112,14 +112,7 @@ object FishingProfitTracker { ) ) - val profitFormat = profit.addSeparators() - val profitPrefix = if (profit < 0) "§c" else "§6" - - val profitPerCatch = profit / data.totalCatchAmount - val profitPerCatchFormat = NumberUtil.format(profitPerCatch) - - val text = "§eTotal Profit: $profitPrefix$profitFormat coins" - addAsSingletonList(Renderable.hoverTips(text, listOf("§7Profit per catch: $profitPrefix$profitPerCatchFormat"))) + addAsSingletonList(tracker.addTotalProfit(profit, data.totalCatchAmount, "catch")) tracker.addPriceFromButton(this) } 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 6ff20129b..d0c374a8b 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/slayer/SlayerProfitTracker.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/slayer/SlayerProfitTracker.kt @@ -43,7 +43,7 @@ object SlayerProfitTracker { var slayerSpawnCost: Long = 0 @Expose - var slayerCompletedCount = 0 + var slayerCompletedCount = 0L override fun getDescription(timesDropped: Long): List<String> { val percentage = timesDropped.toDouble() / slayerCompletedCount @@ -168,14 +168,7 @@ object SlayerProfitTracker { ) ) - val profitFormat = profit.addSeparators() - val profitPrefix = if (profit < 0) "§c" else "§6" - - val profitPerBoss = profit / itemLog.slayerCompletedCount - val profitPerBossFormat = NumberUtil.format(profitPerBoss) - - val text = "§eTotal Profit: $profitPrefix$profitFormat coins" - addAsSingletonList(Renderable.hoverTips(text, listOf("§7Profit per boss: $profitPrefix$profitPerBossFormat"))) + addAsSingletonList(tracker.addTotalProfit(profit, itemLog.slayerCompletedCount, "boss")) tracker.addPriceFromButton(this) } 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 8dab120fa..b831ade3f 100644 --- a/src/main/java/at/hannibal2/skyhanni/utils/tracker/SkyHanniItemTracker.kt +++ b/src/main/java/at/hannibal2/skyhanni/utils/tracker/SkyHanniItemTracker.kt @@ -172,4 +172,18 @@ class SkyHanniItemTracker<Data : ItemTrackerData>( } } + fun addTotalProfit(profit: Double, totalAmount: Long, action: String): Renderable { + val profitFormat = profit.addSeparators() + val profitPrefix = if (profit < 0) "§c" else "§6" + + val tips = if (totalAmount > 0) { + val profitPerCatch = profit / totalAmount + val profitPerCatchFormat = NumberUtil.format(profitPerCatch) + listOf("§7Profit per $action: $profitPrefix$profitPerCatchFormat") + } else emptyList() + + val text = "§eTotal Profit: $profitPrefix$profitFormat coins" + return Renderable.hoverTips(text, tips) + } + } |