OK - Here is what I have so far:
Block:
Constructor:
public Block(String domain, String name) {
super(Material.iron);
this.name = name;
this.domain = domain;
this.preferredName = name;
this.setUnlocalizedName(Reference.MOD_ID + "_" + this.name);
this.setCreativeTab(CreativeTabs.tabMisc);
}
Register:
for(Block block : blocks) {
GameRegistry.registerBlock(block, block.name);
}
Render:
RenderItem renderItem = Minecraft.getMinecraft().getRenderItem();
for(Block block : blocks) {
ModelResourceLocation model = new ModelResourceLocation(block.domain + ":" + block.name, "inventory");
renderItem.getItemModelMesher().register(net.minecraft.item.Item.getItemFromBlock(block), 0, model);
}
JSON:
public static String jsonMakerBlockItem(String domain, String assetName) {
return "{ \"parent\": \"" + domain + ":" + "block/" + assetName + "\",\"display\": {\"thirdperson\": {\"rotation\": [ 10, -45, 170 ],\"translation\": [ 0, 1.5, -2.75 ],\"scale\": [ 0.375, 0.375, 0.375 ]}}}";
}
public static String jsonMakerBlock(String domain, String assetName) {
return "{\"parent\": \"block/cube\",\"textures\": {\"down\": \"" + domain + ":blocks/" + assetName + "\",\"up\": \"" + domain + ":blocks/" + assetName + "\",\"north\": \"" + domain + ":blocks/" + assetName + "\",\"south\": \"" + domain + ":blocks/" + assetName + "\",\"west\": \"" + domain + ":blocks/" + assetName + "\",\"east\": \"" + domain + ":blocks/" + assetName + "\",\"particle\": \"" + domain + ":blocks/" + assetName + "\"}}";
}
public static String jsonMakerBlockstates(String domain, String assetName) {
return "{\"variants\": { \"normal\": { \"model\": \""+ domain + ":" + assetName + "\" } } }";
}
Image:
In mods/assets/domain/textures/blocks/blockName.png
Items:
Constructor:
public Item (String domain, String name) {
super();
this.name = name;
this.domain = domain;
this.preferredName = name;
this.setUnlocalizedName(Reference.MOD_ID + "_" + this.name);
this.setCreativeTab(CreativeTabs.tabMisc);
}
Register:
for(Item item : items) {
GameRegistry.registerItem(item, item.name);
}
Render
RenderItem renderItem = Minecraft.getMinecraft().getRenderItem();
for(Item item : items) {
ModelResourceLocation model = new ModelResourceLocation(item.domain + ":" + item.name, "inventory");
renderItem.getItemModelMesher().register(item, 0, model);
}
JSON:
public static String jsonMakerItem(String domain, String assetName) {
return "{ \"parent\": \"builtin/generated\", \"textures\": { \"layer0\": \"" + domain + ":items/" + assetName + "\"}, \"display\": {\"thirdperson\": {\"rotation\": [ -90, 0, 0 ],\"translation\": [ 0, 1, -3 ],\"scale\": [ 0.55, 0.55, 0.55 ]}, \"firstperson\": {\"rotation\": [ 0, -135, 25 ],\"translation\": [ 0, 4, 2 ],\"scale\": [ 1.7, 1.7, 1.7 ]}}}";
}
Image:
In mods/assets/domain/textures/items/itemName.png
So I think I set everything correctly?
When the Block/Item is registered, it uses MODID, but when I make the model /JSON I use myDomain. - Am I missing something?
PS - You rock! Thanks for the help!!