Good day. In general, I inherited BlockFire, in my constructor I asked:
Java:
public class GreenFire extends BlockFire {
public GreenFire(){
this.setRegistryName("greenfire");
this.setUnlocalizedName("greenfire");
this.setDefaultState(this.blockState.getBaseState().withProperty(AGE, Integer.valueOf(0)).withProperty(NORTH, Boolean.valueOf(false)).withProperty(EAST, Boolean.valueOf(false)).withProperty(SOUTH, Boolean.valueOf(false)).withProperty(WEST, Boolean.valueOf(false)).withProperty(UPPER, Boolean.valueOf(false)));
this.setTickRandomly(true);
this.setCreativeTab(SacrificiumCreativeTabs.ScBlocks);
this.setHardness(0.0F);
this.setLightLevel(1.0F);
this.setSoundType(SoundType.CLOTH);
this.setUnlocalizedName("fire");
this.enableStats = false;
}
}
it seems to be all right, but there was a "cant". I can not interact with the block, when I pass through it I do not start to burn, as I understood, I also can not extinguish it with the left mouse button, I can not even break the block under it.
Tell me, please, how to solve this problem?
blockstates/greenfire.json
{
"multipart": [
{ "when": {"north": false, "east": false, "south": false, "west": false, "up": false},
"apply": [
{ "model": "fire_floor0" },
{ "model": "fire_floor1" }
]
},
{ "when": {"OR": [{"north": true}, {"north": false, "east": false, "south": false, "west": false, "up": false}]},
"apply": [
{ "model": "fire_side0" },
{ "model": "fire_side1" },
{ "model": "fire_side_alt0" },
{ "model": "fire_side_alt1" }
]
},
{ "when": {"OR": [{"east": true}, {"north": false, "east": false, "south": false, "west": false, "up": false}]},
"apply": [
{ "model": "fire_side0", "y": 90 },
{ "model": "fire_side1", "y": 90 },
{ "model": "fire_side_alt0", "y": 90 },
{ "model": "fire_side_alt1", "y": 90 }
]
},
{ "when": {"OR": [{"south": true}, {"north": false, "east": false, "south": false, "west": false, "up": false}]},
"apply": [
{ "model": "fire_side0", "y": 180 },
{ "model": "fire_side1", "y": 180 },
{ "model": "fire_side_alt0", "y": 180 },
{ "model": "fire_side_alt1", "y": 180 }
]
},
{ "when": {"OR": [{"west": true}, {"north": false, "east": false, "south": false, "west": false, "up": false}]},
"apply": [
{ "model": "fire_side0", "y": 270 },
{ "model": "fire_side1", "y": 270 },
{ "model": "fire_side_alt0", "y": 270 },
{ "model": "fire_side_alt1", "y": 270 }
]
},
{ "when": {"up": true},
"apply": [
{ "model": "fire_up0" },
{ "model": "fire_up1" },
{ "model": "fire_up_alt0" },
{ "model": "fire_up_alt1" }
]
}
]
}
registration
@Mod.EventBusSubscriber(modid=Constants.MODID)
public class BlocksRegister {
public static GreenFire greenfire = new GreenFire();
public static void register() // CommonProxy#preinit
{
setRegister(greenfire);
}
@SideOnly(Side.CLIENT)
public static void registerRender() // ClientProxy#init
{
setRender(greenfire);
}
private static void setRegister(Block block)
{
ForgeRegistries.BLOCKS.register(block);
ForgeRegistries.ITEMS.register(new ItemBlock(block).setRegistryName(block.getRegistryName()));
}
@SideOnly(Side.CLIENT)
private static void setRender(Block block)
{
Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(Item.getItemFromBlock(block), 0, new ModelResourceLocation(block.getRegistryName(), "inventory"));
}
}