/** Overlays the background to hide scrolled items */ private void overlayBackground(int par1, int par2, int par3, int par4) { // Spout Start GL11.glPushMatrix(); // Spout End Tessellator var5 = Tessellator.instance; GL11.glBindTexture(GL11.GL_TEXTURE_2D, this.mc.renderEngine.getTexture("/gui/background.png")); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); // Spout Start GL11.glTranslatef(0, 0, -0.1f); // Spout End float var6 = 32.0F; var5.startDrawingQuads(); var5.setColorRGBA_I(4210752, par4); var5.addVertexWithUV(0.0D, (double) par2, 0.0D, 0.0D, (double) ((float) par2 / var6)); var5.addVertexWithUV( (double) this.width, (double) par2, 0.0D, (double) ((float) this.width / var6), (double) ((float) par2 / var6)); var5.setColorRGBA_I(4210752, par3); var5.addVertexWithUV( (double) this.width, (double) par1, 0.0D, (double) ((float) this.width / var6), (double) ((float) par1 / var6)); var5.addVertexWithUV(0.0D, (double) par1, 0.0D, 0.0D, (double) ((float) par1 / var6)); var5.draw(); // Spout Start GL11.glPopMatrix(); // Spout End }
/** Renders the animation for when an enderdragon dies */ protected void renderDragonDying(EntityDragon par1EntityDragon, float par2) { super.renderEquippedItems(par1EntityDragon, par2); Tessellator tessellator = Tessellator.instance; if (par1EntityDragon.deathTicks > 0) { RenderHelper.disableStandardItemLighting(); float f = ((float) par1EntityDragon.deathTicks + par2) / 200F; float f1 = 0.0F; if (f > 0.8F) { f1 = (f - 0.8F) / 0.2F; } Random random = new Random(432L); GL11.glDisable(GL11.GL_TEXTURE_2D); GL11.glShadeModel(GL11.GL_SMOOTH); GL11.glEnable(GL11.GL_BLEND); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE); GL11.glDisable(GL11.GL_ALPHA_TEST); GL11.glEnable(GL11.GL_CULL_FACE); GL11.glDepthMask(false); GL11.glPushMatrix(); GL11.glTranslatef(0.0F, -1F, -2F); for (int i = 0; (float) i < ((f + f * f) / 2.0F) * 60F; i++) { GL11.glRotatef(random.nextFloat() * 360F, 1.0F, 0.0F, 0.0F); GL11.glRotatef(random.nextFloat() * 360F, 0.0F, 1.0F, 0.0F); GL11.glRotatef(random.nextFloat() * 360F, 0.0F, 0.0F, 1.0F); GL11.glRotatef(random.nextFloat() * 360F, 1.0F, 0.0F, 0.0F); GL11.glRotatef(random.nextFloat() * 360F, 0.0F, 1.0F, 0.0F); GL11.glRotatef(random.nextFloat() * 360F + f * 90F, 0.0F, 0.0F, 1.0F); tessellator.startDrawing(6); float f2 = random.nextFloat() * 20F + 5F + f1 * 10F; float f3 = random.nextFloat() * 2.0F + 1.0F + f1 * 2.0F; tessellator.setColorRGBA_I(0xffffff, (int) (255F * (1.0F - f1))); tessellator.addVertex(0.0D, 0.0D, 0.0D); tessellator.setColorRGBA_I(0xff00ff, 0); tessellator.addVertex(-0.86599999999999999D * (double) f3, f2, -0.5F * f3); tessellator.addVertex(0.86599999999999999D * (double) f3, f2, -0.5F * f3); tessellator.addVertex(0.0D, f2, 1.0F * f3); tessellator.addVertex(-0.86599999999999999D * (double) f3, f2, -0.5F * f3); tessellator.draw(); } GL11.glPopMatrix(); GL11.glDepthMask(true); GL11.glDisable(GL11.GL_CULL_FACE); GL11.glDisable(GL11.GL_BLEND); GL11.glShadeModel(GL11.GL_FLAT); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); GL11.glEnable(GL11.GL_TEXTURE_2D); GL11.glEnable(GL11.GL_ALPHA_TEST); RenderHelper.enableStandardItemLighting(); } }
private void overlayBackground(int i, int j, int k, int l) { Tessellator tessellator = Tessellator.instance; GL11.glBindTexture(3553 /*GL_TEXTURE_2D*/, mc.renderEngine.getTexture("/gui/background.png")); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); float f = 32F; tessellator.startDrawingQuads(); tessellator.setColorRGBA_I(0x404040, l); tessellator.addVertexWithUV(0.0D, j, 0.0D, 0.0D, (float) j / f); tessellator.addVertexWithUV(width, j, 0.0D, (float) width / f, (float) j / f); tessellator.setColorRGBA_I(0x404040, k); tessellator.addVertexWithUV(width, i, 0.0D, (float) width / f, (float) i / f); tessellator.addVertexWithUV(0.0D, i, 0.0D, 0.0D, (float) i / f); tessellator.draw(); }
/** Draws the main menu panorama */ private void drawPanorama(int par1, int par2, float par3) { Tessellator var4 = Tessellator.instance; GL11.glMatrixMode(GL11.GL_PROJECTION); GL11.glPushMatrix(); GL11.glLoadIdentity(); GLU.gluPerspective(120.0F, 1.0F, 0.05F, 10.0F); GL11.glMatrixMode(GL11.GL_MODELVIEW); GL11.glPushMatrix(); GL11.glLoadIdentity(); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); GL11.glRotatef(180.0F, 1.0F, 0.0F, 0.0F); GL11.glEnable(GL11.GL_BLEND); GL11.glDisable(GL11.GL_ALPHA_TEST); GL11.glDisable(GL11.GL_CULL_FACE); GL11.glDepthMask(false); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); byte var5 = 8; for (int var6 = 0; var6 < var5 * var5; ++var6) { GL11.glPushMatrix(); float var7 = ((float) (var6 % var5) / (float) var5 - 0.5F) / 64.0F; float var8 = ((float) (var6 / var5) / (float) var5 - 0.5F) / 64.0F; float var9 = 0.0F; GL11.glTranslatef(var7, var8, var9); GL11.glRotatef( MathHelper.sin(((float) this.panoramaTimer + par3) / 400.0F) * 25.0F + 20.0F, 1.0F, 0.0F, 0.0F); GL11.glRotatef(-((float) this.panoramaTimer + par3) * 0.1F, 0.0F, 1.0F, 0.0F); for (int var10 = 0; var10 < 6; ++var10) { GL11.glPushMatrix(); if (var10 == 1) { GL11.glRotatef(90.0F, 0.0F, 1.0F, 0.0F); } if (var10 == 2) { GL11.glRotatef(180.0F, 0.0F, 1.0F, 0.0F); } if (var10 == 3) { GL11.glRotatef(-90.0F, 0.0F, 1.0F, 0.0F); } if (var10 == 4) { GL11.glRotatef(90.0F, 1.0F, 0.0F, 0.0F); } if (var10 == 5) { GL11.glRotatef(-90.0F, 1.0F, 0.0F, 0.0F); } this.mc.renderEngine.func_98187_b(titlePanoramaPaths[var10]); var4.startDrawingQuads(); var4.setColorRGBA_I(16777215, 255 / (var6 + 1)); float var11 = 0.0F; var4.addVertexWithUV(-1.0D, -1.0D, 1.0D, (double) (0.0F + var11), (double) (0.0F + var11)); var4.addVertexWithUV(1.0D, -1.0D, 1.0D, (double) (1.0F - var11), (double) (0.0F + var11)); var4.addVertexWithUV(1.0D, 1.0D, 1.0D, (double) (1.0F - var11), (double) (1.0F - var11)); var4.addVertexWithUV(-1.0D, 1.0D, 1.0D, (double) (0.0F + var11), (double) (1.0F - var11)); var4.draw(); GL11.glPopMatrix(); } GL11.glPopMatrix(); GL11.glColorMask(true, true, true, false); } var4.setTranslation(0.0D, 0.0D, 0.0D); GL11.glColorMask(true, true, true, true); GL11.glMatrixMode(GL11.GL_PROJECTION); GL11.glPopMatrix(); GL11.glMatrixMode(GL11.GL_MODELVIEW); GL11.glPopMatrix(); GL11.glDepthMask(true); GL11.glEnable(GL11.GL_CULL_FACE); GL11.glEnable(GL11.GL_ALPHA_TEST); GL11.glEnable(GL11.GL_DEPTH_TEST); }
/** Draws the main menu panorama */ private void drawPanorama(int par1, int par2, float par3) { Tessellator tessellator = Tessellator.instance; GL11.glMatrixMode(GL11.GL_PROJECTION); GL11.glPushMatrix(); GL11.glLoadIdentity(); Project.gluPerspective(120F, 1.0F, 0.05F, 10F); GL11.glMatrixMode(GL11.GL_MODELVIEW); GL11.glPushMatrix(); GL11.glLoadIdentity(); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); GL11.glRotatef(180F, 1.0F, 0.0F, 0.0F); GL11.glEnable(GL11.GL_BLEND); GL11.glDisable(GL11.GL_ALPHA_TEST); GL11.glDisable(GL11.GL_CULL_FACE); GL11.glDepthMask(false); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); int i = 8; for (int j = 0; j < i * i; j++) { GL11.glPushMatrix(); float f = ((float) (j % i) / (float) i - 0.5F) / 64F; float f1 = ((float) (j / i) / (float) i - 0.5F) / 64F; float f2 = 0.0F; GL11.glTranslatef(f, f1, f2); GL11.glRotatef( MathHelper.sin(((float) panoramaTimer + par3) / 400F) * 25F + 20F, 1.0F, 0.0F, 0.0F); GL11.glRotatef(-((float) panoramaTimer + par3) * 0.1F, 0.0F, 1.0F, 0.0F); for (int k = 0; k < 6; k++) { GL11.glPushMatrix(); if (k == 1) { GL11.glRotatef(90F, 0.0F, 1.0F, 0.0F); } if (k == 2) { GL11.glRotatef(180F, 0.0F, 1.0F, 0.0F); } if (k == 3) { GL11.glRotatef(-90F, 0.0F, 1.0F, 0.0F); } if (k == 4) { GL11.glRotatef(90F, 1.0F, 0.0F, 0.0F); } if (k == 5) { GL11.glRotatef(-90F, 1.0F, 0.0F, 0.0F); } mc.func_110434_K().func_110577_a(titlePanoramaPaths[k]); tessellator.startDrawingQuads(); tessellator.setColorRGBA_I(0xffffff, 255 / (j + 1)); float f3 = 0.0F; tessellator.addVertexWithUV(-1D, -1D, 1.0D, 0.0F + f3, 0.0F + f3); tessellator.addVertexWithUV(1.0D, -1D, 1.0D, 1.0F - f3, 0.0F + f3); tessellator.addVertexWithUV(1.0D, 1.0D, 1.0D, 1.0F - f3, 1.0F - f3); tessellator.addVertexWithUV(-1D, 1.0D, 1.0D, 0.0F + f3, 1.0F - f3); tessellator.draw(); GL11.glPopMatrix(); } GL11.glPopMatrix(); GL11.glColorMask(true, true, true, false); } tessellator.setTranslation(0.0D, 0.0D, 0.0D); GL11.glColorMask(true, true, true, true); GL11.glMatrixMode(GL11.GL_PROJECTION); GL11.glPopMatrix(); GL11.glMatrixMode(GL11.GL_MODELVIEW); GL11.glPopMatrix(); GL11.glDepthMask(true); GL11.glEnable(GL11.GL_CULL_FACE); GL11.glEnable(GL11.GL_ALPHA_TEST); GL11.glEnable(GL11.GL_DEPTH_TEST); }
/** draws the slot to the screen, pass in mouse's current x and y and partial ticks */ public void drawScreen(int par1, int par2, float par3) { this.mouseX = par1; this.mouseY = par2; this.drawBackground(); int var4 = this.getSize(); int var5 = this.getScrollBarX(); int var6 = var5 + 6; int var9; int var10; int var11; int var13; int var19; if (Mouse.isButtonDown(0)) { if (this.initialClickY == -1.0F) { boolean var7 = true; if (par2 >= this.top && par2 <= this.bottom) { int var8 = this.width / 2 - 110; var9 = this.width / 2 + 110; var10 = par2 - this.top - this.field_77242_t + (int) this.amountScrolled - 4; var11 = var10 / this.slotHeight; if (par1 >= var8 && par1 <= var9 && var11 >= 0 && var10 >= 0 && var11 < var4) { boolean var12 = var11 == this.selectedElement && Minecraft.getSystemTime() - this.lastClicked < 250L; this.elementClicked(var11, var12); this.selectedElement = var11; this.lastClicked = Minecraft.getSystemTime(); } else if (par1 >= var8 && par1 <= var9 && var10 < 0) { this.func_77224_a(par1 - var8, par2 - this.top + (int) this.amountScrolled - 4); var7 = false; } if (par1 >= var5 && par1 <= var6) { this.scrollMultiplier = -1.0F; var19 = this.func_77209_d(); if (var19 < 1) { var19 = 1; } var13 = (int) ((float) ((this.bottom - this.top) * (this.bottom - this.top)) / (float) this.getContentHeight()); if (var13 < 32) { var13 = 32; } if (var13 > this.bottom - this.top - 8) { var13 = this.bottom - this.top - 8; } this.scrollMultiplier /= (float) (this.bottom - this.top - var13) / (float) var19; } else { this.scrollMultiplier = 1.0F; } if (var7) { this.initialClickY = (float) par2; } else { this.initialClickY = -2.0F; } } else { this.initialClickY = -2.0F; } } else if (this.initialClickY >= 0.0F) { this.amountScrolled -= ((float) par2 - this.initialClickY) * this.scrollMultiplier; this.initialClickY = (float) par2; } } else { while (!this.mc.gameSettings.touchscreen && Mouse.next()) { int var16 = Mouse.getEventDWheel(); if (var16 != 0) { if (var16 > 0) { var16 = -1; } else if (var16 < 0) { var16 = 1; } this.amountScrolled += (float) (var16 * this.slotHeight / 2); } } this.initialClickY = -1.0F; } this.bindAmountScrolled(); GL11.glDisable(GL11.GL_LIGHTING); GL11.glDisable(GL11.GL_FOG); Tessellator var18 = Tessellator.instance; GL11.glBindTexture(GL11.GL_TEXTURE_2D, this.mc.renderEngine.getTexture("/gui/background.png")); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); float var17 = 32.0F; var18.startDrawingQuads(); var18.setColorOpaque_I(2105376); var18.addVertexWithUV( (double) this.left, (double) this.bottom, 0.0D, (double) ((float) this.left / var17), (double) ((float) (this.bottom + (int) this.amountScrolled) / var17)); var18.addVertexWithUV( (double) this.right, (double) this.bottom, 0.0D, (double) ((float) this.right / var17), (double) ((float) (this.bottom + (int) this.amountScrolled) / var17)); var18.addVertexWithUV( (double) this.right, (double) this.top, 0.0D, (double) ((float) this.right / var17), (double) ((float) (this.top + (int) this.amountScrolled) / var17)); var18.addVertexWithUV( (double) this.left, (double) this.top, 0.0D, (double) ((float) this.left / var17), (double) ((float) (this.top + (int) this.amountScrolled) / var17)); var18.draw(); var9 = this.width / 2 - 92 - 16; var10 = this.top + 4 - (int) this.amountScrolled; if (this.field_77243_s) { this.func_77222_a(var9, var10, var18); } int var14; for (var11 = 0; var11 < var4; ++var11) { var19 = var10 + var11 * this.slotHeight + this.field_77242_t; var13 = this.slotHeight - 4; if (var19 <= this.bottom && var19 + var13 >= this.top) { if (this.showSelectionBox && this.isSelected(var11)) { var14 = this.width / 2 - 110; int var15 = this.width / 2 + 110; GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); GL11.glDisable(GL11.GL_TEXTURE_2D); var18.startDrawingQuads(); var18.setColorOpaque_I(8421504); var18.addVertexWithUV((double) var14, (double) (var19 + var13 + 2), 0.0D, 0.0D, 1.0D); var18.addVertexWithUV((double) var15, (double) (var19 + var13 + 2), 0.0D, 1.0D, 1.0D); var18.addVertexWithUV((double) var15, (double) (var19 - 2), 0.0D, 1.0D, 0.0D); var18.addVertexWithUV((double) var14, (double) (var19 - 2), 0.0D, 0.0D, 0.0D); var18.setColorOpaque_I(0); var18.addVertexWithUV( (double) (var14 + 1), (double) (var19 + var13 + 1), 0.0D, 0.0D, 1.0D); var18.addVertexWithUV( (double) (var15 - 1), (double) (var19 + var13 + 1), 0.0D, 1.0D, 1.0D); var18.addVertexWithUV((double) (var15 - 1), (double) (var19 - 1), 0.0D, 1.0D, 0.0D); var18.addVertexWithUV((double) (var14 + 1), (double) (var19 - 1), 0.0D, 0.0D, 0.0D); var18.draw(); GL11.glEnable(GL11.GL_TEXTURE_2D); } this.drawSlot(var11, var9, var19, var13, var18); } } GL11.glDisable(GL11.GL_DEPTH_TEST); byte var20 = 4; this.overlayBackground(0, this.top, 255, 255); this.overlayBackground(this.bottom, this.height, 255, 255); GL11.glEnable(GL11.GL_BLEND); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); GL11.glDisable(GL11.GL_ALPHA_TEST); GL11.glShadeModel(GL11.GL_SMOOTH); GL11.glDisable(GL11.GL_TEXTURE_2D); var18.startDrawingQuads(); var18.setColorRGBA_I(0, 0); var18.addVertexWithUV((double) this.left, (double) (this.top + var20), 0.0D, 0.0D, 1.0D); var18.addVertexWithUV((double) this.right, (double) (this.top + var20), 0.0D, 1.0D, 1.0D); var18.setColorRGBA_I(0, 255); var18.addVertexWithUV((double) this.right, (double) this.top, 0.0D, 1.0D, 0.0D); var18.addVertexWithUV((double) this.left, (double) this.top, 0.0D, 0.0D, 0.0D); var18.draw(); var18.startDrawingQuads(); var18.setColorRGBA_I(0, 255); var18.addVertexWithUV((double) this.left, (double) this.bottom, 0.0D, 0.0D, 1.0D); var18.addVertexWithUV((double) this.right, (double) this.bottom, 0.0D, 1.0D, 1.0D); var18.setColorRGBA_I(0, 0); var18.addVertexWithUV((double) this.right, (double) (this.bottom - var20), 0.0D, 1.0D, 0.0D); var18.addVertexWithUV((double) this.left, (double) (this.bottom - var20), 0.0D, 0.0D, 0.0D); var18.draw(); var19 = this.func_77209_d(); if (var19 > 0) { var13 = (this.bottom - this.top) * (this.bottom - this.top) / this.getContentHeight(); if (var13 < 32) { var13 = 32; } if (var13 > this.bottom - this.top - 8) { var13 = this.bottom - this.top - 8; } var14 = (int) this.amountScrolled * (this.bottom - this.top - var13) / var19 + this.top; if (var14 < this.top) { var14 = this.top; } var18.startDrawingQuads(); var18.setColorRGBA_I(0, 255); var18.addVertexWithUV((double) var5, (double) this.bottom, 0.0D, 0.0D, 1.0D); var18.addVertexWithUV((double) var6, (double) this.bottom, 0.0D, 1.0D, 1.0D); var18.addVertexWithUV((double) var6, (double) this.top, 0.0D, 1.0D, 0.0D); var18.addVertexWithUV((double) var5, (double) this.top, 0.0D, 0.0D, 0.0D); var18.draw(); var18.startDrawingQuads(); var18.setColorRGBA_I(8421504, 255); var18.addVertexWithUV((double) var5, (double) (var14 + var13), 0.0D, 0.0D, 1.0D); var18.addVertexWithUV((double) var6, (double) (var14 + var13), 0.0D, 1.0D, 1.0D); var18.addVertexWithUV((double) var6, (double) var14, 0.0D, 1.0D, 0.0D); var18.addVertexWithUV((double) var5, (double) var14, 0.0D, 0.0D, 0.0D); var18.draw(); var18.startDrawingQuads(); var18.setColorRGBA_I(12632256, 255); var18.addVertexWithUV((double) var5, (double) (var14 + var13 - 1), 0.0D, 0.0D, 1.0D); var18.addVertexWithUV((double) (var6 - 1), (double) (var14 + var13 - 1), 0.0D, 1.0D, 1.0D); var18.addVertexWithUV((double) (var6 - 1), (double) var14, 0.0D, 1.0D, 0.0D); var18.addVertexWithUV((double) var5, (double) var14, 0.0D, 0.0D, 0.0D); var18.draw(); } this.func_77215_b(par1, par2); GL11.glEnable(GL11.GL_TEXTURE_2D); GL11.glShadeModel(GL11.GL_FLAT); GL11.glEnable(GL11.GL_ALPHA_TEST); GL11.glDisable(GL11.GL_BLEND); }
public void drawScreen(int i, int j, float f) { drawBackground(); int k = getSize(); int l = width / 2 + 124; int i1 = l + 6; if (Mouse.isButtonDown(0)) { if (initialClickY == -1F) { boolean flag = true; if (j >= top && j <= bottom) { int j1 = width / 2 - 110; int k1 = width / 2 + 110; int i2 = ((j - top - field_27261_r) + (int) amountScrolled) - 4; int k2 = i2 / posZ; if (i >= j1 && i <= k1 && k2 >= 0 && i2 >= 0 && k2 < k) { boolean flag1 = k2 == selectedElement && System.currentTimeMillis() - lastClicked < 250L; elementClicked(k2, flag1); selectedElement = k2; lastClicked = System.currentTimeMillis(); } else if (i >= j1 && i <= k1 && i2 < 0) { func_27255_a(i - j1, ((j - top) + (int) amountScrolled) - 4); flag = false; } if (i >= l && i <= i1) { scrollMultiplier = -1F; int i3 = getContentHeight() - (bottom - top - 4); if (i3 < 1) { i3 = 1; } int l3 = (int) ((float) ((bottom - top) * (bottom - top)) / (float) getContentHeight()); if (l3 < 32) { l3 = 32; } if (l3 > bottom - top - 8) { l3 = bottom - top - 8; } scrollMultiplier /= (float) (bottom - top - l3) / (float) i3; } else { scrollMultiplier = 1.0F; } if (flag) { initialClickY = j; } else { initialClickY = -2F; } } else { initialClickY = -2F; } } else if (initialClickY >= 0.0F) { amountScrolled -= ((float) j - initialClickY) * scrollMultiplier; initialClickY = j; } } else { initialClickY = -1F; } bindAmountScrolled(); GL11.glDisable(2896 /*GL_LIGHTING*/); GL11.glDisable(2912 /*GL_FOG*/); Tessellator tessellator = Tessellator.instance; GL11.glBindTexture(3553 /*GL_TEXTURE_2D*/, mc.renderEngine.getTexture("/gui/background.png")); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); float f1 = 32F; tessellator.startDrawingQuads(); tessellator.setColorOpaque_I(0x202020); tessellator.addVertexWithUV( left, bottom, 0.0D, (float) left / f1, (float) (bottom + (int) amountScrolled) / f1); tessellator.addVertexWithUV( right, bottom, 0.0D, (float) right / f1, (float) (bottom + (int) amountScrolled) / f1); tessellator.addVertexWithUV( right, top, 0.0D, (float) right / f1, (float) (top + (int) amountScrolled) / f1); tessellator.addVertexWithUV( left, top, 0.0D, (float) left / f1, (float) (top + (int) amountScrolled) / f1); tessellator.draw(); int l1 = width / 2 - 92 - 16; int j2 = (top + 4) - (int) amountScrolled; if (field_27262_q) { func_27260_a(l1, j2, tessellator); } for (int l2 = 0; l2 < k; l2++) { int j3 = j2 + l2 * posZ + field_27261_r; int i4 = posZ - 4; if (j3 > bottom || j3 + i4 < top) { continue; } if (field_25123_p && isSelected(l2)) { int k4 = width / 2 - 110; int i5 = width / 2 + 110; GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); GL11.glDisable(3553 /*GL_TEXTURE_2D*/); tessellator.startDrawingQuads(); tessellator.setColorOpaque_I(0x808080); tessellator.addVertexWithUV(k4, j3 + i4 + 2, 0.0D, 0.0D, 1.0D); tessellator.addVertexWithUV(i5, j3 + i4 + 2, 0.0D, 1.0D, 1.0D); tessellator.addVertexWithUV(i5, j3 - 2, 0.0D, 1.0D, 0.0D); tessellator.addVertexWithUV(k4, j3 - 2, 0.0D, 0.0D, 0.0D); tessellator.setColorOpaque_I(0); tessellator.addVertexWithUV(k4 + 1, j3 + i4 + 1, 0.0D, 0.0D, 1.0D); tessellator.addVertexWithUV(i5 - 1, j3 + i4 + 1, 0.0D, 1.0D, 1.0D); tessellator.addVertexWithUV(i5 - 1, j3 - 1, 0.0D, 1.0D, 0.0D); tessellator.addVertexWithUV(k4 + 1, j3 - 1, 0.0D, 0.0D, 0.0D); tessellator.draw(); GL11.glEnable(3553 /*GL_TEXTURE_2D*/); } drawSlot(l2, l1, j3, i4, tessellator); } GL11.glDisable(2929 /*GL_DEPTH_TEST*/); byte byte0 = 4; overlayBackground(0, top, 255, 255); overlayBackground(bottom, height, 255, 255); GL11.glEnable(3042 /*GL_BLEND*/); GL11.glBlendFunc(770, 771); GL11.glDisable(3008 /*GL_ALPHA_TEST*/); GL11.glShadeModel(7425 /*GL_SMOOTH*/); GL11.glDisable(3553 /*GL_TEXTURE_2D*/); tessellator.startDrawingQuads(); tessellator.setColorRGBA_I(0, 0); tessellator.addVertexWithUV(left, top + byte0, 0.0D, 0.0D, 1.0D); tessellator.addVertexWithUV(right, top + byte0, 0.0D, 1.0D, 1.0D); tessellator.setColorRGBA_I(0, 255); tessellator.addVertexWithUV(right, top, 0.0D, 1.0D, 0.0D); tessellator.addVertexWithUV(left, top, 0.0D, 0.0D, 0.0D); tessellator.draw(); tessellator.startDrawingQuads(); tessellator.setColorRGBA_I(0, 255); tessellator.addVertexWithUV(left, bottom, 0.0D, 0.0D, 1.0D); tessellator.addVertexWithUV(right, bottom, 0.0D, 1.0D, 1.0D); tessellator.setColorRGBA_I(0, 0); tessellator.addVertexWithUV(right, bottom - byte0, 0.0D, 1.0D, 0.0D); tessellator.addVertexWithUV(left, bottom - byte0, 0.0D, 0.0D, 0.0D); tessellator.draw(); int k3 = getContentHeight() - (bottom - top - 4); if (k3 > 0) { int j4 = ((bottom - top) * (bottom - top)) / getContentHeight(); if (j4 < 32) { j4 = 32; } if (j4 > bottom - top - 8) { j4 = bottom - top - 8; } int l4 = ((int) amountScrolled * (bottom - top - j4)) / k3 + top; if (l4 < top) { l4 = top; } tessellator.startDrawingQuads(); tessellator.setColorRGBA_I(0, 255); tessellator.addVertexWithUV(l, bottom, 0.0D, 0.0D, 1.0D); tessellator.addVertexWithUV(i1, bottom, 0.0D, 1.0D, 1.0D); tessellator.addVertexWithUV(i1, top, 0.0D, 1.0D, 0.0D); tessellator.addVertexWithUV(l, top, 0.0D, 0.0D, 0.0D); tessellator.draw(); tessellator.startDrawingQuads(); tessellator.setColorRGBA_I(0x808080, 255); tessellator.addVertexWithUV(l, l4 + j4, 0.0D, 0.0D, 1.0D); tessellator.addVertexWithUV(i1, l4 + j4, 0.0D, 1.0D, 1.0D); tessellator.addVertexWithUV(i1, l4, 0.0D, 1.0D, 0.0D); tessellator.addVertexWithUV(l, l4, 0.0D, 0.0D, 0.0D); tessellator.draw(); tessellator.startDrawingQuads(); tessellator.setColorRGBA_I(0xc0c0c0, 255); tessellator.addVertexWithUV(l, (l4 + j4) - 1, 0.0D, 0.0D, 1.0D); tessellator.addVertexWithUV(i1 - 1, (l4 + j4) - 1, 0.0D, 1.0D, 1.0D); tessellator.addVertexWithUV(i1 - 1, l4, 0.0D, 1.0D, 0.0D); tessellator.addVertexWithUV(l, l4, 0.0D, 0.0D, 0.0D); tessellator.draw(); } func_27257_b(i, j); GL11.glEnable(3553 /*GL_TEXTURE_2D*/); GL11.glShadeModel(7424 /*GL_FLAT*/); GL11.glEnable(3008 /*GL_ALPHA_TEST*/); GL11.glDisable(3042 /*GL_BLEND*/); }