Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static boolean renderStandardBlock(RenderBlocks renderBlocks, Block p_147784_1_, int p_147784_2_, int p_147784_3_, int p_147784_4_)
- {
- int l = p_147784_1_.colorMultiplier(renderBlocks.blockAccess, p_147784_2_, p_147784_3_, p_147784_4_);
- float f = (float)(l >> 16 & 255) / 255.0F;
- float f1 = (float)(l >> 8 & 255) / 255.0F;
- float f2 = (float)(l & 255) / 255.0F;
- if (EntityRenderer.anaglyphEnable)
- {
- float f3 = (f * 30.0F + f1 * 59.0F + f2 * 11.0F) / 100.0F;
- float f4 = (f * 30.0F + f1 * 70.0F) / 100.0F;
- float f5 = (f * 30.0F + f2 * 70.0F) / 100.0F;
- f = f3;
- f1 = f4;
- f2 = f5;
- }
- return Minecraft.isAmbientOcclusionEnabled() && p_147784_1_.getLightValue() == 0 ? (renderBlocks.partialRenderBounds ? renderStandardBlockWithAmbientOcclusionPartial(renderBlocks, p_147784_1_, p_147784_2_, p_147784_3_, p_147784_4_, f, f1, f2) : renderStandardBlockWithAmbientOcclusion(renderBlocks, p_147784_1_, p_147784_2_, p_147784_3_, p_147784_4_, f, f1, f2)) : renderBlocks.renderStandardBlockWithColorMultiplier(p_147784_1_, p_147784_2_, p_147784_3_, p_147784_4_, f, f1, f2);
- }
- public static boolean renderStandardBlockWithAmbientOcclusion(RenderBlocks renderBlocks, Block p_147751_1_, int p_147751_2_, int p_147751_3_, int p_147751_4_, float p_147751_5_, float p_147751_6_, float p_147751_7_)
- {
- renderBlocks.enableAO = true;
- boolean flag = false;
- float f3 = 0.0F;
- float f4 = 0.0F;
- float f5 = 0.0F;
- float f6 = 0.0F;
- boolean flag1 = true;
- int l = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_);
- Tessellator tessellator = Tessellator.instance;
- tessellator.setBrightness(983055);
- if (renderBlocks.getBlockIcon(p_147751_1_).getIconName().equals("grass_top"))
- {
- flag1 = false;
- }
- else if (renderBlocks.hasOverrideBlockTexture())
- {
- flag1 = false;
- }
- boolean flag2;
- boolean flag3;
- boolean flag4;
- boolean flag5;
- int i1;
- float f7;
- if (renderBlocks.renderAllFaces || p_147751_1_.shouldSideBeRendered(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ - 1, p_147751_4_, 0))
- {
- if (renderBlocks.renderMinY <= 0.0D)
- {
- --p_147751_3_;
- }
- renderBlocks.aoBrightnessXYNN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ - 1, p_147751_3_, p_147751_4_);
- renderBlocks.aoBrightnessYZNN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_ - 1);
- renderBlocks.aoBrightnessYZNP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_ + 1);
- renderBlocks.aoBrightnessXYPN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ + 1, p_147751_3_, p_147751_4_);
- renderBlocks.aoLightValueScratchXYNN = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchYZNN = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_, p_147751_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchYZNP = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_, p_147751_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXYPN = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_, p_147751_4_).getAmbientOcclusionLightValue();
- flag2 = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_ - 1, p_147751_4_).getCanBlockGrass();
- flag3 = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_ - 1, p_147751_4_).getCanBlockGrass();
- flag4 = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ - 1, p_147751_4_ + 1).getCanBlockGrass();
- flag5 = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ - 1, p_147751_4_ - 1).getCanBlockGrass();
- if (!flag5 && !flag3)
- {
- renderBlocks.aoLightValueScratchXYZNNN = renderBlocks.aoLightValueScratchXYNN;
- renderBlocks.aoBrightnessXYZNNN = renderBlocks.aoBrightnessXYNN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNNN = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_, p_147751_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNNN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ - 1, p_147751_3_, p_147751_4_ - 1);
- }
- if (!flag4 && !flag3)
- {
- renderBlocks.aoLightValueScratchXYZNNP = renderBlocks.aoLightValueScratchXYNN;
- renderBlocks.aoBrightnessXYZNNP = renderBlocks.aoBrightnessXYNN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNNP = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_, p_147751_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNNP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ - 1, p_147751_3_, p_147751_4_ + 1);
- }
- if (!flag5 && !flag2)
- {
- renderBlocks.aoLightValueScratchXYZPNN = renderBlocks.aoLightValueScratchXYPN;
- renderBlocks.aoBrightnessXYZPNN = renderBlocks.aoBrightnessXYPN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPNN = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_, p_147751_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPNN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ + 1, p_147751_3_, p_147751_4_ - 1);
- }
- if (!flag4 && !flag2)
- {
- renderBlocks.aoLightValueScratchXYZPNP = renderBlocks.aoLightValueScratchXYPN;
- renderBlocks.aoBrightnessXYZPNP = renderBlocks.aoBrightnessXYPN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPNP = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_, p_147751_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPNP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ + 1, p_147751_3_, p_147751_4_ + 1);
- }
- if (renderBlocks.renderMinY <= 0.0D)
- {
- ++p_147751_3_;
- }
- i1 = l;
- if (renderBlocks.renderMinY <= 0.0D || !renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ - 1, p_147751_4_).isOpaqueCube())
- {
- i1 = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ - 1, p_147751_4_);
- }
- f7 = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ - 1, p_147751_4_).getAmbientOcclusionLightValue();
- f3 = (renderBlocks.aoLightValueScratchXYZNNP + renderBlocks.aoLightValueScratchXYNN + renderBlocks.aoLightValueScratchYZNP + f7) / 4.0F;
- f6 = (renderBlocks.aoLightValueScratchYZNP + f7 + renderBlocks.aoLightValueScratchXYZPNP + renderBlocks.aoLightValueScratchXYPN) / 4.0F;
- f5 = (f7 + renderBlocks.aoLightValueScratchYZNN + renderBlocks.aoLightValueScratchXYPN + renderBlocks.aoLightValueScratchXYZPNN) / 4.0F;
- f4 = (renderBlocks.aoLightValueScratchXYNN + renderBlocks.aoLightValueScratchXYZNNN + f7 + renderBlocks.aoLightValueScratchYZNN) / 4.0F;
- renderBlocks.brightnessTopLeft = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYZNNP, renderBlocks.aoBrightnessXYNN, renderBlocks.aoBrightnessYZNP, i1);
- renderBlocks.brightnessTopRight = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessYZNP, renderBlocks.aoBrightnessXYZPNP, renderBlocks.aoBrightnessXYPN, i1);
- renderBlocks.brightnessBottomRight = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessYZNN, renderBlocks.aoBrightnessXYPN, renderBlocks.aoBrightnessXYZPNN, i1);
- renderBlocks.brightnessBottomLeft = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYNN, renderBlocks.aoBrightnessXYZNNN, renderBlocks.aoBrightnessYZNN, i1);
- if (flag1)
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = p_147751_5_ * 0.5F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = p_147751_6_ * 0.5F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = p_147751_7_ * 0.5F;
- }
- else
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = 0.5F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = 0.5F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = 0.5F;
- }
- renderBlocks.colorRedTopLeft *= f3;
- renderBlocks.colorGreenTopLeft *= f3;
- renderBlocks.colorBlueTopLeft *= f3;
- renderBlocks.colorRedBottomLeft *= f4;
- renderBlocks.colorGreenBottomLeft *= f4;
- renderBlocks.colorBlueBottomLeft *= f4;
- renderBlocks.colorRedBottomRight *= f5;
- renderBlocks.colorGreenBottomRight *= f5;
- renderBlocks.colorBlueBottomRight *= f5;
- renderBlocks.colorRedTopRight *= f6;
- renderBlocks.colorGreenTopRight *= f6;
- renderBlocks.colorBlueTopRight *= f6;
- renderBlocks.renderFaceYNeg(p_147751_1_, (double)p_147751_2_, (double)p_147751_3_, (double)p_147751_4_, renderBlocks.getBlockIcon(p_147751_1_, renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_, 0));
- flag = true;
- }
- if (renderBlocks.renderAllFaces || p_147751_1_.shouldSideBeRendered(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ + 1, p_147751_4_, 1))
- {
- if (renderBlocks.renderMaxY >= 1.0D)
- {
- ++p_147751_3_;
- }
- renderBlocks.aoBrightnessXYNP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ - 1, p_147751_3_, p_147751_4_);
- renderBlocks.aoBrightnessXYPP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ + 1, p_147751_3_, p_147751_4_);
- renderBlocks.aoBrightnessYZPN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_ - 1);
- renderBlocks.aoBrightnessYZPP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_ + 1);
- renderBlocks.aoLightValueScratchXYNP = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXYPP = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchYZPN = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_, p_147751_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchYZPP = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_, p_147751_4_ + 1).getAmbientOcclusionLightValue();
- flag2 = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_ + 1, p_147751_4_).getCanBlockGrass();
- flag3 = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_ + 1, p_147751_4_).getCanBlockGrass();
- flag4 = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ + 1, p_147751_4_ + 1).getCanBlockGrass();
- flag5 = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ + 1, p_147751_4_ - 1).getCanBlockGrass();
- if (!flag5 && !flag3)
- {
- renderBlocks.aoLightValueScratchXYZNPN = renderBlocks.aoLightValueScratchXYNP;
- renderBlocks.aoBrightnessXYZNPN = renderBlocks.aoBrightnessXYNP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNPN = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_, p_147751_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNPN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ - 1, p_147751_3_, p_147751_4_ - 1);
- }
- if (!flag5 && !flag2)
- {
- renderBlocks.aoLightValueScratchXYZPPN = renderBlocks.aoLightValueScratchXYPP;
- renderBlocks.aoBrightnessXYZPPN = renderBlocks.aoBrightnessXYPP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPPN = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_, p_147751_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPPN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ + 1, p_147751_3_, p_147751_4_ - 1);
- }
- if (!flag4 && !flag3)
- {
- renderBlocks.aoLightValueScratchXYZNPP = renderBlocks.aoLightValueScratchXYNP;
- renderBlocks.aoBrightnessXYZNPP = renderBlocks.aoBrightnessXYNP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNPP = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_, p_147751_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNPP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ - 1, p_147751_3_, p_147751_4_ + 1);
- }
- if (!flag4 && !flag2)
- {
- renderBlocks.aoLightValueScratchXYZPPP = renderBlocks.aoLightValueScratchXYPP;
- renderBlocks.aoBrightnessXYZPPP = renderBlocks.aoBrightnessXYPP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPPP = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_, p_147751_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPPP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ + 1, p_147751_3_, p_147751_4_ + 1);
- }
- if (renderBlocks.renderMaxY >= 1.0D)
- {
- --p_147751_3_;
- }
- i1 = l;
- if (renderBlocks.renderMaxY >= 1.0D || !renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ + 1, p_147751_4_).isOpaqueCube())
- {
- i1 = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ + 1, p_147751_4_);
- }
- f7 = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ + 1, p_147751_4_).getAmbientOcclusionLightValue();
- f6 = (renderBlocks.aoLightValueScratchXYZNPP + renderBlocks.aoLightValueScratchXYNP + renderBlocks.aoLightValueScratchYZPP + f7) / 4.0F;
- f3 = (renderBlocks.aoLightValueScratchYZPP + f7 + renderBlocks.aoLightValueScratchXYZPPP + renderBlocks.aoLightValueScratchXYPP) / 4.0F;
- f4 = (f7 + renderBlocks.aoLightValueScratchYZPN + renderBlocks.aoLightValueScratchXYPP + renderBlocks.aoLightValueScratchXYZPPN) / 4.0F;
- f5 = (renderBlocks.aoLightValueScratchXYNP + renderBlocks.aoLightValueScratchXYZNPN + f7 + renderBlocks.aoLightValueScratchYZPN) / 4.0F;
- renderBlocks.brightnessTopRight = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYZNPP, renderBlocks.aoBrightnessXYNP, renderBlocks.aoBrightnessYZPP, i1);
- renderBlocks.brightnessTopLeft = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessYZPP, renderBlocks.aoBrightnessXYZPPP, renderBlocks.aoBrightnessXYPP, i1);
- renderBlocks.brightnessBottomLeft = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessYZPN, renderBlocks.aoBrightnessXYPP, renderBlocks.aoBrightnessXYZPPN, i1);
- renderBlocks.brightnessBottomRight = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYNP, renderBlocks.aoBrightnessXYZNPN, renderBlocks.aoBrightnessYZPN, i1);
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = p_147751_5_;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = p_147751_6_;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = p_147751_7_;
- renderBlocks.colorRedTopLeft *= f3;
- renderBlocks.colorGreenTopLeft *= f3;
- renderBlocks.colorBlueTopLeft *= f3;
- renderBlocks.colorRedBottomLeft *= f4;
- renderBlocks.colorGreenBottomLeft *= f4;
- renderBlocks.colorBlueBottomLeft *= f4;
- renderBlocks.colorRedBottomRight *= f5;
- renderBlocks.colorGreenBottomRight *= f5;
- renderBlocks.colorBlueBottomRight *= f5;
- renderBlocks.colorRedTopRight *= f6;
- renderBlocks.colorGreenTopRight *= f6;
- renderBlocks.colorBlueTopRight *= f6;
- renderBlocks.renderFaceYPos(p_147751_1_, (double)p_147751_2_, (double)p_147751_3_, (double)p_147751_4_, renderBlocks.getBlockIcon(p_147751_1_, renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_, 1));
- flag = true;
- }
- IIcon iicon;
- if (renderBlocks.renderAllFaces || p_147751_1_.shouldSideBeRendered(renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_ - 1, 2))
- {
- if (renderBlocks.renderMinZ <= 0.0D)
- {
- --p_147751_4_;
- }
- renderBlocks.aoLightValueScratchXZNN = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchYZNN = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ - 1, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchYZPN = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ + 1, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXZPN = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXZNN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ - 1, p_147751_3_, p_147751_4_);
- renderBlocks.aoBrightnessYZNN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ - 1, p_147751_4_);
- renderBlocks.aoBrightnessYZPN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ + 1, p_147751_4_);
- renderBlocks.aoBrightnessXZPN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ + 1, p_147751_3_, p_147751_4_);
- flag2 = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_, p_147751_4_ - 1).getCanBlockGrass();
- flag3 = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_, p_147751_4_ - 1).getCanBlockGrass();
- flag4 = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ + 1, p_147751_4_ - 1).getCanBlockGrass();
- flag5 = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ - 1, p_147751_4_ - 1).getCanBlockGrass();
- if (!flag3 && !flag5)
- {
- renderBlocks.aoLightValueScratchXYZNNN = renderBlocks.aoLightValueScratchXZNN;
- renderBlocks.aoBrightnessXYZNNN = renderBlocks.aoBrightnessXZNN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNNN = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_ - 1, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNNN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ - 1, p_147751_3_ - 1, p_147751_4_);
- }
- if (!flag3 && !flag4)
- {
- renderBlocks.aoLightValueScratchXYZNPN = renderBlocks.aoLightValueScratchXZNN;
- renderBlocks.aoBrightnessXYZNPN = renderBlocks.aoBrightnessXZNN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNPN = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_ + 1, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNPN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ - 1, p_147751_3_ + 1, p_147751_4_);
- }
- if (!flag2 && !flag5)
- {
- renderBlocks.aoLightValueScratchXYZPNN = renderBlocks.aoLightValueScratchXZPN;
- renderBlocks.aoBrightnessXYZPNN = renderBlocks.aoBrightnessXZPN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPNN = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_ - 1, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPNN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ + 1, p_147751_3_ - 1, p_147751_4_);
- }
- if (!flag2 && !flag4)
- {
- renderBlocks.aoLightValueScratchXYZPPN = renderBlocks.aoLightValueScratchXZPN;
- renderBlocks.aoBrightnessXYZPPN = renderBlocks.aoBrightnessXZPN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPPN = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_ + 1, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPPN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ + 1, p_147751_3_ + 1, p_147751_4_);
- }
- if (renderBlocks.renderMinZ <= 0.0D)
- {
- ++p_147751_4_;
- }
- i1 = l;
- if (renderBlocks.renderMinZ <= 0.0D || !renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_, p_147751_4_ - 1).isOpaqueCube())
- {
- i1 = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_ - 1);
- }
- f7 = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_, p_147751_4_ - 1).getAmbientOcclusionLightValue();
- f3 = (renderBlocks.aoLightValueScratchXZNN + renderBlocks.aoLightValueScratchXYZNPN + f7 + renderBlocks.aoLightValueScratchYZPN) / 4.0F;
- f4 = (f7 + renderBlocks.aoLightValueScratchYZPN + renderBlocks.aoLightValueScratchXZPN + renderBlocks.aoLightValueScratchXYZPPN) / 4.0F;
- f5 = (renderBlocks.aoLightValueScratchYZNN + f7 + renderBlocks.aoLightValueScratchXYZPNN + renderBlocks.aoLightValueScratchXZPN) / 4.0F;
- f6 = (renderBlocks.aoLightValueScratchXYZNNN + renderBlocks.aoLightValueScratchXZNN + renderBlocks.aoLightValueScratchYZNN + f7) / 4.0F;
- renderBlocks.brightnessTopLeft = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXZNN, renderBlocks.aoBrightnessXYZNPN, renderBlocks.aoBrightnessYZPN, i1);
- renderBlocks.brightnessBottomLeft = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessYZPN, renderBlocks.aoBrightnessXZPN, renderBlocks.aoBrightnessXYZPPN, i1);
- renderBlocks.brightnessBottomRight = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessYZNN, renderBlocks.aoBrightnessXYZPNN, renderBlocks.aoBrightnessXZPN, i1);
- renderBlocks.brightnessTopRight = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYZNNN, renderBlocks.aoBrightnessXZNN, renderBlocks.aoBrightnessYZNN, i1);
- if (flag1)
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = p_147751_5_ * 0.8F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = p_147751_6_ * 0.8F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = p_147751_7_ * 0.8F;
- }
- else
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = 0.8F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = 0.8F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = 0.8F;
- }
- renderBlocks.colorRedTopLeft *= f3;
- renderBlocks.colorGreenTopLeft *= f3;
- renderBlocks.colorBlueTopLeft *= f3;
- renderBlocks.colorRedBottomLeft *= f4;
- renderBlocks.colorGreenBottomLeft *= f4;
- renderBlocks.colorBlueBottomLeft *= f4;
- renderBlocks.colorRedBottomRight *= f5;
- renderBlocks.colorGreenBottomRight *= f5;
- renderBlocks.colorBlueBottomRight *= f5;
- renderBlocks.colorRedTopRight *= f6;
- renderBlocks.colorGreenTopRight *= f6;
- renderBlocks.colorBlueTopRight *= f6;
- iicon = renderBlocks.getBlockIcon(p_147751_1_, renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_, 2);
- renderFaceZNeg(renderBlocks, p_147751_1_, (double)p_147751_2_, (double)p_147751_3_, (double)p_147751_4_, iicon);
- if (renderBlocks.fancyGrass && iicon.getIconName().equals("grass_side") && !renderBlocks.hasOverrideBlockTexture())
- {
- renderBlocks.colorRedTopLeft *= p_147751_5_;
- renderBlocks.colorRedBottomLeft *= p_147751_5_;
- renderBlocks.colorRedBottomRight *= p_147751_5_;
- renderBlocks.colorRedTopRight *= p_147751_5_;
- renderBlocks.colorGreenTopLeft *= p_147751_6_;
- renderBlocks.colorGreenBottomLeft *= p_147751_6_;
- renderBlocks.colorGreenBottomRight *= p_147751_6_;
- renderBlocks.colorGreenTopRight *= p_147751_6_;
- renderBlocks.colorBlueTopLeft *= p_147751_7_;
- renderBlocks.colorBlueBottomLeft *= p_147751_7_;
- renderBlocks.colorBlueBottomRight *= p_147751_7_;
- renderBlocks.colorBlueTopRight *= p_147751_7_;
- renderFaceZNeg(renderBlocks, p_147751_1_, (double)p_147751_2_, (double)p_147751_3_, (double)p_147751_4_, BlockGrass.getIconSideOverlay());
- }
- flag = true;
- }
- if (renderBlocks.renderAllFaces || p_147751_1_.shouldSideBeRendered(renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_ + 1, 3))
- {
- if (renderBlocks.renderMaxZ >= 1.0D)
- {
- ++p_147751_4_;
- }
- renderBlocks.aoLightValueScratchXZNP = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXZPP = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchYZNP = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ - 1, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchYZPP = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ + 1, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXZNP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ - 1, p_147751_3_, p_147751_4_);
- renderBlocks.aoBrightnessXZPP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ + 1, p_147751_3_, p_147751_4_);
- renderBlocks.aoBrightnessYZNP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ - 1, p_147751_4_);
- renderBlocks.aoBrightnessYZPP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ + 1, p_147751_4_);
- flag2 = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_, p_147751_4_ + 1).getCanBlockGrass();
- flag3 = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_, p_147751_4_ + 1).getCanBlockGrass();
- flag4 = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ + 1, p_147751_4_ + 1).getCanBlockGrass();
- flag5 = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ - 1, p_147751_4_ + 1).getCanBlockGrass();
- if (!flag3 && !flag5)
- {
- renderBlocks.aoLightValueScratchXYZNNP = renderBlocks.aoLightValueScratchXZNP;
- renderBlocks.aoBrightnessXYZNNP = renderBlocks.aoBrightnessXZNP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNNP = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_ - 1, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNNP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ - 1, p_147751_3_ - 1, p_147751_4_);
- }
- if (!flag3 && !flag4)
- {
- renderBlocks.aoLightValueScratchXYZNPP = renderBlocks.aoLightValueScratchXZNP;
- renderBlocks.aoBrightnessXYZNPP = renderBlocks.aoBrightnessXZNP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNPP = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_ + 1, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNPP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ - 1, p_147751_3_ + 1, p_147751_4_);
- }
- if (!flag2 && !flag5)
- {
- renderBlocks.aoLightValueScratchXYZPNP = renderBlocks.aoLightValueScratchXZPP;
- renderBlocks.aoBrightnessXYZPNP = renderBlocks.aoBrightnessXZPP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPNP = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_ - 1, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPNP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ + 1, p_147751_3_ - 1, p_147751_4_);
- }
- if (!flag2 && !flag4)
- {
- renderBlocks.aoLightValueScratchXYZPPP = renderBlocks.aoLightValueScratchXZPP;
- renderBlocks.aoBrightnessXYZPPP = renderBlocks.aoBrightnessXZPP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPPP = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_ + 1, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPPP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ + 1, p_147751_3_ + 1, p_147751_4_);
- }
- if (renderBlocks.renderMaxZ >= 1.0D)
- {
- --p_147751_4_;
- }
- i1 = l;
- if (renderBlocks.renderMaxZ >= 1.0D || !renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_, p_147751_4_ + 1).isOpaqueCube())
- {
- i1 = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_ + 1);
- }
- f7 = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_, p_147751_4_ + 1).getAmbientOcclusionLightValue();
- f3 = (renderBlocks.aoLightValueScratchXZNP + renderBlocks.aoLightValueScratchXYZNPP + f7 + renderBlocks.aoLightValueScratchYZPP) / 4.0F;
- f6 = (f7 + renderBlocks.aoLightValueScratchYZPP + renderBlocks.aoLightValueScratchXZPP + renderBlocks.aoLightValueScratchXYZPPP) / 4.0F;
- f5 = (renderBlocks.aoLightValueScratchYZNP + f7 + renderBlocks.aoLightValueScratchXYZPNP + renderBlocks.aoLightValueScratchXZPP) / 4.0F;
- f4 = (renderBlocks.aoLightValueScratchXYZNNP + renderBlocks.aoLightValueScratchXZNP + renderBlocks.aoLightValueScratchYZNP + f7) / 4.0F;
- renderBlocks.brightnessTopLeft = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXZNP, renderBlocks.aoBrightnessXYZNPP, renderBlocks.aoBrightnessYZPP, i1);
- renderBlocks.brightnessTopRight = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessYZPP, renderBlocks.aoBrightnessXZPP, renderBlocks.aoBrightnessXYZPPP, i1);
- renderBlocks.brightnessBottomRight = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessYZNP, renderBlocks.aoBrightnessXYZPNP, renderBlocks.aoBrightnessXZPP, i1);
- renderBlocks.brightnessBottomLeft = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYZNNP, renderBlocks.aoBrightnessXZNP, renderBlocks.aoBrightnessYZNP, i1);
- if (flag1)
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = p_147751_5_ * 0.8F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = p_147751_6_ * 0.8F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = p_147751_7_ * 0.8F;
- }
- else
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = 0.8F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = 0.8F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = 0.8F;
- }
- renderBlocks.colorRedTopLeft *= f3;
- renderBlocks.colorGreenTopLeft *= f3;
- renderBlocks.colorBlueTopLeft *= f3;
- renderBlocks.colorRedBottomLeft *= f4;
- renderBlocks.colorGreenBottomLeft *= f4;
- renderBlocks.colorBlueBottomLeft *= f4;
- renderBlocks.colorRedBottomRight *= f5;
- renderBlocks.colorGreenBottomRight *= f5;
- renderBlocks.colorBlueBottomRight *= f5;
- renderBlocks.colorRedTopRight *= f6;
- renderBlocks.colorGreenTopRight *= f6;
- renderBlocks.colorBlueTopRight *= f6;
- iicon = renderBlocks.getBlockIcon(p_147751_1_, renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_, 3);
- renderBlocks.renderFaceZPos(p_147751_1_, (double)p_147751_2_, (double)p_147751_3_, (double)p_147751_4_, renderBlocks.getBlockIcon(p_147751_1_, renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_, 3));
- if (renderBlocks.fancyGrass && iicon.getIconName().equals("grass_side") && !renderBlocks.hasOverrideBlockTexture())
- {
- renderBlocks.colorRedTopLeft *= p_147751_5_;
- renderBlocks.colorRedBottomLeft *= p_147751_5_;
- renderBlocks.colorRedBottomRight *= p_147751_5_;
- renderBlocks.colorRedTopRight *= p_147751_5_;
- renderBlocks.colorGreenTopLeft *= p_147751_6_;
- renderBlocks.colorGreenBottomLeft *= p_147751_6_;
- renderBlocks.colorGreenBottomRight *= p_147751_6_;
- renderBlocks.colorGreenTopRight *= p_147751_6_;
- renderBlocks.colorBlueTopLeft *= p_147751_7_;
- renderBlocks.colorBlueBottomLeft *= p_147751_7_;
- renderBlocks.colorBlueBottomRight *= p_147751_7_;
- renderBlocks.colorBlueTopRight *= p_147751_7_;
- renderBlocks.renderFaceZPos(p_147751_1_, (double)p_147751_2_, (double)p_147751_3_, (double)p_147751_4_, BlockGrass.getIconSideOverlay());
- }
- flag = true;
- }
- if (renderBlocks.renderAllFaces || p_147751_1_.shouldSideBeRendered(renderBlocks.blockAccess, p_147751_2_ - 1, p_147751_3_, p_147751_4_, 4))
- {
- if (renderBlocks.renderMinX <= 0.0D)
- {
- --p_147751_2_;
- }
- renderBlocks.aoLightValueScratchXYNN = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ - 1, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXZNN = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_, p_147751_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXZNP = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_, p_147751_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXYNP = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ + 1, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYNN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ - 1, p_147751_4_);
- renderBlocks.aoBrightnessXZNN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_ - 1);
- renderBlocks.aoBrightnessXZNP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_ + 1);
- renderBlocks.aoBrightnessXYNP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ + 1, p_147751_4_);
- flag2 = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_ + 1, p_147751_4_).getCanBlockGrass();
- flag3 = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_ - 1, p_147751_4_).getCanBlockGrass();
- flag4 = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_, p_147751_4_ - 1).getCanBlockGrass();
- flag5 = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_, p_147751_4_ + 1).getCanBlockGrass();
- if (!flag4 && !flag3)
- {
- renderBlocks.aoLightValueScratchXYZNNN = renderBlocks.aoLightValueScratchXZNN;
- renderBlocks.aoBrightnessXYZNNN = renderBlocks.aoBrightnessXZNN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNNN = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ - 1, p_147751_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNNN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ - 1, p_147751_4_ - 1);
- }
- if (!flag5 && !flag3)
- {
- renderBlocks.aoLightValueScratchXYZNNP = renderBlocks.aoLightValueScratchXZNP;
- renderBlocks.aoBrightnessXYZNNP = renderBlocks.aoBrightnessXZNP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNNP = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ - 1, p_147751_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNNP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ - 1, p_147751_4_ + 1);
- }
- if (!flag4 && !flag2)
- {
- renderBlocks.aoLightValueScratchXYZNPN = renderBlocks.aoLightValueScratchXZNN;
- renderBlocks.aoBrightnessXYZNPN = renderBlocks.aoBrightnessXZNN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNPN = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ + 1, p_147751_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNPN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ + 1, p_147751_4_ - 1);
- }
- if (!flag5 && !flag2)
- {
- renderBlocks.aoLightValueScratchXYZNPP = renderBlocks.aoLightValueScratchXZNP;
- renderBlocks.aoBrightnessXYZNPP = renderBlocks.aoBrightnessXZNP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNPP = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ + 1, p_147751_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNPP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ + 1, p_147751_4_ + 1);
- }
- if (renderBlocks.renderMinX <= 0.0D)
- {
- ++p_147751_2_;
- }
- i1 = l;
- if (renderBlocks.renderMinX <= 0.0D || !renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_, p_147751_4_).isOpaqueCube())
- {
- i1 = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ - 1, p_147751_3_, p_147751_4_);
- }
- f7 = renderBlocks.blockAccess.getBlock(p_147751_2_ - 1, p_147751_3_, p_147751_4_).getAmbientOcclusionLightValue();
- f6 = (renderBlocks.aoLightValueScratchXYNN + renderBlocks.aoLightValueScratchXYZNNP + f7 + renderBlocks.aoLightValueScratchXZNP) / 4.0F;
- f3 = (f7 + renderBlocks.aoLightValueScratchXZNP + renderBlocks.aoLightValueScratchXYNP + renderBlocks.aoLightValueScratchXYZNPP) / 4.0F;
- f4 = (renderBlocks.aoLightValueScratchXZNN + f7 + renderBlocks.aoLightValueScratchXYZNPN + renderBlocks.aoLightValueScratchXYNP) / 4.0F;
- f5 = (renderBlocks.aoLightValueScratchXYZNNN + renderBlocks.aoLightValueScratchXYNN + renderBlocks.aoLightValueScratchXZNN + f7) / 4.0F;
- renderBlocks.brightnessTopRight = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYNN, renderBlocks.aoBrightnessXYZNNP, renderBlocks.aoBrightnessXZNP, i1);
- renderBlocks.brightnessTopLeft = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXZNP, renderBlocks.aoBrightnessXYNP, renderBlocks.aoBrightnessXYZNPP, i1);
- renderBlocks.brightnessBottomLeft = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXZNN, renderBlocks.aoBrightnessXYZNPN, renderBlocks.aoBrightnessXYNP, i1);
- renderBlocks.brightnessBottomRight = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYZNNN, renderBlocks.aoBrightnessXYNN, renderBlocks.aoBrightnessXZNN, i1);
- if (flag1)
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = p_147751_5_ * 0.6F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = p_147751_6_ * 0.6F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = p_147751_7_ * 0.6F;
- }
- else
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = 0.6F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = 0.6F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = 0.6F;
- }
- renderBlocks.colorRedTopLeft *= f3;
- renderBlocks.colorGreenTopLeft *= f3;
- renderBlocks.colorBlueTopLeft *= f3;
- renderBlocks.colorRedBottomLeft *= f4;
- renderBlocks.colorGreenBottomLeft *= f4;
- renderBlocks.colorBlueBottomLeft *= f4;
- renderBlocks.colorRedBottomRight *= f5;
- renderBlocks.colorGreenBottomRight *= f5;
- renderBlocks.colorBlueBottomRight *= f5;
- renderBlocks.colorRedTopRight *= f6;
- renderBlocks.colorGreenTopRight *= f6;
- renderBlocks.colorBlueTopRight *= f6;
- iicon = renderBlocks.getBlockIcon(p_147751_1_, renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_, 4);
- renderBlocks.renderFaceXNeg(p_147751_1_, (double)p_147751_2_, (double)p_147751_3_, (double)p_147751_4_, iicon);
- if (renderBlocks.fancyGrass && iicon.getIconName().equals("grass_side") && !renderBlocks.hasOverrideBlockTexture())
- {
- renderBlocks.colorRedTopLeft *= p_147751_5_;
- renderBlocks.colorRedBottomLeft *= p_147751_5_;
- renderBlocks.colorRedBottomRight *= p_147751_5_;
- renderBlocks.colorRedTopRight *= p_147751_5_;
- renderBlocks.colorGreenTopLeft *= p_147751_6_;
- renderBlocks.colorGreenBottomLeft *= p_147751_6_;
- renderBlocks.colorGreenBottomRight *= p_147751_6_;
- renderBlocks.colorGreenTopRight *= p_147751_6_;
- renderBlocks.colorBlueTopLeft *= p_147751_7_;
- renderBlocks.colorBlueBottomLeft *= p_147751_7_;
- renderBlocks.colorBlueBottomRight *= p_147751_7_;
- renderBlocks.colorBlueTopRight *= p_147751_7_;
- renderBlocks.renderFaceXNeg(p_147751_1_, (double)p_147751_2_, (double)p_147751_3_, (double)p_147751_4_, BlockGrass.getIconSideOverlay());
- }
- flag = true;
- }
- if (renderBlocks.renderAllFaces || p_147751_1_.shouldSideBeRendered(renderBlocks.blockAccess, p_147751_2_ + 1, p_147751_3_, p_147751_4_, 5))
- {
- if (renderBlocks.renderMaxX >= 1.0D)
- {
- ++p_147751_2_;
- }
- renderBlocks.aoLightValueScratchXYPN = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ - 1, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXZPN = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_, p_147751_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXZPP = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_, p_147751_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXYPP = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ + 1, p_147751_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYPN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ - 1, p_147751_4_);
- renderBlocks.aoBrightnessXZPN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_ - 1);
- renderBlocks.aoBrightnessXZPP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_ + 1);
- renderBlocks.aoBrightnessXYPP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ + 1, p_147751_4_);
- flag2 = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_ + 1, p_147751_4_).getCanBlockGrass();
- flag3 = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_ - 1, p_147751_4_).getCanBlockGrass();
- flag4 = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_, p_147751_4_ + 1).getCanBlockGrass();
- flag5 = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_, p_147751_4_ - 1).getCanBlockGrass();
- if (!flag3 && !flag5)
- {
- renderBlocks.aoLightValueScratchXYZPNN = renderBlocks.aoLightValueScratchXZPN;
- renderBlocks.aoBrightnessXYZPNN = renderBlocks.aoBrightnessXZPN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPNN = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ - 1, p_147751_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPNN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ - 1, p_147751_4_ - 1);
- }
- if (!flag3 && !flag4)
- {
- renderBlocks.aoLightValueScratchXYZPNP = renderBlocks.aoLightValueScratchXZPP;
- renderBlocks.aoBrightnessXYZPNP = renderBlocks.aoBrightnessXZPP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPNP = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ - 1, p_147751_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPNP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ - 1, p_147751_4_ + 1);
- }
- if (!flag2 && !flag5)
- {
- renderBlocks.aoLightValueScratchXYZPPN = renderBlocks.aoLightValueScratchXZPN;
- renderBlocks.aoBrightnessXYZPPN = renderBlocks.aoBrightnessXZPN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPPN = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ + 1, p_147751_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPPN = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ + 1, p_147751_4_ - 1);
- }
- if (!flag2 && !flag4)
- {
- renderBlocks.aoLightValueScratchXYZPPP = renderBlocks.aoLightValueScratchXZPP;
- renderBlocks.aoBrightnessXYZPPP = renderBlocks.aoBrightnessXZPP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPPP = renderBlocks.blockAccess.getBlock(p_147751_2_, p_147751_3_ + 1, p_147751_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPPP = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_, p_147751_3_ + 1, p_147751_4_ + 1);
- }
- if (renderBlocks.renderMaxX >= 1.0D)
- {
- --p_147751_2_;
- }
- i1 = l;
- if (renderBlocks.renderMaxX >= 1.0D || !renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_, p_147751_4_).isOpaqueCube())
- {
- i1 = p_147751_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147751_2_ + 1, p_147751_3_, p_147751_4_);
- }
- f7 = renderBlocks.blockAccess.getBlock(p_147751_2_ + 1, p_147751_3_, p_147751_4_).getAmbientOcclusionLightValue();
- f3 = (renderBlocks.aoLightValueScratchXYPN + renderBlocks.aoLightValueScratchXYZPNP + f7 + renderBlocks.aoLightValueScratchXZPP) / 4.0F;
- f4 = (renderBlocks.aoLightValueScratchXYZPNN + renderBlocks.aoLightValueScratchXYPN + renderBlocks.aoLightValueScratchXZPN + f7) / 4.0F;
- f5 = (renderBlocks.aoLightValueScratchXZPN + f7 + renderBlocks.aoLightValueScratchXYZPPN + renderBlocks.aoLightValueScratchXYPP) / 4.0F;
- f6 = (f7 + renderBlocks.aoLightValueScratchXZPP + renderBlocks.aoLightValueScratchXYPP + renderBlocks.aoLightValueScratchXYZPPP) / 4.0F;
- renderBlocks.brightnessTopLeft = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYPN, renderBlocks.aoBrightnessXYZPNP, renderBlocks.aoBrightnessXZPP, i1);
- renderBlocks.brightnessTopRight = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXZPP, renderBlocks.aoBrightnessXYPP, renderBlocks.aoBrightnessXYZPPP, i1);
- renderBlocks.brightnessBottomRight = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXZPN, renderBlocks.aoBrightnessXYZPPN, renderBlocks.aoBrightnessXYPP, i1);
- renderBlocks.brightnessBottomLeft = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYZPNN, renderBlocks.aoBrightnessXYPN, renderBlocks.aoBrightnessXZPN, i1);
- if (flag1)
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = p_147751_5_ * 0.6F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = p_147751_6_ * 0.6F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = p_147751_7_ * 0.6F;
- }
- else
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = 0.6F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = 0.6F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = 0.6F;
- }
- renderBlocks.colorRedTopLeft *= f3;
- renderBlocks.colorGreenTopLeft *= f3;
- renderBlocks.colorBlueTopLeft *= f3;
- renderBlocks.colorRedBottomLeft *= f4;
- renderBlocks.colorGreenBottomLeft *= f4;
- renderBlocks.colorBlueBottomLeft *= f4;
- renderBlocks.colorRedBottomRight *= f5;
- renderBlocks.colorGreenBottomRight *= f5;
- renderBlocks.colorBlueBottomRight *= f5;
- renderBlocks.colorRedTopRight *= f6;
- renderBlocks.colorGreenTopRight *= f6;
- renderBlocks.colorBlueTopRight *= f6;
- iicon = renderBlocks.getBlockIcon(p_147751_1_, renderBlocks.blockAccess, p_147751_2_, p_147751_3_, p_147751_4_, 5);
- renderFaceXPos(renderBlocks, p_147751_1_, (double)p_147751_2_, (double)p_147751_3_, (double)p_147751_4_, iicon);
- if (renderBlocks.fancyGrass && iicon.getIconName().equals("grass_side") && !renderBlocks.hasOverrideBlockTexture())
- {
- renderBlocks.colorRedTopLeft *= p_147751_5_;
- renderBlocks.colorRedBottomLeft *= p_147751_5_;
- renderBlocks.colorRedBottomRight *= p_147751_5_;
- renderBlocks.colorRedTopRight *= p_147751_5_;
- renderBlocks.colorGreenTopLeft *= p_147751_6_;
- renderBlocks.colorGreenBottomLeft *= p_147751_6_;
- renderBlocks.colorGreenBottomRight *= p_147751_6_;
- renderBlocks.colorGreenTopRight *= p_147751_6_;
- renderBlocks.colorBlueTopLeft *= p_147751_7_;
- renderBlocks.colorBlueBottomLeft *= p_147751_7_;
- renderBlocks.colorBlueBottomRight *= p_147751_7_;
- renderBlocks.colorBlueTopRight *= p_147751_7_;
- renderFaceXPos(renderBlocks, p_147751_1_, (double)p_147751_2_, (double)p_147751_3_, (double)p_147751_4_, BlockGrass.getIconSideOverlay());
- }
- flag = true;
- }
- renderBlocks.enableAO = false;
- return flag;
- }
- public static boolean renderStandardBlockWithAmbientOcclusionPartial(RenderBlocks renderBlocks, Block p_147808_1_, int p_147808_2_, int p_147808_3_, int p_147808_4_, float p_147808_5_, float p_147808_6_, float p_147808_7_)
- {
- renderBlocks.enableAO = true;
- boolean flag = false;
- float f3 = 0.0F;
- float f4 = 0.0F;
- float f5 = 0.0F;
- float f6 = 0.0F;
- boolean flag1 = true;
- int l = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_);
- Tessellator tessellator = Tessellator.instance;
- tessellator.setBrightness(983055);
- if (renderBlocks.getBlockIcon(p_147808_1_).getIconName().equals("grass_top"))
- {
- flag1 = false;
- }
- else if (renderBlocks.hasOverrideBlockTexture())
- {
- flag1 = false;
- }
- boolean flag2;
- boolean flag3;
- boolean flag4;
- boolean flag5;
- int i1;
- float f7;
- if (renderBlocks.renderAllFaces || p_147808_1_.shouldSideBeRendered(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ - 1, p_147808_4_, 0))
- {
- if (renderBlocks.renderMinY <= 0.0D)
- {
- --p_147808_3_;
- }
- renderBlocks.aoBrightnessXYNN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ - 1, p_147808_3_, p_147808_4_);
- renderBlocks.aoBrightnessYZNN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_ - 1);
- renderBlocks.aoBrightnessYZNP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_ + 1);
- renderBlocks.aoBrightnessXYPN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ + 1, p_147808_3_, p_147808_4_);
- renderBlocks.aoLightValueScratchXYNN = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchYZNN = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_, p_147808_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchYZNP = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_, p_147808_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXYPN = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_, p_147808_4_).getAmbientOcclusionLightValue();
- flag2 = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_ - 1, p_147808_4_).getCanBlockGrass();
- flag3 = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_ - 1, p_147808_4_).getCanBlockGrass();
- flag4 = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ - 1, p_147808_4_ + 1).getCanBlockGrass();
- flag5 = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ - 1, p_147808_4_ - 1).getCanBlockGrass();
- if (!flag5 && !flag3)
- {
- renderBlocks.aoLightValueScratchXYZNNN = renderBlocks.aoLightValueScratchXYNN;
- renderBlocks.aoBrightnessXYZNNN = renderBlocks.aoBrightnessXYNN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNNN = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_, p_147808_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNNN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ - 1, p_147808_3_, p_147808_4_ - 1);
- }
- if (!flag4 && !flag3)
- {
- renderBlocks.aoLightValueScratchXYZNNP = renderBlocks.aoLightValueScratchXYNN;
- renderBlocks.aoBrightnessXYZNNP = renderBlocks.aoBrightnessXYNN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNNP = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_, p_147808_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNNP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ - 1, p_147808_3_, p_147808_4_ + 1);
- }
- if (!flag5 && !flag2)
- {
- renderBlocks.aoLightValueScratchXYZPNN = renderBlocks.aoLightValueScratchXYPN;
- renderBlocks.aoBrightnessXYZPNN = renderBlocks.aoBrightnessXYPN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPNN = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_, p_147808_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPNN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ + 1, p_147808_3_, p_147808_4_ - 1);
- }
- if (!flag4 && !flag2)
- {
- renderBlocks.aoLightValueScratchXYZPNP = renderBlocks.aoLightValueScratchXYPN;
- renderBlocks.aoBrightnessXYZPNP = renderBlocks.aoBrightnessXYPN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPNP = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_, p_147808_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPNP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ + 1, p_147808_3_, p_147808_4_ + 1);
- }
- if (renderBlocks.renderMinY <= 0.0D)
- {
- ++p_147808_3_;
- }
- i1 = l;
- if (renderBlocks.renderMinY <= 0.0D || !renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ - 1, p_147808_4_).isOpaqueCube())
- {
- i1 = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ - 1, p_147808_4_);
- }
- f7 = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ - 1, p_147808_4_).getAmbientOcclusionLightValue();
- f3 = (renderBlocks.aoLightValueScratchXYZNNP + renderBlocks.aoLightValueScratchXYNN + renderBlocks.aoLightValueScratchYZNP + f7) / 4.0F;
- f6 = (renderBlocks.aoLightValueScratchYZNP + f7 + renderBlocks.aoLightValueScratchXYZPNP + renderBlocks.aoLightValueScratchXYPN) / 4.0F;
- f5 = (f7 + renderBlocks.aoLightValueScratchYZNN + renderBlocks.aoLightValueScratchXYPN + renderBlocks.aoLightValueScratchXYZPNN) / 4.0F;
- f4 = (renderBlocks.aoLightValueScratchXYNN + renderBlocks.aoLightValueScratchXYZNNN + f7 + renderBlocks.aoLightValueScratchYZNN) / 4.0F;
- renderBlocks.brightnessTopLeft = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYZNNP, renderBlocks.aoBrightnessXYNN, renderBlocks.aoBrightnessYZNP, i1);
- renderBlocks.brightnessTopRight = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessYZNP, renderBlocks.aoBrightnessXYZPNP, renderBlocks.aoBrightnessXYPN, i1);
- renderBlocks.brightnessBottomRight = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessYZNN, renderBlocks.aoBrightnessXYPN, renderBlocks.aoBrightnessXYZPNN, i1);
- renderBlocks.brightnessBottomLeft = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYNN, renderBlocks.aoBrightnessXYZNNN, renderBlocks.aoBrightnessYZNN, i1);
- if (flag1)
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = p_147808_5_ * 0.5F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = p_147808_6_ * 0.5F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = p_147808_7_ * 0.5F;
- }
- else
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = 0.5F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = 0.5F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = 0.5F;
- }
- renderBlocks.colorRedTopLeft *= f3;
- renderBlocks.colorGreenTopLeft *= f3;
- renderBlocks.colorBlueTopLeft *= f3;
- renderBlocks.colorRedBottomLeft *= f4;
- renderBlocks.colorGreenBottomLeft *= f4;
- renderBlocks.colorBlueBottomLeft *= f4;
- renderBlocks.colorRedBottomRight *= f5;
- renderBlocks.colorGreenBottomRight *= f5;
- renderBlocks.colorBlueBottomRight *= f5;
- renderBlocks.colorRedTopRight *= f6;
- renderBlocks.colorGreenTopRight *= f6;
- renderBlocks.colorBlueTopRight *= f6;
- renderBlocks.renderFaceYNeg(p_147808_1_, (double)p_147808_2_, (double)p_147808_3_, (double)p_147808_4_, renderBlocks.getBlockIcon(p_147808_1_, renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_, 0));
- flag = true;
- }
- if (renderBlocks.renderAllFaces || p_147808_1_.shouldSideBeRendered(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ + 1, p_147808_4_, 1))
- {
- if (renderBlocks.renderMaxY >= 1.0D)
- {
- ++p_147808_3_;
- }
- renderBlocks.aoBrightnessXYNP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ - 1, p_147808_3_, p_147808_4_);
- renderBlocks.aoBrightnessXYPP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ + 1, p_147808_3_, p_147808_4_);
- renderBlocks.aoBrightnessYZPN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_ - 1);
- renderBlocks.aoBrightnessYZPP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_ + 1);
- renderBlocks.aoLightValueScratchXYNP = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXYPP = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchYZPN = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_, p_147808_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchYZPP = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_, p_147808_4_ + 1).getAmbientOcclusionLightValue();
- flag2 = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_ + 1, p_147808_4_).getCanBlockGrass();
- flag3 = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_ + 1, p_147808_4_).getCanBlockGrass();
- flag4 = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ + 1, p_147808_4_ + 1).getCanBlockGrass();
- flag5 = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ + 1, p_147808_4_ - 1).getCanBlockGrass();
- if (!flag5 && !flag3)
- {
- renderBlocks.aoLightValueScratchXYZNPN = renderBlocks.aoLightValueScratchXYNP;
- renderBlocks.aoBrightnessXYZNPN = renderBlocks.aoBrightnessXYNP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNPN = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_, p_147808_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNPN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ - 1, p_147808_3_, p_147808_4_ - 1);
- }
- if (!flag5 && !flag2)
- {
- renderBlocks.aoLightValueScratchXYZPPN = renderBlocks.aoLightValueScratchXYPP;
- renderBlocks.aoBrightnessXYZPPN = renderBlocks.aoBrightnessXYPP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPPN = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_, p_147808_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPPN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ + 1, p_147808_3_, p_147808_4_ - 1);
- }
- if (!flag4 && !flag3)
- {
- renderBlocks.aoLightValueScratchXYZNPP = renderBlocks.aoLightValueScratchXYNP;
- renderBlocks.aoBrightnessXYZNPP = renderBlocks.aoBrightnessXYNP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNPP = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_, p_147808_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNPP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ - 1, p_147808_3_, p_147808_4_ + 1);
- }
- if (!flag4 && !flag2)
- {
- renderBlocks.aoLightValueScratchXYZPPP = renderBlocks.aoLightValueScratchXYPP;
- renderBlocks.aoBrightnessXYZPPP = renderBlocks.aoBrightnessXYPP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPPP = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_, p_147808_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPPP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ + 1, p_147808_3_, p_147808_4_ + 1);
- }
- if (renderBlocks.renderMaxY >= 1.0D)
- {
- --p_147808_3_;
- }
- i1 = l;
- if (renderBlocks.renderMaxY >= 1.0D || !renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ + 1, p_147808_4_).isOpaqueCube())
- {
- i1 = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ + 1, p_147808_4_);
- }
- f7 = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ + 1, p_147808_4_).getAmbientOcclusionLightValue();
- f6 = (renderBlocks.aoLightValueScratchXYZNPP + renderBlocks.aoLightValueScratchXYNP + renderBlocks.aoLightValueScratchYZPP + f7) / 4.0F;
- f3 = (renderBlocks.aoLightValueScratchYZPP + f7 + renderBlocks.aoLightValueScratchXYZPPP + renderBlocks.aoLightValueScratchXYPP) / 4.0F;
- f4 = (f7 + renderBlocks.aoLightValueScratchYZPN + renderBlocks.aoLightValueScratchXYPP + renderBlocks.aoLightValueScratchXYZPPN) / 4.0F;
- f5 = (renderBlocks.aoLightValueScratchXYNP + renderBlocks.aoLightValueScratchXYZNPN + f7 + renderBlocks.aoLightValueScratchYZPN) / 4.0F;
- renderBlocks.brightnessTopRight = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYZNPP, renderBlocks.aoBrightnessXYNP, renderBlocks.aoBrightnessYZPP, i1);
- renderBlocks.brightnessTopLeft = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessYZPP, renderBlocks.aoBrightnessXYZPPP, renderBlocks.aoBrightnessXYPP, i1);
- renderBlocks.brightnessBottomLeft = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessYZPN, renderBlocks.aoBrightnessXYPP, renderBlocks.aoBrightnessXYZPPN, i1);
- renderBlocks.brightnessBottomRight = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYNP, renderBlocks.aoBrightnessXYZNPN, renderBlocks.aoBrightnessYZPN, i1);
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = p_147808_5_;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = p_147808_6_;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = p_147808_7_;
- renderBlocks.colorRedTopLeft *= f3;
- renderBlocks.colorGreenTopLeft *= f3;
- renderBlocks.colorBlueTopLeft *= f3;
- renderBlocks.colorRedBottomLeft *= f4;
- renderBlocks.colorGreenBottomLeft *= f4;
- renderBlocks.colorBlueBottomLeft *= f4;
- renderBlocks.colorRedBottomRight *= f5;
- renderBlocks.colorGreenBottomRight *= f5;
- renderBlocks.colorBlueBottomRight *= f5;
- renderBlocks.colorRedTopRight *= f6;
- renderBlocks.colorGreenTopRight *= f6;
- renderBlocks.colorBlueTopRight *= f6;
- renderBlocks.renderFaceYPos(p_147808_1_, (double)p_147808_2_, (double)p_147808_3_, (double)p_147808_4_, renderBlocks.getBlockIcon(p_147808_1_, renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_, 1));
- flag = true;
- }
- float f8;
- float f9;
- float f10;
- float f11;
- int j1;
- int k1;
- int l1;
- int i2;
- IIcon iicon;
- if (renderBlocks.renderAllFaces || p_147808_1_.shouldSideBeRendered(renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_ - 1, 2))
- {
- if (renderBlocks.renderMinZ <= 0.0D)
- {
- --p_147808_4_;
- }
- renderBlocks.aoLightValueScratchXZNN = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchYZNN = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ - 1, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchYZPN = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ + 1, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXZPN = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXZNN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ - 1, p_147808_3_, p_147808_4_);
- renderBlocks.aoBrightnessYZNN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ - 1, p_147808_4_);
- renderBlocks.aoBrightnessYZPN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ + 1, p_147808_4_);
- renderBlocks.aoBrightnessXZPN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ + 1, p_147808_3_, p_147808_4_);
- flag2 = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_, p_147808_4_ - 1).getCanBlockGrass();
- flag3 = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_, p_147808_4_ - 1).getCanBlockGrass();
- flag4 = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ + 1, p_147808_4_ - 1).getCanBlockGrass();
- flag5 = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ - 1, p_147808_4_ - 1).getCanBlockGrass();
- if (!flag3 && !flag5)
- {
- renderBlocks.aoLightValueScratchXYZNNN = renderBlocks.aoLightValueScratchXZNN;
- renderBlocks.aoBrightnessXYZNNN = renderBlocks.aoBrightnessXZNN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNNN = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_ - 1, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNNN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ - 1, p_147808_3_ - 1, p_147808_4_);
- }
- if (!flag3 && !flag4)
- {
- renderBlocks.aoLightValueScratchXYZNPN = renderBlocks.aoLightValueScratchXZNN;
- renderBlocks.aoBrightnessXYZNPN = renderBlocks.aoBrightnessXZNN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNPN = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_ + 1, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNPN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ - 1, p_147808_3_ + 1, p_147808_4_);
- }
- if (!flag2 && !flag5)
- {
- renderBlocks.aoLightValueScratchXYZPNN = renderBlocks.aoLightValueScratchXZPN;
- renderBlocks.aoBrightnessXYZPNN = renderBlocks.aoBrightnessXZPN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPNN = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_ - 1, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPNN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ + 1, p_147808_3_ - 1, p_147808_4_);
- }
- if (!flag2 && !flag4)
- {
- renderBlocks.aoLightValueScratchXYZPPN = renderBlocks.aoLightValueScratchXZPN;
- renderBlocks.aoBrightnessXYZPPN = renderBlocks.aoBrightnessXZPN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPPN = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_ + 1, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPPN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ + 1, p_147808_3_ + 1, p_147808_4_);
- }
- if (renderBlocks.renderMinZ <= 0.0D)
- {
- ++p_147808_4_;
- }
- i1 = l;
- if (renderBlocks.renderMinZ <= 0.0D || !renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_, p_147808_4_ - 1).isOpaqueCube())
- {
- i1 = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_ - 1);
- }
- f7 = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_, p_147808_4_ - 1).getAmbientOcclusionLightValue();
- f8 = (renderBlocks.aoLightValueScratchXZNN + renderBlocks.aoLightValueScratchXYZNPN + f7 + renderBlocks.aoLightValueScratchYZPN) / 4.0F;
- f9 = (f7 + renderBlocks.aoLightValueScratchYZPN + renderBlocks.aoLightValueScratchXZPN + renderBlocks.aoLightValueScratchXYZPPN) / 4.0F;
- f10 = (renderBlocks.aoLightValueScratchYZNN + f7 + renderBlocks.aoLightValueScratchXYZPNN + renderBlocks.aoLightValueScratchXZPN) / 4.0F;
- f11 = (renderBlocks.aoLightValueScratchXYZNNN + renderBlocks.aoLightValueScratchXZNN + renderBlocks.aoLightValueScratchYZNN + f7) / 4.0F;
- f3 = (float)((double)f8 * renderBlocks.renderMaxY * (1.0D - renderBlocks.renderMinX) + (double)f9 * renderBlocks.renderMaxY * renderBlocks.renderMinX + (double)f10 * (1.0D - renderBlocks.renderMaxY) * renderBlocks.renderMinX + (double)f11 * (1.0D - renderBlocks.renderMaxY) * (1.0D - renderBlocks.renderMinX));
- f4 = (float)((double)f8 * renderBlocks.renderMaxY * (1.0D - renderBlocks.renderMaxX) + (double)f9 * renderBlocks.renderMaxY * renderBlocks.renderMaxX + (double)f10 * (1.0D - renderBlocks.renderMaxY) * renderBlocks.renderMaxX + (double)f11 * (1.0D - renderBlocks.renderMaxY) * (1.0D - renderBlocks.renderMaxX));
- f5 = (float)((double)f8 * renderBlocks.renderMinY * (1.0D - renderBlocks.renderMaxX) + (double)f9 * renderBlocks.renderMinY * renderBlocks.renderMaxX + (double)f10 * (1.0D - renderBlocks.renderMinY) * renderBlocks.renderMaxX + (double)f11 * (1.0D - renderBlocks.renderMinY) * (1.0D - renderBlocks.renderMaxX));
- f6 = (float)((double)f8 * renderBlocks.renderMinY * (1.0D - renderBlocks.renderMinX) + (double)f9 * renderBlocks.renderMinY * renderBlocks.renderMinX + (double)f10 * (1.0D - renderBlocks.renderMinY) * renderBlocks.renderMinX + (double)f11 * (1.0D - renderBlocks.renderMinY) * (1.0D - renderBlocks.renderMinX));
- j1 = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXZNN, renderBlocks.aoBrightnessXYZNPN, renderBlocks.aoBrightnessYZPN, i1);
- k1 = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessYZPN, renderBlocks.aoBrightnessXZPN, renderBlocks.aoBrightnessXYZPPN, i1);
- l1 = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessYZNN, renderBlocks.aoBrightnessXYZPNN, renderBlocks.aoBrightnessXZPN, i1);
- i2 = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYZNNN, renderBlocks.aoBrightnessXZNN, renderBlocks.aoBrightnessYZNN, i1);
- renderBlocks.brightnessTopLeft = renderBlocks.mixAoBrightness(j1, k1, l1, i2, renderBlocks.renderMaxY * (1.0D - renderBlocks.renderMinX), renderBlocks.renderMaxY * renderBlocks.renderMinX, (1.0D - renderBlocks.renderMaxY) * renderBlocks.renderMinX, (1.0D - renderBlocks.renderMaxY) * (1.0D - renderBlocks.renderMinX));
- renderBlocks.brightnessBottomLeft = renderBlocks.mixAoBrightness(j1, k1, l1, i2, renderBlocks.renderMaxY * (1.0D - renderBlocks.renderMaxX), renderBlocks.renderMaxY * renderBlocks.renderMaxX, (1.0D - renderBlocks.renderMaxY) * renderBlocks.renderMaxX, (1.0D - renderBlocks.renderMaxY) * (1.0D - renderBlocks.renderMaxX));
- renderBlocks.brightnessBottomRight = renderBlocks.mixAoBrightness(j1, k1, l1, i2, renderBlocks.renderMinY * (1.0D - renderBlocks.renderMaxX), renderBlocks.renderMinY * renderBlocks.renderMaxX, (1.0D - renderBlocks.renderMinY) * renderBlocks.renderMaxX, (1.0D - renderBlocks.renderMinY) * (1.0D - renderBlocks.renderMaxX));
- renderBlocks.brightnessTopRight = renderBlocks.mixAoBrightness(j1, k1, l1, i2, renderBlocks.renderMinY * (1.0D - renderBlocks.renderMinX), renderBlocks.renderMinY * renderBlocks.renderMinX, (1.0D - renderBlocks.renderMinY) * renderBlocks.renderMinX, (1.0D - renderBlocks.renderMinY) * (1.0D - renderBlocks.renderMinX));
- if (flag1)
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = p_147808_5_ * 0.8F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = p_147808_6_ * 0.8F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = p_147808_7_ * 0.8F;
- }
- else
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = 0.8F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = 0.8F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = 0.8F;
- }
- renderBlocks.colorRedTopLeft *= f3;
- renderBlocks.colorGreenTopLeft *= f3;
- renderBlocks.colorBlueTopLeft *= f3;
- renderBlocks.colorRedBottomLeft *= f4;
- renderBlocks.colorGreenBottomLeft *= f4;
- renderBlocks.colorBlueBottomLeft *= f4;
- renderBlocks.colorRedBottomRight *= f5;
- renderBlocks.colorGreenBottomRight *= f5;
- renderBlocks.colorBlueBottomRight *= f5;
- renderBlocks.colorRedTopRight *= f6;
- renderBlocks.colorGreenTopRight *= f6;
- renderBlocks.colorBlueTopRight *= f6;
- iicon = renderBlocks.getBlockIcon(p_147808_1_, renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_, 2);
- renderFaceZNeg(renderBlocks, p_147808_1_, (double)p_147808_2_, (double)p_147808_3_, (double)p_147808_4_, iicon);
- if (renderBlocks.fancyGrass && iicon.getIconName().equals("grass_side") && !renderBlocks.hasOverrideBlockTexture())
- {
- renderBlocks.colorRedTopLeft *= p_147808_5_;
- renderBlocks.colorRedBottomLeft *= p_147808_5_;
- renderBlocks.colorRedBottomRight *= p_147808_5_;
- renderBlocks.colorRedTopRight *= p_147808_5_;
- renderBlocks.colorGreenTopLeft *= p_147808_6_;
- renderBlocks.colorGreenBottomLeft *= p_147808_6_;
- renderBlocks.colorGreenBottomRight *= p_147808_6_;
- renderBlocks.colorGreenTopRight *= p_147808_6_;
- renderBlocks.colorBlueTopLeft *= p_147808_7_;
- renderBlocks.colorBlueBottomLeft *= p_147808_7_;
- renderBlocks.colorBlueBottomRight *= p_147808_7_;
- renderBlocks.colorBlueTopRight *= p_147808_7_;
- renderFaceZNeg(renderBlocks, p_147808_1_, (double)p_147808_2_, (double)p_147808_3_, (double)p_147808_4_, BlockGrass.getIconSideOverlay());
- }
- flag = true;
- }
- if (renderBlocks.renderAllFaces || p_147808_1_.shouldSideBeRendered(renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_ + 1, 3))
- {
- if (renderBlocks.renderMaxZ >= 1.0D)
- {
- ++p_147808_4_;
- }
- renderBlocks.aoLightValueScratchXZNP = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXZPP = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchYZNP = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ - 1, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchYZPP = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ + 1, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXZNP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ - 1, p_147808_3_, p_147808_4_);
- renderBlocks.aoBrightnessXZPP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ + 1, p_147808_3_, p_147808_4_);
- renderBlocks.aoBrightnessYZNP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ - 1, p_147808_4_);
- renderBlocks.aoBrightnessYZPP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ + 1, p_147808_4_);
- flag2 = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_, p_147808_4_ + 1).getCanBlockGrass();
- flag3 = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_, p_147808_4_ + 1).getCanBlockGrass();
- flag4 = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ + 1, p_147808_4_ + 1).getCanBlockGrass();
- flag5 = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ - 1, p_147808_4_ + 1).getCanBlockGrass();
- if (!flag3 && !flag5)
- {
- renderBlocks.aoLightValueScratchXYZNNP = renderBlocks.aoLightValueScratchXZNP;
- renderBlocks.aoBrightnessXYZNNP = renderBlocks.aoBrightnessXZNP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNNP = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_ - 1, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNNP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ - 1, p_147808_3_ - 1, p_147808_4_);
- }
- if (!flag3 && !flag4)
- {
- renderBlocks.aoLightValueScratchXYZNPP = renderBlocks.aoLightValueScratchXZNP;
- renderBlocks.aoBrightnessXYZNPP = renderBlocks.aoBrightnessXZNP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNPP = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_ + 1, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNPP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ - 1, p_147808_3_ + 1, p_147808_4_);
- }
- if (!flag2 && !flag5)
- {
- renderBlocks.aoLightValueScratchXYZPNP = renderBlocks.aoLightValueScratchXZPP;
- renderBlocks.aoBrightnessXYZPNP = renderBlocks.aoBrightnessXZPP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPNP = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_ - 1, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPNP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ + 1, p_147808_3_ - 1, p_147808_4_);
- }
- if (!flag2 && !flag4)
- {
- renderBlocks.aoLightValueScratchXYZPPP = renderBlocks.aoLightValueScratchXZPP;
- renderBlocks.aoBrightnessXYZPPP = renderBlocks.aoBrightnessXZPP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPPP = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_ + 1, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPPP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ + 1, p_147808_3_ + 1, p_147808_4_);
- }
- if (renderBlocks.renderMaxZ >= 1.0D)
- {
- --p_147808_4_;
- }
- i1 = l;
- if (renderBlocks.renderMaxZ >= 1.0D || !renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_, p_147808_4_ + 1).isOpaqueCube())
- {
- i1 = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_ + 1);
- }
- f7 = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_, p_147808_4_ + 1).getAmbientOcclusionLightValue();
- f8 = (renderBlocks.aoLightValueScratchXZNP + renderBlocks.aoLightValueScratchXYZNPP + f7 + renderBlocks.aoLightValueScratchYZPP) / 4.0F;
- f9 = (f7 + renderBlocks.aoLightValueScratchYZPP + renderBlocks.aoLightValueScratchXZPP + renderBlocks.aoLightValueScratchXYZPPP) / 4.0F;
- f10 = (renderBlocks.aoLightValueScratchYZNP + f7 + renderBlocks.aoLightValueScratchXYZPNP + renderBlocks.aoLightValueScratchXZPP) / 4.0F;
- f11 = (renderBlocks.aoLightValueScratchXYZNNP + renderBlocks.aoLightValueScratchXZNP + renderBlocks.aoLightValueScratchYZNP + f7) / 4.0F;
- f3 = (float)((double)f8 * renderBlocks.renderMaxY * (1.0D - renderBlocks.renderMinX) + (double)f9 * renderBlocks.renderMaxY * renderBlocks.renderMinX + (double)f10 * (1.0D - renderBlocks.renderMaxY) * renderBlocks.renderMinX + (double)f11 * (1.0D - renderBlocks.renderMaxY) * (1.0D - renderBlocks.renderMinX));
- f4 = (float)((double)f8 * renderBlocks.renderMinY * (1.0D - renderBlocks.renderMinX) + (double)f9 * renderBlocks.renderMinY * renderBlocks.renderMinX + (double)f10 * (1.0D - renderBlocks.renderMinY) * renderBlocks.renderMinX + (double)f11 * (1.0D - renderBlocks.renderMinY) * (1.0D - renderBlocks.renderMinX));
- f5 = (float)((double)f8 * renderBlocks.renderMinY * (1.0D - renderBlocks.renderMaxX) + (double)f9 * renderBlocks.renderMinY * renderBlocks.renderMaxX + (double)f10 * (1.0D - renderBlocks.renderMinY) * renderBlocks.renderMaxX + (double)f11 * (1.0D - renderBlocks.renderMinY) * (1.0D - renderBlocks.renderMaxX));
- f6 = (float)((double)f8 * renderBlocks.renderMaxY * (1.0D - renderBlocks.renderMaxX) + (double)f9 * renderBlocks.renderMaxY * renderBlocks.renderMaxX + (double)f10 * (1.0D - renderBlocks.renderMaxY) * renderBlocks.renderMaxX + (double)f11 * (1.0D - renderBlocks.renderMaxY) * (1.0D - renderBlocks.renderMaxX));
- j1 = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXZNP, renderBlocks.aoBrightnessXYZNPP, renderBlocks.aoBrightnessYZPP, i1);
- k1 = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessYZPP, renderBlocks.aoBrightnessXZPP, renderBlocks.aoBrightnessXYZPPP, i1);
- l1 = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessYZNP, renderBlocks.aoBrightnessXYZPNP, renderBlocks.aoBrightnessXZPP, i1);
- i2 = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYZNNP, renderBlocks.aoBrightnessXZNP, renderBlocks.aoBrightnessYZNP, i1);
- renderBlocks.brightnessTopLeft = renderBlocks.mixAoBrightness(j1, i2, l1, k1, renderBlocks.renderMaxY * (1.0D - renderBlocks.renderMinX), (1.0D - renderBlocks.renderMaxY) * (1.0D - renderBlocks.renderMinX), (1.0D - renderBlocks.renderMaxY) * renderBlocks.renderMinX, renderBlocks.renderMaxY * renderBlocks.renderMinX);
- renderBlocks.brightnessBottomLeft = renderBlocks.mixAoBrightness(j1, i2, l1, k1, renderBlocks.renderMinY * (1.0D - renderBlocks.renderMinX), (1.0D - renderBlocks.renderMinY) * (1.0D - renderBlocks.renderMinX), (1.0D - renderBlocks.renderMinY) * renderBlocks.renderMinX, renderBlocks.renderMinY * renderBlocks.renderMinX);
- renderBlocks.brightnessBottomRight = renderBlocks.mixAoBrightness(j1, i2, l1, k1, renderBlocks.renderMinY * (1.0D - renderBlocks.renderMaxX), (1.0D - renderBlocks.renderMinY) * (1.0D - renderBlocks.renderMaxX), (1.0D - renderBlocks.renderMinY) * renderBlocks.renderMaxX, renderBlocks.renderMinY * renderBlocks.renderMaxX);
- renderBlocks.brightnessTopRight = renderBlocks.mixAoBrightness(j1, i2, l1, k1, renderBlocks.renderMaxY * (1.0D - renderBlocks.renderMaxX), (1.0D - renderBlocks.renderMaxY) * (1.0D - renderBlocks.renderMaxX), (1.0D - renderBlocks.renderMaxY) * renderBlocks.renderMaxX, renderBlocks.renderMaxY * renderBlocks.renderMaxX);
- if (flag1)
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = p_147808_5_ * 0.8F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = p_147808_6_ * 0.8F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = p_147808_7_ * 0.8F;
- }
- else
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = 0.8F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = 0.8F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = 0.8F;
- }
- renderBlocks.colorRedTopLeft *= f3;
- renderBlocks.colorGreenTopLeft *= f3;
- renderBlocks.colorBlueTopLeft *= f3;
- renderBlocks.colorRedBottomLeft *= f4;
- renderBlocks.colorGreenBottomLeft *= f4;
- renderBlocks.colorBlueBottomLeft *= f4;
- renderBlocks.colorRedBottomRight *= f5;
- renderBlocks.colorGreenBottomRight *= f5;
- renderBlocks.colorBlueBottomRight *= f5;
- renderBlocks.colorRedTopRight *= f6;
- renderBlocks.colorGreenTopRight *= f6;
- renderBlocks.colorBlueTopRight *= f6;
- iicon = renderBlocks.getBlockIcon(p_147808_1_, renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_, 3);
- renderBlocks.renderFaceZPos(p_147808_1_, (double)p_147808_2_, (double)p_147808_3_, (double)p_147808_4_, iicon);
- if (renderBlocks.fancyGrass && iicon.getIconName().equals("grass_side") && !renderBlocks.hasOverrideBlockTexture())
- {
- renderBlocks.colorRedTopLeft *= p_147808_5_;
- renderBlocks.colorRedBottomLeft *= p_147808_5_;
- renderBlocks.colorRedBottomRight *= p_147808_5_;
- renderBlocks.colorRedTopRight *= p_147808_5_;
- renderBlocks.colorGreenTopLeft *= p_147808_6_;
- renderBlocks.colorGreenBottomLeft *= p_147808_6_;
- renderBlocks.colorGreenBottomRight *= p_147808_6_;
- renderBlocks.colorGreenTopRight *= p_147808_6_;
- renderBlocks.colorBlueTopLeft *= p_147808_7_;
- renderBlocks.colorBlueBottomLeft *= p_147808_7_;
- renderBlocks.colorBlueBottomRight *= p_147808_7_;
- renderBlocks.colorBlueTopRight *= p_147808_7_;
- renderBlocks.renderFaceZPos(p_147808_1_, (double)p_147808_2_, (double)p_147808_3_, (double)p_147808_4_, BlockGrass.getIconSideOverlay());
- }
- flag = true;
- }
- if (renderBlocks.renderAllFaces || p_147808_1_.shouldSideBeRendered(renderBlocks.blockAccess, p_147808_2_ - 1, p_147808_3_, p_147808_4_, 4))
- {
- if (renderBlocks.renderMinX <= 0.0D)
- {
- --p_147808_2_;
- }
- renderBlocks.aoLightValueScratchXYNN = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ - 1, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXZNN = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_, p_147808_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXZNP = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_, p_147808_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXYNP = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ + 1, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYNN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ - 1, p_147808_4_);
- renderBlocks.aoBrightnessXZNN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_ - 1);
- renderBlocks.aoBrightnessXZNP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_ + 1);
- renderBlocks.aoBrightnessXYNP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ + 1, p_147808_4_);
- flag2 = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_ + 1, p_147808_4_).getCanBlockGrass();
- flag3 = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_ - 1, p_147808_4_).getCanBlockGrass();
- flag4 = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_, p_147808_4_ - 1).getCanBlockGrass();
- flag5 = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_, p_147808_4_ + 1).getCanBlockGrass();
- if (!flag4 && !flag3)
- {
- renderBlocks.aoLightValueScratchXYZNNN = renderBlocks.aoLightValueScratchXZNN;
- renderBlocks.aoBrightnessXYZNNN = renderBlocks.aoBrightnessXZNN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNNN = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ - 1, p_147808_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNNN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ - 1, p_147808_4_ - 1);
- }
- if (!flag5 && !flag3)
- {
- renderBlocks.aoLightValueScratchXYZNNP = renderBlocks.aoLightValueScratchXZNP;
- renderBlocks.aoBrightnessXYZNNP = renderBlocks.aoBrightnessXZNP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNNP = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ - 1, p_147808_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNNP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ - 1, p_147808_4_ + 1);
- }
- if (!flag4 && !flag2)
- {
- renderBlocks.aoLightValueScratchXYZNPN = renderBlocks.aoLightValueScratchXZNN;
- renderBlocks.aoBrightnessXYZNPN = renderBlocks.aoBrightnessXZNN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNPN = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ + 1, p_147808_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNPN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ + 1, p_147808_4_ - 1);
- }
- if (!flag5 && !flag2)
- {
- renderBlocks.aoLightValueScratchXYZNPP = renderBlocks.aoLightValueScratchXZNP;
- renderBlocks.aoBrightnessXYZNPP = renderBlocks.aoBrightnessXZNP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZNPP = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ + 1, p_147808_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZNPP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ + 1, p_147808_4_ + 1);
- }
- if (renderBlocks.renderMinX <= 0.0D)
- {
- ++p_147808_2_;
- }
- i1 = l;
- if (renderBlocks.renderMinX <= 0.0D || !renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_, p_147808_4_).isOpaqueCube())
- {
- i1 = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ - 1, p_147808_3_, p_147808_4_);
- }
- f7 = renderBlocks.blockAccess.getBlock(p_147808_2_ - 1, p_147808_3_, p_147808_4_).getAmbientOcclusionLightValue();
- f8 = (renderBlocks.aoLightValueScratchXYNN + renderBlocks.aoLightValueScratchXYZNNP + f7 + renderBlocks.aoLightValueScratchXZNP) / 4.0F;
- f9 = (f7 + renderBlocks.aoLightValueScratchXZNP + renderBlocks.aoLightValueScratchXYNP + renderBlocks.aoLightValueScratchXYZNPP) / 4.0F;
- f10 = (renderBlocks.aoLightValueScratchXZNN + f7 + renderBlocks.aoLightValueScratchXYZNPN + renderBlocks.aoLightValueScratchXYNP) / 4.0F;
- f11 = (renderBlocks.aoLightValueScratchXYZNNN + renderBlocks.aoLightValueScratchXYNN + renderBlocks.aoLightValueScratchXZNN + f7) / 4.0F;
- f3 = (float)((double)f9 * renderBlocks.renderMaxY * renderBlocks.renderMaxZ + (double)f10 * renderBlocks.renderMaxY * (1.0D - renderBlocks.renderMaxZ) + (double)f11 * (1.0D - renderBlocks.renderMaxY) * (1.0D - renderBlocks.renderMaxZ) + (double)f8 * (1.0D - renderBlocks.renderMaxY) * renderBlocks.renderMaxZ);
- f4 = (float)((double)f9 * renderBlocks.renderMaxY * renderBlocks.renderMinZ + (double)f10 * renderBlocks.renderMaxY * (1.0D - renderBlocks.renderMinZ) + (double)f11 * (1.0D - renderBlocks.renderMaxY) * (1.0D - renderBlocks.renderMinZ) + (double)f8 * (1.0D - renderBlocks.renderMaxY) * renderBlocks.renderMinZ);
- f5 = (float)((double)f9 * renderBlocks.renderMinY * renderBlocks.renderMinZ + (double)f10 * renderBlocks.renderMinY * (1.0D - renderBlocks.renderMinZ) + (double)f11 * (1.0D - renderBlocks.renderMinY) * (1.0D - renderBlocks.renderMinZ) + (double)f8 * (1.0D - renderBlocks.renderMinY) * renderBlocks.renderMinZ);
- f6 = (float)((double)f9 * renderBlocks.renderMinY * renderBlocks.renderMaxZ + (double)f10 * renderBlocks.renderMinY * (1.0D - renderBlocks.renderMaxZ) + (double)f11 * (1.0D - renderBlocks.renderMinY) * (1.0D - renderBlocks.renderMaxZ) + (double)f8 * (1.0D - renderBlocks.renderMinY) * renderBlocks.renderMaxZ);
- j1 = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYNN, renderBlocks.aoBrightnessXYZNNP, renderBlocks.aoBrightnessXZNP, i1);
- k1 = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXZNP, renderBlocks.aoBrightnessXYNP, renderBlocks.aoBrightnessXYZNPP, i1);
- l1 = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXZNN, renderBlocks.aoBrightnessXYZNPN, renderBlocks.aoBrightnessXYNP, i1);
- i2 = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYZNNN, renderBlocks.aoBrightnessXYNN, renderBlocks.aoBrightnessXZNN, i1);
- renderBlocks.brightnessTopLeft = renderBlocks.mixAoBrightness(k1, l1, i2, j1, renderBlocks.renderMaxY * renderBlocks.renderMaxZ, renderBlocks.renderMaxY * (1.0D - renderBlocks.renderMaxZ), (1.0D - renderBlocks.renderMaxY) * (1.0D - renderBlocks.renderMaxZ), (1.0D - renderBlocks.renderMaxY) * renderBlocks.renderMaxZ);
- renderBlocks.brightnessBottomLeft = renderBlocks.mixAoBrightness(k1, l1, i2, j1, renderBlocks.renderMaxY * renderBlocks.renderMinZ, renderBlocks.renderMaxY * (1.0D - renderBlocks.renderMinZ), (1.0D - renderBlocks.renderMaxY) * (1.0D - renderBlocks.renderMinZ), (1.0D - renderBlocks.renderMaxY) * renderBlocks.renderMinZ);
- renderBlocks.brightnessBottomRight = renderBlocks.mixAoBrightness(k1, l1, i2, j1, renderBlocks.renderMinY * renderBlocks.renderMinZ, renderBlocks.renderMinY * (1.0D - renderBlocks.renderMinZ), (1.0D - renderBlocks.renderMinY) * (1.0D - renderBlocks.renderMinZ), (1.0D - renderBlocks.renderMinY) * renderBlocks.renderMinZ);
- renderBlocks.brightnessTopRight = renderBlocks.mixAoBrightness(k1, l1, i2, j1, renderBlocks.renderMinY * renderBlocks.renderMaxZ, renderBlocks.renderMinY * (1.0D - renderBlocks.renderMaxZ), (1.0D - renderBlocks.renderMinY) * (1.0D - renderBlocks.renderMaxZ), (1.0D - renderBlocks.renderMinY) * renderBlocks.renderMaxZ);
- if (flag1)
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = p_147808_5_ * 0.6F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = p_147808_6_ * 0.6F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = p_147808_7_ * 0.6F;
- }
- else
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = 0.6F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = 0.6F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = 0.6F;
- }
- renderBlocks.colorRedTopLeft *= f3;
- renderBlocks.colorGreenTopLeft *= f3;
- renderBlocks.colorBlueTopLeft *= f3;
- renderBlocks.colorRedBottomLeft *= f4;
- renderBlocks.colorGreenBottomLeft *= f4;
- renderBlocks.colorBlueBottomLeft *= f4;
- renderBlocks.colorRedBottomRight *= f5;
- renderBlocks.colorGreenBottomRight *= f5;
- renderBlocks.colorBlueBottomRight *= f5;
- renderBlocks.colorRedTopRight *= f6;
- renderBlocks.colorGreenTopRight *= f6;
- renderBlocks.colorBlueTopRight *= f6;
- iicon = renderBlocks.getBlockIcon(p_147808_1_, renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_, 4);
- renderBlocks.renderFaceXNeg(p_147808_1_, (double)p_147808_2_, (double)p_147808_3_, (double)p_147808_4_, iicon);
- if (renderBlocks.fancyGrass && iicon.getIconName().equals("grass_side") && !renderBlocks.hasOverrideBlockTexture())
- {
- renderBlocks.colorRedTopLeft *= p_147808_5_;
- renderBlocks.colorRedBottomLeft *= p_147808_5_;
- renderBlocks.colorRedBottomRight *= p_147808_5_;
- renderBlocks.colorRedTopRight *= p_147808_5_;
- renderBlocks.colorGreenTopLeft *= p_147808_6_;
- renderBlocks.colorGreenBottomLeft *= p_147808_6_;
- renderBlocks.colorGreenBottomRight *= p_147808_6_;
- renderBlocks.colorGreenTopRight *= p_147808_6_;
- renderBlocks.colorBlueTopLeft *= p_147808_7_;
- renderBlocks.colorBlueBottomLeft *= p_147808_7_;
- renderBlocks.colorBlueBottomRight *= p_147808_7_;
- renderBlocks.colorBlueTopRight *= p_147808_7_;
- renderBlocks.renderFaceXNeg(p_147808_1_, (double)p_147808_2_, (double)p_147808_3_, (double)p_147808_4_, BlockGrass.getIconSideOverlay());
- }
- flag = true;
- }
- if (renderBlocks.renderAllFaces || p_147808_1_.shouldSideBeRendered(renderBlocks.blockAccess, p_147808_2_ + 1, p_147808_3_, p_147808_4_, 5))
- {
- if (renderBlocks.renderMaxX >= 1.0D)
- {
- ++p_147808_2_;
- }
- renderBlocks.aoLightValueScratchXYPN = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ - 1, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXZPN = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_, p_147808_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXZPP = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_, p_147808_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoLightValueScratchXYPP = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ + 1, p_147808_4_).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYPN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ - 1, p_147808_4_);
- renderBlocks.aoBrightnessXZPN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_ - 1);
- renderBlocks.aoBrightnessXZPP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_ + 1);
- renderBlocks.aoBrightnessXYPP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ + 1, p_147808_4_);
- flag2 = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_ + 1, p_147808_4_).getCanBlockGrass();
- flag3 = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_ - 1, p_147808_4_).getCanBlockGrass();
- flag4 = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_, p_147808_4_ + 1).getCanBlockGrass();
- flag5 = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_, p_147808_4_ - 1).getCanBlockGrass();
- if (!flag3 && !flag5)
- {
- renderBlocks.aoLightValueScratchXYZPNN = renderBlocks.aoLightValueScratchXZPN;
- renderBlocks.aoBrightnessXYZPNN = renderBlocks.aoBrightnessXZPN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPNN = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ - 1, p_147808_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPNN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ - 1, p_147808_4_ - 1);
- }
- if (!flag3 && !flag4)
- {
- renderBlocks.aoLightValueScratchXYZPNP = renderBlocks.aoLightValueScratchXZPP;
- renderBlocks.aoBrightnessXYZPNP = renderBlocks.aoBrightnessXZPP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPNP = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ - 1, p_147808_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPNP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ - 1, p_147808_4_ + 1);
- }
- if (!flag2 && !flag5)
- {
- renderBlocks.aoLightValueScratchXYZPPN = renderBlocks.aoLightValueScratchXZPN;
- renderBlocks.aoBrightnessXYZPPN = renderBlocks.aoBrightnessXZPN;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPPN = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ + 1, p_147808_4_ - 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPPN = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ + 1, p_147808_4_ - 1);
- }
- if (!flag2 && !flag4)
- {
- renderBlocks.aoLightValueScratchXYZPPP = renderBlocks.aoLightValueScratchXZPP;
- renderBlocks.aoBrightnessXYZPPP = renderBlocks.aoBrightnessXZPP;
- }
- else
- {
- renderBlocks.aoLightValueScratchXYZPPP = renderBlocks.blockAccess.getBlock(p_147808_2_, p_147808_3_ + 1, p_147808_4_ + 1).getAmbientOcclusionLightValue();
- renderBlocks.aoBrightnessXYZPPP = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_, p_147808_3_ + 1, p_147808_4_ + 1);
- }
- if (renderBlocks.renderMaxX >= 1.0D)
- {
- --p_147808_2_;
- }
- i1 = l;
- if (renderBlocks.renderMaxX >= 1.0D || !renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_, p_147808_4_).isOpaqueCube())
- {
- i1 = p_147808_1_.getMixedBrightnessForBlock(renderBlocks.blockAccess, p_147808_2_ + 1, p_147808_3_, p_147808_4_);
- }
- f7 = renderBlocks.blockAccess.getBlock(p_147808_2_ + 1, p_147808_3_, p_147808_4_).getAmbientOcclusionLightValue();
- f8 = (renderBlocks.aoLightValueScratchXYPN + renderBlocks.aoLightValueScratchXYZPNP + f7 + renderBlocks.aoLightValueScratchXZPP) / 4.0F;
- f9 = (renderBlocks.aoLightValueScratchXYZPNN + renderBlocks.aoLightValueScratchXYPN + renderBlocks.aoLightValueScratchXZPN + f7) / 4.0F;
- f10 = (renderBlocks.aoLightValueScratchXZPN + f7 + renderBlocks.aoLightValueScratchXYZPPN + renderBlocks.aoLightValueScratchXYPP) / 4.0F;
- f11 = (f7 + renderBlocks.aoLightValueScratchXZPP + renderBlocks.aoLightValueScratchXYPP + renderBlocks.aoLightValueScratchXYZPPP) / 4.0F;
- f3 = (float)((double)f8 * (1.0D - renderBlocks.renderMinY) * renderBlocks.renderMaxZ + (double)f9 * (1.0D - renderBlocks.renderMinY) * (1.0D - renderBlocks.renderMaxZ) + (double)f10 * renderBlocks.renderMinY * (1.0D - renderBlocks.renderMaxZ) + (double)f11 * renderBlocks.renderMinY * renderBlocks.renderMaxZ);
- f4 = (float)((double)f8 * (1.0D - renderBlocks.renderMinY) * renderBlocks.renderMinZ + (double)f9 * (1.0D - renderBlocks.renderMinY) * (1.0D - renderBlocks.renderMinZ) + (double)f10 * renderBlocks.renderMinY * (1.0D - renderBlocks.renderMinZ) + (double)f11 * renderBlocks.renderMinY * renderBlocks.renderMinZ);
- f5 = (float)((double)f8 * (1.0D - renderBlocks.renderMaxY) * renderBlocks.renderMinZ + (double)f9 * (1.0D - renderBlocks.renderMaxY) * (1.0D - renderBlocks.renderMinZ) + (double)f10 * renderBlocks.renderMaxY * (1.0D - renderBlocks.renderMinZ) + (double)f11 * renderBlocks.renderMaxY * renderBlocks.renderMinZ);
- f6 = (float)((double)f8 * (1.0D - renderBlocks.renderMaxY) * renderBlocks.renderMaxZ + (double)f9 * (1.0D - renderBlocks.renderMaxY) * (1.0D - renderBlocks.renderMaxZ) + (double)f10 * renderBlocks.renderMaxY * (1.0D - renderBlocks.renderMaxZ) + (double)f11 * renderBlocks.renderMaxY * renderBlocks.renderMaxZ);
- j1 = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYPN, renderBlocks.aoBrightnessXYZPNP, renderBlocks.aoBrightnessXZPP, i1);
- k1 = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXZPP, renderBlocks.aoBrightnessXYPP, renderBlocks.aoBrightnessXYZPPP, i1);
- l1 = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXZPN, renderBlocks.aoBrightnessXYZPPN, renderBlocks.aoBrightnessXYPP, i1);
- i2 = renderBlocks.getAoBrightness(renderBlocks.aoBrightnessXYZPNN, renderBlocks.aoBrightnessXYPN, renderBlocks.aoBrightnessXZPN, i1);
- renderBlocks.brightnessTopLeft = renderBlocks.mixAoBrightness(j1, i2, l1, k1, (1.0D - renderBlocks.renderMinY) * renderBlocks.renderMaxZ, (1.0D - renderBlocks.renderMinY) * (1.0D - renderBlocks.renderMaxZ), renderBlocks.renderMinY * (1.0D - renderBlocks.renderMaxZ), renderBlocks.renderMinY * renderBlocks.renderMaxZ);
- renderBlocks.brightnessBottomLeft = renderBlocks.mixAoBrightness(j1, i2, l1, k1, (1.0D - renderBlocks.renderMinY) * renderBlocks.renderMinZ, (1.0D - renderBlocks.renderMinY) * (1.0D - renderBlocks.renderMinZ), renderBlocks.renderMinY * (1.0D - renderBlocks.renderMinZ), renderBlocks.renderMinY * renderBlocks.renderMinZ);
- renderBlocks.brightnessBottomRight = renderBlocks.mixAoBrightness(j1, i2, l1, k1, (1.0D - renderBlocks.renderMaxY) * renderBlocks.renderMinZ, (1.0D - renderBlocks.renderMaxY) * (1.0D - renderBlocks.renderMinZ), renderBlocks.renderMaxY * (1.0D - renderBlocks.renderMinZ), renderBlocks.renderMaxY * renderBlocks.renderMinZ);
- renderBlocks.brightnessTopRight = renderBlocks.mixAoBrightness(j1, i2, l1, k1, (1.0D - renderBlocks.renderMaxY) * renderBlocks.renderMaxZ, (1.0D - renderBlocks.renderMaxY) * (1.0D - renderBlocks.renderMaxZ), renderBlocks.renderMaxY * (1.0D - renderBlocks.renderMaxZ), renderBlocks.renderMaxY * renderBlocks.renderMaxZ);
- if (flag1)
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = p_147808_5_ * 0.6F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = p_147808_6_ * 0.6F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = p_147808_7_ * 0.6F;
- }
- else
- {
- renderBlocks.colorRedTopLeft = renderBlocks.colorRedBottomLeft = renderBlocks.colorRedBottomRight = renderBlocks.colorRedTopRight = 0.6F;
- renderBlocks.colorGreenTopLeft = renderBlocks.colorGreenBottomLeft = renderBlocks.colorGreenBottomRight = renderBlocks.colorGreenTopRight = 0.6F;
- renderBlocks.colorBlueTopLeft = renderBlocks.colorBlueBottomLeft = renderBlocks.colorBlueBottomRight = renderBlocks.colorBlueTopRight = 0.6F;
- }
- renderBlocks.colorRedTopLeft *= f3;
- renderBlocks.colorGreenTopLeft *= f3;
- renderBlocks.colorBlueTopLeft *= f3;
- renderBlocks.colorRedBottomLeft *= f4;
- renderBlocks.colorGreenBottomLeft *= f4;
- renderBlocks.colorBlueBottomLeft *= f4;
- renderBlocks.colorRedBottomRight *= f5;
- renderBlocks.colorGreenBottomRight *= f5;
- renderBlocks.colorBlueBottomRight *= f5;
- renderBlocks.colorRedTopRight *= f6;
- renderBlocks.colorGreenTopRight *= f6;
- renderBlocks.colorBlueTopRight *= f6;
- iicon = renderBlocks.getBlockIcon(p_147808_1_, renderBlocks.blockAccess, p_147808_2_, p_147808_3_, p_147808_4_, 5);
- renderFaceXPos(renderBlocks, p_147808_1_, (double)p_147808_2_, (double)p_147808_3_, (double)p_147808_4_, iicon);
- if (renderBlocks.fancyGrass && iicon.getIconName().equals("grass_side") && !renderBlocks.hasOverrideBlockTexture())
- {
- renderBlocks.colorRedTopLeft *= p_147808_5_;
- renderBlocks.colorRedBottomLeft *= p_147808_5_;
- renderBlocks.colorRedBottomRight *= p_147808_5_;
- renderBlocks.colorRedTopRight *= p_147808_5_;
- renderBlocks.colorGreenTopLeft *= p_147808_6_;
- renderBlocks.colorGreenBottomLeft *= p_147808_6_;
- renderBlocks.colorGreenBottomRight *= p_147808_6_;
- renderBlocks.colorGreenTopRight *= p_147808_6_;
- renderBlocks.colorBlueTopLeft *= p_147808_7_;
- renderBlocks.colorBlueBottomLeft *= p_147808_7_;
- renderBlocks.colorBlueBottomRight *= p_147808_7_;
- renderBlocks.colorBlueTopRight *= p_147808_7_;
- renderFaceXPos(renderBlocks, p_147808_1_, (double)p_147808_2_, (double)p_147808_3_, (double)p_147808_4_, BlockGrass.getIconSideOverlay());
- }
- flag = true;
- }
- renderBlocks.enableAO = false;
- return flag;
- }
- public static void renderFaceZNeg(RenderBlocks renderBlocks, Block block, double x, double y, double z, IIcon icon)
- {
- renderBlocks.flipTexture = true;
- renderBlocks.renderFaceZNeg(block, x, y, z, icon);
- renderBlocks.flipTexture = false;
- }
- public static void renderFaceXPos(RenderBlocks renderBlocks, Block p_147764_1_, double p_147764_2_, double p_147764_4_, double p_147764_6_, IIcon p_147764_8_)
- {
- renderBlocks.flipTexture = true;
- renderBlocks.renderFaceXPos(p_147764_1_, p_147764_2_, p_147764_4_, p_147764_6_, p_147764_8_);
- renderBlocks.flipTexture = false;
- }
Advertisement
Add Comment
Please, Sign In to add comment