Improved placement for slabs etc

Stairs+ nodes now check which side of the face (top/bottom for
horizontal, left/right for vertical placement) is being clicked to
decide on the orientation of the placed node. The aux key can be used
to place the node as if from the opposite side.

When the under node and placed node are the same category (e.g. slab to
slab) then by default the orientation of the under node is copied,
flippingit if placing above or below an upright or upside-down node. The
aux key can be used to place node according to the general (no aux, no
same-cat) rules.

(And yes, this means that it's not possible to place a stair+ node
against another stair+ node as if it were from the other side. Sorry, we
don't have enough special keys.)
This commit is contained in:
Giuseppe Bilotta
2020-12-08 22:55:54 +01:00
parent 26ca7af997
commit a7777d588b
2 changed files with 103 additions and 1 deletions

View File

@ -7,6 +7,17 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
## [Unreleased]
### Added
- Revised placing strategy that takes into account which side of the face
(top/bottom for horizontal, left/right for vertical placement) is being clicked.
Aux (sprint/special, default E) key can be used to place the node with the orientation
it would have if placed from the other side.
When placing nodes next to nodes of the same gategory (e.g.slab to slab) the other
node's orientation is copied, flipping it placing on top or below an upright or
upside-down node. In this case the aux key will disable the special processing of
same-category nodes.
### Removed
- Legacy Stairs+ conversion code.