Commit Graph

34 Commits

Author SHA1 Message Date
Tim
d5fbfbf305 fix right click oddities of expansion nodes and make sure to always return the leftover itemstack 2015-09-08 16:24:15 +02:00
Tim
fb1b620316 add placeholders as not-buildable_to nodes, that can be set to prevent other nodes to build or expanded into expansions
this fixes #292
2015-09-08 09:26:40 +02:00
Tim
26a874d919 set defaults for limiting rotations on expanded nodes 2015-09-08 09:10:25 +02:00
Tim
3dc94b67cc label abms for profiling purposes
see https://github.com/t4im/profiler/#labeling
2015-08-20 14:52:01 +02:00
Tim
d7c56bfcdb clean up furnace code a bit by removing duplicate or replacing obsolete code 2015-08-20 14:27:28 +02:00
Tim
fc8621da41 manage all handler inits in their own init file 2015-08-19 22:38:10 +02:00
Tim
908b408248 register the furnaces internally via homedecor.register as well, getting rid of the last dependency on deprecated lock-code 2015-08-19 22:30:27 +02:00
Tim
9773d63e8e only set main list size if size field is given, to allow using the locked/lockable features with different listnames 2015-08-19 22:02:04 +02:00
Tim
088269a85e streamline locked description/infotext setting; avoid double brackets "Node (Locked) (owned by .. )" 2015-08-19 20:28:47 +02:00
Tim
b6512b3add let the custom on_place of the expansion code call after_place_node to make sure infotexts and owners of locked nodes are being set 2015-08-19 20:20:58 +02:00
Tim
29f61bb899 spawn lockable nodes for "inventory = { lockable = true }", and migrate all lockable nodes to this mechanism, but the furnaces 2015-08-19 19:30:03 +02:00
Tim
cc79b5fc03 register a copy of the def instead of the passed def, this allows us later to spawn supporting nodes from the same original def 2015-08-19 18:48:50 +02:00
Tim
4d5975d407 allow inventories to be locked (not just have a locked version of it being spawned later, but be locked by registration)
the code will also be used later to replace locked.lua that spawns a locked version from an unlocked version
2015-08-19 18:00:45 +02:00
Tim
8a91865d82 allow chaining of on_construct instead of overwriting in registration function 2015-08-19 17:30:37 +02:00
Tim
2d433f9652 remove debug statements 2015-08-19 17:09:50 +02:00
Tim
2ed7ae6a56 move inventory registration functions into dedicated handler file 2015-08-19 16:14:17 +02:00
Tim
91092d99be introduce nodebox abstractions used by fences, like corner nodeboxes, and indirectly slab_x; update fences accordingly 2015-08-19 15:32:19 +02:00
Tim
7d087815c8 fix slab_z nodebox direction inconsistencies 2015-08-19 15:06:53 +02:00
Tim
faf6cefa99 use the default background for all automatic inventory formspecs 2015-08-16 19:06:44 +02:00
Vanessa Ezekowitz
01b55f1a9a better prediction for placing diagonals at the top of the stack
better prediction for placing horizontals at the top and bottom of the
stack, particularly if they're placed within 1 node of the correct spot.
2015-05-11 20:14:02 -04:00
Vanessa Ezekowitz
10b859ba59 add a horizontal banister, rename the diagonals (+alias)
includes just enough code to try to auto-route them as they're placed.

the "root" node is now the horizontal one - if you have diagonals and
they don't place right, they should after you dig them and place again.
2015-05-11 18:03:21 -04:00
kilbith
3f16e7dbc0 Move sit function 2015-05-11 20:21:27 +02:00
Vanessa Ezekowitz
e010bdeb27 pass outlet position to particle handler as a table rather than separate vars 2015-05-10 22:34:30 -04:00
Vanessa Ezekowitz
9c9e525cd7 make bathroom taps use the new particles code
also make shower tray turn off taps above it, if any
minor tweak to particles function to add Y velocity
added more detailed collision boxes to the sinks to accommodate particles
2015-05-10 22:10:26 -04:00
Vanessa Ezekowitz
12f5ac9d02 abstract the particle spawner start/stop functions 2015-05-10 21:03:50 -04:00
Vanessa Ezekowitz
c8633be1dc add banisters, placed on side of blocks
when placing, code will try to determine if the bannister should be
left- or right-sided.  Defaults to left-sided; hold shift while placing
to force right-sided.
2015-04-27 03:09:37 -04:00
Vanessa Ezekowitz
67d4da05f6 make king size placement work right-first as well as left-first 2015-04-22 04:50:49 -04:00
Vanessa Ezekowitz
5cb73ffa7e Add king-sized bed model
create it by placing two twins of the same color side by side, left first

also moved the bed extension functions into handlers/expansion.lua,
renamed them, and made a few other minor tweaks to that file accordingly.
2015-04-22 00:43:22 -04:00
Vanessa Ezekowitz
34b05db22e use mesh nodes for refrigerators 2015-03-21 01:11:31 -04:00
Tim
db703e555d add sanity check to avoid cases in which expanded items would be placed against unknown nodes into other unknown nodes as pointed_think.above node
this resolves #205
2015-03-03 18:53:02 +01:00
Tim
af402c56a5 also avoid facedir setting for plantlike, raillike and firelike to avoid clashes if paramtype is used internally in the engine for something else 2015-02-05 10:51:34 +01:00
Tim
a19f3753b9 don't apply a facedir to glasslike_framed to avoid the drawtype to fail drawing the frames 2015-02-05 10:34:17 +01:00
Tim
b0714c7897 fix #176 2015-01-26 15:58:37 +01:00
Tim
5fb4bff628 move handlers into subdirectory to split them apart from the actual game content 2015-01-23 22:53:57 +01:00