opt-depend on future mcl_bamboo, add (temp)recipe

This commit is contained in:
cora 2022-06-06 16:14:44 +02:00
parent 2d8498545c
commit ab9a22d7af
2 changed files with 31 additions and 10 deletions

View File

@ -1,9 +1,11 @@
local modname = minetest.get_current_modname() local modname = minetest.get_current_modname()
local S = minetest.get_translator(modname) local S = minetest.get_translator(modname)
local has_bamboo = minetest.get_modpath("mcl_bamboo")
minetest.register_node("mcl_scaffolding:scaffolding", { minetest.register_node("mcl_scaffolding:scaffolding", {
description = S("Scaffolding"), description = S("Scaffolding"),
--_doc_items_longdesc = doc.sub.items.temp.build, doc_items_longdesc = S("Scaffolding block..."),
--_doc_items_hidden = false, doc_items_hidden = false,
tiles = {"mcl_scaffolding_scaffolding_top.png","mcl_scaffolding_scaffolding_side.png","mcl_scaffolding_scaffolding_bottom.png"}, tiles = {"mcl_scaffolding_scaffolding_top.png","mcl_scaffolding_scaffolding_side.png","mcl_scaffolding_scaffolding_bottom.png"},
drawtype = "nodebox", drawtype = "nodebox",
node_box = { node_box = {
@ -23,12 +25,10 @@ minetest.register_node("mcl_scaffolding:scaffolding", {
climbable = true, climbable = true,
groups = { handy=1, axey=1, flammable=3, building_block=1, material_wood=1, fire_encouragement=5, fire_flammability=20, falling_node = 1 }, groups = { handy=1, axey=1, flammable=3, building_block=1, material_wood=1, fire_encouragement=5, fire_flammability=20, falling_node = 1 },
sounds = mcl_sounds.node_sound_wood_defaults(), sounds = mcl_sounds.node_sound_wood_defaults(),
_mcl_blast_resistance = 3, _mcl_blast_resistance = 0,
_mcl_hardness = 2, _mcl_hardness = 0,
on_rightclick = function(pos, node, player, itemstack, ptd)
end,
on_place = function(itemstack, placer, ptd) on_place = function(itemstack, placer, ptd)
-- count param2 up when placing to the sides. Fall when > 6
local ctrl = placer:get_player_control() local ctrl = placer:get_player_control()
if ctrl and ctrl.sneak then if ctrl and ctrl.sneak then
local pp2 = minetest.get_node(ptd.under).param2 local pp2 = minetest.get_node(ptd.under).param2
@ -37,12 +37,13 @@ minetest.register_node("mcl_scaffolding:scaffolding", {
minetest.set_node(ptd.above,{name = "mcl_scaffolding:scaffolding",param2 = np2}) minetest.set_node(ptd.above,{name = "mcl_scaffolding:scaffolding",param2 = np2})
itemstack:take_item(1) itemstack:take_item(1)
end end
if np2 > 4 then if np2 > 6 then
minetest.check_single_for_falling(ptd.above) minetest.check_single_for_falling(ptd.above)
end end
return itemstack return itemstack
end end
--place on solid nodes
local node = minetest.get_node(ptd.under) local node = minetest.get_node(ptd.under)
if itemstack:get_name() ~= node.name then if itemstack:get_name() ~= node.name then
minetest.set_node(ptd.above,{name = "mcl_scaffolding:scaffolding",param2 = 0}) minetest.set_node(ptd.above,{name = "mcl_scaffolding:scaffolding",param2 = 0})
@ -50,6 +51,7 @@ minetest.register_node("mcl_scaffolding:scaffolding", {
return itemstack return itemstack
end end
--build up when placing on existing scaffold
local h = 0 local h = 0
local pos = ptd.under local pos = ptd.under
repeat repeat
@ -60,9 +62,9 @@ minetest.register_node("mcl_scaffolding:scaffolding", {
minetest.set_node(pos, node) minetest.set_node(pos, node)
itemstack:take_item(1) itemstack:take_item(1)
placer:set_wielded_item(itemstack) placer:set_wielded_item(itemstack)
return itemstack
end end
until cn.name ~= node.name or h >= 32 until cn.name ~= node.name or h >= 32
return
end, end,
after_dig_node = function(pos, oldnode, oldmetadata, digger) after_dig_node = function(pos, oldnode, oldmetadata, digger)
local apos = vector.offset(pos,0,1,0) local apos = vector.offset(pos,0,1,0)
@ -71,3 +73,21 @@ minetest.register_node("mcl_scaffolding:scaffolding", {
end end
end, end,
}) })
local bamboo = "mcl_core:stick"
if has_bamboo then
bamboo = "mcl_bamboo:bamboo_stem"
end
minetest.register_craft({
output = "mcl_scaffolding:scaffolding 6",
recipe = {{bamboo, "mcl_mobitems:string", bamboo},
{bamboo, "", bamboo},
{bamboo, "", bamboo}}
})
minetest.register_craft({
type = "fuel",
recipe = "mcl_scaffolding:scaffolding",
burntime = 20
})

View File

@ -1,3 +1,4 @@
name = mcl_scaffolding name = mcl_scaffolding
author = cora author = cora
depends = mcl_sounds depends = mcl_sounds, mcl_core, mcl_mobitems
optional_depends = mcl_bamboo