Eastonium Posted April 15, 2014 Posted April 15, 2014 I'm trying to make a basic clone of the snowball item/entity and I have copied the files directly, fixed any transfer-errors, Registered the Entity, registered the item that is used as the projectile, Registered the rendered in my Client proxy and everything. I am using preInit, and I have no idea what the problem is. In clientproxy: RenderingRegistry.registerEntityRenderingHandler(EntitySnowballClone.class, new RenderSnowball(ModBase.flyingItem)); In main mod file: @SidedProxy(clientSide = "com.eastonium.bionicle.ClientProxyBionicle", serverSide = "com.eastonium.bionicle.CommonProxyBionicle") public static CommonProxyBionicle proxy; @EventHandler public void preInit(FMLPreInitializationEvent event) { flyingItem = new ItemNormal().setUnlocalizedName("ItemFlying"); GameRegistry.registerItem(itemFllying, "itemFlying"); EntityRegistry.registerModEntity(EntitySnowballClone.class, "Snowball_Clone", EntityRegistry.findGlobalUniqueEntityId(), this, 64, 10, true); snowballClone = new ItemSnowballClone("Teleportation").setUnlocalizedName("SnowballClone"); GameRegistry.registerItem(snowballClone, "snowballClone"); proxy.registerRenderThings(); } Please help! Quote
darty11 Posted April 15, 2014 Posted April 15, 2014 EntityRegistry.registerModEntity(EntitySnowballClone.class, "Snowball_Clone", EntityRegistry.findGlobalUniqueEntityId(), this, 64, 10, true); EntityRegistry.findGlobalUniqueEntityId() You can't use this unless you are also registering your entity globally. (which you should NOT do ever) It won't cause any problems now, but if you add a second entity it will, so change it to 0(your next entity will be 1), or make a int that you add 1 too every time you register an entity. Also, is the RenderSnowball class your own class or the default one? If it is your own can we see the code? One last thing: flyingItem = new ItemNormal().setUnlocalizedName("ItemFlying"); GameRegistry.registerItem(itemFllying, "itemFlying"); Quote
Eastonium Posted April 15, 2014 Author Posted April 15, 2014 So for the global entity ID, i just put 0, and for any others just add one? Also, the flyingItem thing is just a typo when i was changing the name to put on here. they're the same thing and that item works fine and it's icon shows too. just not when it gets launched. Quote
darty11 Posted April 15, 2014 Posted April 15, 2014 Yes, your first mob will be 0, your second 1, your third 2 etc. So you know that your snowball is being spawned? Also, can I see your entire com.eastonium.bionicle.ClientProxyBionicle? Quote
Eastonium Posted April 16, 2014 Author Posted April 16, 2014 I don't know for SURE if it's being spawned, but I checked to see if the spawning code was being ran, and it is. Here's my Client proxy file: package com.eastonium.bionicle; import net.minecraft.client.renderer.entity.RenderSnowball; import cpw.mods.fml.client.registry.RenderingRegistry; public class ClientProxyBionicle extends CommonProxyBionicle { @Override public void registerRenderThings() { RenderingRegistry.registerEntityRenderingHandler(EntitySnowballClone.class, new RenderSnowball(ModBase.itemFlying)); } } Quote
darty11 Posted April 16, 2014 Posted April 16, 2014 Can I see your spawning code, and your Snowballclone class? From everything I have seen you are doing everything right, so there has to be a problem somewhere else. Also, make sure all your imports are importing the right version of whatever, it might seem unlikely but its happened before. Also, the counsel logs would be nice too, even if it doesn't look like anything is being done. Quote
Eastonium Posted April 16, 2014 Author Posted April 16, 2014 I figured it out. for some reason I was missing the entityPlayer variable for the line that spawns the snowball clone. It didn't give me an error because there's a method that doesn't use the entityPlayer. Thanks for your help, the Entity ID thing I wouldnt've spotted. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.