summaryrefslogtreecommitdiff
path: root/src/main/java/ihl/processing/chemistry/LabElectrolyzerGui.java
blob: 3eb14a32ca1c61b84ade76fab38fea5a3a8aaafe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
package ihl.processing.chemistry;

import org.lwjgl.opengl.GL11;

import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import ihl.utils.IHLRenderUtils;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.util.ResourceLocation;

@SideOnly(Side.CLIENT)
public class LabElectrolyzerGui extends GuiContainer {
	private static final ResourceLocation background = new ResourceLocation("ihl",
			"textures/gui/GUILabElectrolyzer.png");
	private LabElectrolyzerContainer container;

	public LabElectrolyzerGui(LabElectrolyzerContainer container1) {
		// the container is instanciated and passed to the superclass for
		// handling
		super(container1);
		this.container = container1;
	}

	@Override
	protected void drawGuiContainerForegroundLayer(int par1, int par2) {
		int xOffset = (this.width - xSize) / 2;
		int yOffset = (this.height - ySize) / 2;
		GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
		this.mc.renderEngine.bindTexture(background);
		int i1;
		if (this.container.tileEntity.getEnergy() > 0D) {
			GL11.glEnable(GL11.GL_BLEND);
			GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
			i1 = Math.min(this.container.tileEntity.getGUIEnergy(12), 12);
            this.drawTexturedModalRect(12, 16 + 12 - i1, 179, 12 - i1, 14, i1 + 2);
		}
		if (this.container.tileEntity.progress > 0) {
			GL11.glEnable(GL11.GL_BLEND);
			GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
			i1 = Math.min(this.container.tileEntity.gaugeProgressScaled(27), 27);
			this.drawTexturedModalRect(81, 31, getFrameX(i1), getFrameY(i1), 24, 24);
		}
		if (this.container.tileEntity.getTankAmount() > 0) {
			IHLRenderUtils.instance.renderIHLFluidTank(this.container.tileEntity.getFluidTank(), 83, 15, 104, 81, zLevel,
					par1, par2, xOffset, yOffset);
		}
		if (this.container.tileEntity.fluidTankCathodeOutput.getFluidAmount() > 0) {
			IHLRenderUtils.instance.renderIHLFluidTank(this.container.tileEntity.fluidTankCathodeOutput, 48, 24, 59, 81,
					zLevel, par1, par2, xOffset, yOffset);
		}
		if (this.container.tileEntity.fluidTankAnodeOutput.getFluidAmount() > 0) {
			IHLRenderUtils.instance.renderIHLFluidTank(this.container.tileEntity.fluidTankAnodeOutput, 128, 24, 139, 81,
					zLevel, par1, par2, xOffset, yOffset);
		}
	}

	@Override
	protected void drawGuiContainerBackgroundLayer(float par1, int par2, int par3) {
		// draw your Gui here, only thing you need to change is the path
		GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
		this.mc.renderEngine.bindTexture(background);
		int x = (width - xSize) / 2;
		int y = (height - ySize) / 2;
		this.drawTexturedModalRect(x, y, 0, 0, xSize, ySize);
	}

	private int getFrameY(int number) {
		return (number % 10) * 24 + 14;
	}

	private int getFrameX(int number) {
		return (number / 10) * 24 + 176;
	}
}