Im in the progress of making a mod, but one of my machines requires a input of steam, I already have an internal tank and can get the current amount with a simple log, however I would like to see the current amount of fluid in the gui, similar to Thermal Expansion crucible.
Here is my gui for the machine
package com.brady131313.steamreborn.client.gui.machines;
import com.brady131313.steamreborn.inventory.ContainerAlloyCompressor;
import com.brady131313.steamreborn.reference.Names;
import com.brady131313.steamreborn.reference.Textures;
import com.brady131313.steamreborn.tileentity.TileEntityAlloyCompressor;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.util.StatCollector;
import org.lwjgl.opengl.GL11;
@SideOnly(Side.CLIENT)
public class GuiAlloyCompressor extends GuiContainer {
private TileEntityAlloyCompressor tileEntityAlloyCompressor;
public GuiAlloyCompressor(InventoryPlayer inventoryPlayer, TileEntityAlloyCompressor tileEntityAlloyCompressor) {
super(new ContainerAlloyCompressor(inventoryPlayer, tileEntityAlloyCompressor));
this.tileEntityAlloyCompressor = tileEntityAlloyCompressor;
xSize = 176;
ySize = 187;
}
@Override
protected void drawGuiContainerForegroundLayer(int x, int y) {
String containerName = StatCollector.translateToLocal(tileEntityAlloyCompressor.getInventoryName());
fontRendererObj.drawString(containerName, xSize / 2 - fontRendererObj.getStringWidth(containerName) / 2, 6, 4210752);
fontRendererObj.drawString(StatCollector.translateToLocal(Names.Containers.VANNILLA_INVENTORY), 8, ySize - 96 + 2, 4210752);
}
@Override
protected void drawGuiContainerBackgroundLayer(float var1, int var2, int var3) {
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
TileEntityAlloyCompressor entity = new TileEntityAlloyCompressor();
this.mc.getTextureManager().bindTexture(Textures.Gui.ALLOY_COMPRESSOR);
int xStart = (width - xSize) / 2;
int yStart = (height - ySize) / 2;
this.drawTexturedModalRect(xStart, yStart, 0, 0, xSize, ySize);
int scaleAdjustment;
int steamAdjustment;
if (this.tileEntityAlloyCompressor.getState() == 1) {
scaleAdjustment = this.tileEntityAlloyCompressor.getBurnTimeRemainingScaled(12);
this.drawTexturedModalRect(xStart + 45, yStart + 36 + 34 - scaleAdjustment, 176, 12 - scaleAdjustment, 14, scaleAdjustment + 2);
}
scaleAdjustment = this.tileEntityAlloyCompressor.getCookProgressScaled(36);
this.drawTexturedModalRect(xStart + 63 , yStart + 32, 176, 34, scaleAdjustment + 1, 30);
}
}