+--
+--
+--local sapling_min = 120
+--local sapling_max = 720
+--make sapling grow
+local function sapling_grow(pos)
+ if minetest.get_node_light(pos, nil) < 10 then
+ --print("failed to grow at "..dump(pos))
+ return
+ end
+ --print("growing at "..dump(pos))
+ if minetest.get_node_group(minetest.get_node(vector.new(pos.x,pos.y-1,pos.z)).name, "soil") > 0 then
+ local good_to_grow = true
+ --check if room to grow (leaves or air)
+ for i = 1,4 do
+ local node_name = minetest.get_node(vector.new(pos.x,pos.y+i,pos.z)).name
+ if node_name ~= "air" and node_name ~= "main:leaves" then
+ good_to_grow = false
+ end
+ end
+ if good_to_grow == true then
+ minetest.set_node(pos,{name="main:tree"})
+ local schemmy = math.random(1,2)
+ if schemmy == 1 then
+ minetest.place_schematic(pos, tree_big,"0",nil,false,"place_center_x, place_center_z")
+ elseif schemmy == 2 then
+ minetest.place_schematic(pos, tree_small,"0",nil,false,"place_center_x, place_center_z")
+ end
+ --override leaves
+ local max = 3
+ if schemmy == 2 then
+ max = 1
+ end
+ for i = 1,max do
+ minetest.set_node(vector.new(pos.x,pos.y+i,pos.z),{name="main:tree"})
+ end
+ end
+ end
+end
+