Posted December 31, 20204 yr Hi guys, Sorry for asking help here. I've been trying to figure out what was wrong in my code for 5 hours now and I still get the same issue. So, when the block [opal_ore] is place in-game, the texture is there, the JSONs are created with the DataGenerator. The item from the block [opal_ore] in the inventory, however, doesn't get any textures. When I introduce this in my class IFItemModelProvider: withExistingParent("opal_ore", modLoc("block/opal_ore")); I get the error: [14:41:36] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:660]: Caused by: java.lang.IllegalStateException: Model at icefeeling:block/block/opal_ore does not exist Once I remove it, the client launches normally but the textures won't appear on the item block. Below is my package explorer. All the files are spelled correctly. It must be stupid and I hope it is but I can't find the problem. Even when I change the withExistingParent, I still get the errors. Here's the code: package dmz.faction.icefeeling.data.client; import dmz.faction.icefeeling.mod.Main; import net.minecraft.data.DataGenerator; import net.minecraftforge.client.model.generators.ItemModelBuilder; import net.minecraftforge.client.model.generators.ItemModelProvider; import net.minecraftforge.client.model.generators.ModelFile; import net.minecraftforge.common.data.ExistingFileHelper; public class IFItemsModelProvider extends ItemModelProvider { public IFItemsModelProvider(DataGenerator generator, ExistingFileHelper existingFileHelper) { super(generator, Main.MOD_ID, existingFileHelper); } @Override protected void registerModels() { ModelFile itemGenerated = getExistingFile(mcLoc("item/generated")); //withExistingParent(IFBlocks.OPAL_ORE.get().getRegistryName().getPath(), new ResourceLocation(Main.MOD_ID, "block/opal_ore")); withExistingParent("opal_ore", modLoc("block/block/opal_ore")); /*withExistingParent("jade_ore", modLoc("block/jade_ore")); withExistingParent("mythril_ore", modLoc("block/mythril_ore")); withExistingParent("titanite_ore", modLoc("block/titanite_ore"));*/ builder(itemGenerated, "jade"); } private ItemModelBuilder builder(ModelFile itemGenerated, String name) { return getBuilder(name).parent(itemGenerated).texture("layer0", "item/" + name); } } JSON created in the blockstates folder: { "variants": { "": { "model": "icefeeling:block/opal_ore" } } } JSON created in the model folder: { "parent": "minecraft:block/cube_all", "textures": { "all": "icefeeling:block/jade_ore" } } Edit: this is also opal_ore, not jade_ore. Thanks in advance, Nicolas Edited January 3, 20214 yr by nicolas14101
December 31, 20204 yr withExistingParent("opal_ore", modLoc("block/block/opal_ore")); The path block/block does not exist. Check out the port of the BetterEnd fabric mod (WIP): https://www.curseforge.com/minecraft/mc-mods/betterend-forge-port
December 31, 20204 yr Author Sorry that was a trial, I forgot to delete it for the screen. The good one is indeed: withExistingParent("opal_ore", modLoc("block/opal_ore"));
January 2, 20214 yr Author Still the same problem here, [16:03:34] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:660]: Caused by: java.lang.IllegalStateException: Model at icefeeling:block/opal_ore does not exist withExistingParent("opal_ore", modLoc("block/opal_ore")); When I remove the code above, the file opal_ore.json get created in src/generated/resources/assets/icefeeling/models/opal_ore.json. Then, going in game gives me no texture for the block in the inventory. Obviously, the withExistingParent has been removed. So when the code above is written again, I still get the error: [16:03:34] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:660]: Caused by: java.lang.IllegalStateException: Model at icefeeling:block/opal_ore does not exist
January 2, 20214 yr Take a look how i registered Block and ItemBlock datas using data generators here: https://github.com/Beethoven92/BetterEndForge/tree/master/src/main/java/mod/beethoven92/betterendforge/data/client It seems that the blocks you need to create jsons for are simple cube blocks right? I think you overcomplicated the thing a lot Check out the port of the BetterEnd fabric mod (WIP): https://www.curseforge.com/minecraft/mc-mods/betterend-forge-port
January 3, 20214 yr Author Thanks a lot ! It helped me understand better the way it work. On 1/2/2021 at 7:44 PM, Beethoven92 said: Take a look how i registered Block and ItemBlock datas using data generators here: https://github.com/Beethoven92/BetterEndForge/tree/master/src/main/java/mod/beethoven92/betterendforge/data/client It seems that the blocks you need to create jsons for are simple cube blocks right? I think you overcomplicated the thing a lot
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.