Posted April 27, 20205 yr I'm attempting to add a block that has a base model that is always rendered and has a specific part that is rendered based on a property in the block class. I'm following the redstone wire block class as a reference, but I'm having issues just getting the default model to display. What am I missing to get just the default model to render? And then going forward, am I missing anything to get the other variants to display? All I should need to do is update the property correct? Block class Spoiler package com.novamachina.ens.common.block; import com.novamachina.ens.common.builder.BlockBuilder; import com.novamachina.ens.common.item.mesh.EnumMesh; import net.minecraft.block.Block; import net.minecraft.block.BlockState; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; import net.minecraft.state.EnumProperty; import net.minecraft.state.IProperty; import net.minecraft.state.StateContainer.Builder; import net.minecraftforge.common.ToolType; public class BlockSieve extends BaseBlock { public static final EnumProperty<EnumMesh> MESH = EnumProperty.create("mesh", EnumMesh.class); public BlockSieve() { super(new BlockBuilder().properties( Block.Properties.create(Material.WOOD).hardnessAndResistance(0.7F) .sound(SoundType.WOOD).notSolid()).harvestLevel(ToolType.AXE, 0)); this.setDefaultState(this.stateContainer.getBaseState().with(MESH, EnumMesh.NONE)); } protected void fillStateContainer(Builder<Block, BlockState> builder) { builder.add(new IProperty[]{MESH}); } } Blockstate JSON Spoiler { "multipart": [ { "apply": { "model": "ens:block/block_sieve" } }, { "when": { "mesh": "string", "apply": { "model": "ens:block/mesh_string" } } }, { "when": { "mesh": "flint", "apply": { "model": "ens:block/mesh_flint" } } }, { "when": { "mesh": "iron", "apply": { "model": "ens:block/mesh_iron" } } }, { "when": { "mesh": "diamond", "apply": { "model": "ens:block/mesh_diamond" } } } ] } One of the mesh JSON Spoiler { "parent": "ens:block/mesh_base", "textures": { "texture": "minecraft:blocks/wool_colored_light_blue" } } Mesh base JSON Spoiler { "parent": "minecraft:block/block", "textures": { "texture": "#texture" }, "name": "mesh_base", "display": { "thirdperson_righthand": { "rotation": [ 75, 45, 0 ], "translation": [ 0, 0, -2.5 ], "scale": [ 0.4, 0.4, 0.4 ] }, "firstperson_righthand": { "rotation": [ 0, 45, 0 ], "translation": [ -0.5, -1, 0 ], "scale": [ 0.4, 0.4, 0.4 ] }, "firstperson_lefthand": { "rotation": [ 0, 225, 0 ], "translation": [ -0.5, -1, 0 ], "scale": [ 0.4, 0.4, 0.4 ] }, "gui": { "rotation": [ 30, 225, 0 ], "translation": [ 0, -7.5, 0 ], "scale": [ 0.8, 0.8, 0.8 ] } }, "elements": [ { "from": [ 1, 13.25, 2.5 ], "to": [ 15, 13.5, 3 ], "faces": { "up": { "texture": "#texture" }, "down": { "texture": "#texture" }, "north": { "texture": "#texture" }, "south": { "texture": "#texture" }, "west": { "texture": "#texture" }, "east": { "texture": "#texture" } } }, { "from": [ 1, 13.25, 4 ], "to": [ 15, 13.5, 4.5 ], "faces": { "up": { "texture": "#texture" }, "down": { "texture": "#texture" }, "north": { "texture": "#texture" }, "south": { "texture": "#texture" }, "west": { "texture": "#texture" }, "east": { "texture": "#texture" } } }, { "from": [ 1, 13.25, 5.5 ], "to": [ 15, 13.5, 6 ], "faces": { "up": { "texture": "#texture" }, "down": { "texture": "#texture" }, "north": { "texture": "#texture" }, "south": { "texture": "#texture" }, "west": { "texture": "#texture" }, "east": { "texture": "#texture" } } }, { "from": [ 1, 13.25, 7 ], "to": [ 15, 13.5, 7.5 ], "faces": { "up": { "texture": "#texture" }, "down": { "texture": "#texture" }, "north": { "texture": "#texture" }, "south": { "texture": "#texture" }, "west": { "texture": "#texture" }, "east": { "texture": "#texture" } } }, { "from": [ 1, 13.25, 8.5 ], "to": [ 15, 13.5, 9 ], "faces": { "up": { "texture": "#texture" }, "down": { "texture": "#texture" }, "north": { "texture": "#texture" }, "south": { "texture": "#texture" }, "west": { "texture": "#texture" }, "east": { "texture": "#texture" } } }, { "from": [ 1, 13.25, 10 ], "to": [ 15, 13.5, 10.5 ], "faces": { "up": { "texture": "#texture" }, "down": { "texture": "#texture" }, "north": { "texture": "#texture" }, "south": { "texture": "#texture" }, "west": { "texture": "#texture" }, "east": { "texture": "#texture" } } }, { "from": [ 1, 13.25, 11.5 ], "to": [ 15, 13.5, 12 ], "faces": { "up": { "texture": "#texture" }, "down": { "texture": "#texture" }, "north": { "texture": "#texture" }, "south": { "texture": "#texture" }, "west": { "texture": "#texture" }, "east": { "texture": "#texture" } } }, { "from": [ 1, 13.25, 13 ], "to": [ 15, 13.5, 13.5 ], "faces": { "up": { "texture": "#texture" }, "down": { "texture": "#texture" }, "north": { "texture": "#texture" }, "south": { "texture": "#texture" }, "west": { "texture": "#texture" }, "east": { "texture": "#texture" } } }, { "from": [ 2.5, 13.24, 1 ], "to": [ 3, 13.49, 15 ], "faces": { "up": { "texture": "#texture" }, "down": { "texture": "#texture" }, "north": { "texture": "#texture" }, "south": { "texture": "#texture" }, "west": { "texture": "#texture" }, "east": { "texture": "#texture" } } }, { "from": [ 4, 13.24, 1 ], "to": [ 4.5, 13.49, 15 ], "faces": { "up": { "texture": "#texture" }, "down": { "texture": "#texture" }, "north": { "texture": "#texture" }, "south": { "texture": "#texture" }, "west": { "texture": "#texture" }, "east": { "texture": "#texture" } } }, { "from": [ 5.5, 13.24, 1 ], "to": [ 6, 13.49, 15 ], "faces": { "up": { "texture": "#texture" }, "down": { "texture": "#texture" }, "north": { "texture": "#texture" }, "south": { "texture": "#texture" }, "west": { "texture": "#texture" }, "east": { "texture": "#texture" } } }, { "from": [ 7, 13.24, 1 ], "to": [ 7.5, 13.49, 15 ], "faces": { "up": { "texture": "#texture" }, "down": { "texture": "#texture" }, "north": { "texture": "#texture" }, "south": { "texture": "#texture" }, "west": { "texture": "#texture" }, "east": { "texture": "#texture" } } }, { "from": [ 8.5, 13.24, 1 ], "to": [ 9, 13.49, 15 ], "faces": { "up": { "texture": "#texture" }, "down": { "texture": "#texture" }, "north": { "texture": "#texture" }, "south": { "texture": "#texture" }, "west": { "texture": "#texture" }, "east": { "texture": "#texture" } } }, { "from": [ 10, 13.24, 1 ], "to": [ 10.5, 13.49, 15 ], "faces": { "up": { "texture": "#texture" }, "down": { "texture": "#texture" }, "north": { "texture": "#texture" }, "south": { "texture": "#texture" }, "west": { "texture": "#texture" }, "east": { "texture": "#texture" } } }, { "from": [ 11.5, 13.24, 1 ], "to": [ 12, 13.49, 15 ], "faces": { "up": { "texture": "#texture" }, "down": { "texture": "#texture" }, "north": { "texture": "#texture" }, "south": { "texture": "#texture" }, "west": { "texture": "#texture" }, "east": { "texture": "#texture" } } }, { "from": [ 13, 13.24, 1 ], "to": [ 13.5, 13.49, 15 ], "faces": { "up": { "texture": "#texture" }, "down": { "texture": "#texture" }, "north": { "texture": "#texture" }, "south": { "texture": "#texture" }, "west": { "texture": "#texture" }, "east": { "texture": "#texture" } } } ] }
April 27, 20205 yr please send your crash log I will make fun of you if you are not able to look into the (vanilla-) code.
April 27, 20205 yr Author No crash. The default model displays as a missing texture. I suppose I should have reported the following with my issue. I do get a warning saying that models are missing. However, I believe I'm doing something wrong because if I understand correctly, I should be able to create a multipart mode. [26Apr2020 22:31:46.206] [Server-Worker-5/WARN] [net.minecraft.client.renderer.model.ModelBakery/]: Exception loading blockstate definition: 'ens:blockstates/block_sieve.json' missing model for variant: 'ens:block_sieve#mesh=diamond' [26Apr2020 22:31:46.207] [Server-Worker-5/WARN] [net.minecraft.client.renderer.model.ModelBakery/]: Exception loading blockstate definition: 'ens:blockstates/block_sieve.json' missing model for variant: 'ens:block_sieve#mesh=none' [26Apr2020 22:31:46.207] [Server-Worker-5/WARN] [net.minecraft.client.renderer.model.ModelBakery/]: Exception loading blockstate definition: 'ens:blockstates/block_sieve.json' missing model for variant: 'ens:block_sieve#mesh=iron' [26Apr2020 22:31:46.207] [Server-Worker-5/WARN] [net.minecraft.client.renderer.model.ModelBakery/]: Exception loading blockstate definition: 'ens:blockstates/block_sieve.json' missing model for variant: 'ens:block_sieve#mesh=string' [26Apr2020 22:31:46.207] [Server-Worker-5/WARN] [net.minecraft.client.renderer.model.ModelBakery/]: Exception loading blockstate definition: 'ens:blockstates/block_sieve.json' missing model for variant: 'ens:block_sieve#mesh=flint'
April 27, 20205 yr ahh ok, in your blockstate: it should be that: {"when": {"<enum>": <something>}, "apply": {"model": "<model>"} }, no that is bullshit, sorry Edited April 27, 20205 yr by Niprow it is bullshit I will make fun of you if you are not able to look into the (vanilla-) code.
April 27, 20205 yr Author Is that not what I have in my blockstate? If you look at the block state for oak fence or redstone wire it's pretty similar.
April 27, 20205 yr yea my fault, sorry I edited it yet that it is bullshit I will make fun of you if you are not able to look into the (vanilla-) code.
April 27, 20205 yr My fault again it's not bullshit but the solution. In your blockstate JSON you don't close the "when" query before the actual thing to be executed - please try it. I will make fun of you if you are not able to look into the (vanilla-) code.
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.