package net.wildbill22.draco.proxies;

import net.minecraft.client.model.ModelBiped;
import net.minecraft.item.Item;
import net.minecraftforge.client.MinecraftForgeClient;
import net.wildbill22.draco.blocks.ModBlocks;
import net.wildbill22.draco.entities.EntitySpear;
import net.wildbill22.draco.entities.dragons.EntityCreeperDragon;
import net.wildbill22.draco.entities.dragons.EntitySilverDragon;
import net.wildbill22.draco.entities.hostile.EntityGuard;
import net.wildbill22.draco.items.ModItems;
import net.wildbill22.draco.models.ModelCreeperDragon;
import net.wildbill22.draco.models.ModelSilverDragon;
import net.wildbill22.draco.render.RenderCreeperDragon;
import net.wildbill22.draco.render.RenderGuard;
import net.wildbill22.draco.render.RenderSilverDragon;
import net.wildbill22.draco.render.RenderSpear;
import net.wildbill22.draco.render.TemporaryHoardRenderer;
import net.wildbill22.draco.render.item.ItemRendererTemporaryHoard;
import net.wildbill22.draco.tile_entity.TileEntityTemporaryHoard;
import cpw.mods.fml.client.registry.ClientRegistry;
import cpw.mods.fml.client.registry.RenderingRegistry;

/** 
 * @author WILLIAM
 *
 */
public class ClientProxy extends CommonProxy
{
	@Override
	public void registerRenderer(){
		//Entities, the 0.5F is the shadow size
		RenderingRegistry.registerEntityRenderingHandler(EntityCreeperDragon.class, 
				new RenderCreeperDragon(new ModelCreeperDragon(), 0.5F));
		RenderingRegistry.registerEntityRenderingHandler(EntitySilverDragon.class, 
				new RenderSilverDragon(new ModelSilverDragon(), 0.5F));
		RenderingRegistry.registerEntityRenderingHandler(EntityGuard.class,	new RenderGuard(new ModelBiped(), 0.5F));
		
		// Throwable entities
		RenderingRegistry.registerEntityRenderingHandler(EntitySpear.class, new RenderSpear(ModItems.spear));

		// Special one for hoard
		ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTemporaryHoard.class, new TemporaryHoardRenderer());
		MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(ModBlocks.temporaryHoard), 
				new ItemRendererTemporaryHoard());
	}
	
	@Override
	public void registerTileEntitySpecialRenderer(){		
	}
	
	@Override
	public void registerSounds() {}
}

@@ -78,16 +78,125 @@
 lBiped;%0A
+import net.minecraft.client.renderer.entity.RenderArrow;%0Aimport net.minecraft.entity.projectile.EntityArrow;%0A
 import n
@@ -219,16 +219,16 @@
 m.Item;%0A
-
 import n
@@ -603,16 +603,70 @@
 dItems;%0A
+import net.wildbill22.draco.items.weapons.ModWeapons;%0A
 import n
@@ -758,32 +758,129 @@
 elSilverDragon;%0A
+import net.wildbill22.draco.render.BowRender;%0Aimport net.wildbill22.draco.render.CrossbowRender;%0A
 import net.wildb
@@ -1066,24 +1066,76 @@
 enderSpear;%0A
+import net.wildbill22.draco.render.SpearItemRender;%0A
 import net.w
@@ -2108,16 +2108,106 @@
 spear));
+%0A%09%09RenderingRegistry.registerEntityRenderingHandler(EntityArrow.class, new RenderArrow());
 %0A%0A%09%09// S
@@ -2431,16 +2431,16 @@
 oard), %0A
-
 %09%09%09%09new 
@@ -2469,16 +2469,281 @@
 oard());
+%0A%0A%09%09//Items%0A%09%09MinecraftForgeClient.registerItemRenderer(ModWeapons.longBow, new BowRender());%0A%09%09MinecraftForgeClient.registerItemRenderer(ModWeapons.crossbow, new CrossbowRender());%0A%09%09MinecraftForgeClient.registerItemRenderer(ModItems.spear, new SpearItemRender());
 %0A%09%7D%0A%09%0A%09@

Fix proxies