From dc00f0e6ad5dd20eda599d2aa6c544c3b19b380a Mon Sep 17 00:00:00 2001 From: KonaeAkira Date: Sat, 12 Feb 2022 15:44:23 +0100 Subject: Fix bug where the backpack preview wouldn't update in some cases Also moved the tick() call to a more reasonable location --- src/main/java/me/xmrvizzy/skyblocker/SkyblockerMod.java | 2 ++ src/main/java/me/xmrvizzy/skyblocker/mixin/HandledScreenMixin.java | 5 ----- src/main/java/me/xmrvizzy/skyblocker/skyblock/BackpackPreview.java | 6 ++++-- 3 files changed, 6 insertions(+), 7 deletions(-) (limited to 'src/main') diff --git a/src/main/java/me/xmrvizzy/skyblocker/SkyblockerMod.java b/src/main/java/me/xmrvizzy/skyblocker/SkyblockerMod.java index db702e81..575a87d3 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/SkyblockerMod.java +++ b/src/main/java/me/xmrvizzy/skyblocker/SkyblockerMod.java @@ -3,6 +3,7 @@ package me.xmrvizzy.skyblocker; import me.xmrvizzy.skyblocker.config.SkyblockerConfig; import me.xmrvizzy.skyblocker.container.ContainerSolverManager; import me.xmrvizzy.skyblocker.discord.DiscordRPCManager; +import me.xmrvizzy.skyblocker.skyblock.BackpackPreview; import me.xmrvizzy.skyblocker.skyblock.dungeon.DungeonBlaze; import me.xmrvizzy.skyblocker.utils.Utils; import net.minecraft.client.MinecraftClient; @@ -30,6 +31,7 @@ public class SkyblockerMod { if (client == null) return; ticks++; if(onHypxiel()) { + BackpackPreview.tick(); if (ticks % 4 == 0) try { if (Utils.isDungeons) { diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/HandledScreenMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/HandledScreenMixin.java index 1e3f31c4..88676f08 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/mixin/HandledScreenMixin.java +++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/HandledScreenMixin.java @@ -58,9 +58,4 @@ public abstract class HandledScreenMixin extends Screen { if (BackpackPreview.renderPreview(matrices, focusedSlot.getIndex(), x, y)) ci.cancel(); } } - - @Inject(method = "tick", at = @At("TAIL")) - public void tick(CallbackInfo ci) { - BackpackPreview.tick(); - } } diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/BackpackPreview.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/BackpackPreview.java index dae5dd70..4bf474e4 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/BackpackPreview.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/BackpackPreview.java @@ -92,12 +92,14 @@ public class BackpackPreview extends DrawableHelper { } public static void tick() { - if (++counter == 200) { + if (++counter == 100) { counter = 0; for (int i = 0; i < dirty.length; ++i) if (dirty[i]) { saveStorage(i); - dirty[i] = false; + String title = MinecraftClient.getInstance().currentScreen.getTitle().getString(); + int index = getStorageIndexFromTitle(title); + dirty[i] = i == index; } } } -- cgit