diff --git a/src/main/java/techreborn/client/gui/GuiGrinder.java b/src/main/java/techreborn/client/gui/GuiGrinder.java index 98b328e9c..a4cf564d2 100644 --- a/src/main/java/techreborn/client/gui/GuiGrinder.java +++ b/src/main/java/techreborn/client/gui/GuiGrinder.java @@ -1,8 +1,11 @@ package techreborn.client.gui; +import ic2.core.util.DrawUtil; import net.minecraft.client.gui.inventory.GuiContainer; +import net.minecraft.client.renderer.texture.TextureMap; import net.minecraft.client.resources.I18n; import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.util.IIcon; import net.minecraft.util.ResourceLocation; import net.minecraft.util.StatCollector; import techreborn.client.container.ContainerGrinder; @@ -10,38 +13,56 @@ import techreborn.tiles.TileGrinder; public class GuiGrinder extends GuiContainer{ - private static final ResourceLocation texture = new ResourceLocation( - "techreborn", "textures/gui/industrial_grinder.png"); + private static final ResourceLocation texture = new ResourceLocation("techreborn", "textures/gui/industrial_grinder.png"); TileGrinder grinder; - public GuiGrinder(EntityPlayer player, TileGrinder tilegrinder) - { + public GuiGrinder(EntityPlayer player, TileGrinder tilegrinder) { super(new ContainerGrinder(tilegrinder, player)); this.xSize = 176; this.ySize = 167; grinder = tilegrinder; - } @Override - protected void drawGuiContainerBackgroundLayer(float p_146976_1_, - int p_146976_2_, int p_146976_3_) - { + protected void drawGuiContainerBackgroundLayer(float p_146976_1_, int p_146976_2_, int p_146976_3_) { this.mc.getTextureManager().bindTexture(texture); int k = (this.width - this.xSize) / 2; int l = (this.height - this.ySize) / 2; this.drawTexturedModalRect(k, l, 0, 0, this.xSize, this.ySize); + + int j = 0; + + if(grinder.crafter.currentRecipe != null) { + j = this.grinder.crafter.currentTickTime * 24 / this.grinder.crafter.currentRecipe.tickTime(); + } + this.drawTexturedModalRect(k + 51, l + 35, 176, 14, j + 1, 16); + + j = (int)this.grinder.energy.getEnergyStored() * 12 / this.grinder.energy.getCapacity(); + if(j > 0) { + this.drawTexturedModalRect(k + 132, l + 63 + 12 - j, 176, 12 - j, 14, j + 2); + } + + if(grinder.tank.getFluidAmount() != 0) { + IIcon fluidIcon = grinder.tank.getFluid().getFluid().getIcon(); + if (fluidIcon != null) { + drawTexturedModalRect(k + 7, l + 15, 176, 31, 20, 55); + + this.mc.renderEngine.bindTexture(TextureMap.locationBlocksTexture); + int liquidHeight = grinder.tank.getFluidAmount() * 47 / grinder.tank.getCapacity(); + DrawUtil.drawRepeated(fluidIcon, k + 11, l + 19 + 47 - liquidHeight, 12.0D, liquidHeight, this.zLevel); + + + this.mc.renderEngine.bindTexture(texture); + drawTexturedModalRect(k + 11, l + 19, 176, 86, 12, 47); + } + } } - protected void drawGuiContainerForegroundLayer(int p_146979_1_, - int p_146979_2_) - { + protected void drawGuiContainerForegroundLayer(int p_146979_1_, int p_146979_2_) { String name = StatCollector.translateToLocal("tile.techreborn.grinder.name"); this.fontRendererObj.drawString(name, this.xSize / 2 - this.fontRendererObj.getStringWidth(name) / 2, 6, 4210752); - this.fontRendererObj.drawString( - I18n.format("container.inventory", new Object[0]), 8, - this.ySize - 96 + 2, 4210752); + this.fontRendererObj.drawString(I18n.format("container.inventory", new Object[0]), 8, this.ySize - 96 + 2, 4210752); } } diff --git a/src/main/resources/assets/techreborn/textures/gui/industrial_grinder.png b/src/main/resources/assets/techreborn/textures/gui/industrial_grinder.png index 527caf066..ea971f021 100644 Binary files a/src/main/resources/assets/techreborn/textures/gui/industrial_grinder.png and b/src/main/resources/assets/techreborn/textures/gui/industrial_grinder.png differ