package darkknight.jewelrycraft.proxy; import org.apache.logging.log4j.Level; import cpw.mods.fml.client.registry.ClientRegistry; import cpw.mods.fml.client.registry.RenderingRegistry; import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.common.registry.VillagerRegistry; import darkknight.jewelrycraft.JewelrycraftMod; import darkknight.jewelrycraft.block.BlockList; import darkknight.jewelrycraft.block.render.BlockCrystalRenderer; import darkknight.jewelrycraft.client.InventoryTabVanilla; import darkknight.jewelrycraft.client.TabCurses; import darkknight.jewelrycraft.client.TabJewelry; import darkknight.jewelrycraft.client.TabRegistry; import darkknight.jewelrycraft.entities.EntityHalfHeart; import darkknight.jewelrycraft.entities.EntityHeart; import darkknight.jewelrycraft.entities.renders.HeartRender; import darkknight.jewelrycraft.events.KeyBindings; import darkknight.jewelrycraft.events.PlayerRenderHandler; import darkknight.jewelrycraft.events.ScreenHandler; import darkknight.jewelrycraft.events.TextureEvent; import darkknight.jewelrycraft.item.ItemList; import darkknight.jewelrycraft.item.render.ItemRender; import darkknight.jewelrycraft.model.*; import darkknight.jewelrycraft.tileentity.*; import darkknight.jewelrycraft.tileentity.renders.*; import darkknight.jewelrycraft.util.JewelrycraftUtil; import darkknight.jewelrycraft.util.Variables; import net.minecraft.client.Minecraft; import net.minecraft.item.Item; import net.minecraftforge.client.MinecraftForgeClient; import net.minecraftforge.common.MinecraftForge; public class ClientProxy extends CommonProxy { public enum BlockRenderIDs { CRYSTAL; private final int ID; BlockRenderIDs() { ID = RenderingRegistry.getNextAvailableRenderId(); } public int id() { return ID; } } @Override public void preInit() { TileEntityHandPedestalRender pedestalRender = new TileEntityHandPedestalRender( new ModelHandPedestal(Variables.PEDESTAL_TEXTURE), Variables.PEDESTAL_TEXTURE); TileEntityShadowHandRender shadowHandRender = new TileEntityShadowHandRender( new ModelShadowHand(Variables.SHADOW_HAND_TEXTURE), Variables.SHADOW_HAND_TEXTURE); JewelrycraftMod.logger.log(Level.INFO, "Binding Tileentities to their Special Rendered"); ClientRegistry.bindTileEntitySpecialRenderer(TileEntitySmelter.class, new TileEntitySmelterRender()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMolder.class, new TileEntityMolderRender()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityJewelrsCraftingTable.class, new TileEntityJewelrsCraftingTableRender()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityDisplayer.class, new TileEntityDisplayerRender()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityShadowEye.class, new TileEntityShadowEyeRender()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMidasTouch.class, new TileEntityMidasTouchRender()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityHandPedestal.class, pedestalRender); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityShadowHand.class, shadowHandRender); JewelrycraftMod.logger.log(Level.INFO, "Registering Item Renderes"); MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(BlockList.displayer), new ItemRender(new TileEntityDisplayerRender(), new TileEntityDisplayer(), new ModelDisplayer())); MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(BlockList.jewelCraftingTable), new ItemRender(new TileEntityJewelrsCraftingTableRender(), new TileEntityJewelrsCraftingTable(), new ModelJewlersCraftingBench())); MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(BlockList.smelter), new ItemRender(new TileEntitySmelterRender(), new TileEntitySmelter(), new ModelSmelter())); MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(BlockList.molder), new ItemRender(new TileEntityMolderRender(), new TileEntityMolder(), new ModelMolder())); MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(BlockList.shadowEye), new ItemRender(new TileEntityShadowEyeRender(), new TileEntityShadowEye(), new ModelShadowEye())); MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(BlockList.handPedestal), new ItemRender( pedestalRender, new TileEntityHandPedestal(), new ModelHandPedestal(Variables.PEDESTAL_TEXTURE))); MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(BlockList.shadowHand), new ItemRender( shadowHandRender, new TileEntityShadowHand(), new ModelShadowHand(Variables.SHADOW_HAND_TEXTURE))); MinecraftForgeClient.registerItemRenderer(ItemList.goldObj, new ItemRender()); VillagerRegistry.instance().registerVillagerSkin(3000, Variables.VILLAGER_TEXTURE); JewelrycraftMod.logger.log(Level.INFO, "Registering Entity Renders"); RenderingRegistry.registerEntityRenderingHandler(EntityHeart.class, new HeartRender(new ModelHeart(), 0.25F)); RenderingRegistry.registerEntityRenderingHandler(EntityHalfHeart.class, new HeartRender(new ModelHalfHeart(), 0.25F)); RenderingRegistry.registerBlockHandler(new BlockCrystalRenderer()); TabRegistry.registerTab(new InventoryTabVanilla()); TabRegistry.registerTab(new TabJewelry()); TabRegistry.registerTab(new TabCurses()); MinecraftForge.EVENT_BUS.register(new TabRegistry()); MinecraftForge.EVENT_BUS.register(new PlayerRenderHandler()); MinecraftForge.EVENT_BUS.register(new ScreenHandler(Minecraft.getMinecraft())); } @Override public void init() { FMLCommonHandler.instance().bus().register(new KeyBindings()); MinecraftForge.EVENT_BUS.register(new TextureEvent()); } @Override public void postInit() { JewelrycraftMod.logger.log(Level.INFO, "Generating colors for each item"); JewelrycraftUtil.generateColors(); } }