diff --git a/node_defs.lua b/node_defs.lua index 79df894..7f58b00 100644 --- a/node_defs.lua +++ b/node_defs.lua @@ -479,9 +479,8 @@ for i in ipairs(moretrees.treelist) do end, on_timer = function(pos, elapsed) if moretrees.can_grow(pos, treename) then - minetest.chat_send_all("can grow") - minetest.chat_send_all("grow_" .. treename) --moretrees["grow_" .. treename](pos) + minetest.set_node(pos, {name="air"}) if type(moretrees["spawn_" .. treename .. "_object"])=="string" then local split = moretrees["spawn_" .. treename .. "_object"]:split(".") moretrees[split[2]](pos) diff --git a/saplings.lua b/saplings.lua index 9cbd6d7..09b1744 100644 --- a/saplings.lua +++ b/saplings.lua @@ -40,8 +40,24 @@ local sand_surfaces = { } function moretrees.can_grow(pos, treename) - minetest.chat_send_all(treename) - return true + local surfaces + + if treename == "spruce" + or treename == "fir" + or treename == "cedar" + or treename == "pine" then + surfaces = conifer_surfaces + elseif string.find(treename, "palm") then + surfaces = sand_surfaces + else + surfaces = dirt_surfaces + end + + if surfaces[minetest.get_node(vector.new(pos.x, pos.y-1, pos.z)).name] then + return true + else + return false + end end --[[ for i in ipairs(moretrees.treelist) do