ActuallyAdditions/src/main/java/de/ellpeck/actuallyadditions/mod/inventory/gui/GuiOilGenerator.java

88 lines
3.6 KiB
Java
Raw Normal View History

2015-08-29 14:33:25 +02:00
/*
2016-05-16 22:52:27 +02:00
* This file ("GuiOilGenerator.java") is part of the Actually Additions mod for Minecraft.
2015-08-29 14:33:25 +02:00
* It is created and owned by Ellpeck and distributed
* under the Actually Additions License to be found at
2016-05-16 22:52:27 +02:00
* http://ellpeck.de/actaddlicense
2015-08-29 14:33:25 +02:00
* View the source code at https://github.com/Ellpeck/ActuallyAdditions
*
2017-01-01 16:23:26 +01:00
* © 2015-2017 Ellpeck
2015-08-29 14:33:25 +02:00
*/
2016-01-05 04:47:35 +01:00
package de.ellpeck.actuallyadditions.mod.inventory.gui;
2015-05-20 22:39:43 +02:00
2016-01-05 04:47:35 +01:00
import de.ellpeck.actuallyadditions.mod.inventory.ContainerOilGenerator;
import de.ellpeck.actuallyadditions.mod.tile.TileEntityBase;
import de.ellpeck.actuallyadditions.mod.tile.TileEntityOilGenerator;
import de.ellpeck.actuallyadditions.mod.util.AssetUtil;
2018-02-17 23:00:14 +01:00
import de.ellpeck.actuallyadditions.mod.util.StringUtil;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.client.resources.I18n;
2015-05-20 22:39:43 +02:00
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.util.ResourceLocation;
2016-01-07 18:20:59 +01:00
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
2015-05-20 22:39:43 +02:00
@SideOnly(Side.CLIENT)
2017-06-17 00:48:49 +02:00
public class GuiOilGenerator extends GuiWtfMojang{
2015-05-20 22:39:43 +02:00
2016-11-19 23:12:22 +01:00
private static final ResourceLocation RES_LOC = AssetUtil.getGuiLocation("gui_oil_generator");
2016-05-19 20:05:12 +02:00
private final TileEntityOilGenerator generator;
2015-05-20 22:39:43 +02:00
private EnergyDisplay energy;
private FluidDisplay fluid;
2015-05-20 22:39:43 +02:00
public GuiOilGenerator(InventoryPlayer inventory, TileEntityBase tile){
super(new ContainerOilGenerator(inventory, tile));
this.generator = (TileEntityOilGenerator)tile;
this.xSize = 176;
this.ySize = 93+86;
}
@Override
public void initGui(){
super.initGui();
this.energy = new EnergyDisplay(this.guiLeft+42, this.guiTop+5, this.generator.storage);
this.fluid = new FluidDisplay(this.guiLeft+116, this.guiTop+5, this.generator.tank);
}
2015-10-03 10:19:40 +02:00
@Override
public void drawScreen(int x, int y, float f){
super.drawScreen(x, y, f);
this.energy.drawOverlay(x, y);
this.fluid.drawOverlay(x, y);
2015-10-03 10:19:40 +02:00
}
2015-05-20 22:39:43 +02:00
@Override
public void drawGuiContainerForegroundLayer(int x, int y){
AssetUtil.displayNameString(this.fontRenderer, this.xSize, -10, this.generator);
2015-05-20 22:39:43 +02:00
}
@Override
public void drawGuiContainerBackgroundLayer(float f, int x, int y){
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
2015-05-20 22:39:43 +02:00
this.mc.getTextureManager().bindTexture(AssetUtil.GUI_INVENTORY_LOCATION);
this.drawTexturedModalRect(this.guiLeft, this.guiTop+93, 0, 0, 176, 86);
2016-06-17 23:50:38 +02:00
this.mc.getTextureManager().bindTexture(RES_LOC);
2015-05-20 22:39:43 +02:00
this.drawTexturedModalRect(this.guiLeft, this.guiTop, 0, 0, 176, 93);
if(this.generator.currentBurnTime > 0 && this.generator.maxBurnTime > 0){
2015-05-20 22:39:43 +02:00
int i = this.generator.getBurningScaled(13);
2016-05-02 17:46:53 +02:00
this.drawTexturedModalRect(this.guiLeft+72, this.guiTop+44+12-i, 176, 96-i, 14, i);
2015-05-20 22:39:43 +02:00
}
if(this.generator.maxBurnTime > 0 && this.generator.currentEnergyProduce > 0){
this.drawCenteredString(this.fontRenderer, this.generator.currentEnergyProduce + " "+I18n.format("actuallyadditions.cft"), this.guiLeft + 87, this.guiTop + 65, 0xFFFFFF);
2018-01-12 23:47:01 +01:00
this.drawCenteredString(this.fontRenderer, "for "+ this.generator.maxBurnTime + " t", this.guiLeft + 87, this.guiTop + 75, 0xFFFFFF);
2018-02-17 23:00:14 +01:00
GlStateManager.pushMatrix();
GlStateManager.scale(0.75, 0.75, 1);
2019-02-27 19:53:05 +01:00
float xS = (this.guiLeft + 87) * 1.365F - this.fontRenderer.getStringWidth("(per 50 mB)") / 2F;
2018-02-17 23:00:14 +01:00
StringUtil.renderScaledAsciiString(this.fontRenderer, "(per 50 mB)", xS, (this.guiTop + 85) * 1.345F, 0xFFFFFF, true, 0.75F);
GlStateManager.popMatrix();
}
this.energy.draw();
this.fluid.draw();
2015-05-20 22:39:43 +02:00
}
}