package com.insane.illuminatedbows.client; import org.lwjgl.input.Keyboard; import thaumcraft.client.fx.ParticleEngine; import thaumcraft.client.fx.particles.FXWisp; import net.minecraft.item.ItemStack; import net.minecraft.world.World; import net.minecraftforge.client.IItemRenderer; import net.minecraftforge.client.IItemRenderer.ItemRenderType; import net.minecraftforge.client.MinecraftForgeClient; import com.insane.illuminatedbows.CommonProxy; import com.insane.illuminatedbows.EntityIlluminatedArrow; import com.insane.illuminatedbows.IlluminatedBows; import com.insane.illuminatedbows.addons.thaumcraft.TCAddon; import com.insane.illuminatedbows.client.particles.ColourNitorFX; import cpw.mods.fml.client.registry.RenderingRegistry; import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.registry.GameRegistry; public class ClientProxy extends CommonProxy { public void registerRenderers() { RenderingRegistry.registerEntityRenderingHandler(EntityIlluminatedArrow.class, new RenderIlluminatedArrow()); if (Loader.isModLoaded("Thaumcraft")) { ItemStack stack = GameRegistry.findItemStack("Thaumcraft", "WandCasting", 1); IItemRenderer wandRenderer = MinecraftForgeClient.getItemRenderer(stack, ItemRenderType.EQUIPPED_FIRST_PERSON); RenderWandHandler render = new RenderWandHandler(wandRenderer); MinecraftForgeClient.registerItemRenderer(stack.getItem(), render); FMLCommonHandler.instance().bus().register(render); } IlluminatedBows.renderIdIllumination = RenderingRegistry.getNextAvailableRenderId(); RenderingRegistry.registerBlockHandler(new RenderIllumination()); } public void colourNitorEffects(World world, double x, double y, double z, double x2, double y2, double z2, float size, int type, boolean shrink, float gravity, int colour) { if (Loader.isModLoaded("Thaumcraft")) { TCAddon.doParticles(world, x, y, z, x2, y2, z2, size, type, shrink, gravity, colour); } } public void inventoryRightClick(ItemStack stack, World world) { if (Keyboard.isKeyDown(Keyboard.KEY_LSHIFT)|| Keyboard.isKeyDown(Keyboard.KEY_RSHIFT) && !world.isRemote) { stack.setItemDamage((stack.getItemDamage()+1)%2); } } }