diff options
| author | Unknown <shekwancheung0528@gmail.com> | 2019-01-31 15:32:33 +0800 |
|---|---|---|
| committer | Unknown <shekwancheung0528@gmail.com> | 2019-01-31 15:32:33 +0800 |
| commit | 2f95b698dee3368666cefe8890a015eb098dd77b (patch) | |
| tree | 994981d645051f5360ea29dc0d7701a83cd1858a /src/main/java/me/shedaniel/rei/client/GuiHelper.java | |
| parent | 40d345b6b0f0bea1e4313ad9cdb789762e160f8d (diff) | |
| download | RoughlyEnoughItems-2.2.0.15.tar.gz RoughlyEnoughItems-2.2.0.15.tar.bz2 RoughlyEnoughItems-2.2.0.15.zip | |
Update to v2.2.0.15 & Fix Optifinev2.2.0.15
Fix #16
Diffstat (limited to 'src/main/java/me/shedaniel/rei/client/GuiHelper.java')
| -rw-r--r-- | src/main/java/me/shedaniel/rei/client/GuiHelper.java | 39 |
1 files changed, 28 insertions, 11 deletions
diff --git a/src/main/java/me/shedaniel/rei/client/GuiHelper.java b/src/main/java/me/shedaniel/rei/client/GuiHelper.java index 4b228b3a6..253a51480 100644 --- a/src/main/java/me/shedaniel/rei/client/GuiHelper.java +++ b/src/main/java/me/shedaniel/rei/client/GuiHelper.java @@ -3,17 +3,22 @@ package me.shedaniel.rei.client; import com.google.common.collect.Lists; import me.shedaniel.rei.gui.ContainerGuiOverlay; import me.shedaniel.rei.gui.widget.TextFieldWidget; +import me.shedaniel.rei.listeners.IMixinGuiContainer; +import net.minecraft.client.Minecraft; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; +import org.dimdev.rift.listener.client.ClientTickable; import java.util.List; -public class GuiHelper { +public class GuiHelper implements ClientTickable { public static TextFieldWidget searchField; public static List<ItemStack> inventoryStacks = Lists.newArrayList(); private static boolean overlayVisible = true; private static ContainerGuiOverlay overlay; + private static GuiContainer lastGuiContainer; + private static IMixinGuiContainer lastMixinGuiContainer; public static boolean isOverlayVisible() { return overlayVisible; @@ -23,14 +28,6 @@ public class GuiHelper { overlayVisible = !overlayVisible; } - public static ContainerGuiOverlay getOverlay(GuiContainer lastGui) { - if (overlay == null) { - overlay = new ContainerGuiOverlay(lastGui); - overlay.onInitialized(); - } - return overlay; - } - public static ContainerGuiOverlay getLastOverlay() { return overlay; } @@ -40,8 +37,28 @@ public class GuiHelper { overlay.onInitialized(); } - public static void resetOverlay() { - overlay = null; + public static GuiContainer getLastGuiContainer() { + return lastGuiContainer; + } + + public static void setLastGuiContainer(GuiContainer lastGuiContainer) { + GuiHelper.lastGuiContainer = lastGuiContainer; + } + + public static IMixinGuiContainer getLastMixinGuiContainer() { + return lastMixinGuiContainer; + } + + public static void setLastMixinGuiContainer(IMixinGuiContainer lastMixinGuiContainer) { + GuiHelper.lastMixinGuiContainer = lastMixinGuiContainer; + } + + @Override + public void clientTick(Minecraft client) { + if (client.currentScreen instanceof GuiContainer && lastGuiContainer != client.currentScreen) { + GuiHelper.lastGuiContainer = (GuiContainer) client.currentScreen; + GuiHelper.lastMixinGuiContainer = (IMixinGuiContainer) lastGuiContainer; + } } } |
