There are 4 different states for things in the world:
- Regular node in world
- Item stack on ground
- Item entity (falling)
- Falling node entity
The entity states are not interactable at all, and regular node
doesn't rotate. We can help differentiate node-in-air vs
node-stack-on-ground with a shadow visual.
Sometimes a node will get stuck as an entity inside another node's
negative space (e.g. a nodebox) and having a way to tell that it's
not a real one should maybe help.
Right-clicking with an item now by default places one as a stack
node. When placing this way, crafting detection applies.
Had to copy in a bit of code from builtin.
"Loose" versions of materials will only allow a certain maximum
angle of repose, and will shuffle around sideways and fall if
that angle is exceeded. Softer materials like sand, leaves, loose
items, will all have shallow angles, while sturdier stuff like
dirt, gravel, etc. may allow steeper ones.
- Need to search for open space for ents trapped inside a node.
- Look into a smoother way to handle the drops hack for the
stack node; maybe a central API with ext_drops supporting
functions?