player_api/mods
Auke Kok b848e35ca5 Stairs: Big simplification of slabs combination
Combine slabs if identical based on orientations using a simple lookup
table if the nodes are identical.

Otherwise relies on place_node() to place the node, which properly
handles rotation compared to adjacent nodes already, and can orient
based on look_dir as well.

Initial slabs placed are oriented based on (1) the orientation of
the pointed "face" (assumes nodes are cubic, of course), and uses
the player look direction to orient the node n/e/w/s if the slab
is horizontal or upside-down. If placed against a vertical face,
the slab is placed against the face without rotation around the axis
perpendicular to that vertical face. This allows upside down placement
and vertical placement without screwdriver.

If a slab is placed on top of an upside down slab, or below a normally
placed slab, the rotation is inverted so that no "floating" slab
is created.

Largely based on kilbith's #807 PR. Slab combining and place_node()
usage by sofar.

Since this relies entirely on `on_place` mechanics, this fails to
combine slabs into a plain node if the space *above* is occupied.
This is unavoidable due to the fact that on_place() happens after
the checks required to see if pointed_thing.above is empty or not.
2016-09-14 06:01:04 +01:00
..
beds Change WTFPL to MIT (part 3) 2016-09-07 04:44:53 +01:00
boats Change WTFPL to MIT (part 3) 2016-09-07 04:44:53 +01:00
bones Bones: Search for nearby 'air' for fallback bones placement 2016-09-10 05:19:15 +01:00
bucket Change WTFPL to MIT (part 3) 2016-09-07 04:44:53 +01:00
creative Change WTFPL to MIT (part 3) 2016-09-07 04:44:53 +01:00
default Licenses: (Part 4) Remove overlooked WTFPL text. Cleanup 2016-09-08 06:17:05 +01:00
doors Licenses: (Part 4) Remove overlooked WTFPL text. Cleanup 2016-09-08 06:17:05 +01:00
dye Change WTFPL to MIT (part 3) 2016-09-07 04:44:53 +01:00
farming Change WTFPL to MIT (part 3) 2016-09-07 04:44:53 +01:00
fire Change WTFPL to MIT (part 3) 2016-09-07 04:44:53 +01:00
flowers Change WTFPL to MIT (part 3) 2016-09-07 04:44:53 +01:00
give_initial_stuff Change WTFPL to MIT (part 3) 2016-09-07 04:44:53 +01:00
nyancat Change WTFPL to MIT (part 3) 2016-09-07 04:44:53 +01:00
screwdriver Change WTFPL to MIT (part 3) 2016-09-07 04:44:53 +01:00
sethome Licenses: Change WTFPL to MIT (part 1) 2016-09-05 05:54:33 +01:00
stairs Stairs: Big simplification of slabs combination 2016-09-14 06:01:04 +01:00
tnt Change WTFPL to MIT (part 3) 2016-09-07 04:44:53 +01:00
vessels Change WTFPL to MIT (part 3) 2016-09-07 04:44:53 +01:00
walls Licenses: (Part 4) Remove overlooked WTFPL text. Cleanup 2016-09-08 06:17:05 +01:00
wool Change WTFPL to MIT (part 3) 2016-09-07 04:44:53 +01:00
xpanes Xpanes: Convert to connected nodeboxes 2016-09-10 05:18:02 +01:00