From fa743b983d27bac76c9c55e4cd9a622a0995131a Mon Sep 17 00:00:00 2001 From: mckuhei Date: Sat, 6 May 2023 10:03:41 +0800 Subject: [PATCH] Fix all block renderer. --- .../net/minecraft/src/RenderBlocks.java | 748 ++++++++++-------- .../net/minecraft/src/RenderGlobal.java | 2 - .../net/minecraft/src/WorldRenderer.java | 5 +- 3 files changed, 439 insertions(+), 316 deletions(-) diff --git a/src/minecraft/net/minecraft/src/RenderBlocks.java b/src/minecraft/net/minecraft/src/RenderBlocks.java index ff1e179..a07bca2 100644 --- a/src/minecraft/net/minecraft/src/RenderBlocks.java +++ b/src/minecraft/net/minecraft/src/RenderBlocks.java @@ -565,11 +565,11 @@ public class RenderBlocks var52 = var34; } - double var54 = (double)par2.doubleValue() + par1Block.minX; - double var56 = (double)par2.doubleValue() + par1Block.maxX; - double var58 = (double)par3 + par1Block.maxY; - double var60 = (double)par4.doubleValue() + par1Block.minZ; - double var62 = (double)par4.doubleValue() + par1Block.maxZ; + double var54 = (double)(FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue()) + par1Block.minX; + double var56 = (double)(FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue()) + par1Block.maxX; + double var58 = (double)(FIX_RENDERER ? par3 & 0xF : par3) + par1Block.maxY; + double var60 = (double)(FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue()) + par1Block.minZ; + double var62 = (double)(FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue()) + par1Block.maxZ; var5.addVertexWithUV(var56, var58, var62, var46, var50); var5.addVertexWithUV(var56, var58, var60, var38, var42); var5.addVertexWithUV(var54, var58, var60, var40, var44); @@ -605,7 +605,7 @@ public class RenderBlocks var5.setBrightness(par1Block.minZ > 0.0D ? var25 : par1Block.getMixedBrightnessForBlock(this.blockAccess, par2, par3, par4.subtract(BigInteger.ONE))); var5.setColorOpaque_F(var11, var11, var11); this.flipTexture = var65 == 2; - this.renderEastFace(par1Block, (double)par2.doubleValue(), (double)par3, (double)par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 2)); + this.renderEastFace(par1Block, FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue(), FIX_RENDERER ? par3 & 0xF : par3, FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 2)); } if (var64 != 3 && (this.renderAllFaces || par1Block.shouldSideBeRendered(this.blockAccess, par2, par3, par4.add(BigInteger.ONE), 3))) @@ -613,7 +613,7 @@ public class RenderBlocks var5.setBrightness(par1Block.maxZ < 1.0D ? var25 : par1Block.getMixedBrightnessForBlock(this.blockAccess, par2, par3, par4.add(BigInteger.ONE))); var5.setColorOpaque_F(var11, var11, var11); this.flipTexture = var65 == 3; - this.renderWestFace(par1Block, (par2).doubleValue(), (double)par3, (par4).doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 3)); + this.renderWestFace(par1Block, FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue(), FIX_RENDERER ? par3 & 0xF : par3, FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 3)); } if (var64 != 4 && (this.renderAllFaces || par1Block.shouldSideBeRendered(this.blockAccess, par2.subtract(BigInteger.ONE), par3, par4, 4))) @@ -621,7 +621,7 @@ public class RenderBlocks var5.setBrightness(par1Block.minZ > 0.0D ? var25 : par1Block.getMixedBrightnessForBlock(this.blockAccess, par2.subtract(BigInteger.ONE), par3, par4)); var5.setColorOpaque_F(var12, var12, var12); this.flipTexture = var65 == 4; - this.renderNorthFace(par1Block, (par2).doubleValue(), (double)par3, (par4).doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 4)); + this.renderNorthFace(par1Block, FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue(), FIX_RENDERER ? par3 & 0xF : par3, FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 4)); } if (var64 != 5 && (this.renderAllFaces || par1Block.shouldSideBeRendered(this.blockAccess, par2.add(BigInteger.ONE), par3, par4, 5))) @@ -629,7 +629,7 @@ public class RenderBlocks var5.setBrightness(par1Block.maxZ < 1.0D ? var25 : par1Block.getMixedBrightnessForBlock(this.blockAccess, par2.add(BigInteger.ONE), par3, par4)); var5.setColorOpaque_F(var12, var12, var12); this.flipTexture = var65 == 5; - this.renderSouthFace(par1Block, (par2).doubleValue(), (double)par3, (par4).doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 5)); + this.renderSouthFace(par1Block, FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue(), FIX_RENDERER ? par3 & 0xF : par3, FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 5)); } this.flipTexture = false; @@ -683,6 +683,12 @@ public class RenderBlocks double var16 = (double)(((float)var36 + 15.99F) / 256.0F); int var18 = this.blockAccess.getBlockMetadata(par2, par3, par4); + if(FIX_RENDERER) { + par2 = BigInteger.valueOf(par2.intValue() & 0xF); + par3 &= 0xF; + par4 = BigInteger.valueOf(par4.intValue() & 0xF); + } + for (int var19 = 0; var19 < 3; ++var19) { double var20 = (double)var19 * Math.PI * 2.0D / 3.0D + (Math.PI / 2D); @@ -741,14 +747,23 @@ public class RenderBlocks var5.setColorOpaque_F(var6 * var8, var6 * var9, var6 * var10); short var16 = 154; var12 = 0.125F; - // Haha, Mojang moment - this.renderSouthFace(par1BlockCauldron, (double)((float)par2.floatValue() - 1.0F + var12), (double)par3, (par4).doubleValue(), var16); - this.renderNorthFace(par1BlockCauldron, (double)((float)par2.floatValue() + 1.0F - var12), (double)par3, (par4).doubleValue(), var16); - this.renderWestFace(par1BlockCauldron, (par2).doubleValue(), (double)par3, (double)((float)par4.floatValue() - 1.0F + var12), var16); - this.renderEastFace(par1BlockCauldron, (par2).doubleValue(), (double)par3, (double)((float)par4.floatValue() + 1.0F - var12), var16); short var17 = 139; - this.renderTopFace(par1BlockCauldron, (par2).doubleValue(), (double)((float)par3 - 1.0F + 0.25F), (par4).doubleValue(), var17); - this.renderBottomFace(par1BlockCauldron, (par2).doubleValue(), (double)((float)par3 + 1.0F - 0.75F), (par4).doubleValue(), var17); + if(FIX_RENDERER) { + this.renderSouthFace(par1BlockCauldron, (double)((par2.intValue() & 0xF) - 1.0F + var12), par3 & 0xF, par4.intValue() & 0xF, var16); + this.renderNorthFace(par1BlockCauldron, (double)((par2.intValue() & 0xF) + 1.0F - var12), par3 & 0xF, par4.intValue() & 0xF, var16); + this.renderWestFace(par1BlockCauldron, par2.intValue() & 0xF, par3 & 0xF, (double)((par4.intValue() & 0xF) - 1.0F + var12), var16); + this.renderEastFace(par1BlockCauldron, par2.intValue() & 0xF, par3 & 0xF, (double)((par4.intValue() & 0xF) + 1.0F - var12), var16); + this.renderTopFace(par1BlockCauldron, par2.intValue() & 0xF, (double)((par3 & 0xF) - 1.0F + 0.25F), par4.intValue() & 0xF, var17); + this.renderBottomFace(par1BlockCauldron, par2.intValue() & 0xF, (double)((par3 & 0xF) + 1.0F - 0.75F), par4.intValue() & 0xF, var17); + } else { + // Haha, Mojang moment + this.renderSouthFace(par1BlockCauldron, (double)((float)par2.floatValue() - 1.0F + var12), (double)par3, (par4).doubleValue(), var16); + this.renderNorthFace(par1BlockCauldron, (double)((float)par2.floatValue() + 1.0F - var12), (double)par3, (par4).doubleValue(), var16); + this.renderWestFace(par1BlockCauldron, (par2).doubleValue(), (double)par3, (double)((float)par4.floatValue() - 1.0F + var12), var16); + this.renderEastFace(par1BlockCauldron, (par2).doubleValue(), (double)par3, (double)((float)par4.floatValue() + 1.0F - var12), var16); + this.renderTopFace(par1BlockCauldron, (par2).doubleValue(), (double)((float)par3 - 1.0F + 0.25F), (par4).doubleValue(), var17); + this.renderBottomFace(par1BlockCauldron, (par2).doubleValue(), (double)((float)par3 + 1.0F - 0.75F), (par4).doubleValue(), var17); + } int var14 = this.blockAccess.getBlockMetadata(par2, par3, par4); if (var14 > 0) @@ -760,7 +775,7 @@ public class RenderBlocks var14 = 3; } - this.renderTopFace(par1BlockCauldron, (par2).doubleValue(), (double)((float)par3 - 1.0F + (6.0F + (float)var14 * 3.0F) / 16.0F), (par4).doubleValue(), var15); + this.renderTopFace(par1BlockCauldron, (FIX_RENDERER? par2.intValue() & 0xF : par2.doubleValue()), (double)((FIX_RENDERER ? par3 & 0xF : par3) - 1.0F + (6.0F + (float)var14 * 3.0F) / 16.0F), (FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue()), var15); } return true; @@ -778,8 +793,6 @@ public class RenderBlocks double var7 = 0.4000000059604645D; double var9 = 0.5D - var7; double var11 = 0.20000000298023224D; - - if(FIX_RENDERER) var6.setDontTranslate(true); if (var5 == 1) { @@ -801,8 +814,6 @@ public class RenderBlocks { this.renderTorchAtAngle(par1Block, (FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue()), (FIX_RENDERER ? par3 & 0xF : par3), (FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue()), 0.0D, 0.0D); } - - if(FIX_RENDERER) var6.setDontTranslate(false); return true; } @@ -819,6 +830,11 @@ public class RenderBlocks Tessellator var8 = tessellator; var8.setBrightness(par1Block.getMixedBrightnessForBlock(this.blockAccess, par2, par3, par4)); var8.setColorOpaque_F(1.0F, 1.0F, 1.0F); + if(FIX_RENDERER) { + par2 = BigInteger.valueOf(par2.intValue() & 0xF); + par3 &= 0xF; + par4 = BigInteger.valueOf(par4.intValue() & 0xF); + } double var9 = -0.1875D; double var11 = 0.0D; double var13 = 0.0D; @@ -1115,6 +1131,7 @@ public class RenderBlocks */ private boolean renderPistonExtension(Block par1Block, BigInteger par2, int par3, BigInteger par4, boolean par5) { + if(FIX_RENDERER) return renderPistonExtension(par1Block, par2, par3, par4, BigInteger.valueOf(par2.intValue() & 0xF), par3, BigInteger.valueOf(par4.intValue() & 0xF), par5); int var6 = this.blockAccess.getBlockMetadata(par2, par3, par4); int var7 = BlockPistonExtension.getDirectionMeta(var6); float var11 = par1Block.getBlockBrightness(this.blockAccess, par2, par3, par4); @@ -1204,6 +1221,98 @@ public class RenderBlocks par1Block.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F); return true; } + + private boolean renderPistonExtension(Block par1Block, BigInteger par2, int par3, BigInteger par4, BigInteger realX, int realY, BigInteger realZ, boolean par5) + { + int var6 = this.blockAccess.getBlockMetadata(realX, realY, realZ); + int var7 = BlockPistonExtension.getDirectionMeta(var6); + float var11 = par1Block.getBlockBrightness(this.blockAccess, realX, realY, realZ); + float var12 = par5 ? 1.0F : 0.5F; + double var13 = par5 ? 16.0D : 8.0D; + + switch (var7) + { + case 0: + this.uvRotateEast = 3; + this.uvRotateWest = 3; + this.uvRotateSouth = 3; + this.uvRotateNorth = 3; + par1Block.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.25F, 1.0F); + this.renderStandardBlock(par1Block, realX, realY, realZ); + this.renderPistonRodUD((double)(par2.floatValue() + 0.375F), (double)(par2.floatValue() + 0.625F), (double)((float)par3 + 0.25F), (double)((float)par3 + 0.25F + var12), (double)(par4.floatValue() + 0.625F), (double)(par4.floatValue() + 0.625F), var11 * 0.8F, var13); + this.renderPistonRodUD((double)(par2.floatValue() + 0.625F), (double)(par2.floatValue() + 0.375F), (double)((float)par3 + 0.25F), (double)((float)par3 + 0.25F + var12), (double)(par4.floatValue() + 0.375F), (double)(par4.floatValue() + 0.375F), var11 * 0.8F, var13); + this.renderPistonRodUD((double)(par2.floatValue() + 0.375F), (double)(par2.floatValue() + 0.375F), (double)((float)par3 + 0.25F), (double)((float)par3 + 0.25F + var12), (double)(par4.floatValue() + 0.375F), (double)(par4.floatValue() + 0.625F), var11 * 0.6F, var13); + this.renderPistonRodUD((double)(par2.floatValue() + 0.625F), (double)(par2.floatValue() + 0.625F), (double)((float)par3 + 0.25F), (double)((float)par3 + 0.25F + var12), (double)(par4.floatValue() + 0.625F), (double)(par4.floatValue() + 0.375F), var11 * 0.6F, var13); + break; + + case 1: + par1Block.setBlockBounds(0.0F, 0.75F, 0.0F, 1.0F, 1.0F, 1.0F); + this.renderStandardBlock(par1Block, realX, realY, realZ); + this.renderPistonRodUD((double)(par2.floatValue() + 0.375F), (double)(par2.floatValue() + 0.625F), (double)((float)par3 - 0.25F + 1.0F - var12), (double)((float)par3 - 0.25F + 1.0F), (double)(par4.floatValue() + 0.625F), (double)(par4.floatValue() + 0.625F), var11 * 0.8F, var13); + this.renderPistonRodUD((double)(par2.floatValue() + 0.625F), (double)(par2.floatValue() + 0.375F), (double)((float)par3 - 0.25F + 1.0F - var12), (double)((float)par3 - 0.25F + 1.0F), (double)(par4.floatValue() + 0.375F), (double)(par4.floatValue() + 0.375F), var11 * 0.8F, var13); + this.renderPistonRodUD((double)(par2.floatValue() + 0.375F), (double)(par2.floatValue() + 0.375F), (double)((float)par3 - 0.25F + 1.0F - var12), (double)((float)par3 - 0.25F + 1.0F), (double)(par4.floatValue() + 0.375F), (double)(par4.floatValue() + 0.625F), var11 * 0.6F, var13); + this.renderPistonRodUD((double)(par2.floatValue() + 0.625F), (double)(par2.floatValue() + 0.625F), (double)((float)par3 - 0.25F + 1.0F - var12), (double)((float)par3 - 0.25F + 1.0F), (double)(par4.floatValue() + 0.625F), (double)(par4.floatValue() + 0.375F), var11 * 0.6F, var13); + break; + + case 2: + this.uvRotateSouth = 1; + this.uvRotateNorth = 2; + par1Block.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 0.25F); + this.renderStandardBlock(par1Block, realX, realY, realZ); + this.renderPistonRodSN((double)(par2.floatValue() + 0.375F), (double)(par2.floatValue() + 0.375F), (double)((float)par3 + 0.625F), (double)((float)par3 + 0.375F), (double)(par4.floatValue() + 0.25F), (double)(par4.floatValue() + 0.25F + var12), var11 * 0.6F, var13); + this.renderPistonRodSN((double)(par2.floatValue() + 0.625F), (double)(par2.floatValue() + 0.625F), (double)((float)par3 + 0.375F), (double)((float)par3 + 0.625F), (double)(par4.floatValue() + 0.25F), (double)(par4.floatValue() + 0.25F + var12), var11 * 0.6F, var13); + this.renderPistonRodSN((double)(par2.floatValue() + 0.375F), (double)(par2.floatValue() + 0.625F), (double)((float)par3 + 0.375F), (double)((float)par3 + 0.375F), (double)(par4.floatValue() + 0.25F), (double)(par4.floatValue() + 0.25F + var12), var11 * 0.5F, var13); + this.renderPistonRodSN((double)(par2.floatValue() + 0.625F), (double)(par2.floatValue() + 0.375F), (double)((float)par3 + 0.625F), (double)((float)par3 + 0.625F), (double)(par4.floatValue() + 0.25F), (double)(par4.floatValue() + 0.25F + var12), var11, var13); + break; + + case 3: + this.uvRotateSouth = 2; + this.uvRotateNorth = 1; + this.uvRotateTop = 3; + this.uvRotateBottom = 3; + par1Block.setBlockBounds(0.0F, 0.0F, 0.75F, 1.0F, 1.0F, 1.0F); + this.renderStandardBlock(par1Block, realX, realY, realZ); + this.renderPistonRodSN((double)(par2.floatValue() + 0.375F), (double)(par2.floatValue() + 0.375F), (double)((float)par3 + 0.625F), (double)((float)par3 + 0.375F), (double)(par4.floatValue() - 0.25F + 1.0F - var12), (double)(par4.floatValue() - 0.25F + 1.0F), var11 * 0.6F, var13); + this.renderPistonRodSN((double)(par2.floatValue() + 0.625F), (double)(par2.floatValue() + 0.625F), (double)((float)par3 + 0.375F), (double)((float)par3 + 0.625F), (double)(par4.floatValue() - 0.25F + 1.0F - var12), (double)(par4.floatValue() - 0.25F + 1.0F), var11 * 0.6F, var13); + this.renderPistonRodSN((double)(par2.floatValue() + 0.375F), (double)(par2.floatValue() + 0.625F), (double)((float)par3 + 0.375F), (double)((float)par3 + 0.375F), (double)(par4.floatValue() - 0.25F + 1.0F - var12), (double)(par4.floatValue() - 0.25F + 1.0F), var11 * 0.5F, var13); + this.renderPistonRodSN((double)(par2.floatValue() + 0.625F), (double)(par2.floatValue() + 0.375F), (double)((float)par3 + 0.625F), (double)((float)par3 + 0.625F), (double)(par4.floatValue() - 0.25F + 1.0F - var12), (double)(par4.floatValue() - 0.25F + 1.0F), var11, var13); + break; + + case 4: + this.uvRotateEast = 1; + this.uvRotateWest = 2; + this.uvRotateTop = 2; + this.uvRotateBottom = 1; + par1Block.setBlockBounds(0.0F, 0.0F, 0.0F, 0.25F, 1.0F, 1.0F); + this.renderStandardBlock(par1Block, realX, realY, realZ); + this.renderPistonRodEW((double)(par2.floatValue() + 0.25F), (double)(par2.floatValue() + 0.25F + var12), (double)((float)par3 + 0.375F), (double)((float)par3 + 0.375F), (double)(par4.floatValue() + 0.625F), (double)(par4.floatValue() + 0.375F), var11 * 0.5F, var13); + this.renderPistonRodEW((double)(par2.floatValue() + 0.25F), (double)(par2.floatValue() + 0.25F + var12), (double)((float)par3 + 0.625F), (double)((float)par3 + 0.625F), (double)(par4.floatValue() + 0.375F), (double)(par4.floatValue() + 0.625F), var11, var13); + this.renderPistonRodEW((double)(par2.floatValue() + 0.25F), (double)(par2.floatValue() + 0.25F + var12), (double)((float)par3 + 0.375F), (double)((float)par3 + 0.625F), (double)(par4.floatValue() + 0.375F), (double)(par4.floatValue() + 0.375F), var11 * 0.6F, var13); + this.renderPistonRodEW((double)(par2.floatValue() + 0.25F), (double)(par2.floatValue() + 0.25F + var12), (double)((float)par3 + 0.625F), (double)((float)par3 + 0.375F), (double)(par4.floatValue() + 0.625F), (double)(par4.floatValue() + 0.625F), var11 * 0.6F, var13); + break; + + case 5: + this.uvRotateEast = 2; + this.uvRotateWest = 1; + this.uvRotateTop = 1; + this.uvRotateBottom = 2; + par1Block.setBlockBounds(0.75F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F); + this.renderStandardBlock(par1Block, realX, realY, realZ); + this.renderPistonRodEW((double)(par2.floatValue() - 0.25F + 1.0F - var12), (double)(par2.floatValue() - 0.25F + 1.0F), (double)((float)par3 + 0.375F), (double)((float)par3 + 0.375F), (double)(par4.floatValue() + 0.625F), (double)(par4.floatValue() + 0.375F), var11 * 0.5F, var13); + this.renderPistonRodEW((double)(par2.floatValue() - 0.25F + 1.0F - var12), (double)(par2.floatValue() - 0.25F + 1.0F), (double)((float)par3 + 0.625F), (double)((float)par3 + 0.625F), (double)(par4.floatValue() + 0.375F), (double)(par4.floatValue() + 0.625F), var11, var13); + this.renderPistonRodEW((double)(par2.floatValue() - 0.25F + 1.0F - var12), (double)(par2.floatValue() - 0.25F + 1.0F), (double)((float)par3 + 0.375F), (double)((float)par3 + 0.625F), (double)(par4.floatValue() + 0.375F), (double)(par4.floatValue() + 0.375F), var11 * 0.6F, var13); + this.renderPistonRodEW((double)(par2.floatValue() - 0.25F + 1.0F - var12), (double)(par2.floatValue() - 0.25F + 1.0F), (double)((float)par3 + 0.625F), (double)((float)par3 + 0.375F), (double)(par4.floatValue() + 0.625F), (double)(par4.floatValue() + 0.625F), var11 * 0.6F, var13); + } + + this.uvRotateEast = 0; + this.uvRotateWest = 0; + this.uvRotateSouth = 0; + this.uvRotateNorth = 0; + this.uvRotateTop = 0; + this.uvRotateBottom = 0; + par1Block.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F); + return true; + } /** * Renders a lever block at the given coordinates @@ -1301,7 +1410,6 @@ public class RenderBlocks var21[7] = Vec3.getVec3Pool().getVecFromPool((double)(-var22), (double)var24, (double)var23); if(FIX_RENDERER) { - var8.setDontTranslate(true); par2 = BigInteger.valueOf(par2.intValue() & 0xF); par3 &= 0xF; par4 = BigInteger.valueOf(par4.intValue() & 0xF); @@ -1443,8 +1551,6 @@ public class RenderBlocks var8.addVertexWithUV(var27.xCoord, var27.yCoord, var27.zCoord, (double)var18, (double)var19); var8.addVertexWithUV(var28.xCoord, var28.yCoord, var28.zCoord, (double)var17, (double)var19); } - - if(FIX_RENDERER) var8.setDontTranslate(false); return true; } @@ -1495,6 +1601,13 @@ public class RenderBlocks } var5.setBrightness(par1Block.getMixedBrightnessForBlock(this.blockAccess, par2, par3, par4)); + BigInteger ox = par2, oz = par4; + int oy = par3; + if(FIX_RENDERER) { + par2 = BigInteger.valueOf(par2.intValue() & 0xF); + par3 &= 0xF; + par4 = BigInteger.valueOf(par4.intValue() & 0xF); + } float var17 = 1.0F; if (Block.lightValue[par1Block.blockID] > 0) @@ -1779,7 +1892,7 @@ public class RenderBlocks double var55 = (double)((float)(var50 + (var8 ? 2 : 0)) / 256.0F); double var57 = (double)((float)(var50 + (var8 ? 4 : 2)) / 256.0F); double var59 = (double)(var10 ? 3.5F : 1.5F) / 16.0D; - var17 = par1Block.getBlockBrightness(this.blockAccess, par2, par3, par4) * 0.75F; + var17 = par1Block.getBlockBrightness(this.blockAccess, ox, oy, oz) * 0.75F; var5.setColorOpaque_F(var17, var17, var17); if (var7 == 2) @@ -1861,6 +1974,12 @@ public class RenderBlocks float var27 = 0.03125F; float var28 = 0.5F - var27 / 2.0F; float var29 = var28 + var27; + + if(FIX_RENDERER) { + par2 = BigInteger.valueOf(par2.intValue() & 0xF); + par3 &= 0xF; + par4 = BigInteger.valueOf(par4.intValue() & 0xF); + } if (!var25 && !var24 && !var26 && !var23) { @@ -2183,10 +2302,9 @@ public class RenderBlocks return true; } - public boolean renderBlockFire(Block par1Block, BigInteger par2, int par3, BigInteger par4, BigInteger realX, int realY, BigInteger realZ) + private boolean renderBlockFire(Block par1Block, BigInteger par2, int par3, BigInteger par4, BigInteger realX, int realY, BigInteger realZ) { Tessellator var5 = tessellator; - var5.setDontTranslate(true); int var6 = par1Block.getBlockTextureFromSide(0); if (this.overrideBlockTexture >= 0) @@ -2390,7 +2508,6 @@ public class RenderBlocks var5.addVertexWithUV(par2.doubleValue(), par3, var22, var11, var15); var5.addVertexWithUV(par2.doubleValue(), (double)((float)par3 + var17), var30, var11, var13); } - var5.setDontTranslate(false); return true; } @@ -2640,7 +2757,6 @@ public class RenderBlocks public boolean renderBlockRedstoneWire(Block par1Block, BigInteger par2, int par3, BigInteger par4, BigInteger realX, int realY, BigInteger realZ) { Tessellator var5 = tessellator; - var5.setDontTranslate(true); int var6 = this.blockAccess.getBlockMetadata(par2, par3, par4); int var7 = par1Block.getBlockTextureFromSideAndMetadata(1, var6); @@ -2871,7 +2987,6 @@ public class RenderBlocks var5.addVertexWithUV(par2.doubleValue(), (double)((float)(par3 + 1) + 0.021875F), par4.add(BigInteger.ONE).doubleValue() - 0.015625D, var17, var21 + 0.0625D); } } - var5.setDontTranslate(false); return true; } @@ -2881,7 +2996,6 @@ public class RenderBlocks public boolean renderBlockMinecartTrack(BlockRail par1BlockRail, BigInteger par2, int par3, BigInteger par4) { Tessellator var5 = tessellator; - if(FIX_RENDERER) var5.setDontTranslate(true); int var6 = this.blockAccess.getBlockMetadata(par2, par3, par4); int var7 = par1BlockRail.getBlockTextureFromSideAndMetadata(0, var6); @@ -2971,7 +3085,6 @@ public class RenderBlocks var5.addVertexWithUV(var24, var40, var32, var10, var16); var5.addVertexWithUV(var22, var38, var30, var12, var16); var5.addVertexWithUV(var20, var36, var28, var12, var14); - if(FIX_RENDERER) var5.setDontTranslate(false); return true; } @@ -2982,7 +3095,6 @@ public class RenderBlocks public boolean renderBlockLadder(Block par1Block, BigInteger par2, int par3, BigInteger par4) { Tessellator var5 = tessellator; - if(FIX_RENDERER) var5.setDontTranslate(true); int var6 = par1Block.getBlockTextureFromSide(0); if (this.overrideBlockTexture >= 0) @@ -3040,8 +3152,6 @@ public class RenderBlocks var5.addVertexWithUV((double)(par2).doubleValue() - var18, par3 - var18, par4.add(BigInteger.ONE).doubleValue() - var20, var11, var15); var5.addVertexWithUV((double)(par2).doubleValue() - var18, par3 + 1 + var18, par4.add(BigInteger.ONE).doubleValue() - var20, var11, var13); } - - if(FIX_RENDERER) var5.setDontTranslate(false); return true; } @@ -3074,6 +3184,14 @@ public class RenderBlocks double var16 = (double)(((float)var21 + 15.99F) / 256.0F); double var18 = 0.05000000074505806D; int var20 = this.blockAccess.getBlockMetadata(par2, par3, par4); + BigInteger originalX = par2, originalZ = par4; + int originalY = par3; + + if(FIX_RENDERER) { + par2 = BigInteger.valueOf(par2.intValue() & 0xF); + par3 &= 0xF; + par4 = BigInteger.valueOf(par4.intValue() & 0xF); + } if ((var20 & 2) != 0) { @@ -3123,7 +3241,7 @@ public class RenderBlocks var5.addVertexWithUV(par2.add(BigInteger.ONE).doubleValue(), par3 + 1, par4.add(BigInteger.ONE).doubleValue() - var18, var22, var14); } - if (this.blockAccess.isBlockNormalCube(par2, par3 + 1, par4)) + if (this.blockAccess.isBlockNormalCube(originalX, originalY + 1, originalZ)) { var5.addVertexWithUV(par2.add(BigInteger.ONE).doubleValue(), par3 + 1 - var18, par4.doubleValue(), var22, var14); var5.addVertexWithUV(par2.add(BigInteger.ONE).doubleValue(), par3 + 1 - var18, par4.add(BigInteger.ONE).doubleValue(), var22, var16); @@ -3188,16 +3306,26 @@ public class RenderBlocks double var32 = (double)((float)var27 / 256.0F); double var34 = (double)((float)(var27 + 8) / 256.0F); double var36 = (double)(((float)var27 + 15.99F) / 256.0F); - double var38 = par2.doubleValue(); - double var40 = par2.doubleValue() + 0.5D; - double var42 = par2.add(BigInteger.ONE).doubleValue(); - double var44 = par4.doubleValue(); - double var46 = par4.doubleValue() + 0.5D; - double var48 = par4.add(BigInteger.ONE).doubleValue(); - double var50 = par2.doubleValue() + 0.5D - 0.0625D; - double var52 = par2.doubleValue() + 0.5D + 0.0625D; - double var54 = par4.doubleValue() + 0.5D - 0.0625D; - double var56 = par4.doubleValue() + 0.5D + 0.0625D; + double x, y, z; + if(FIX_RENDERER) { + x = par2.intValue() & 0xF; + y = par3 & 0xF; + z = par4.intValue() & 0xF; + } else { + x = par2.doubleValue(); + y = par3; + z = par4.doubleValue(); + } + double var38 = x; + double var40 = x + 0.5D; + double var42 = x + 1D; + double var44 = z; + double var46 = z + 0.5D; + double var48 = z + 1D; + double var50 = x + 0.5D - 0.0625D; + double var52 = x + 0.5D + 0.0625D; + double var54 = z + 0.5D - 0.0625D; + double var56 = z + 0.5D + 0.0625D; boolean var58 = par1BlockPane.canThisPaneConnectToThisBlockID(this.blockAccess.getBlockId(par2, par3, par4.subtract(BigInteger.ONE))); boolean var59 = par1BlockPane.canThisPaneConnectToThisBlockID(this.blockAccess.getBlockId(par2, par3, par4.add(BigInteger.ONE))); boolean var60 = par1BlockPane.canThisPaneConnectToThisBlockID(this.blockAccess.getBlockId(par2.subtract(BigInteger.ONE), par3, par4)); @@ -3209,183 +3337,183 @@ public class RenderBlocks { if (var60 && !var61) { - var6.addVertexWithUV(var38, par3 + 1, var46, var16, var22); - var6.addVertexWithUV(var38, par3, var46, var16, var24); - var6.addVertexWithUV(var40, par3, var46, var18, var24); - var6.addVertexWithUV(var40, par3 + 1, var46, var18, var22); - var6.addVertexWithUV(var40, par3 + 1, var46, var16, var22); - var6.addVertexWithUV(var40, par3, var46, var16, var24); - var6.addVertexWithUV(var38, par3, var46, var18, var24); - var6.addVertexWithUV(var38, par3 + 1, var46, var18, var22); + var6.addVertexWithUV(var38, y + 1, var46, var16, var22); + var6.addVertexWithUV(var38, y, var46, var16, var24); + var6.addVertexWithUV(var40, y, var46, var18, var24); + var6.addVertexWithUV(var40, y + 1, var46, var18, var22); + var6.addVertexWithUV(var40, y + 1, var46, var16, var22); + var6.addVertexWithUV(var40, y, var46, var16, var24); + var6.addVertexWithUV(var38, y, var46, var18, var24); + var6.addVertexWithUV(var38, y + 1, var46, var18, var22); if (!var59 && !var58) { - var6.addVertexWithUV(var40, par3 + 1, var56, var28, var32); - var6.addVertexWithUV(var40, par3, var56, var28, var36); - var6.addVertexWithUV(var40, par3, var54, var30, var36); - var6.addVertexWithUV(var40, par3 + 1, var54, var30, var32); - var6.addVertexWithUV(var40, par3 + 1, var54, var28, var32); - var6.addVertexWithUV(var40, par3, var54, var28, var36); - var6.addVertexWithUV(var40, par3, var56, var30, var36); - var6.addVertexWithUV(var40, par3 + 1, var56, var30, var32); + var6.addVertexWithUV(var40, y + 1, var56, var28, var32); + var6.addVertexWithUV(var40, y, var56, var28, var36); + var6.addVertexWithUV(var40, y, var54, var30, var36); + var6.addVertexWithUV(var40, y + 1, var54, var30, var32); + var6.addVertexWithUV(var40, y + 1, var54, var28, var32); + var6.addVertexWithUV(var40, y, var54, var28, var36); + var6.addVertexWithUV(var40, y, var56, var30, var36); + var6.addVertexWithUV(var40, y + 1, var56, var30, var32); } if (var62 || par3 < var5 - 1 && this.blockAccess.isAirBlock(par2.subtract(BigInteger.ONE), par3 + 1, par4)) { - var6.addVertexWithUV(var38, par3 + 1 + 0.01D, var56, var30, var34); - var6.addVertexWithUV(var40, par3 + 1 + 0.01D, var56, var30, var36); - var6.addVertexWithUV(var40, par3 + 1 + 0.01D, var54, var28, var36); - var6.addVertexWithUV(var38, par3 + 1 + 0.01D, var54, var28, var34); - var6.addVertexWithUV(var40, par3 + 1 + 0.01D, var56, var30, var34); - var6.addVertexWithUV(var38, par3 + 1 + 0.01D, var56, var30, var36); - var6.addVertexWithUV(var38, par3 + 1 + 0.01D, var54, var28, var36); - var6.addVertexWithUV(var40, par3 + 1 + 0.01D, var54, var28, var34); + var6.addVertexWithUV(var38, y + 1 + 0.01D, var56, var30, var34); + var6.addVertexWithUV(var40, y + 1 + 0.01D, var56, var30, var36); + var6.addVertexWithUV(var40, y + 1 + 0.01D, var54, var28, var36); + var6.addVertexWithUV(var38, y + 1 + 0.01D, var54, var28, var34); + var6.addVertexWithUV(var40, y + 1 + 0.01D, var56, var30, var34); + var6.addVertexWithUV(var38, y + 1 + 0.01D, var56, var30, var36); + var6.addVertexWithUV(var38, y + 1 + 0.01D, var54, var28, var36); + var6.addVertexWithUV(var40, y + 1 + 0.01D, var54, var28, var34); } if (var63 || par3 > 1 && this.blockAccess.isAirBlock(par2.subtract(BigInteger.ONE), par3 - 1, par4)) { - var6.addVertexWithUV(var38, (double)par3 - 0.01D, var56, var30, var34); - var6.addVertexWithUV(var40, (double)par3 - 0.01D, var56, var30, var36); - var6.addVertexWithUV(var40, (double)par3 - 0.01D, var54, var28, var36); - var6.addVertexWithUV(var38, (double)par3 - 0.01D, var54, var28, var34); - var6.addVertexWithUV(var40, (double)par3 - 0.01D, var56, var30, var34); - var6.addVertexWithUV(var38, (double)par3 - 0.01D, var56, var30, var36); - var6.addVertexWithUV(var38, (double)par3 - 0.01D, var54, var28, var36); - var6.addVertexWithUV(var40, (double)par3 - 0.01D, var54, var28, var34); + var6.addVertexWithUV(var38, (double)y - 0.01D, var56, var30, var34); + var6.addVertexWithUV(var40, (double)y - 0.01D, var56, var30, var36); + var6.addVertexWithUV(var40, (double)y - 0.01D, var54, var28, var36); + var6.addVertexWithUV(var38, (double)y - 0.01D, var54, var28, var34); + var6.addVertexWithUV(var40, (double)y - 0.01D, var56, var30, var34); + var6.addVertexWithUV(var38, (double)y - 0.01D, var56, var30, var36); + var6.addVertexWithUV(var38, (double)y - 0.01D, var54, var28, var36); + var6.addVertexWithUV(var40, (double)y - 0.01D, var54, var28, var34); } } else if (!var60 && var61) { - var6.addVertexWithUV(var40, par3 + 1, var46, var18, var22); - var6.addVertexWithUV(var40, par3, var46, var18, var24); - var6.addVertexWithUV(var42, par3, var46, var20, var24); - var6.addVertexWithUV(var42, par3 + 1, var46, var20, var22); - var6.addVertexWithUV(var42, par3 + 1, var46, var18, var22); - var6.addVertexWithUV(var42, par3, var46, var18, var24); - var6.addVertexWithUV(var40, par3, var46, var20, var24); - var6.addVertexWithUV(var40, par3 + 1, var46, var20, var22); + var6.addVertexWithUV(var40, y + 1, var46, var18, var22); + var6.addVertexWithUV(var40, y, var46, var18, var24); + var6.addVertexWithUV(var42, y, var46, var20, var24); + var6.addVertexWithUV(var42, y + 1, var46, var20, var22); + var6.addVertexWithUV(var42, y + 1, var46, var18, var22); + var6.addVertexWithUV(var42, y, var46, var18, var24); + var6.addVertexWithUV(var40, y, var46, var20, var24); + var6.addVertexWithUV(var40, y + 1, var46, var20, var22); if (!var59 && !var58) { - var6.addVertexWithUV(var40, par3 + 1, var54, var28, var32); - var6.addVertexWithUV(var40, par3, var54, var28, var36); - var6.addVertexWithUV(var40, par3, var56, var30, var36); - var6.addVertexWithUV(var40, par3 + 1, var56, var30, var32); - var6.addVertexWithUV(var40, par3 + 1, var56, var28, var32); - var6.addVertexWithUV(var40, par3, var56, var28, var36); - var6.addVertexWithUV(var40, par3, var54, var30, var36); - var6.addVertexWithUV(var40, par3 + 1, var54, var30, var32); + var6.addVertexWithUV(var40, y + 1, var54, var28, var32); + var6.addVertexWithUV(var40, y, var54, var28, var36); + var6.addVertexWithUV(var40, y, var56, var30, var36); + var6.addVertexWithUV(var40, y + 1, var56, var30, var32); + var6.addVertexWithUV(var40, y + 1, var56, var28, var32); + var6.addVertexWithUV(var40, y, var56, var28, var36); + var6.addVertexWithUV(var40, y, var54, var30, var36); + var6.addVertexWithUV(var40, y + 1, var54, var30, var32); } if (var62 || par3 < var5 - 1 && this.blockAccess.isAirBlock(par2.add(BigInteger.ONE), par3 + 1, par4)) { - var6.addVertexWithUV(var40, par3 + 1 + 0.01D, var56, var30, var32); - var6.addVertexWithUV(var42, par3 + 1 + 0.01D, var56, var30, var34); - var6.addVertexWithUV(var42, par3 + 1 + 0.01D, var54, var28, var34); - var6.addVertexWithUV(var40, par3 + 1 + 0.01D, var54, var28, var32); - var6.addVertexWithUV(var42, par3 + 1 + 0.01D, var56, var30, var32); - var6.addVertexWithUV(var40, par3 + 1 + 0.01D, var56, var30, var34); - var6.addVertexWithUV(var40, par3 + 1 + 0.01D, var54, var28, var34); - var6.addVertexWithUV(var42, par3 + 1 + 0.01D, var54, var28, var32); + var6.addVertexWithUV(var40, y + 1 + 0.01D, var56, var30, var32); + var6.addVertexWithUV(var42, y + 1 + 0.01D, var56, var30, var34); + var6.addVertexWithUV(var42, y + 1 + 0.01D, var54, var28, var34); + var6.addVertexWithUV(var40, y + 1 + 0.01D, var54, var28, var32); + var6.addVertexWithUV(var42, y + 1 + 0.01D, var56, var30, var32); + var6.addVertexWithUV(var40, y + 1 + 0.01D, var56, var30, var34); + var6.addVertexWithUV(var40, y + 1 + 0.01D, var54, var28, var34); + var6.addVertexWithUV(var42, y + 1 + 0.01D, var54, var28, var32); } if (var63 || par3 > 1 && this.blockAccess.isAirBlock(par2.add(BigInteger.ONE), par3 - 1, par4)) { - var6.addVertexWithUV(var40, (double)par3 - 0.01D, var56, var30, var32); - var6.addVertexWithUV(var42, (double)par3 - 0.01D, var56, var30, var34); - var6.addVertexWithUV(var42, (double)par3 - 0.01D, var54, var28, var34); - var6.addVertexWithUV(var40, (double)par3 - 0.01D, var54, var28, var32); - var6.addVertexWithUV(var42, (double)par3 - 0.01D, var56, var30, var32); - var6.addVertexWithUV(var40, (double)par3 - 0.01D, var56, var30, var34); - var6.addVertexWithUV(var40, (double)par3 - 0.01D, var54, var28, var34); - var6.addVertexWithUV(var42, (double)par3 - 0.01D, var54, var28, var32); + var6.addVertexWithUV(var40, (double)y - 0.01D, var56, var30, var32); + var6.addVertexWithUV(var42, (double)y - 0.01D, var56, var30, var34); + var6.addVertexWithUV(var42, (double)y - 0.01D, var54, var28, var34); + var6.addVertexWithUV(var40, (double)y - 0.01D, var54, var28, var32); + var6.addVertexWithUV(var42, (double)y - 0.01D, var56, var30, var32); + var6.addVertexWithUV(var40, (double)y - 0.01D, var56, var30, var34); + var6.addVertexWithUV(var40, (double)y - 0.01D, var54, var28, var34); + var6.addVertexWithUV(var42, (double)y - 0.01D, var54, var28, var32); } } } else { - var6.addVertexWithUV(var38, par3 + 1, var46, var16, var22); - var6.addVertexWithUV(var38, par3, var46, var16, var24); - var6.addVertexWithUV(var42, par3, var46, var20, var24); - var6.addVertexWithUV(var42, par3 + 1, var46, var20, var22); - var6.addVertexWithUV(var42, par3 + 1, var46, var16, var22); - var6.addVertexWithUV(var42, par3, var46, var16, var24); - var6.addVertexWithUV(var38, par3, var46, var20, var24); - var6.addVertexWithUV(var38, par3 + 1, var46, var20, var22); + var6.addVertexWithUV(var38, y + 1, var46, var16, var22); + var6.addVertexWithUV(var38, y, var46, var16, var24); + var6.addVertexWithUV(var42, y, var46, var20, var24); + var6.addVertexWithUV(var42, y + 1, var46, var20, var22); + var6.addVertexWithUV(var42, y + 1, var46, var16, var22); + var6.addVertexWithUV(var42, y, var46, var16, var24); + var6.addVertexWithUV(var38, y, var46, var20, var24); + var6.addVertexWithUV(var38, y + 1, var46, var20, var22); if (var62) { - var6.addVertexWithUV(var38, par3 + 1 + 0.01D, var56, var30, var36); - var6.addVertexWithUV(var42, par3 + 1 + 0.01D, var56, var30, var32); - var6.addVertexWithUV(var42, par3 + 1 + 0.01D, var54, var28, var32); - var6.addVertexWithUV(var38, par3 + 1 + 0.01D, var54, var28, var36); - var6.addVertexWithUV(var42, par3 + 1 + 0.01D, var56, var30, var36); - var6.addVertexWithUV(var38, par3 + 1 + 0.01D, var56, var30, var32); - var6.addVertexWithUV(var38, par3 + 1 + 0.01D, var54, var28, var32); - var6.addVertexWithUV(var42, par3 + 1 + 0.01D, var54, var28, var36); + var6.addVertexWithUV(var38, y + 1 + 0.01D, var56, var30, var36); + var6.addVertexWithUV(var42, y + 1 + 0.01D, var56, var30, var32); + var6.addVertexWithUV(var42, y + 1 + 0.01D, var54, var28, var32); + var6.addVertexWithUV(var38, y + 1 + 0.01D, var54, var28, var36); + var6.addVertexWithUV(var42, y + 1 + 0.01D, var56, var30, var36); + var6.addVertexWithUV(var38, y + 1 + 0.01D, var56, var30, var32); + var6.addVertexWithUV(var38, y + 1 + 0.01D, var54, var28, var32); + var6.addVertexWithUV(var42, y + 1 + 0.01D, var54, var28, var36); } else { if (par3 < var5 - 1 && this.blockAccess.isAirBlock(par2.subtract(BigInteger.ONE), par3 + 1, par4)) { - var6.addVertexWithUV(var38, par3 + 1 + 0.01D, var56, var30, var34); - var6.addVertexWithUV(var40, par3 + 1 + 0.01D, var56, var30, var36); - var6.addVertexWithUV(var40, par3 + 1 + 0.01D, var54, var28, var36); - var6.addVertexWithUV(var38, par3 + 1 + 0.01D, var54, var28, var34); - var6.addVertexWithUV(var40, par3 + 1 + 0.01D, var56, var30, var34); - var6.addVertexWithUV(var38, par3 + 1 + 0.01D, var56, var30, var36); - var6.addVertexWithUV(var38, par3 + 1 + 0.01D, var54, var28, var36); - var6.addVertexWithUV(var40, par3 + 1 + 0.01D, var54, var28, var34); + var6.addVertexWithUV(var38, y + 1 + 0.01D, var56, var30, var34); + var6.addVertexWithUV(var40, y + 1 + 0.01D, var56, var30, var36); + var6.addVertexWithUV(var40, y + 1 + 0.01D, var54, var28, var36); + var6.addVertexWithUV(var38, y + 1 + 0.01D, var54, var28, var34); + var6.addVertexWithUV(var40, y + 1 + 0.01D, var56, var30, var34); + var6.addVertexWithUV(var38, y + 1 + 0.01D, var56, var30, var36); + var6.addVertexWithUV(var38, y + 1 + 0.01D, var54, var28, var36); + var6.addVertexWithUV(var40, y + 1 + 0.01D, var54, var28, var34); } if (par3 < var5 - 1 && this.blockAccess.isAirBlock(par2.add(BigInteger.ONE), par3 + 1, par4)) { - var6.addVertexWithUV(var40, par3 + 1 + 0.01D, var56, var30, var32); - var6.addVertexWithUV(var42, par3 + 1 + 0.01D, var56, var30, var34); - var6.addVertexWithUV(var42, par3 + 1 + 0.01D, var54, var28, var34); - var6.addVertexWithUV(var40, par3 + 1 + 0.01D, var54, var28, var32); - var6.addVertexWithUV(var42, par3 + 1 + 0.01D, var56, var30, var32); - var6.addVertexWithUV(var40, par3 + 1 + 0.01D, var56, var30, var34); - var6.addVertexWithUV(var40, par3 + 1 + 0.01D, var54, var28, var34); - var6.addVertexWithUV(var42, par3 + 1 + 0.01D, var54, var28, var32); + var6.addVertexWithUV(var40, y + 1 + 0.01D, var56, var30, var32); + var6.addVertexWithUV(var42, y + 1 + 0.01D, var56, var30, var34); + var6.addVertexWithUV(var42, y + 1 + 0.01D, var54, var28, var34); + var6.addVertexWithUV(var40, y + 1 + 0.01D, var54, var28, var32); + var6.addVertexWithUV(var42, y + 1 + 0.01D, var56, var30, var32); + var6.addVertexWithUV(var40, y + 1 + 0.01D, var56, var30, var34); + var6.addVertexWithUV(var40, y + 1 + 0.01D, var54, var28, var34); + var6.addVertexWithUV(var42, y + 1 + 0.01D, var54, var28, var32); } } if (var63) { - var6.addVertexWithUV(var38, (double)par3 - 0.01D, var56, var30, var36); - var6.addVertexWithUV(var42, (double)par3 - 0.01D, var56, var30, var32); - var6.addVertexWithUV(var42, (double)par3 - 0.01D, var54, var28, var32); - var6.addVertexWithUV(var38, (double)par3 - 0.01D, var54, var28, var36); - var6.addVertexWithUV(var42, (double)par3 - 0.01D, var56, var30, var36); - var6.addVertexWithUV(var38, (double)par3 - 0.01D, var56, var30, var32); - var6.addVertexWithUV(var38, (double)par3 - 0.01D, var54, var28, var32); - var6.addVertexWithUV(var42, (double)par3 - 0.01D, var54, var28, var36); + var6.addVertexWithUV(var38, (double)y - 0.01D, var56, var30, var36); + var6.addVertexWithUV(var42, (double)y - 0.01D, var56, var30, var32); + var6.addVertexWithUV(var42, (double)y - 0.01D, var54, var28, var32); + var6.addVertexWithUV(var38, (double)y - 0.01D, var54, var28, var36); + var6.addVertexWithUV(var42, (double)y - 0.01D, var56, var30, var36); + var6.addVertexWithUV(var38, (double)y - 0.01D, var56, var30, var32); + var6.addVertexWithUV(var38, (double)y - 0.01D, var54, var28, var32); + var6.addVertexWithUV(var42, (double)y - 0.01D, var54, var28, var36); } else { if (par3 > 1 && this.blockAccess.isAirBlock(par2.subtract(BigInteger.ONE), par3 - 1, par4)) { - var6.addVertexWithUV(var38, (double)par3 - 0.01D, var56, var30, var34); - var6.addVertexWithUV(var40, (double)par3 - 0.01D, var56, var30, var36); - var6.addVertexWithUV(var40, (double)par3 - 0.01D, var54, var28, var36); - var6.addVertexWithUV(var38, (double)par3 - 0.01D, var54, var28, var34); - var6.addVertexWithUV(var40, (double)par3 - 0.01D, var56, var30, var34); - var6.addVertexWithUV(var38, (double)par3 - 0.01D, var56, var30, var36); - var6.addVertexWithUV(var38, (double)par3 - 0.01D, var54, var28, var36); - var6.addVertexWithUV(var40, (double)par3 - 0.01D, var54, var28, var34); + var6.addVertexWithUV(var38, (double)y - 0.01D, var56, var30, var34); + var6.addVertexWithUV(var40, (double)y - 0.01D, var56, var30, var36); + var6.addVertexWithUV(var40, (double)y - 0.01D, var54, var28, var36); + var6.addVertexWithUV(var38, (double)y - 0.01D, var54, var28, var34); + var6.addVertexWithUV(var40, (double)y - 0.01D, var56, var30, var34); + var6.addVertexWithUV(var38, (double)y - 0.01D, var56, var30, var36); + var6.addVertexWithUV(var38, (double)y - 0.01D, var54, var28, var36); + var6.addVertexWithUV(var40, (double)y - 0.01D, var54, var28, var34); } if (par3 > 1 && this.blockAccess.isAirBlock(par2.add(BigInteger.ONE), par3 - 1, par4)) { - var6.addVertexWithUV(var40, (double)par3 - 0.01D, var56, var30, var32); - var6.addVertexWithUV(var42, (double)par3 - 0.01D, var56, var30, var34); - var6.addVertexWithUV(var42, (double)par3 - 0.01D, var54, var28, var34); - var6.addVertexWithUV(var40, (double)par3 - 0.01D, var54, var28, var32); - var6.addVertexWithUV(var42, (double)par3 - 0.01D, var56, var30, var32); - var6.addVertexWithUV(var40, (double)par3 - 0.01D, var56, var30, var34); - var6.addVertexWithUV(var40, (double)par3 - 0.01D, var54, var28, var34); - var6.addVertexWithUV(var42, (double)par3 - 0.01D, var54, var28, var32); + var6.addVertexWithUV(var40, (double)y - 0.01D, var56, var30, var32); + var6.addVertexWithUV(var42, (double)y - 0.01D, var56, var30, var34); + var6.addVertexWithUV(var42, (double)y - 0.01D, var54, var28, var34); + var6.addVertexWithUV(var40, (double)y - 0.01D, var54, var28, var32); + var6.addVertexWithUV(var42, (double)y - 0.01D, var56, var30, var32); + var6.addVertexWithUV(var40, (double)y - 0.01D, var56, var30, var34); + var6.addVertexWithUV(var40, (double)y - 0.01D, var54, var28, var34); + var6.addVertexWithUV(var42, (double)y - 0.01D, var54, var28, var32); } } } @@ -3394,183 +3522,183 @@ public class RenderBlocks { if (var58 && !var59) { - var6.addVertexWithUV(var40, par3 + 1, var44, var16, var22); - var6.addVertexWithUV(var40, par3, var44, var16, var24); - var6.addVertexWithUV(var40, par3, var46, var18, var24); - var6.addVertexWithUV(var40, par3 + 1, var46, var18, var22); - var6.addVertexWithUV(var40, par3 + 1, var46, var16, var22); - var6.addVertexWithUV(var40, par3, var46, var16, var24); - var6.addVertexWithUV(var40, par3, var44, var18, var24); - var6.addVertexWithUV(var40, par3 + 1, var44, var18, var22); + var6.addVertexWithUV(var40, y + 1, var44, var16, var22); + var6.addVertexWithUV(var40, y, var44, var16, var24); + var6.addVertexWithUV(var40, y, var46, var18, var24); + var6.addVertexWithUV(var40, y + 1, var46, var18, var22); + var6.addVertexWithUV(var40, y + 1, var46, var16, var22); + var6.addVertexWithUV(var40, y, var46, var16, var24); + var6.addVertexWithUV(var40, y, var44, var18, var24); + var6.addVertexWithUV(var40, y + 1, var44, var18, var22); if (!var61 && !var60) { - var6.addVertexWithUV(var50, par3 + 1, var46, var28, var32); - var6.addVertexWithUV(var50, par3, var46, var28, var36); - var6.addVertexWithUV(var52, par3, var46, var30, var36); - var6.addVertexWithUV(var52, par3 + 1, var46, var30, var32); - var6.addVertexWithUV(var52, par3 + 1, var46, var28, var32); - var6.addVertexWithUV(var52, par3, var46, var28, var36); - var6.addVertexWithUV(var50, par3, var46, var30, var36); - var6.addVertexWithUV(var50, par3 + 1, var46, var30, var32); + var6.addVertexWithUV(var50, y + 1, var46, var28, var32); + var6.addVertexWithUV(var50, y, var46, var28, var36); + var6.addVertexWithUV(var52, y, var46, var30, var36); + var6.addVertexWithUV(var52, y + 1, var46, var30, var32); + var6.addVertexWithUV(var52, y + 1, var46, var28, var32); + var6.addVertexWithUV(var52, y, var46, var28, var36); + var6.addVertexWithUV(var50, y, var46, var30, var36); + var6.addVertexWithUV(var50, y + 1, var46, var30, var32); } if (var62 || par3 < var5 - 1 && this.blockAccess.isAirBlock(par2, par3 + 1, par4.subtract(BigInteger.ONE))) { - var6.addVertexWithUV(var50, par3 + 1, var44, var30, var32); - var6.addVertexWithUV(var50, par3 + 1, var46, var30, var34); - var6.addVertexWithUV(var52, par3 + 1, var46, var28, var34); - var6.addVertexWithUV(var52, par3 + 1, var44, var28, var32); - var6.addVertexWithUV(var50, par3 + 1, var46, var30, var32); - var6.addVertexWithUV(var50, par3 + 1, var44, var30, var34); - var6.addVertexWithUV(var52, par3 + 1, var44, var28, var34); - var6.addVertexWithUV(var52, par3 + 1, var46, var28, var32); + var6.addVertexWithUV(var50, y + 1, var44, var30, var32); + var6.addVertexWithUV(var50, y + 1, var46, var30, var34); + var6.addVertexWithUV(var52, y + 1, var46, var28, var34); + var6.addVertexWithUV(var52, y + 1, var44, var28, var32); + var6.addVertexWithUV(var50, y + 1, var46, var30, var32); + var6.addVertexWithUV(var50, y + 1, var44, var30, var34); + var6.addVertexWithUV(var52, y + 1, var44, var28, var34); + var6.addVertexWithUV(var52, y + 1, var46, var28, var32); } if (var63 || par3 > 1 && this.blockAccess.isAirBlock(par2, par3 - 1, par4.subtract(BigInteger.ONE))) { - var6.addVertexWithUV(var50, (double)par3, var44, var30, var32); - var6.addVertexWithUV(var50, (double)par3, var46, var30, var34); - var6.addVertexWithUV(var52, (double)par3, var46, var28, var34); - var6.addVertexWithUV(var52, (double)par3, var44, var28, var32); - var6.addVertexWithUV(var50, (double)par3, var46, var30, var32); - var6.addVertexWithUV(var50, (double)par3, var44, var30, var34); - var6.addVertexWithUV(var52, (double)par3, var44, var28, var34); - var6.addVertexWithUV(var52, (double)par3, var46, var28, var32); + var6.addVertexWithUV(var50, (double)y, var44, var30, var32); + var6.addVertexWithUV(var50, (double)y, var46, var30, var34); + var6.addVertexWithUV(var52, (double)y, var46, var28, var34); + var6.addVertexWithUV(var52, (double)y, var44, var28, var32); + var6.addVertexWithUV(var50, (double)y, var46, var30, var32); + var6.addVertexWithUV(var50, (double)y, var44, var30, var34); + var6.addVertexWithUV(var52, (double)y, var44, var28, var34); + var6.addVertexWithUV(var52, (double)y, var46, var28, var32); } } else if (!var58 && var59) { - var6.addVertexWithUV(var40, par3 + 1, var46, var18, var22); - var6.addVertexWithUV(var40, par3, var46, var18, var24); - var6.addVertexWithUV(var40, par3, var48, var20, var24); - var6.addVertexWithUV(var40, par3 + 1, var48, var20, var22); - var6.addVertexWithUV(var40, par3 + 1, var48, var18, var22); - var6.addVertexWithUV(var40, par3, var48, var18, var24); - var6.addVertexWithUV(var40, par3, var46, var20, var24); - var6.addVertexWithUV(var40, par3 + 1, var46, var20, var22); + var6.addVertexWithUV(var40, y + 1, var46, var18, var22); + var6.addVertexWithUV(var40, y, var46, var18, var24); + var6.addVertexWithUV(var40, y, var48, var20, var24); + var6.addVertexWithUV(var40, y + 1, var48, var20, var22); + var6.addVertexWithUV(var40, y + 1, var48, var18, var22); + var6.addVertexWithUV(var40, y, var48, var18, var24); + var6.addVertexWithUV(var40, y, var46, var20, var24); + var6.addVertexWithUV(var40, y + 1, var46, var20, var22); if (!var61 && !var60) { - var6.addVertexWithUV(var52, par3 + 1, var46, var28, var32); - var6.addVertexWithUV(var52, par3, var46, var28, var36); - var6.addVertexWithUV(var50, par3, var46, var30, var36); - var6.addVertexWithUV(var50, par3 + 1, var46, var30, var32); - var6.addVertexWithUV(var50, par3 + 1, var46, var28, var32); - var6.addVertexWithUV(var50, par3, var46, var28, var36); - var6.addVertexWithUV(var52, par3, var46, var30, var36); - var6.addVertexWithUV(var52, par3 + 1, var46, var30, var32); + var6.addVertexWithUV(var52, y + 1, var46, var28, var32); + var6.addVertexWithUV(var52, y, var46, var28, var36); + var6.addVertexWithUV(var50, y, var46, var30, var36); + var6.addVertexWithUV(var50, y + 1, var46, var30, var32); + var6.addVertexWithUV(var50, y + 1, var46, var28, var32); + var6.addVertexWithUV(var50, y, var46, var28, var36); + var6.addVertexWithUV(var52, y, var46, var30, var36); + var6.addVertexWithUV(var52, y + 1, var46, var30, var32); } if (var62 || par3 < var5 - 1 && this.blockAccess.isAirBlock(par2, par3 + 1, par4.add(BigInteger.ONE))) { - var6.addVertexWithUV(var50, par3 + 1, var46, var28, var34); - var6.addVertexWithUV(var50, par3 + 1, var48, var28, var36); - var6.addVertexWithUV(var52, par3 + 1, var48, var30, var36); - var6.addVertexWithUV(var52, par3 + 1, var46, var30, var34); - var6.addVertexWithUV(var50, par3 + 1, var48, var28, var34); - var6.addVertexWithUV(var50, par3 + 1, var46, var28, var36); - var6.addVertexWithUV(var52, par3 + 1, var46, var30, var36); - var6.addVertexWithUV(var52, par3 + 1, var48, var30, var34); + var6.addVertexWithUV(var50, y + 1, var46, var28, var34); + var6.addVertexWithUV(var50, y + 1, var48, var28, var36); + var6.addVertexWithUV(var52, y + 1, var48, var30, var36); + var6.addVertexWithUV(var52, y + 1, var46, var30, var34); + var6.addVertexWithUV(var50, y + 1, var48, var28, var34); + var6.addVertexWithUV(var50, y + 1, var46, var28, var36); + var6.addVertexWithUV(var52, y + 1, var46, var30, var36); + var6.addVertexWithUV(var52, y + 1, var48, var30, var34); } if (var63 || par3 > 1 && this.blockAccess.isAirBlock(par2, par3 - 1, par4.add(BigInteger.ONE))) { - var6.addVertexWithUV(var50, (double)par3, var46, var28, var34); - var6.addVertexWithUV(var50, (double)par3, var48, var28, var36); - var6.addVertexWithUV(var52, (double)par3, var48, var30, var36); - var6.addVertexWithUV(var52, (double)par3, var46, var30, var34); - var6.addVertexWithUV(var50, (double)par3, var48, var28, var34); - var6.addVertexWithUV(var50, (double)par3, var46, var28, var36); - var6.addVertexWithUV(var52, (double)par3, var46, var30, var36); - var6.addVertexWithUV(var52, (double)par3, var48, var30, var34); + var6.addVertexWithUV(var50, (double)y, var46, var28, var34); + var6.addVertexWithUV(var50, (double)y, var48, var28, var36); + var6.addVertexWithUV(var52, (double)y, var48, var30, var36); + var6.addVertexWithUV(var52, (double)y, var46, var30, var34); + var6.addVertexWithUV(var50, (double)y, var48, var28, var34); + var6.addVertexWithUV(var50, (double)y, var46, var28, var36); + var6.addVertexWithUV(var52, (double)y, var46, var30, var36); + var6.addVertexWithUV(var52, (double)y, var48, var30, var34); } } } else { - var6.addVertexWithUV(var40, par3 + 1, var48, var16, var22); - var6.addVertexWithUV(var40, par3, var48, var16, var24); - var6.addVertexWithUV(var40, par3, var44, var20, var24); - var6.addVertexWithUV(var40, par3 + 1, var44, var20, var22); - var6.addVertexWithUV(var40, par3 + 1, var44, var16, var22); - var6.addVertexWithUV(var40, par3, var44, var16, var24); - var6.addVertexWithUV(var40, par3, var48, var20, var24); - var6.addVertexWithUV(var40, par3 + 1, var48, var20, var22); + var6.addVertexWithUV(var40, y + 1, var48, var16, var22); + var6.addVertexWithUV(var40, y, var48, var16, var24); + var6.addVertexWithUV(var40, y, var44, var20, var24); + var6.addVertexWithUV(var40, y + 1, var44, var20, var22); + var6.addVertexWithUV(var40, y + 1, var44, var16, var22); + var6.addVertexWithUV(var40, y, var44, var16, var24); + var6.addVertexWithUV(var40, y, var48, var20, var24); + var6.addVertexWithUV(var40, y + 1, var48, var20, var22); if (var62) { - var6.addVertexWithUV(var52, par3 + 1, var48, var30, var36); - var6.addVertexWithUV(var52, par3 + 1, var44, var30, var32); - var6.addVertexWithUV(var50, par3 + 1, var44, var28, var32); - var6.addVertexWithUV(var50, par3 + 1, var48, var28, var36); - var6.addVertexWithUV(var52, par3 + 1, var44, var30, var36); - var6.addVertexWithUV(var52, par3 + 1, var48, var30, var32); - var6.addVertexWithUV(var50, par3 + 1, var48, var28, var32); - var6.addVertexWithUV(var50, par3 + 1, var44, var28, var36); + var6.addVertexWithUV(var52, y + 1, var48, var30, var36); + var6.addVertexWithUV(var52, y + 1, var44, var30, var32); + var6.addVertexWithUV(var50, y + 1, var44, var28, var32); + var6.addVertexWithUV(var50, y + 1, var48, var28, var36); + var6.addVertexWithUV(var52, y + 1, var44, var30, var36); + var6.addVertexWithUV(var52, y + 1, var48, var30, var32); + var6.addVertexWithUV(var50, y + 1, var48, var28, var32); + var6.addVertexWithUV(var50, y + 1, var44, var28, var36); } else { if (par3 < var5 - 1 && this.blockAccess.isAirBlock(par2, par3 + 1, par4.subtract(BigInteger.ONE))) { - var6.addVertexWithUV(var50, par3 + 1, var44, var30, var32); - var6.addVertexWithUV(var50, par3 + 1, var46, var30, var34); - var6.addVertexWithUV(var52, par3 + 1, var46, var28, var34); - var6.addVertexWithUV(var52, par3 + 1, var44, var28, var32); - var6.addVertexWithUV(var50, par3 + 1, var46, var30, var32); - var6.addVertexWithUV(var50, par3 + 1, var44, var30, var34); - var6.addVertexWithUV(var52, par3 + 1, var44, var28, var34); - var6.addVertexWithUV(var52, par3 + 1, var46, var28, var32); + var6.addVertexWithUV(var50, y + 1, var44, var30, var32); + var6.addVertexWithUV(var50, y + 1, var46, var30, var34); + var6.addVertexWithUV(var52, y + 1, var46, var28, var34); + var6.addVertexWithUV(var52, y + 1, var44, var28, var32); + var6.addVertexWithUV(var50, y + 1, var46, var30, var32); + var6.addVertexWithUV(var50, y + 1, var44, var30, var34); + var6.addVertexWithUV(var52, y + 1, var44, var28, var34); + var6.addVertexWithUV(var52, y + 1, var46, var28, var32); } if (par3 < var5 - 1 && this.blockAccess.isAirBlock(par2, par3 + 1, par4.add(BigInteger.ONE))) { - var6.addVertexWithUV(var50, par3 + 1, var46, var28, var34); - var6.addVertexWithUV(var50, par3 + 1, var48, var28, var36); - var6.addVertexWithUV(var52, par3 + 1, var48, var30, var36); - var6.addVertexWithUV(var52, par3 + 1, var46, var30, var34); - var6.addVertexWithUV(var50, par3 + 1, var48, var28, var34); - var6.addVertexWithUV(var50, par3 + 1, var46, var28, var36); - var6.addVertexWithUV(var52, par3 + 1, var46, var30, var36); - var6.addVertexWithUV(var52, par3 + 1, var48, var30, var34); + var6.addVertexWithUV(var50, y + 1, var46, var28, var34); + var6.addVertexWithUV(var50, y + 1, var48, var28, var36); + var6.addVertexWithUV(var52, y + 1, var48, var30, var36); + var6.addVertexWithUV(var52, y + 1, var46, var30, var34); + var6.addVertexWithUV(var50, y + 1, var48, var28, var34); + var6.addVertexWithUV(var50, y + 1, var46, var28, var36); + var6.addVertexWithUV(var52, y + 1, var46, var30, var36); + var6.addVertexWithUV(var52, y + 1, var48, var30, var34); } } if (var63) { - var6.addVertexWithUV(var52, (double)par3, var48, var30, var36); - var6.addVertexWithUV(var52, (double)par3, var44, var30, var32); - var6.addVertexWithUV(var50, (double)par3, var44, var28, var32); - var6.addVertexWithUV(var50, (double)par3, var48, var28, var36); - var6.addVertexWithUV(var52, (double)par3, var44, var30, var36); - var6.addVertexWithUV(var52, (double)par3, var48, var30, var32); - var6.addVertexWithUV(var50, (double)par3, var48, var28, var32); - var6.addVertexWithUV(var50, (double)par3, var44, var28, var36); + var6.addVertexWithUV(var52, (double)y, var48, var30, var36); + var6.addVertexWithUV(var52, (double)y, var44, var30, var32); + var6.addVertexWithUV(var50, (double)y, var44, var28, var32); + var6.addVertexWithUV(var50, (double)y, var48, var28, var36); + var6.addVertexWithUV(var52, (double)y, var44, var30, var36); + var6.addVertexWithUV(var52, (double)y, var48, var30, var32); + var6.addVertexWithUV(var50, (double)y, var48, var28, var32); + var6.addVertexWithUV(var50, (double)y, var44, var28, var36); } else { if (par3 > 1 && this.blockAccess.isAirBlock(par2, par3 - 1, par4.subtract(BigInteger.ONE))) { - var6.addVertexWithUV(var50, (double)par3, var44, var30, var32); - var6.addVertexWithUV(var50, (double)par3, var46, var30, var34); - var6.addVertexWithUV(var52, (double)par3, var46, var28, var34); - var6.addVertexWithUV(var52, (double)par3, var44, var28, var32); - var6.addVertexWithUV(var50, (double)par3, var46, var30, var32); - var6.addVertexWithUV(var50, (double)par3, var44, var30, var34); - var6.addVertexWithUV(var52, (double)par3, var44, var28, var34); - var6.addVertexWithUV(var52, (double)par3, var46, var28, var32); + var6.addVertexWithUV(var50, (double)y, var44, var30, var32); + var6.addVertexWithUV(var50, (double)y, var46, var30, var34); + var6.addVertexWithUV(var52, (double)y, var46, var28, var34); + var6.addVertexWithUV(var52, (double)y, var44, var28, var32); + var6.addVertexWithUV(var50, (double)y, var46, var30, var32); + var6.addVertexWithUV(var50, (double)y, var44, var30, var34); + var6.addVertexWithUV(var52, (double)y, var44, var28, var34); + var6.addVertexWithUV(var52, (double)y, var46, var28, var32); } if (par3 > 1 && this.blockAccess.isAirBlock(par2, par3 - 1, par4.add(BigInteger.ONE))) { - var6.addVertexWithUV(var50, (double)par3, var46, var28, var34); - var6.addVertexWithUV(var50, (double)par3, var48, var28, var36); - var6.addVertexWithUV(var52, (double)par3, var48, var30, var36); - var6.addVertexWithUV(var52, (double)par3, var46, var30, var34); - var6.addVertexWithUV(var50, (double)par3, var48, var28, var34); - var6.addVertexWithUV(var50, (double)par3, var46, var28, var36); - var6.addVertexWithUV(var52, (double)par3, var46, var30, var36); - var6.addVertexWithUV(var52, (double)par3, var48, var30, var34); + var6.addVertexWithUV(var50, (double)y, var46, var28, var34); + var6.addVertexWithUV(var50, (double)y, var48, var28, var36); + var6.addVertexWithUV(var52, (double)y, var48, var30, var36); + var6.addVertexWithUV(var52, (double)y, var46, var30, var34); + var6.addVertexWithUV(var50, (double)y, var48, var28, var34); + var6.addVertexWithUV(var50, (double)y, var46, var28, var36); + var6.addVertexWithUV(var52, (double)y, var46, var30, var36); + var6.addVertexWithUV(var52, (double)y, var48, var30, var34); } } } @@ -3590,8 +3718,6 @@ public class RenderBlocks float var8 = (float)(var7 >> 16 & 255) / 255.0F; float var9 = (float)(var7 >> 8 & 255) / 255.0F; float var10 = (float)(var7 & 255) / 255.0F; - - if(FIX_RENDERER) var5.setDontTranslate(true); if (EntityRenderer.anaglyphEnable) { @@ -3618,7 +3744,6 @@ public class RenderBlocks } this.drawCrossedSquares(par1Block, this.blockAccess.getBlockMetadata(par2, par3, par4), var19, var20, var15); - if(FIX_RENDERER) var5.setDontTranslate(false); return true; } @@ -3652,12 +3777,12 @@ public class RenderBlocks if (var15 < 0) { - this.renderBlockStemSmall(var5, this.blockAccess.getBlockMetadata(par2, par3, par4), var5.maxY, par2.doubleValue(), (double)((float)par3 - 0.0625F), par4.doubleValue()); + this.renderBlockStemSmall(var5, this.blockAccess.getBlockMetadata(par2, par3, par4), var5.maxY, FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue(), (double)((float)(FIX_RENDERER ? par3 & 0xF : par3) - 0.0625F), FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue()); } else { - this.renderBlockStemSmall(var5, this.blockAccess.getBlockMetadata(par2, par3, par4), 0.5D, par2.doubleValue(), (double)((float)par3 - 0.0625F), par4.doubleValue()); - this.renderBlockStemBig(var5, this.blockAccess.getBlockMetadata(par2, par3, par4), var15, var5.maxY, par2.doubleValue(), (double)((float)par3 - 0.0625F), par4.doubleValue()); + this.renderBlockStemSmall(var5, this.blockAccess.getBlockMetadata(par2, par3, par4), 0.5D, FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue(), (double)((float)(FIX_RENDERER ? par3 & 0xF : par3) - 0.0625F), FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue()); + this.renderBlockStemBig(var5, this.blockAccess.getBlockMetadata(par2, par3, par4), var15, var5.maxY, FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue(), (double)((float)(FIX_RENDERER ? par3 & 0xF : par3) - 0.0625F), FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue()); } return true; @@ -3669,11 +3794,9 @@ public class RenderBlocks public boolean renderBlockCrops(Block par1Block, BigInteger par2, int par3, BigInteger par4) { Tessellator var5 = tessellator; - if(FIX_RENDERER) var5.setDontTranslate(true); var5.setBrightness(par1Block.getMixedBrightnessForBlock(this.blockAccess, par2, par3, par4)); var5.setColorOpaque_F(1.0F, 1.0F, 1.0F); this.renderBlockCropsImpl(par1Block, this.blockAccess.getBlockMetadata(par2, par3, par4), FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue(), (double)((float)(FIX_RENDERER ? par3 & 0xF : par3) - 0.0625F), FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue()); - if(FIX_RENDERER) var5.setDontTranslate(false); return true; } @@ -3836,6 +3959,11 @@ public class RenderBlocks var18 = var18 * var18 * 42317861L + var18 * 11L; int var20 = (int)(var18 >> 16 & 3L); var5.setBrightness(par1Block.getMixedBrightnessForBlock(this.blockAccess, par2, par3, par4)); + if(FIX_RENDERER) { + par2 = BigInteger.valueOf(par2.intValue() & 0xF); + par3 &= 0xF; + par4 = BigInteger.valueOf(par4.intValue() & 0xF); + } float var21 = (par2).floatValue() + 0.5F; float var22 = (par4).floatValue() + 0.5F; float var23 = (float)(var20 & 1) * 0.5F * (float)(1 - var20 / 2 % 2 * 2); @@ -3977,7 +4105,6 @@ public class RenderBlocks public boolean renderBlockFluids(Block par1Block, BigInteger par2, int par3, BigInteger par4) { Tessellator var5 = tessellator; - if(FIX_RENDERER) var5.setDontTranslate(true); int var6 = par1Block.colorMultiplier(this.blockAccess, par2, par3, par4); float var7 = (float)(var6 >> 16 & 255) / 255.0F; float var8 = (float)(var6 >> 8 & 255) / 255.0F; @@ -4196,8 +4323,6 @@ public class RenderBlocks var5.addVertexWithUV(var45, par3 & 0xF, var47, var53, var61); } } - - if(FIX_RENDERER) var5.setDontTranslate(false); par1Block.minY = var18; par1Block.maxY = var20; @@ -4394,8 +4519,6 @@ public class RenderBlocks int var23 = var19; int var24 = var19; int var25 = var19; - - if(FIX_RENDERER) tessellator.setDontTranslate(true); if (par1Block.minY <= 0.0D) { @@ -5171,7 +5294,6 @@ public class RenderBlocks var8 = true; } - if(FIX_RENDERER) tessellator.setDontTranslate(false); this.enableAO = false; return var8; } @@ -5238,8 +5360,7 @@ public class RenderBlocks } int var26 = par1Block.getMixedBrightnessForBlock(this.blockAccess, par2, par3, par4); - - if(FIX_RENDERER) tessellator.setDontTranslate(true); + if (this.renderAllFaces || par1Block.shouldSideBeRendered(this.blockAccess, par2, par3 - 1, par4, 0)) { @@ -5332,8 +5453,6 @@ public class RenderBlocks var9 = true; } - - if(FIX_RENDERER) tessellator.setDontTranslate(false); return var9; } @@ -5362,6 +5481,12 @@ public class RenderBlocks double var28 = ((double)var13 + var20 - 0.01D) / 256.0D; double var30 = 0.0D; double var32 = 0.0D; + + if(FIX_RENDERER) { + par2 = BigInteger.valueOf(par2.intValue() & 0xF); + par3 &= 0xF; + par4 = BigInteger.valueOf(par4.intValue() & 0xF); + } switch (var8) { @@ -5526,7 +5651,6 @@ public class RenderBlocks */ public boolean renderBlockCactusImpl(Block par1Block, BigInteger par2, int par3, BigInteger par4, float par5, float par6, float par7) { - // TODO Tessellator var8 = tessellator; boolean var9 = false; float var10 = 0.5F; @@ -5552,7 +5676,7 @@ public class RenderBlocks { var8.setBrightness(par1Block.minY > 0.0D ? var28 : par1Block.getMixedBrightnessForBlock(this.blockAccess, par2, par3 - 1, par4)); var8.setColorOpaque_F(var14, var18, var22); - this.renderBottomFace(par1Block, par2.doubleValue(), (double)par3, par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 0)); + this.renderBottomFace(par1Block, FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue(), FIX_RENDERER ? par3 & 0xF : par3, FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 0)); var9 = true; } @@ -5560,7 +5684,7 @@ public class RenderBlocks { var8.setBrightness(par1Block.maxY < 1.0D ? var28 : par1Block.getMixedBrightnessForBlock(this.blockAccess, par2, par3 + 1, par4)); var8.setColorOpaque_F(var15, var19, var23); - this.renderTopFace(par1Block, par2.doubleValue(), (double)par3, par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 1)); + this.renderTopFace(par1Block, FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue(), FIX_RENDERER ? par3 & 0xF : par3, FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 1)); var9 = true; } @@ -5569,7 +5693,7 @@ public class RenderBlocks var8.setBrightness(par1Block.minZ > 0.0D ? var28 : par1Block.getMixedBrightnessForBlock(this.blockAccess, par2, par3, par4.subtract(BigInteger.ONE))); var8.setColorOpaque_F(var16, var20, var24); var8.addTranslation(0.0F, 0.0F, var26); - this.renderEastFace(par1Block, par2.doubleValue(), (double)par3, par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 2)); + this.renderEastFace(par1Block, FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue(), FIX_RENDERER ? par3 & 0xF : par3, FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 2)); var8.addTranslation(0.0F, 0.0F, -var26); var9 = true; } @@ -5579,7 +5703,7 @@ public class RenderBlocks var8.setBrightness(par1Block.maxZ < 1.0D ? var28 : par1Block.getMixedBrightnessForBlock(this.blockAccess, par2, par3, par4.add(BigInteger.ONE))); var8.setColorOpaque_F(var16, var20, var24); var8.addTranslation(0.0F, 0.0F, -var26); - this.renderWestFace(par1Block, par2.doubleValue(), (double)par3, par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 3)); + this.renderWestFace(par1Block, FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue(), FIX_RENDERER ? par3 & 0xF : par3, FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 3)); var8.addTranslation(0.0F, 0.0F, var26); var9 = true; } @@ -5589,7 +5713,7 @@ public class RenderBlocks var8.setBrightness(par1Block.minX > 0.0D ? var28 : par1Block.getMixedBrightnessForBlock(this.blockAccess, par2.subtract(BigInteger.ONE), par3, par4)); var8.setColorOpaque_F(var17, var21, var25); var8.addTranslation(var26, 0.0F, 0.0F); - this.renderNorthFace(par1Block, par2.doubleValue(), (double)par3, par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 4)); + this.renderNorthFace(par1Block, FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue(), FIX_RENDERER ? par3 & 0xF : par3, FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 4)); var8.addTranslation(-var26, 0.0F, 0.0F); var9 = true; } @@ -5599,7 +5723,7 @@ public class RenderBlocks var8.setBrightness(par1Block.maxX < 1.0D ? var28 : par1Block.getMixedBrightnessForBlock(this.blockAccess, par2.add(BigInteger.ONE), par3, par4)); var8.setColorOpaque_F(var17, var21, var25); var8.addTranslation(-var26, 0.0F, 0.0F); - this.renderSouthFace(par1Block, par2.doubleValue(), (double)par3, par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 5)); + this.renderSouthFace(par1Block, FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue(), FIX_RENDERER ? par3 & 0xF : par3, FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue(), par1Block.getBlockTexture(this.blockAccess, par2, par3, par4, 5)); var8.addTranslation(var26, 0.0F, 0.0F); var9 = true; } @@ -5962,7 +6086,6 @@ public class RenderBlocks public boolean renderBlockDoor(Block par1Block, BigInteger par2, int par3, BigInteger par4) { Tessellator var5 = tessellator; - if(FIX_RENDERER) var5.setDontTranslate(true); BlockDoor var6 = (BlockDoor)par1Block; boolean var7 = false; float var8 = 0.5F; @@ -6030,7 +6153,6 @@ public class RenderBlocks this.renderSouthFace(par1Block, FIX_RENDERER ? par2.intValue() & 0xF : par2.doubleValue(), FIX_RENDERER ? par3 & 0xF : par3, FIX_RENDERER ? par4.intValue() & 0xF : par4.doubleValue(), var14); var7 = true; this.flipTexture = false; - if(FIX_RENDERER) var5.setDontTranslate(false); return var7; } diff --git a/src/minecraft/net/minecraft/src/RenderGlobal.java b/src/minecraft/net/minecraft/src/RenderGlobal.java index 083e17f..3df24e7 100644 --- a/src/minecraft/net/minecraft/src/RenderGlobal.java +++ b/src/minecraft/net/minecraft/src/RenderGlobal.java @@ -593,7 +593,6 @@ public class RenderGlobal implements IWorldAccess if (var6.needsUpdate && !this.worldRenderersToUpdate.contains(var6)) { this.worldRenderersToUpdate.add(var6); - var6.addedToQueue = false; } } @@ -1746,7 +1745,6 @@ public class RenderGlobal implements IWorldAccess { this.worldRenderersToUpdate.add(var20); var20.markDirty(); - var20.addedToQueue = false; } } } diff --git a/src/minecraft/net/minecraft/src/WorldRenderer.java b/src/minecraft/net/minecraft/src/WorldRenderer.java index e11dcf6..a9dd672 100644 --- a/src/minecraft/net/minecraft/src/WorldRenderer.java +++ b/src/minecraft/net/minecraft/src/WorldRenderer.java @@ -2,6 +2,8 @@ package net.minecraft.src; import org.mcmodule.math.BigInteger; +import net.minecraft.client.Minecraft; + import java.math.BigDecimal; import java.util.ArrayList; import java.util.HashSet; @@ -184,7 +186,7 @@ public class WorldRenderer var14 = true; tessellator.reset(); tessellator.startDrawingQuads(); - tessellator.setTranslation((double)(-this.posX.doubleValue()), (double)(-this.posY), (double)(-this.posZ.doubleValue())); + if(!Minecraft.FIX_RENDERER) tessellator.setTranslation((double)(-this.posX.doubleValue()), (double)(-this.posY), (double)(-this.posZ.doubleValue())); } Block var23 = Block.blocksList[var18]; @@ -265,6 +267,7 @@ public class WorldRenderer // System.out.println(this.bytesDrawn); GL11.glPopMatrix(); GL11.glEndList(); + this.addedToQueue = false; } public void compileAllLayers() {