package com.jaquadro.minecraft.gardenstuff.renderer; import com.jaquadro.minecraft.gardencore.client.renderer.support.ModularBoxRenderer; import com.jaquadro.minecraft.gardenstuff.block.BlockHoop; import com.jaquadro.minecraft.gardenstuff.core.ClientProxy; import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.world.IBlockAccess; import org.lwjgl.opengl.GL11; public class HoopRenderer implements ISimpleBlockRenderingHandler { private ModularBoxRenderer boxrender = new ModularBoxRenderer(); @Override public void renderInventoryBlock (Block block, int metadata, int modelId, RenderBlocks renderer) { if (!(block instanceof BlockHoop)) return; renderInventoryBlock((BlockHoop) block, metadata, modelId, renderer); } private void renderInventoryBlock (BlockHoop block, int metadata, int modelId, RenderBlocks renderer) { GL11.glRotatef(90, 0, 1, 0); GL11.glTranslatef(-.5f, -.5f, -.5f); boxrender.setUnit(0.0625f); boxrender.setIcon(block.getIcon(0, 0)); boxrender.setColor(ModularBoxRenderer.COLOR_WHITE); boxrender.renderBox(null, block, 0, 0, 0, 0, .0625f, 0, 1, .375f, 1, 0, ModularBoxRenderer.CUT_YNEG | ModularBoxRenderer.CUT_YPOS); GL11.glTranslatef(.5f, .5f, .5f); } @Override public boolean renderWorldBlock (IBlockAccess world, int x, int y, int z, Block block, int modelId, RenderBlocks renderer) { if (!(block instanceof BlockHoop)) return false; return renderWorldBlock(world, x, y, z, (BlockHoop) block, modelId, renderer); } private boolean renderWorldBlock (IBlockAccess world, int x, int y, int z, BlockHoop block, int modelId, RenderBlocks renderer) { boxrender.setUnit(0.0625f); boxrender.setIcon(block.getIcon(0, 0)); boxrender.setColor(ModularBoxRenderer.COLOR_WHITE); boxrender.renderBox(world, block, x, y, z, 0, .0625f, 0, 1, .375f, 1, 0, ModularBoxRenderer.CUT_YNEG | ModularBoxRenderer.CUT_YPOS); return true; } @Override public boolean shouldRender3DInInventory (int modelId) { return true; } @Override public int getRenderId () { return ClientProxy.hoopRenderID; } }