Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package net.theviolentsquirrels.questsystem.gui;
- import net.minecraft.client.renderer.GlStateManager;
- import net.minecraft.client.resources.I18n;
- import net.minecraft.entity.player.InventoryPlayer;
- import net.minecraft.inventory.IInventory;
- import net.minecraft.util.ResourceLocation;
- import net.theviolentsquirrels.questsystem.Reference;
- import net.theviolentsquirrels.questsystem.inventory.ContainerSieve;
- public class GuiSieve extends ModGui {
- private static final ResourceLocation texture = new ResourceLocation(Reference.MODID, "textures/gui/container/sieve.png");
- private final InventoryPlayer playerInventory;
- private IInventory tileSieve;
- public GuiSieve(InventoryPlayer playerInventory, IInventory tileEntityBlockSieve) {
- super (new ContainerSieve(playerInventory, tileEntityBlockSieve));
- this.playerInventory = playerInventory;
- this.tileSieve = tileEntityBlockSieve;
- }
- @Override
- protected void drawGuiContainerBackgroundLayer(float partialTicks, int mouseX, int mouseY) {
- GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
- this.mc.getTextureManager().bindTexture(texture);
- this.drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize);
- this.drawProgressBar();
- }
- @Override
- protected void drawGuiContainerForegroundLayer(int mouseX, int mouseY) {
- String sifting;
- int result;
- sifting = I18n.format(this.tileSieve.getName());
- result = this.xSize / 2 - this.fontRendererObj.getStringWidth(sifting) / 2;
- this.fontRendererObj.drawString(sifting, result, 6, 4210752);
- this.fontRendererObj.drawString(this.playerInventory.getDisplayName().getUnformattedText(),8, this.ySize - 96 + 2, 4210752);
- }
- private void drawProgressBar() {
- int siftProgressScaled;
- siftProgressScaled = this.getSiftProgressScaled(24);
- this.drawTexturedModalRect(guiLeft + 79, guiTop + 34, 176, 0, siftProgressScaled + 1, 16);
- }
- /**
- * Get the sifting progression, scaled to the progress bar pixels width
- * @param pixels the width of the progress bar (in pixels), next to the interface in the gui file
- * @return an integer corresponding to the proportion the progress bar needs to be drawn
- */
- private int getSiftProgressScaled(int pixels) {
- int siftTime, siftTotalTime;
- siftTime = this.tileSieve.getField(0);
- siftTotalTime = this.tileSieve.getField(1);
- return (siftTime != 0 && siftTotalTime != 0 ? siftTime * pixels / siftTotalTime : 0);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement