Jump to content

[SOLVED] [1.10.2] Best way for tons of items / blocks?


Recommended Posts



What is the best way to create "tons" of same items / blocks with different names/colors?



Ingots, Dusts, Plates and so on have always the same texture, but another color - Currently ~ 23 different ingots, and in my project 23 different json files and 23 different textures. The same for dust, 23 different dusts > 23 json's > 23 dust textures.


Is this the way i "should" do it?


I tried something with 1 texture for each base (ingot, dust, plate) and pass the color in constructor for the different classes. The problems were:

1. To use only one json i need the same name for all ingots!?

2. How i can apply the color, i saved in the item class, to the texture?


I dont think this is the right way, i read something about "Blockstates" for Blocks and MetaData(Damage) for Items, but with the blockstates for blocks i need all textures, too, or not?

I tried something and reduces my 10 blockstate.json, 10 block.json, 10 itemblock.json and 10 block.png to 1 blockstate.json, 10 block.json, 10 itemblock.json, 10 block.png. A small reduce of files.. i think i did it wrong!

And for the items, i need the same amount of json files and textures as before.


I hope someone can comprehend my problem.


The writing of the json files and textures is not the problem (wrote a util class which do it automatically for me), but the amount of files is in my mind not the best way.


Thanks :)



Link to comment
Share on other sites

I'd recommend creating an enum to describe the possible metal types, storing the metadata, name and colour of each one (as well as any other required properties).


Create a single


for each metal form (ingot, dust, plate, etc.), using the metadata to store the metal type.


Create a singe


per 16 metal types and metal form (ore, block, etc.), using a


to store the metal type. Look at




to see how vanilla does something similar (one enum across multiple




Map each






) to a single model with the appropriate texture, then register an




implementation for each one that uses the colour from the metal type enum.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Link to comment
Share on other sites

Do you have an example for the color thingy?

I don't have any examples of this specific case, but I do have some examples of




implementation and registration here. This class gets called in init.


I already do this with enums and metadata for my ores and ingots usw. but didnt know about the method for using one model.


For the block models, use


to create an


implementation that ignores the


and maps to a single blockstates file and variant and register it with




For the item models, create an


that ignores the metadata and maps to a single


and register it with



Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

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.

Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
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.


  • Create New...

Important Information

By using this site, you agree to our Terms of Use.