[Suggestion] Extend system of block models by introducing overrides and predicates
Closed this issue · 1 comments
zowepsilon commented
Similarly to item predicates, the blockstates system could be expended with predicates.
Syntax :
{
"parent": "minecraft:block/cube_all",
"textures": {
"all": "minecraft:block/glass"
}, // vanilla fields are optionals, as with items
"overrides": [
{
"predicate": {
"<predicate_name>": "<predicate_value>"
},
"model": "minecraft:glass_with_predicate"
}
]
}
Name | Type | Description |
---|---|---|
all world and dimension item predicates |
- | The world and dimension are specified by the block position. |
blockstates |
String |
similar to blockstates file in assets/namespace/blockstates but in block models. |
neighbour/+x|+y|+z|-x|-y|-z |
Identifier |
The ID of the block next to the current block in the +x /+y /+z /-x /-y /-z direction |
position/x|y|z |
Range |
The x /y /z position of the block |
emilyploszaj commented
The biggest problem with this is it's too performance intensive to manage all of those predicates, as there would either have to be a huge set of events for rebuilding, or everything would have to be checked every frame. I also consider it out of the scope of chime.