Posted December 21, 20213 yr First of all I am new to modding (started a few days ago) tough I know C, C# and the basics of Java (though is very similar to C#). I am trying to make a custom Geode, a jade geode. I managed to create a CaveFeature, CavePlacement for the geode, and it is being correctly generated. At the time all my blocks states and models are registered with simpleBlock() in my BlockStateProvider class. Example: simpleBlock(RiftBlocks.JADE_BLOCK.get()); [Rift being my mods name and RiftBlocks where I store my mods blocks] The problem is, when I use simpleBlock with my jade cluster png, obviously, it doesnt work. How could I make my jade cluster model look as intended?
December 22, 20213 yr if you did any model registration in code, delete that. just register the block itself. in /resources/assets/your_mod_id/blockstates directory should be a file your_block_as_named_in_code.json . in /resources/assets/your_mod_id/models/block directory should be a file your_model_as_named_in_above_file.json . see vanilla oak saplings in minecraft jar.
December 22, 20213 yr Author 26 minutes ago, MFMods said: if you did any model registration in code, delete that. just register the block itself. in /resources/assets/your_mod_id/blockstates directory should be a file your_block_as_named_in_code.json . in /resources/assets/your_mod_id/models/block directory should be a file your_model_as_named_in_above_file.json . see vanilla oak saplings in minecraft jar. The thing is, I rather do it in code and generate the json data than create the json by hand.
December 22, 20213 yr Author Okey so I solved my problem doing this: simpleBlock(RiftBlocks.JADE_CLUSTER.get(), cross(RiftBlocks.JADE_CLUSTER.get())); And adding this functions in my class: public ModelFile cross(Block block) { return models().cross(name(block), blockTexture(block)); } private String name(Block block) { return block.getRegistryName().getPath(); } Now my problem is the transparency not working...
December 22, 20213 yr "Now my problem is the transparency not working..." Have you set the RenderType to cutout ?
December 22, 20213 yr Author 1 hour ago, Tintow said: "Now my problem is the transparency not working..." Have you set the RenderType to cutout ? Thanks, its fixed now. Though I am now struggling to make the jade clusters rotate... any solutions? I know it has to be like amethyst clusters blockstates: { "variants": { "facing=down": { "model": "minecraft:block/amethyst_cluster", "x": 180 }, "facing=east": { "model": "minecraft:block/amethyst_cluster", "x": 90, "y": 90 }, "facing=north": { "model": "minecraft:block/amethyst_cluster", "x": 90 }, "facing=south": { "model": "minecraft:block/amethyst_cluster", "x": 90, "y": 180 }, "facing=up": { "model": "minecraft:block/amethyst_cluster" }, "facing=west": { "model": "minecraft:block/amethyst_cluster", "x": 90, "y": 270 } } } But how do I achieve this in code? Also, sorry for being a noob.
December 22, 20213 yr Author Solved: protected void registerStatesAndModels() { directionalCross(RiftBlocks.JADE_CLUSTER); directionalCross(RiftBlocks.SMALL_JADE_BUD); directionalCross(RiftBlocks.MEDIUM_JADE_BUD); directionalCross(RiftBlocks.LARGE_JADE_BUD); simpleBlock(RiftBlocks.COMPACT_COAL_ORE); simpleBlock(RiftBlocks.JADE_BLOCK); simpleBlock(RiftBlocks.BUDDING_JADE); } private String name(Block block) { return block.getRegistryName().getPath(); } private void directionalCross(RegistryObject<Block> block) { directionalBlock(block.get(), models().cross(name(block.get()), modLoc("block/" + name(block.get())))); } private void simpleBlock(RegistryObject<Block> block) { simpleBlock(block.get()); }
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.