001/* 002 * Forge Mod Loader 003 * Copyright (c) 2012-2013 cpw. 004 * All rights reserved. This program and the accompanying materials 005 * are made available under the terms of the GNU Lesser Public License v2.1 006 * which accompanies this distribution, and is available at 007 * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html 008 * 009 * Contributors: 010 * cpw - implementation 011 */ 012 013package cpw.mods.fml.client.modloader; 014 015import net.minecraft.block.Block; 016import net.minecraft.client.renderer.RenderBlocks; 017import net.minecraft.src.BaseMod; 018import net.minecraft.world.IBlockAccess; 019import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; 020 021/** 022 * @author cpw 023 * 024 */ 025public class ModLoaderBlockRendererHandler implements ISimpleBlockRenderingHandler 026{ 027 private int renderId; 028 private boolean render3dInInventory; 029 private BaseMod mod; 030 031 /** 032 * @param mod 033 * 034 */ 035 public ModLoaderBlockRendererHandler(int renderId, boolean render3dInInventory, BaseMod mod) 036 { 037 this.renderId=renderId; 038 this.render3dInInventory=render3dInInventory; 039 this.mod=mod; 040 } 041 042 @Override 043 public int getRenderId() 044 { 045 return renderId; 046 } 047 048 @Override 049 public boolean shouldRender3DInInventory() 050 { 051 return render3dInInventory; 052 } 053 054 /** 055 * @param world 056 * @param x 057 * @param y 058 * @param z 059 * @param block 060 * @param modelId 061 * @param renderer 062 */ 063 @Override 064 public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, Block block, int modelId, RenderBlocks renderer) 065 { 066 return mod.renderWorldBlock(renderer, world, x, y, z, block, modelId); 067 } 068 069 /** 070 * @param block 071 * @param metadata 072 * @param modelID 073 * @param renderer 074 */ 075 @Override 076 public void renderInventoryBlock(Block block, int metadata, int modelID, RenderBlocks renderer) 077 { 078 mod.renderInvBlock(renderer, block, metadata, modelID); 079 } 080 081}