summaryrefslogtreecommitdiff
path: root/src/main/java/at/hannibal2/skyhanni/data
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/data')
-rw-r--r--src/main/java/at/hannibal2/skyhanni/data/TrackerManager.kt37
1 files changed, 37 insertions, 0 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/data/TrackerManager.kt b/src/main/java/at/hannibal2/skyhanni/data/TrackerManager.kt
new file mode 100644
index 000000000..de9caa02e
--- /dev/null
+++ b/src/main/java/at/hannibal2/skyhanni/data/TrackerManager.kt
@@ -0,0 +1,37 @@
+package at.hannibal2.skyhanni.data
+
+import at.hannibal2.skyhanni.SkyHanniMod
+import at.hannibal2.skyhanni.events.ConfigLoadEvent
+import at.hannibal2.skyhanni.events.GuiRenderEvent
+import at.hannibal2.skyhanni.utils.LorenzUtils
+import net.minecraftforge.fml.common.eventhandler.EventPriority
+import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
+
+object TrackerManager {
+
+ private var hasChanged = false
+ var dirty = false
+
+ @SubscribeEvent
+ fun onConfigLoad(event: ConfigLoadEvent) {
+ val config = SkyHanniMod.feature.misc.tracker.hideCheapItems
+ LorenzUtils.onToggle(config.alwaysShowBest, config.minPrice, config.enabled) {
+ hasChanged = true
+ }
+ }
+
+ @SubscribeEvent(priority = EventPriority.HIGHEST)
+ fun onRenderOverlayFirst(event: GuiRenderEvent) {
+ if (hasChanged) {
+ dirty = true
+ }
+ }
+
+ @SubscribeEvent(priority = EventPriority.LOWEST)
+ fun onRenderOverlayLast(event: GuiRenderEvent) {
+ if (hasChanged) {
+ dirty = false
+ hasChanged = false
+ }
+ }
+}