From 02c9ce15e053d5d0751c32ea3ef481c9eef7a904 Mon Sep 17 00:00:00 2001 From: hannibal2 <24389977+hannibal002@users.noreply.github.com> Date: Sat, 7 Sep 2024 07:05:45 +0200 Subject: Feature: /shedittracker (#2448) Co-authored-by: hannibal2 <24389977+hannibal00212@users.noreply.github.com> --- .../mining/fossilexcavator/ExcavatorProfitTracker.kt | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) (limited to 'src/main/java/at/hannibal2/skyhanni/features/mining') diff --git a/src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/ExcavatorProfitTracker.kt b/src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/ExcavatorProfitTracker.kt index dcf9b8c4d..ef3b780b7 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/ExcavatorProfitTracker.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/ExcavatorProfitTracker.kt @@ -2,8 +2,10 @@ package at.hannibal2.skyhanni.features.mining.fossilexcavator import at.hannibal2.skyhanni.SkyHanniMod import at.hannibal2.skyhanni.data.IslandType +import at.hannibal2.skyhanni.data.ItemAddManager import at.hannibal2.skyhanni.events.GuiRenderEvent import at.hannibal2.skyhanni.events.IslandChangeEvent +import at.hannibal2.skyhanni.events.ItemAddEvent import at.hannibal2.skyhanni.events.mining.FossilExcavationEvent import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule import at.hannibal2.skyhanni.utils.ChatUtils @@ -154,6 +156,20 @@ object ExcavatorProfitTracker { return profit - scrapPrice } + @SubscribeEvent + fun onItemAdd(event: ItemAddEvent) { + if (!isEnabled()) return + + val internalName = event.internalName + if (event.source == ItemAddManager.Source.COMMAND) { + tryAddItem(internalName, event.amount, command = true) + } + } + + private fun tryAddItem(internalName: NEUInternalName, amount: Int, command: Boolean) { + tracker.addItem(internalName, amount, command) + } + @SubscribeEvent fun onFossilExcavation(event: FossilExcavationEvent) { if (!isEnabled()) return @@ -185,11 +201,11 @@ object ExcavatorProfitTracker { val internalName = NEUInternalName.fromItemNameOrNull(name) if (internalName == null) { - ChatUtils.debug("no price for exavator profit: '$name'") + ChatUtils.debug("no price for excavator profit: '$name'") return } // TODO use primitive item stacks in trackers - tracker.addItem(internalName, amount) + tryAddItem(internalName, amount, command = false) } @SubscribeEvent -- cgit