2024-07-06 16:11:13 -06:00

114 lines
2.8 KiB
Lua

PyuTestCore.FURNITURE_NODEBOXES = {
TABLE = {
type = "connected",
fixed = {
{-0.5, 0.5, -0.5, 0.5, 0.45, 0.5},
{-0.15, -0.5, -0.15, 0.15, 0.45, 0.15},
},
}
}
PyuTestCore.make_furniture = function(name, desc, craft, tiles, cgroups, extra_conf)
local econf = extra_conf or {}
local groups = PyuTestCore.util.tablecopy(cgroups) or {
block = PyuTestCore.BLOCK_BREAKABLE_NORMAL
}
groups["block"] = groups["block"] or PyuTestCore.BLOCK_BREAKABLE_NORMAL
groups["furniture"] = 1
local id_table = name.."_table"
local id_chair = name.."_chair"
local id_mtable = name.."_mtable"
minetest.register_node(id_table, PyuTestCore.util.tableconcat({
description = Translate(desc.." Table"),
tiles = tiles,
groups = PyuTestCore.util.tableconcat(groups, {
table = 1
}),
sounds = PyuTestCore.make_node_sounds(),
drawtype = "nodebox",
paramtype = "light",
node_box = PyuTestCore.FURNITURE_NODEBOXES.TABLE,
connects_to = {"group:table"}
}, econf))
minetest.register_node(id_chair, PyuTestCore.util.tableconcat({
description = Translate(desc.." Chair"),
tiles = tiles,
groups = PyuTestCore.util.tableconcat(groups, {
chair = 1,
attached_node = 3,
}),
sounds = PyuTestCore.make_node_sounds(),
paramtype = "light",
paramtype2 = "4dir",
drawtype = "mesh",
mesh = "chair.obj",
selection_box = {
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, 1.1, 0.5}
},
collision_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, 0.10, 0.5}
}
}
}, econf))
minetest.register_node(id_mtable, PyuTestCore.util.tableconcat({
description = Translate(desc.." Mini Table"),
tiles = tiles,
groups = PyuTestCore.util.tableconcat(groups, {
mtable = 1,
attached_node = 3,
}),
sounds = PyuTestCore.make_node_sounds(),
paramtype = "light",
paramtype2 = "4dir",
drawtype = "mesh",
mesh = "mtable.obj",
selection_box = {
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, 0.25, 0.5}
},
collision_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, 0.25, 0.5}
}
}
}, econf))
minetest.register_craft({
output = id_table .. " 4",
recipe = {
{craft, craft, craft},
{"", craft, ""},
{"", craft, ""}
}
})
minetest.register_craft({
output = id_chair .. " 4",
recipe = {
{craft, "", ""},
{craft, craft, craft},
{craft, "", craft}
}
})
minetest.register_craft({
output = id_mtable .. " 4",
recipe = {
{craft, craft, craft},
{craft, craft, craft}
}
})
end
for _, v in pairs(PyuTestCore.building_blocks) do
PyuTestCore.make_furniture(v.name, v.desc, v.name.."_block", v.tiles, v.groups, v.econf)
end