BloodMagic/src/main/java/WayofTime/bloodmagic/client/gui/GuiAlchemyTable.java
Nicholas Ignoffo 85a8a12a6f Update mappings
2017-02-04 22:43:19 -08:00

66 lines
2.4 KiB
Java

package WayofTime.bloodmagic.client.gui;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.IInventory;
import net.minecraft.inventory.Slot;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import WayofTime.bloodmagic.api.Constants;
import WayofTime.bloodmagic.tile.TileAlchemyTable;
import WayofTime.bloodmagic.tile.container.ContainerAlchemyTable;
import WayofTime.bloodmagic.util.helper.TextHelper;
@SideOnly(Side.CLIENT)
public class GuiAlchemyTable extends GuiContainer
{
public IInventory tileTable;
public GuiAlchemyTable(InventoryPlayer playerInventory, IInventory tileTable)
{
super(new ContainerAlchemyTable(playerInventory, tileTable));
this.tileTable = tileTable;
this.xSize = 176;
this.ySize = 205;
}
@Override
protected void drawGuiContainerForegroundLayer(int mouseX, int mouseY)
{
this.fontRendererObj.drawString(TextHelper.localize("tile.BloodMagic.alchemyTable.name"), 8, 5, 4210752);
this.fontRendererObj.drawString(TextHelper.localize("container.inventory"), 8, 111, 4210752);
}
@Override
protected void drawGuiContainerBackgroundLayer(float partialTicks, int mouseX, int mouseY)
{
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
ResourceLocation soulForgeGuiTextures = new ResourceLocation(Constants.Mod.MODID + ":textures/gui/alchemyTable.png");
this.mc.getTextureManager().bindTexture(soulForgeGuiTextures);
int i = (this.width - this.xSize) / 2;
int j = (this.height - this.ySize) / 2;
this.drawTexturedModalRect(i, j, 0, 0, this.xSize, this.ySize);
int l = this.getCookProgressScaled(90);
this.drawTexturedModalRect(i + 115, j + 14 + 90 - l, 176, 90 - l, 18, l);
for (int slotId = 0; slotId < 6; slotId++)
{
if (!((TileAlchemyTable) tileTable).isInputSlotAccessible(slotId))
{
Slot slot = this.inventorySlots.getSlot(slotId);
this.drawTexturedModalRect(i + slot.xPos, j + slot.yPos, 195, 1, 16, 16);
}
}
}
public int getCookProgressScaled(int scale)
{
double progress = ((TileAlchemyTable) tileTable).getProgressForGui();
return (int) (progress * scale);
}
}