Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Register item model


Meldexun
 Share

Recommended Posts

I heard that I shouldn't use @SideOnly. So that was my way to register the item models:

	@SideOnly(Side.CLIENT)
	@SubscribeEvent
	public static void registerRenders(ModelRegistryEvent event) {
		registerRender(item1, 0);
		//...
	}
	
	private static void registerRenderMeta(Item item, int meta) {
		ModelLoader.setCustomModelResourceLocation(item, meta, new ModelResourceLocation(item.getRegistryName(), "inventory"));
	}

I changed it and now I have this:

	@SubscribeEvent
	public static void registerRenders(ModelRegistryEvent event) {
		BetterDiving.proxy.registerItemRender(item1, 0);
	}

And in my client proxy the registerItemRender looks like this:

	@Override
	public void registerItemRender(Item item, int meta) {
		ModelLoader.setCustomModelResourceLocation(item, meta, new ModelResourceLocation(item.getRegistryName(), "inventory"));
	}

In my server proxy this method does nothing.

So am I registering the models the correct way now?

Link to comment
Share on other sites

When using @EventBusSubscriber (as I assume you are doing, since you have not shown a EventBus#register call) you need to specify the side in the annotation (@EventBusSubscriber(Side.CLIENT)). If you are using EventBus#register you need to register from your client proxy.

There is no need to further encapsulate the call to ModelLoader through your client proxy, since your event handler class is now client-only and thus can access client-only classes.

 

Note also that ModelRegistryEvent itself is a client-only class, so your current encapsulation does nothing, since your event handler will be loaded on the server and thus try to load ModelRegistryEvent - and fail.

Edited by diesieben07
Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



×
×
  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.