@Override protected void drawGuiContainerBackgroundLayer(float f, int i, int j) { GL11.glPushMatrix(); GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f); if (inverted) { this.mc.renderEngine.bindTexture( new ResourceLocation( "uncraftingTable:textures/gui/container/uncrafting_gui_redstoned.png")); } else this.mc.renderEngine.bindTexture( new ResourceLocation("uncraftingTable:textures/gui/container/uncrafting_gui.png")); int k = width / 2 - xSize / 2; int l = height / 2 - ySize / 2; this.drawTexturedModalRect(k, l, 0, 0, this.xSize, this.ySize); GL11.glPopMatrix(); }
@Override public void renderContentLayer(int localWidth, int localHeight, boolean isTranslatable) { String tStation = StatCollector.translateToLocal("manual.page.modifier1"); if (icons.length > 3) tStation = StatCollector.translateToLocal("manual.page.modifier2"); if (icons.length > 4) tStation = StatCollector.translateToLocal("manual.page.modifier3"); if (isTranslatable) tStation = StatCollector.translateToLocal(tStation); manual.fonts.drawString("\u00a7n" + tStation, localWidth + 60, localHeight + 4, 0); GL11.glScalef(2f, 2f, 2f); GL11.glEnable(GL12.GL_RESCALE_NORMAL); RenderHelper.enableGUIStandardItemLighting(); ItemStack toolstack = MantleClientRegistry.getManualIcon("ironpick"); if (type.equals("weapon")) toolstack = MantleClientRegistry.getManualIcon("ironlongsword"); if (type.equals("travelgoggles")) toolstack = MantleClientRegistry.getManualIcon("travelgoggles"); if (type.equals("travelvest")) toolstack = MantleClientRegistry.getManualIcon("travelvest"); if (type.equals("travelwings")) toolstack = MantleClientRegistry.getManualIcon("travelwings"); if (type.equals("travelboots")) toolstack = MantleClientRegistry.getManualIcon("travelboots"); if (type.equals("travelbelt")) toolstack = MantleClientRegistry.getManualIcon("travelbelt"); if (type.equals("travelglove")) toolstack = MantleClientRegistry.getManualIcon("travelglove"); if (type.equals("travelmulti")) toolstack = toolMulti[counter]; // update displayed item if (iconsMulti != null && iconsMulti.length > 0 && type.equals("travelmulti") && System.currentTimeMillis() - lastUpdate > 1000) { lastUpdate = System.currentTimeMillis(); counter++; if (counter >= iconsMulti.length) counter = 0; icons = iconsMulti[counter]; toolstack = toolMulti[counter]; } manual.renderitem.zLevel = 100; if (icons.length < 4) { manual.renderitem.renderItemAndEffectIntoGUI( manual.fonts, manual.getMC().renderEngine, toolstack, (localWidth + 54) / 2, (localHeight + 54) / 2); manual.renderitem.renderItemAndEffectIntoGUI( manual.fonts, manual.getMC().renderEngine, icons[0], (localWidth + 130) / 2, (localHeight + 54) / 2); manual.renderitem.renderItemAndEffectIntoGUI( manual.fonts, manual.getMC().renderEngine, icons[1], (localWidth + 18) / 2, (localHeight + 36) / 2); if (icons[2] != null) manual.renderitem.renderItemAndEffectIntoGUI( manual.fonts, manual.getMC().renderEngine, icons[2], (localWidth + 18) / 2, (localHeight + 74) / 2); } else { manual.renderitem.renderItemAndEffectIntoGUI( manual.fonts, manual.getMC().renderEngine, toolstack, (localWidth + 74) / 2, (localHeight + 54) / 2); manual.renderitem.renderItemAndEffectIntoGUI( manual.fonts, manual.getMC().renderEngine, icons[0], (localWidth + 140) / 2, (localHeight + 54) / 2); manual.renderitem.renderItemAndEffectIntoGUI( manual.fonts, manual.getMC().renderEngine, icons[1], (localWidth - 2) / 2, (localHeight + 36) / 2); manual.renderitem.renderItemAndEffectIntoGUI( manual.fonts, manual.getMC().renderEngine, icons[2], (localWidth - 2) / 2, (localHeight + 74) / 2); manual.renderitem.renderItemAndEffectIntoGUI( manual.fonts, manual.getMC().renderEngine, icons[3], (localWidth + 36) / 2, (localHeight + 36) / 2); if (icons[4] != null) manual.renderitem.renderItemAndEffectIntoGUI( manual.fonts, manual.getMC().renderEngine, icons[4], (localWidth + 36) / 2, (localHeight + 74) / 2); } manual.renderitem.zLevel = 0; GL11.glScalef(0.5F, 0.5F, 0.5F); RenderHelper.disableStandardItemLighting(); GL11.glDisable(GL12.GL_RESCALE_NORMAL); }
protected void drawGuiContainerForegroundLayer(int par1, int par2) { GL11.glDisable(GL11.GL_LIGHTING); int xSize = this.xSize; int ySize = this.ySize; if (!inverted) { fontRendererObj.drawString( blockName, xSize / 2 - fontRendererObj.getStringWidth(blockName) / 2 + 1, 5, 4210752); fontRendererObj.drawString(I18n.format("container.inventory"), 6, ySize - 96 + 2, 4210752); Color darkGreen = new Color(75, 245, 75); String string1 = I18n.format("uncrafting.compute") + ":"; fontRendererObj.drawString( EnumChatFormatting.DARK_GRAY + string1 + EnumChatFormatting.RESET, 24 - fontRendererObj.getStringWidth(string1) / 2 + 1, 22, 0); fontRendererObj.drawString( EnumChatFormatting.GRAY + string1 + EnumChatFormatting.RESET, 24 - fontRendererObj.getStringWidth(string1) / 2, 21, 0); fontRendererObj.drawString( EnumChatFormatting.DARK_GRAY + "" + EnumChatFormatting.UNDERLINE + "" + (ModUncrafting.standardLevel + container.xp) + " levels" + EnumChatFormatting.RESET, xSize / 2 - fontRendererObj.getStringWidth( (ModUncrafting.standardLevel + container.xp) + " levels") / 2 + 1, ySize - 126 - 10, 0); fontRendererObj.drawString( EnumChatFormatting.UNDERLINE + "" + (ModUncrafting.standardLevel + container.xp) + " levels" + EnumChatFormatting.RESET, xSize / 2 - fontRendererObj.getStringWidth( (ModUncrafting.standardLevel + container.xp) + " levels") / 2, ySize - 127 - 10, darkGreen.getRGB()); String string = container.result; if (string != null) { State msgType = container.type; EnumChatFormatting format = EnumChatFormatting.GREEN; EnumChatFormatting shadowFormat = EnumChatFormatting.DARK_GRAY; if (msgType == ContainerUncraftingTable.State.ERROR) { format = EnumChatFormatting.WHITE; shadowFormat = EnumChatFormatting.DARK_RED; } fontRendererObj.drawString( shadowFormat + string + EnumChatFormatting.RESET, 6 + 1, ySize - 95 + 2 - fontRendererObj.FONT_HEIGHT, 0); fontRendererObj.drawString( format + string + EnumChatFormatting.RESET, 6, ySize - 96 + 2 - fontRendererObj.FONT_HEIGHT, 0); } } else { int height = 166 - 8; fontRendererObj.drawString( blockName, xSize / 2 - fontRendererObj.getStringWidth(blockName) / 2 + 1, height - 5, 4210752); fontRendererObj.drawString( I18n.format("container.inventory"), 6, height - ySize - 96 + 2, 4210752); Color darkGreen = new Color(75, 245, 75); String string1 = "Calculs:"; fontRendererObj.drawString( EnumChatFormatting.DARK_GRAY + string1 + EnumChatFormatting.RESET, 24 - fontRendererObj.getStringWidth(string1) / 2 + 1, height - 22, 0); fontRendererObj.drawString( EnumChatFormatting.GRAY + string1 + EnumChatFormatting.RESET, 24 - fontRendererObj.getStringWidth(string1) / 2, height - 21, 0); fontRendererObj.drawString( EnumChatFormatting.DARK_GRAY + "" + EnumChatFormatting.UNDERLINE + "" + (ModUncrafting.standardLevel + container.xp) + " levels" + EnumChatFormatting.RESET, xSize / 2 - fontRendererObj.getStringWidth( (ModUncrafting.standardLevel + container.xp) + " levels") / 2 + 1, height - (ySize - 126 - 10), 0); fontRendererObj.drawString( EnumChatFormatting.UNDERLINE + "" + (ModUncrafting.standardLevel + container.xp) + " levels" + EnumChatFormatting.RESET, xSize / 2 - fontRendererObj.getStringWidth( (ModUncrafting.standardLevel + container.xp) + " levels") / 2, height - (ySize - 127 - 10), darkGreen.getRGB()); String string = container.result; if (string != null) { State msgType = container.type; EnumChatFormatting format = EnumChatFormatting.GREEN; EnumChatFormatting shadowFormat = EnumChatFormatting.DARK_GRAY; if (msgType == ContainerUncraftingTable.State.ERROR) { format = EnumChatFormatting.WHITE; shadowFormat = EnumChatFormatting.DARK_RED; } fontRendererObj.drawString( shadowFormat + string + EnumChatFormatting.RESET, 6 + 1, height - (ySize - 95 + 2 - fontRendererObj.FONT_HEIGHT), 0); fontRendererObj.drawString( format + string + EnumChatFormatting.RESET, 6, height - (ySize - 96 + 2 - fontRendererObj.FONT_HEIGHT), 0); } } boolean op = false; // TODO: Check if user is OP String optionsText = I18n.format("uncrafting.options.hit"); if (op) fontRendererObj.drawString( EnumChatFormatting.UNDERLINE + optionsText, xSize - fontRendererObj.getStringWidth(optionsText) - 4, ySize - 96 + 2, 0); GL11.glEnable(GL11.GL_LIGHTING); }
protected void drawToolTip(List par1List, int par2, int par3) { if (!par1List.isEmpty()) { GL11.glDisable(GL12.GL_RESCALE_NORMAL); RenderHelper.disableStandardItemLighting(); GL11.glDisable(GL11.GL_LIGHTING); GL11.glDisable(GL11.GL_DEPTH_TEST); int k = 0; Iterator iterator = par1List.iterator(); while (iterator.hasNext()) { String s = (String) iterator.next(); int l = this.fontRenderer.getStringWidth(s); if (l > k) { k = l; } } int i1 = par2 + 12; int j1 = par3 - 12; int k1 = 8; if (par1List.size() > 1) { k1 += 2 + (par1List.size() - 1) * 10; } if (i1 + k > this.width) { i1 -= 28 + k; } if (j1 + k1 + 6 > this.height) { j1 = this.height - k1 - 6; } this.zLevel = 300.0F; itemRenderer.zLevel = 300.0F; int l1 = -267386864; this.drawGradientRect(i1 - 3, j1 - 4, i1 + k + 3, j1 - 3, l1, l1); this.drawGradientRect(i1 - 3, j1 + k1 + 3, i1 + k + 3, j1 + k1 + 4, l1, l1); this.drawGradientRect(i1 - 3, j1 - 3, i1 + k + 3, j1 + k1 + 3, l1, l1); this.drawGradientRect(i1 - 4, j1 - 3, i1 - 3, j1 + k1 + 3, l1, l1); this.drawGradientRect(i1 + k + 3, j1 - 3, i1 + k + 4, j1 + k1 + 3, l1, l1); int i2 = 1347420415; int j2 = (i2 & 16711422) >> 1 | i2 & -16777216; this.drawGradientRect(i1 - 3, j1 - 3 + 1, i1 - 3 + 1, j1 + k1 + 3 - 1, i2, j2); this.drawGradientRect(i1 + k + 2, j1 - 3 + 1, i1 + k + 3, j1 + k1 + 3 - 1, i2, j2); this.drawGradientRect(i1 - 3, j1 - 3, i1 + k + 3, j1 - 3 + 1, i2, i2); this.drawGradientRect(i1 - 3, j1 + k1 + 2, i1 + k + 3, j1 + k1 + 3, j2, j2); for (int k2 = 0; k2 < par1List.size(); ++k2) { String s1 = (String) par1List.get(k2); this.fontRenderer.drawStringWithShadow(s1, i1, j1, -1); if (k2 == 0) { j1 += 2; } j1 += 10; } this.zLevel = 0.0F; itemRenderer.zLevel = 0.0F; } }
@Override protected void drawGuiContainerBackgroundLayer(float f, int mouseX, int mouseY) { GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); this.mc.getTextureManager().bindTexture(background); int cornerX = (width - xSize) / 2 + 36; int cornerY = (height - ySize) / 2; drawTexturedModalRect(cornerX + 46, cornerY, 0, 0, 176, ySize); // Fuel - Lava this.mc.getTextureManager().bindTexture(TextureMap.locationBlocksTexture); if (scomp.fuelGague > 0) { Icon lavaIcon = Block.lavaStill.getIcon(0, 0); int fuel = scomp.getScaledFuelGague(52); int count = 0; while (fuel > 0) { int size = fuel >= 16 ? 16 : fuel; fuel -= size; drawLiquidRect(cornerX + 117, (cornerY + 68) - size - 16 * count, lavaIcon, 12, size); count++; } } FluidTankInfo[] info = logic.getTankInfo(ForgeDirection.UNKNOWN); int capacity = 0; for (int i = 0; i < info.length - 1; i++) { FluidStack liquid = info[i].fluid; if (liquid != null) capacity += info[i].capacity; } // Liquids - molten metal int base = 0; for (int i = 0; i < info.length - 1; i++) { FluidStack liquid = info[i].fluid; Icon renderIndex = liquid.getFluid().getStillIcon(); int basePos = 54; if (capacity > 0) { int liquidSize = liquid.amount * 52 / capacity; if (liquidSize == 0) liquidSize = 1; while (liquidSize > 0) { int size = liquidSize >= 16 ? 16 : liquidSize; drawLiquidRect(cornerX + basePos, (cornerY + 68) - size - base, renderIndex, 16, size); drawLiquidRect( cornerX + basePos + 16, (cornerY + 68) - size - base, renderIndex, 16, size); drawLiquidRect( cornerX + basePos + 32, (cornerY + 68) - size - base, renderIndex, 16, size); drawLiquidRect( cornerX + basePos + 48, (cornerY + 68) - size - base, renderIndex, 4, size); liquidSize -= size; base += size; } } } // Liquid gague GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); this.mc.getTextureManager().bindTexture(background); drawTexturedModalRect(cornerX + 54, cornerY + 16, 176, 76, 52, 52); // Side inventory GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); this.mc.getTextureManager().bindTexture(backgroundSide); // if (logic.layers > 0) { /*if (logic.layers == 1) { drawTexturedModalRect(cornerX - 46, cornerY, 0, 0, 98, 43); drawTexturedModalRect(cornerX - 46, cornerY + 43, 0, 133, 98, 25); } else if (logic.layers == 2) { drawTexturedModalRect(cornerX - 46, cornerY, 0, 0, 98, 61); drawTexturedModalRect(cornerX - 46, cornerY + 61, 0, 97, 98, 61); } else*/ { drawTexturedModalRect(cornerX - 46, cornerY, 0, 0, 98, ySize - 8); } drawTexturedModalRect(cornerX + 32, (int) (cornerY + 8 + 127 * currentScroll), 98, 0, 12, 15); } // Temperature int slotSize = logic.getSizeInventory(); if (slotSize > 24) slotSize = 24; for (int iter = 0; iter < slotSize; iter++) { int slotTemp = logic.getTempForSlot(iter + slotPos * 3) - 20; int maxTemp = logic.getMeltingPointForSlot(iter + slotPos * 3) - 20; if (slotTemp > 0 && maxTemp > 0) { int size = 16 * slotTemp / maxTemp + 1; drawTexturedModalRect( cornerX - 38 + (iter % 3 * 22), cornerY + 8 + (iter / 3 * 18) + 16 - size, 98, 15 + 16 - size, 5, size); } } }