public void drawList(int mouseX, int mouseY, float tickTime) { if (!this.visible) { return; } GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); mc.renderEngine.bindTexture(texture); GuiUtils.drawContinuousTexturedBox( texture, this.x, this.y, 0, 0, width, height, 11, 11, 1, this.zLevel); // this.drawTexturedModalRect(x, y, 0, 0, width, height); ScaledResolution reso = new ScaledResolution(mc, mc.displayWidth, mc.displayHeight); double scaleWidth = (double) mc.displayWidth / reso.getScaledWidth_double(); double scaleHeight = (double) mc.displayHeight / reso.getScaledHeight_double(); GL11.glEnable(GL11.GL_SCISSOR_TEST); GL11.glScissor( (int) ((x + 1) * scaleWidth), (mc.displayHeight) - (int) ((y + height - 1) * scaleHeight), (int) ((width - 2) * scaleWidth), (int) ((height - 2) * scaleHeight)); for (int i = 0; i < listItems.size(); i++) { int yLocation = y - scrollAmount + 2 + i * slotHeight; if (yLocation + 6 >= y & yLocation <= y + height + 1) { listItems .get(i) .drawListItem( fontRenderer, x + 2, yLocation, mouseX, mouseY, i == selectedIndex, width); } } GL11.glDisable(GL11.GL_SCISSOR_TEST); }
@Override public void draw(ScaledResolution sr) { double width = sr.getScaledWidth_double(), height = sr.getScaledHeight_double(); AppFreqTransmitter app = AppFreqTransmitter.instance; GL11.glPushMatrix(); { GL11.glTranslated(15, 15, 0); final float isize = 18; final float fsize = 10; String str = app.getDisplayName(); double len = Font.font.strLen(str, fsize); drawBox(0, 0, 30 + len, 18); ResourceLocation icon = app.getIcon(); RenderUtils.loadTexture(icon); GL11.glColor4d(1, 1, 1, 1); HudUtils.rect(2, 0, isize, isize); Font.font.draw(str, isize + 6, 4, fsize, 0xffffff); } GL11.glPopMatrix(); current.handleDraw(width, height); GL11.glColor4d(1, 1, 1, 1); }
@SubscribeEvent public void onRenderTick(TickEvent.RenderTickEvent event) { if (!ClientProxy.channels.isEmpty()) { Minecraft mc = MC.getMinecraft(); ScaledResolution resolution = new ScaledResolution(mc, mc.displayWidth, mc.displayHeight); double width = resolution.getScaledWidth_double(); double height = resolution.getScaledHeight_double(); double splitHeight = height / ClientProxy.channels.size(); int i = 0; for (ChannelDiscoTek channel : ClientProxy.channels) { channel.render(0.0D, splitHeight * i, width, splitHeight); i++; } } }
public void draw() { ScaledResolution res = new ScaledResolution(this.mc, this.mc.displayWidth, this.mc.displayHeight); mc.entityRenderer.setupOverlayRendering(); mc.renderEngine.bindTexture(spyglassOverlayTexture); float scaleX = ((float) res.getScaledWidth_double() / 256.0f); float scaleY = ((float) res.getScaledHeight_double() / 256.0f); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); GL11.glEnable(GL11.GL_BLEND); GL11.glScalef(scaleX, scaleY, 0.0f); this.drawTexturedModalRect(0, 0, 0, 0, 256, 256); GL11.glScalef(1.0f / scaleX, 1.0f / scaleY, 0.0f); }
private static void renderHUDOverlayItem( Minecraft minecraft, EntityPlayer entityPlayer, ItemStack itemStack) { float overlayScale = 2f; float overlayOpacity = 1f; GL11.glPushMatrix(); ScaledResolution sr = new ScaledResolution(minecraft, minecraft.displayWidth, minecraft.displayHeight); GL11.glClear(GL11.GL_DEPTH_BUFFER_BIT); GL11.glMatrixMode(GL11.GL_PROJECTION); GL11.glLoadIdentity(); GL11.glOrtho( 0.0D, sr.getScaledWidth_double(), sr.getScaledHeight_double(), 0.0D, 1000.0D, 3000.0D); GL11.glMatrixMode(GL11.GL_MODELVIEW); GL11.glLoadIdentity(); GL11.glTranslatef(0.0F, 0.0F, -2000.0F); GL11.glPushMatrix(); RenderHelper.enableGUIStandardItemLighting(); GL11.glDisable(GL11.GL_LIGHTING); GL11.glEnable(GL12.GL_RESCALE_NORMAL); GL11.glEnable(GL11.GL_COLOR_MATERIAL); GL11.glEnable(GL11.GL_LIGHTING); int hudOverlayX = 0; int hudOverlayY = 0; hudOverlayX = (int) (sr.getScaledWidth() - 16 * overlayScale); hudOverlayY = (int) (sr.getScaledHeight() - 16 * overlayScale); RenderUtils.renderItemIntoGUI( minecraft.fontRenderer, itemStack, hudOverlayX, hudOverlayY, overlayOpacity, overlayScale, -90); GL11.glDisable(GL11.GL_LIGHTING); GL11.glPopMatrix(); GL11.glPopMatrix(); }
private void func_73722_d(String p_73722_1_) { this.currentlyDisplayedText = p_73722_1_; if (!this.mc.running) { if (!this.field_73724_e) { throw new MinecraftError(); } } else { GlStateManager.clear(256); GlStateManager.matrixMode(5889); GlStateManager.loadIdentity(); if (OpenGlHelper.isFramebufferEnabled()) { int var2 = this.field_146587_f.getScaleFactor(); GlStateManager.ortho( 0.0D, (double) (this.field_146587_f.getScaledWidth() * var2), (double) (this.field_146587_f.getScaledHeight() * var2), 0.0D, 100.0D, 300.0D); } else { ScaledResolution var3 = new ScaledResolution(this.mc, this.mc.displayWidth, this.mc.displayHeight); GlStateManager.ortho( 0.0D, var3.getScaledWidth_double(), var3.getScaledHeight_double(), 0.0D, 100.0D, 300.0D); } GlStateManager.matrixMode(5888); GlStateManager.loadIdentity(); GlStateManager.translate(0.0F, 0.0F, -200.0F); } }
@Override public void tickEnd(EnumSet<TickType> type, Object... tickData) { EntityClientPlayerMP player = Minecraft.getMinecraft().thePlayer; if (player != null) { double currEnergy = ElectricItemUtils.getPlayerEnergy(player); double maxEnergy = ElectricItemUtils.getMaxEnergy(player); if (maxEnergy > 0) { String currStr = MuseStringUtils.formatNumberShort(currEnergy); String maxStr = MuseStringUtils.formatNumberShort(maxEnergy); MuseRenderer.drawString(currStr + '/' + maxStr + " J", 1, 1); } } if (Minecraft.getMinecraft().currentScreen == null) { Minecraft mc = Minecraft.getMinecraft(); ScaledResolution screen = new ScaledResolution(mc.gameSettings, mc.displayWidth, mc.displayHeight); int i = player.inventory.currentItem; ItemStack stack = player.inventory.mainInventory[i]; if (stack != null && stack.getItem() instanceof IModularItem) { MuseRenderer.blendingOn(); NBTTagCompound itemTag = MuseItemUtils.getMuseItemTag(stack); int swapTime = (int) Math.min(System.currentTimeMillis() - lastSwapTime, SWAPTIME); Icon currentMode = null; Icon nextMode = null; Icon prevMode = null; List<String> modes = MuseItemUtils.getModes(stack, player); String mode = itemTag.getString("Mode"); int modeIndex = modes.indexOf(mode); if (modeIndex > -1) { String prevModeName = modes.get((modeIndex + modes.size() - 1) % modes.size()); String nextModeName = modes.get((modeIndex + 1) % modes.size()); IPowerModule module = ModuleManager.getModule(mode); IPowerModule nextModule = ModuleManager.getModule(nextModeName); IPowerModule prevModule = ModuleManager.getModule(prevModeName); if (module != null) { currentMode = module.getIcon(stack); if (!nextModeName.equals(mode)) { nextMode = nextModule.getIcon(stack); prevMode = prevModule.getIcon(stack); } } } double prevX, prevY, currX, currY, nextX, nextY; double sw = screen.getScaledWidth_double(); double baroffset = screen.getScaledHeight_double() - 40; if (!player.capabilities.isCreativeMode) { baroffset -= 16; if (ForgeHooks.getTotalArmorValue(player) > 0) { baroffset -= 8; } } // Root locations of the mode list prevX = sw / 2.0 - 105.0 + 20.0 * i; prevY = baroffset + 10; currX = sw / 2.0 - 89.0 + 20.0 * i; currY = baroffset; nextX = sw / 2.0 - 73.0 + 20.0 * i; nextY = baroffset + 10; if (swapTime == SWAPTIME || lastSwapDirection == 0) { drawIcon(prevX, prevY, prevMode, 0.4, 0, 0, 16, baroffset - prevY + 16); drawIcon(currX, currY, currentMode, 0.8, 0, 0, 16, baroffset - currY + 16); drawIcon(nextX, nextY, nextMode, 0.4, 0, 0, 16, baroffset - nextY + 16); } else { double r1 = 1 - swapTime / (double) SWAPTIME; double r2 = swapTime / (double) SWAPTIME; if (lastSwapDirection == -1) { nextX = (currX * r1 + nextX * r2); nextY = (currY * r1 + nextY * r2); currX = (prevX * r1 + currX * r2); currY = (prevY * r1 + currY * r2); drawIcon(currX, currY, currentMode, 0.8, 0, 0, 16, baroffset - currY + 16); drawIcon(nextX, nextY, nextMode, 0.8, 0, 0, 16, baroffset - nextY + 16); } else { prevX = (currX * r1 + prevX * r2); prevY = (currY * r1 + prevY * r2); currX = (nextX * r1 + currX * r2); currY = (nextY * r1 + currY * r2); // MuseRenderer drawIcon(prevX, prevY, prevMode, 0.8, 0, 0, 16, baroffset - prevY + 16); drawIcon(currX, currY, currentMode, 0.8, 0, 0, 16, baroffset - currY + 16); } } // MuseRenderer.blendingOff(); GL11.glDisable(GL11.GL_LIGHTING); Colour.WHITE.doGL(); } } }
/** Updates the progress bar on the loading screen to the specified amount. Args: loadProgress */ public void setLoadingProgress(int progress) { if (!this.mc.running) { if (!this.field_73724_e) { throw new MinecraftError(); } } else { long var2 = Minecraft.getSystemTime(); if (var2 - this.field_73723_d >= 100L) { this.field_73723_d = var2; ScaledResolution var4 = new ScaledResolution(this.mc, this.mc.displayWidth, this.mc.displayHeight); int var5 = var4.getScaleFactor(); int var6 = var4.getScaledWidth(); int var7 = var4.getScaledHeight(); if (OpenGlHelper.isFramebufferEnabled()) { this.field_146588_g.framebufferClear(); } else { GlStateManager.clear(256); } this.field_146588_g.bindFramebuffer(false); GlStateManager.matrixMode(5889); GlStateManager.loadIdentity(); GlStateManager.ortho( 0.0D, var4.getScaledWidth_double(), var4.getScaledHeight_double(), 0.0D, 100.0D, 300.0D); GlStateManager.matrixMode(5888); GlStateManager.loadIdentity(); GlStateManager.translate(0.0F, 0.0F, -200.0F); if (!OpenGlHelper.isFramebufferEnabled()) { GlStateManager.clear(16640); } Tessellator var8 = Tessellator.getInstance(); WorldRenderer var9 = var8.getWorldRenderer(); this.mc.getTextureManager().bindTexture(Gui.optionsBackground); float var10 = 32.0F; var9.startDrawingQuads(); var9.func_178991_c(4210752); var9.addVertexWithUV(0.0D, (double) var7, 0.0D, 0.0D, (double) ((float) var7 / var10)); var9.addVertexWithUV( (double) var6, (double) var7, 0.0D, (double) ((float) var6 / var10), (double) ((float) var7 / var10)); var9.addVertexWithUV((double) var6, 0.0D, 0.0D, (double) ((float) var6 / var10), 0.0D); var9.addVertexWithUV(0.0D, 0.0D, 0.0D, 0.0D, 0.0D); var8.draw(); if (progress >= 0) { byte var11 = 100; byte var12 = 2; int var13 = var6 / 2 - var11 / 2; int var14 = var7 / 2 + 16; GlStateManager.func_179090_x(); var9.startDrawingQuads(); var9.func_178991_c(8421504); var9.addVertex((double) var13, (double) var14, 0.0D); var9.addVertex((double) var13, (double) (var14 + var12), 0.0D); var9.addVertex((double) (var13 + var11), (double) (var14 + var12), 0.0D); var9.addVertex((double) (var13 + var11), (double) var14, 0.0D); var9.func_178991_c(8454016); var9.addVertex((double) var13, (double) var14, 0.0D); var9.addVertex((double) var13, (double) (var14 + var12), 0.0D); var9.addVertex((double) (var13 + progress), (double) (var14 + var12), 0.0D); var9.addVertex((double) (var13 + progress), (double) var14, 0.0D); var8.draw(); GlStateManager.func_179098_w(); } GlStateManager.enableBlend(); GlStateManager.tryBlendFuncSeparate(770, 771, 1, 0); this.mc.fontRendererObj.drawStringWithShadow( this.currentlyDisplayedText, (float) ((var6 - this.mc.fontRendererObj.getStringWidth(this.currentlyDisplayedText)) / 2), (float) (var7 / 2 - 4 - 16), 16777215); this.mc.fontRendererObj.drawStringWithShadow( this.field_73727_a, (float) ((var6 - this.mc.fontRendererObj.getStringWidth(this.field_73727_a)) / 2), (float) (var7 / 2 - 4 + 8), 16777215); this.field_146588_g.unbindFramebuffer(); if (OpenGlHelper.isFramebufferEnabled()) { this.field_146588_g.framebufferRender(var6 * var5, var7 * var5); } this.mc.func_175601_h(); try { Thread.yield(); } catch (Exception var15) {; } } } }