summaryrefslogtreecommitdiff
path: root/ihl/processing/metallurgy/CrucibleGui.java
blob: b0bfc851a247400f1d54c5405a8bdcb96f5df2ed (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
75
76
77
78
79
80
81
82
83
84
85
86
package ihl.processing.metallurgy;

import org.lwjgl.opengl.GL11;

import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.client.renderer.texture.TextureMap;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.StatCollector;
import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fluids.FluidStack;
import ic2.core.util.DrawUtil;
import ic2.core.util.GuiTooltipHelper;

public class CrucibleGui extends GuiContainer
{
    public CrucibleContainer container;
	private static final ResourceLocation background = new ResourceLocation("ihl", "textures/gui/GUICrucible.png");
	private static final String title = StatCollector.translateToLocal("item.crucible.name");
	
    public CrucibleGui(CrucibleContainer container1)
    {
        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;
        fontRendererObj.drawString(title, 68, 0, 6171880);
        GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
    }

    @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);
            int x = (width - xSize) / 2;
            int y = (height - ySize) / 2;
            this.mc.renderEngine.bindTexture(background);
            this.drawTexturedModalRect(x, y, 0, 0, xSize, ySize);
            if(this.getItemStack().getItemDamage()==1)
            {
                this.drawTexturedModalRect(x+67, y+26, 198, 52, 58, 39);
            }
        	FluidStack fluidStack = this.getItemInstance().getFluid(this.getItemStack()); 
            if (fluidStack!=null && fluidStack.amount > 0)
            {
           		Fluid fluid = fluidStack.getFluid();
            		if(fluid!=null)
            		{
            			IIcon fluidIcon = fluid.getIcon();
            			if (fluidIcon != null)
            			{
            				this.mc.renderEngine.bindTexture(TextureMap.locationBlocksTexture);
            				int liquidHeight = fluidStack.amount*20/getItemInstance().capacity;
            				DrawUtil.drawRepeated(fluidIcon, x+71, y+ 41 + 20 - liquidHeight, 35.0D, liquidHeight, this.zLevel);
            			}
            		}
                    String tooltip = StatCollector.translateToLocal(fluidStack.getFluid().getName()) + ": " + fluidStack.amount + "mB";
                  GuiTooltipHelper.drawAreaTooltip(par2, par3, tooltip, x-16, y+10, x+16, y+29);
            }
            this.mc.renderEngine.bindTexture(background);
            if(this.getItemStack().getItemDamage()==1)
            {
                this.drawTexturedModalRect(x+68, y+40, 198, 26, 58, 26);
            }
            else
            {
                this.drawTexturedModalRect(x+68, y+40, 198, 0, 58, 26);
            }
    }
    
    private Crucible getItemInstance()
    {
    	return ((Crucible)this.container.box.thisItemStack.getItem());
    }
    
    private ItemStack getItemStack()
    {
    	return this.container.box.thisItemStack;
    }
}