From ef030789d889163a7f00303d7aceedddea9e9d58 Mon Sep 17 00:00:00 2001 From: Arthur Uzulin Date: Tue, 12 Sep 2017 21:42:58 +1000 Subject: [PATCH] - Made GUI no longer rely on container logic - Replace all GL11 calls with GlStateManager in GUI - Add backgroud to gui - Possibly resolved JEI misinteraction by not relying on container logic - Bump version to 1.5.2.1 --- resources/mcmod.info | 2 +- src/fuj1n/recmod/RecMod.java | 2 +- src/fuj1n/recmod/client/gui/GuiSimple.java | 47 ++++++++++++------- .../recmod/inventory/ContainerDummy.java | 14 ------ 4 files changed, 33 insertions(+), 32 deletions(-) delete mode 100644 src/fuj1n/recmod/inventory/ContainerDummy.java diff --git a/resources/mcmod.info b/resources/mcmod.info index 82f048e..cf44c81 100644 --- a/resources/mcmod.info +++ b/resources/mcmod.info @@ -3,7 +3,7 @@ "modid": "fuj1n.recmod", "name": "Recording Status Mod", "description": "Record/Stream status in the players list, /rec to toggle", - "version": "v1.5.2", + "version": "v1.5.2.1", "mcversion": "1.12.1", "url": "", "updateUrl": "", diff --git a/src/fuj1n/recmod/RecMod.java b/src/fuj1n/recmod/RecMod.java index 8030ad8..7d24ff1 100644 --- a/src/fuj1n/recmod/RecMod.java +++ b/src/fuj1n/recmod/RecMod.java @@ -17,7 +17,7 @@ import java.io.File; import java.util.HashMap; -@Mod(name = "Recording Status Mod", version = "v1.5.2", modid = "fuj1n.recmod", acceptableRemoteVersions = "*") public class RecMod +@Mod(name = "Recording Status Mod", version = "v1.5.2.1", modid = "fuj1n.recmod", acceptableRemoteVersions = "*") public class RecMod { @Instance("fuj1n.recmod") public static RecMod instance; diff --git a/src/fuj1n/recmod/client/gui/GuiSimple.java b/src/fuj1n/recmod/client/gui/GuiSimple.java index bc597b6..2e5f8d9 100644 --- a/src/fuj1n/recmod/client/gui/GuiSimple.java +++ b/src/fuj1n/recmod/client/gui/GuiSimple.java @@ -1,20 +1,17 @@ package fuj1n.recmod.client.gui; import fuj1n.recmod.RecMod; -import fuj1n.recmod.inventory.ContainerDummy; import fuj1n.recmod.network.packet.PacketUpdatePlayerStatus; -import net.minecraft.client.gui.GuiButton; -import net.minecraft.client.gui.inventory.GuiContainer; +import net.minecraft.client.gui.*; +import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.resources.I18n; import net.minecraft.util.ResourceLocation; import org.lwjgl.input.Keyboard; -import org.lwjgl.opengl.GL11; import java.io.IOException; -public class GuiSimple extends GuiContainer +public class GuiSimple extends GuiScreen { - public String boundPlayer; public int guiState = 0; @@ -37,10 +34,13 @@ public class GuiSimple extends GuiContainer public GuiNumTextField tfAbsX; public GuiNumTextField tfAbsY; + /** The X size of the inventory window in pixels. */ + protected int xSize = 176; + /** The Y size of the inventory window in pixels. */ + protected int ySize = 166; + public GuiSimple (String boundPlayer) { - super(new ContainerDummy()); - this.boundPlayer = boundPlayer; if (stateNames.length != returnStates.length) @@ -49,33 +49,48 @@ public GuiSimple (String boundPlayer) } } - @Override public void drawGuiContainerForegroundLayer (int par1, int par2) + @Override public void drawScreen(int mouseX, int mouseY, float partialTicks){ + int guiLeft = (this.width - this.xSize) / 2; + int guiTop = (this.height - this.ySize) / 2; + + this.drawDefaultBackground(); + + GlStateManager.pushMatrix(); + GlStateManager.translate(guiLeft, guiTop, 0.0F); + + this.drawGuiContainerBackgroundLayer(partialTicks, mouseX, mouseY); + GlStateManager.translate(-guiLeft, -guiTop, 0.0F); + super.drawScreen(mouseX, mouseY, partialTicks); + GlStateManager.translate(guiLeft, guiTop, 0.0F); + this.drawGuiContainerForegroundLayer(mouseX, mouseY); + + GlStateManager.popMatrix(); + } + + private void drawGuiContainerForegroundLayer (int par1, int par2) { this.fontRenderer.drawString(translate("recmod.interface.name") + stateNames[guiState], 8, 11, 4210752); switch (guiState) { case 2: - GL11.glPopMatrix(); + GlStateManager.popMatrix(); if (tfAbsX != null && tfAbsY != null) { tfAbsX.draw("X Position: "); tfAbsY.draw("Y Position: "); } - GL11.glPushMatrix(); + GlStateManager.pushMatrix(); break; case 4: break; } } - @Override public void drawGuiContainerBackgroundLayer (float par1, int par2, int par3) + private void drawGuiContainerBackgroundLayer (float par1, int par2, int par3) { - GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); this.mc.getTextureManager().bindTexture(background); - int k = (this.width - this.xSize) / 2; - int l = (this.height - this.ySize) / 2; - this.drawTexturedModalRect(k, l, 0, 0, this.xSize, this.ySize); + this.drawTexturedModalRect(0, 0, 0, 0, this.xSize, this.ySize); } @Override public void initGui () diff --git a/src/fuj1n/recmod/inventory/ContainerDummy.java b/src/fuj1n/recmod/inventory/ContainerDummy.java deleted file mode 100644 index 0da59e1..0000000 --- a/src/fuj1n/recmod/inventory/ContainerDummy.java +++ /dev/null @@ -1,14 +0,0 @@ -package fuj1n.recmod.inventory; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.Container; - -public class ContainerDummy extends Container -{ - - @Override public boolean canInteractWith (EntityPlayer entityplayer) - { - return true; - } - -}