fachwerk/api.lua

103 lines
3.2 KiB
Lua
Raw Normal View History

2016-09-14 23:16:54 +03:00
fachwerk.register_fachwerk = function(basename, texture, description, craft_from)
2016-09-13 20:21:12 +03:00
2016-09-14 23:16:54 +03:00
local group_def = {choppy = 2,oddly_breakable_by_hand = 2,cracky = 3};
2016-09-13 20:21:12 +03:00
minetest.register_node("fachwerk:"..basename, {
2016-09-14 23:16:54 +03:00
description = "Timber-framed "..description,
2016-09-13 20:21:12 +03:00
tile_images = { texture.."^fachwerk_blank.png"},
groups = group_def,
sounds = default.node_sound_stone_defaults(),
paramtype = "light",
paramtype2 = "facedir",
})
minetest.register_node("fachwerk:"..basename.."_1", {
2016-09-14 23:16:54 +03:00
description = "Timber-framed "..description.." oblique beam 1",
2016-09-13 20:21:12 +03:00
tile_images = {
texture.."^fachwerk_blank.png", -- top
texture.."^fachwerk_blank.png", -- bottom
texture.."^fachwerk_beam_1.png",
texture.."^fachwerk_beam_1.png^[transformFX",
texture.."^fachwerk_beam_1.png^[transformFX",
texture.."^fachwerk_beam_1.png" },
groups = group_def,
sounds = default.node_sound_stone_defaults(),
paramtype = "light",
paramtype2 = "facedir",
})
-- TODO: is this one really needed? the node above covers most of that already
minetest.register_node("fachwerk:"..basename.."_2", {
2016-09-14 23:16:54 +03:00
description = "Timber-framed "..description.." oblique beam 2",
2016-09-13 20:21:12 +03:00
tile_images = {
texture.."^fachwerk_blank.png", -- top
texture.."^fachwerk_blank.png", -- bottom
texture.."^fachwerk_beam_2.png",
texture.."^fachwerk_beam_2.png^[transformFX",
texture.."^fachwerk_beam_2.png^[transformFX",
texture.."^fachwerk_beam_2.png" },
groups = group_def,
sounds = default.node_sound_stone_defaults(),
paramtype = "light",
paramtype2 = "facedir",
})
minetest.register_node("fachwerk:"..basename.."_cross", {
2016-09-14 23:16:54 +03:00
description = "Timber-framed "..description.." cross",
2016-09-13 20:21:12 +03:00
tile_images = {texture.."^fachwerk_cross.png"},
groups = group_def,
sounds = default.node_sound_stone_defaults(),
})
--crafting--
-- yields 2; after all we did add a lot of wood
minetest.register_craft({
output = "fachwerk:"..basename.." 8",
recipe = { { "group:wood","group:wood","group:wood" },
{ "group:wood", craft_from,"group:wood" },
{ "group:wood","group:wood","group:wood" },
} });
minetest.register_craft({
output = "fachwerk:"..basename.."_cross 8",
recipe = { { "group:wood",craft_from,"group:wood" },
{ craft_from, "group:wood",craft_from },
{ "group:wood",craft_from,"group:wood" },
} });
minetest.register_craft({
output = "fachwerk:"..basename.."_1 8",
recipe = { { craft_from,"group:wood", craft_from},
{ craft_from, craft_from, craft_from},
{ "group:wood", craft_from, craft_from},
} });
minetest.register_craft({
output = "fachwerk:"..basename.."_2 8",
recipe = { { craft_from, craft_from,"group:wood"},
{ craft_from, craft_from, craft_from },
{ craft_from,"group:wood" ,craft_from },
} });
-- chain of craft receipes to convert nodes into each other
2016-09-14 23:16:54 +03:00
--[[minetest.register_craft({
2016-09-13 20:21:12 +03:00
output = "fachwerk:"..basename.."_1",
recipe = { {"fachwerk:"..basename }} });
minetest.register_craft({
output = "fachwerk:"..basename.."_2",
recipe = { {"fachwerk:"..basename.."_1" }} });
minetest.register_craft({
output = "fachwerk:"..basename.."_cross",
recipe = { {"fachwerk:"..basename.."_2" }} });
minetest.register_craft({
output = "fachwerk:"..basename,
2016-09-14 23:16:54 +03:00
recipe = { {"fachwerk:"..basename.."_cross" }} });
]]
2016-09-13 20:21:12 +03:00
end