Aaron Suen 77de117ea1 Place certain stacks as nodes.
If a node is specially tagges with the stack_as_node group, and
the stack size is exactly 1, place as a real node instead of a
stack node.

This reinstates logic from WAY back in the super-early pre-alpha
days, except only for nodes explicitly tagged this way.

This should be applied only to nodes that aren't transformed in
any non-desirable way when placed as nodes instead of stacks, and
can be dug the same ways as stacks (i.e. snappy = 1 or
crumbly = 1).

Currently applied to sticks, staves, leaves, ladders/frames,
and torches.  Ladder/frame placement offers some interesting
possibilities in terms of throwing ladders to rappel down holes.
2019-10-01 18:59:53 -04:00

38 lines
964 B
Lua

-- LUALOCALS < ---------------------------------------------------------
local minetest, nodecore
= minetest, nodecore
-- LUALOCALS > ---------------------------------------------------------
local modname = minetest.get_current_modname()
minetest.register_node(modname .. ":staff", {
description = "Staff",
drawtype = "nodebox",
node_box = nodecore.fixedbox(-1/16, -0.5, -1/16, 1/16, 0.5, 1/16),
oldnames = {"nc_tree:staff"},
tiles = {
"nc_tree_tree_top.png",
"nc_tree_tree_top.png",
"nc_tree_tree_side.png"
},
paramtype = "light",
sunlight_propagates = true,
groups = {
firestick = 2,
snappy = 1,
flammable = 2,
falling_repose = 2,
stack_as_node = 1
},
sounds = nodecore.sounds("nc_tree_sticky")
})
nodecore.register_craft({
label = "assemble staff",
normal = {y = 1},
nodes = {
{match = "nc_tree:stick", replace = "air"},
{y = -1, match = "nc_tree:stick", replace = modname .. ":staff"}
}
})