pub enum ShapeDependency {
None,
Neighbours(NeighbourShape),
EntityContext,
BlockEntity,
PositionOffset,
}Expand description
What a block’s collision shape depends on besides its own block state.
When this is not ShapeDependency::None, Collision::boxes is only the shape for the
“default” situation described on each variant and the caller (world / physics crate) must
compute the real shape. The tables never pretend such shapes are static.
Variants§
None
The shape is fully determined by the block state.
Neighbours(NeighbourShape)
The shape depends on neighbouring blocks (1.8 “actual state” blocks). boxes is the
shape with no connecting neighbours, as given by minecraft-data.
EntityContext
The shape depends on the colliding entity (1.16 scaffolding: sneaking / standing above).
boxes is the shape minecraft-data reports.
BlockEntity
The shape depends on a block entity (1.16 shulker box lid, moving piston). boxes is the
shape minecraft-data reports.
PositionOffset
The shape is shifted by a per-position pseudo-random XZ offset (1.16 bamboo). boxes is the
un-offset shape.