package com.jaquadro.minecraft.gardentrees.client.renderer; import com.jaquadro.minecraft.gardentrees.block.BlockFlowerLeaves; import com.jaquadro.minecraft.gardentrees.core.ClientProxy; import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.client.renderer.Tessellator; import net.minecraft.util.IIcon; import net.minecraft.world.IBlockAccess; public class FlowerLeafRenderer implements ISimpleBlockRenderingHandler { @Override public void renderInventoryBlock (Block block, int metadata, int modelId, RenderBlocks renderer) { } @Override public boolean renderWorldBlock (IBlockAccess world, int x, int y, int z, Block block, int modelId, RenderBlocks renderer) { if (!(block instanceof BlockFlowerLeaves)) return false; return renderWorldBlock(world, x, y, z, (BlockFlowerLeaves) block, modelId, renderer); } private boolean renderWorldBlock (IBlockAccess world, int x, int y, int z, BlockFlowerLeaves block, int modelId, RenderBlocks renderer) { renderer.renderStandardBlock(block, x, y, z); Tessellator tessellator = Tessellator.instance; tessellator.setBrightness(block.getMixedBrightnessForBlock(world, x, y, z)); tessellator.setColorOpaque_F(1f, 1f, 1f); int meta = world.getBlockMetadata(x, y, z); float offset = .03125f; IIcon icon = block.getFlowerIcon(world, x, y, z, meta, 1); if (icon != null) renderer.renderFaceYPos(block, x, y + offset, z, icon); icon = block.getFlowerIcon(world, x, y, z, meta, 2); if (icon != null) renderer.renderFaceZNeg(block, x, y, z - offset, icon); icon = block.getFlowerIcon(world, x, y, z, meta, 3); if (icon != null) renderer.renderFaceZPos(block, x, y, z + offset, icon); icon = block.getFlowerIcon(world, x, y, z, meta, 4); if (icon != null) renderer.renderFaceXNeg(block, x - offset, y, z, icon); icon = block.getFlowerIcon(world, x, y, z, meta, 5); if (icon != null) renderer.renderFaceXPos(block, x + offset, y, z, icon); return true; } @Override public boolean shouldRender3DInInventory (int modelId) { return true; } @Override public int getRenderId () { return ClientProxy.flowerLeafRenderID; } }