diff options
| author | Unknown <shekwancheung0528@gmail.com> | 2019-01-30 00:12:47 +0800 |
|---|---|---|
| committer | Unknown <shekwancheung0528@gmail.com> | 2019-01-30 00:12:47 +0800 |
| commit | 973868ece23dd75080cfe6ef7b48f8284070ce4e (patch) | |
| tree | 4eb02c5643701791294dbe85fd704c5505bae272 /src/main/java/me/shedaniel/rei/client/GuiHelper.java | |
| parent | 39b05dc455edac3e9ce115214d6173e1b3824ff4 (diff) | |
| download | RoughlyEnoughItems-973868ece23dd75080cfe6ef7b48f8284070ce4e.tar.gz RoughlyEnoughItems-973868ece23dd75080cfe6ef7b48f8284070ce4e.tar.bz2 RoughlyEnoughItems-973868ece23dd75080cfe6ef7b48f8284070ce4e.zip | |
Fixes Bugs
Close #13
Close #15
Close #18
Diffstat (limited to 'src/main/java/me/shedaniel/rei/client/GuiHelper.java')
| -rw-r--r-- | src/main/java/me/shedaniel/rei/client/GuiHelper.java | 34 |
1 files changed, 24 insertions, 10 deletions
diff --git a/src/main/java/me/shedaniel/rei/client/GuiHelper.java b/src/main/java/me/shedaniel/rei/client/GuiHelper.java index 6fbb6a2a8..b962866f2 100644 --- a/src/main/java/me/shedaniel/rei/client/GuiHelper.java +++ b/src/main/java/me/shedaniel/rei/client/GuiHelper.java @@ -4,6 +4,7 @@ import com.google.common.collect.Lists; import me.shedaniel.rei.gui.ContainerGuiOverlay; import me.shedaniel.rei.gui.widget.TextFieldWidget; import me.shedaniel.rei.listeners.IMixinContainerGui; +import net.minecraft.client.MinecraftClient; import net.minecraft.client.gui.ContainerGui; import net.minecraft.item.ItemStack; @@ -15,6 +16,8 @@ public class GuiHelper { private static boolean overlayVisible = true; private static ContainerGuiOverlay overlay; public static List<ItemStack> inventoryStacks = Lists.newArrayList(); + private static ContainerGui lastContainerGui; + private static IMixinContainerGui lastMixinContainerGui; public static boolean isOverlayVisible() { return overlayVisible; @@ -24,14 +27,6 @@ public class GuiHelper { overlayVisible = !overlayVisible; } - public static ContainerGuiOverlay getOverlay(IMixinContainerGui lastGui) { - if (overlay == null) { - overlay = new ContainerGuiOverlay(lastGui); - overlay.onInitialized(); - } - return overlay; - } - public static ContainerGuiOverlay getLastOverlay() { return overlay; } @@ -41,8 +36,27 @@ public class GuiHelper { overlay.onInitialized(); } - public static void resetOverlay() { - overlay = null; + public static void onTick(MinecraftClient client) { + if (client.currentGui instanceof ContainerGui && lastContainerGui != client.currentGui) { + GuiHelper.lastContainerGui = (ContainerGui) client.currentGui; + GuiHelper.lastMixinContainerGui = (IMixinContainerGui) lastContainerGui; + } + } + + public static ContainerGui getLastContainerGui() { + return lastContainerGui; + } + + public static IMixinContainerGui getLastMixinContainerGui() { + return lastMixinContainerGui; + } + + public static void setLastContainerGui(ContainerGui lastContainerGui) { + GuiHelper.lastContainerGui = lastContainerGui; + } + + public static void setLastMixinContainerGui(IMixinContainerGui lastMixinContainerGui) { + GuiHelper.lastMixinContainerGui = lastMixinContainerGui; } } |
