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
|
package ihl.processing.metallurgy;
import org.lwjgl.opengl.GL11;
import ic2.core.util.DrawUtil;
import ic2.core.util.GuiTooltipHelper;
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;
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) {
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;
}
}
|