summaryrefslogtreecommitdiff
path: root/trunks/generating.lua
diff options
context:
space:
mode:
Diffstat (limited to 'trunks/generating.lua')
-rw-r--r--trunks/generating.lua160
1 files changed, 80 insertions, 80 deletions
diff --git a/trunks/generating.lua b/trunks/generating.lua
index e544a21..6595f2b 100644
--- a/trunks/generating.lua
+++ b/trunks/generating.lua
@@ -14,38 +14,38 @@ end
-----------------------------------------------------------------------------------------------
abstract_trunks.place_twig = function(pos)
- local twig_size = math.random(1,27)
-
- local right_here = {x=pos.x , y=pos.y+1, z=pos.z }
- local north = {x=pos.x , y=pos.y+1, z=pos.z+1}
- local north_east = {x=pos.x+1, y=pos.y+1, z=pos.z+1}
- local east = {x=pos.x+1, y=pos.y+1, z=pos.z }
- local south_east = {x=pos.x+1, y=pos.y+1, z=pos.z-1}
- local south = {x=pos.x , y=pos.y+1, z=pos.z-1}
- local south_west = {x=pos.x-1, y=pos.y+1, z=pos.z-1}
- local west = {x=pos.x-1, y=pos.y+1, z=pos.z }
- local north_west = {x=pos.x-1, y=pos.y+1, z=pos.z+1}
-
- local node_here = minetest.get_node(right_here)
- local node_north = minetest.get_node(north)
- local node_n_e = minetest.get_node(north_east)
- local node_east = minetest.get_node(east)
- local node_s_e = minetest.get_node(south_east)
- local node_south = minetest.get_node(south)
- local node_s_w = minetest.get_node(south_west)
- local node_west = minetest.get_node(west)
- local node_n_w = minetest.get_node(north_west)
--- small twigs
+ local twig_size = math.random(1,27)
+
+ local right_here = {x=pos.x , y=pos.y+1, z=pos.z }
+ local north = {x=pos.x , y=pos.y+1, z=pos.z+1}
+ local north_east = {x=pos.x+1, y=pos.y+1, z=pos.z+1}
+ local east = {x=pos.x+1, y=pos.y+1, z=pos.z }
+ local south_east = {x=pos.x+1, y=pos.y+1, z=pos.z-1}
+ local south = {x=pos.x , y=pos.y+1, z=pos.z-1}
+ local south_west = {x=pos.x-1, y=pos.y+1, z=pos.z-1}
+ local west = {x=pos.x-1, y=pos.y+1, z=pos.z }
+ local north_west = {x=pos.x-1, y=pos.y+1, z=pos.z+1}
+
+ local node_here = minetest.get_node(right_here)
+ local node_north = minetest.get_node(north)
+ local node_n_e = minetest.get_node(north_east)
+ local node_east = minetest.get_node(east)
+ local node_s_e = minetest.get_node(south_east)
+ local node_south = minetest.get_node(south)
+ local node_s_w = minetest.get_node(south_west)
+ local node_west = minetest.get_node(west)
+ local node_n_w = minetest.get_node(north_west)
+-- small twigs
if twig_size <= 16 then
minetest.set_node(right_here, {name="trunks:twig_"..math.random(1,4), param2=math.random(0,3)})
end
--- big twigs
+-- big twigs
if Big_Twigs == true then
--- big twig 1
+-- big twig 1
if twig_size == 17 then
if not (minetest.registered_nodes[minetest.get_node({x=pos.x+1,y=pos.y,z=pos.z+1}).name].buildable_to
or minetest.registered_nodes[minetest.get_node({x=pos.x+1,y=pos.y,z=pos.z}).name].buildable_to) then
-
+
if minetest.registered_nodes[node_here.name].buildable_to then
minetest.set_node(right_here, {name="trunks:twig_5"})
end
@@ -53,13 +53,13 @@ abstract_trunks.place_twig = function(pos)
minetest.set_node(north_east, {name="trunks:twig_7"})
end
if minetest.registered_nodes[node_east.name].buildable_to then
- minetest.set_node(east, {name="trunks:twig_8"})
+ minetest.set_node(east, {name="trunks:twig_8"})
end
end
elseif twig_size == 18 then
if not (minetest.registered_nodes[minetest.get_node({x=pos.x+1,y=pos.y,z=pos.z-1}).name].buildable_to
or minetest.registered_nodes[minetest.get_node({x=pos.x,y=pos.y,z=pos.z-1}).name].buildable_to) then
-
+
if minetest.registered_nodes[node_here.name].buildable_to then
minetest.set_node(right_here, {name="trunks:twig_5", param2=1})
end
@@ -67,13 +67,13 @@ abstract_trunks.place_twig = function(pos)
minetest.set_node(south_east, {name="trunks:twig_7", param2=1})
end
if minetest.registered_nodes[node_south.name].buildable_to then
- minetest.set_node(south, {name="trunks:twig_8", param2=1})
+ minetest.set_node(south, {name="trunks:twig_8", param2=1})
end
end
elseif twig_size == 19 then
if not (minetest.registered_nodes[minetest.get_node({x=pos.x+1,y=pos.y,z=pos.z-1}).name].buildable_to
or minetest.registered_nodes[minetest.get_node({x=pos.x-1,y=pos.y,z=pos.z}).name].buildable_to) then
-
+
if minetest.registered_nodes[node_here.name].buildable_to then
minetest.set_node(right_here, {name="trunks:twig_5", param2=2})
end
@@ -81,13 +81,13 @@ abstract_trunks.place_twig = function(pos)
minetest.set_node(south_west, {name="trunks:twig_7", param2=2})
end
if minetest.registered_nodes[node_west.name].buildable_to then
- minetest.set_node(west, {name="trunks:twig_8", param2=2})
+ minetest.set_node(west, {name="trunks:twig_8", param2=2})
end
end
elseif twig_size == 20 then
if not (minetest.registered_nodes[minetest.get_node({x=pos.x-1,y=pos.y,z=pos.z+1}).name].buildable_to
or minetest.registered_nodes[minetest.get_node({x=pos.x,y=pos.y,z=pos.z+1}).name].buildable_to) then
-
+
if minetest.registered_nodes[node_here.name].buildable_to then
minetest.set_node(right_here, {name="trunks:twig_5", param2=3})
end
@@ -95,19 +95,19 @@ abstract_trunks.place_twig = function(pos)
minetest.set_node(north_west, {name="trunks:twig_7", param2=3})
end
if minetest.registered_nodes[node_north.name].buildable_to then
- minetest.set_node(north, {name="trunks:twig_8", param2=3})
+ minetest.set_node(north, {name="trunks:twig_8", param2=3})
end
end
--- big twig 2
+-- big twig 2
elseif twig_size == 21 then
if not (minetest.registered_nodes[minetest.get_node({x=pos.x,y=pos.y,z=pos.z+1}).name].buildable_to
or minetest.registered_nodes[minetest.get_node({x=pos.x+1,y=pos.y,z=pos.z+1}).name].buildable_to) then
-
+
if minetest.registered_nodes[node_here.name].buildable_to then
minetest.set_node(right_here, {name="trunks:twig_9"})
end
if minetest.registered_nodes[node_north.name].buildable_to then
- minetest.set_node(north, {name="trunks:twig_10"})
+ minetest.set_node(north, {name="trunks:twig_10"})
end
if minetest.registered_nodes[node_n_e.name].buildable_to then
minetest.set_node(north_east, {name="trunks:twig_11"})
@@ -116,12 +116,12 @@ abstract_trunks.place_twig = function(pos)
elseif twig_size == 22 then
if not (minetest.registered_nodes[minetest.get_node({x=pos.x+1,y=pos.y,z=pos.z}).name].buildable_to
or minetest.registered_nodes[minetest.get_node({x=pos.x+1,y=pos.y,z=pos.z-1}).name].buildable_to) then
-
+
if minetest.registered_nodes[node_here.name].buildable_to then
minetest.set_node(right_here, {name="trunks:twig_9", param2=1})
end
if minetest.registered_nodes[node_east.name].buildable_to then
- minetest.set_node(east, {name="trunks:twig_10", param2=1})
+ minetest.set_node(east, {name="trunks:twig_10", param2=1})
end
if minetest.registered_nodes[node_s_e.name].buildable_to then
minetest.set_node(south_east, {name="trunks:twig_11", param2=1})
@@ -130,12 +130,12 @@ abstract_trunks.place_twig = function(pos)
elseif twig_size == 23 then
if not (minetest.registered_nodes[minetest.get_node({x=pos.x,y=pos.y,z=pos.z-1}).name].buildable_to
or minetest.registered_nodes[minetest.get_node({x=pos.x-1,y=pos.y,z=pos.z-1}).name].buildable_to) then
-
+
if minetest.registered_nodes[node_here.name].buildable_to then
minetest.set_node(right_here, {name="trunks:twig_9", param2=2})
end
if minetest.registered_nodes[node_south.name].buildable_to then
- minetest.set_node(south, {name="trunks:twig_10", param2=2})
+ minetest.set_node(south, {name="trunks:twig_10", param2=2})
end
if minetest.registered_nodes[node_s_w.name].buildable_to then
minetest.set_node(south_west, {name="trunks:twig_11", param2=2})
@@ -144,12 +144,12 @@ abstract_trunks.place_twig = function(pos)
elseif twig_size == 24 then
if not (minetest.registered_nodes[minetest.get_node({x=pos.x-1,y=pos.y,z=pos.z}).name].buildable_to
or minetest.registered_nodes[minetest.get_node({x=pos.x-1,y=pos.y,z=pos.z+1}).name].buildable_to) then
-
+
if minetest.registered_nodes[node_here.name].buildable_to then
minetest.set_node(right_here, {name="trunks:twig_9", param2=3})
end
if minetest.registered_nodes[node_west.name].buildable_to then
- minetest.set_node(west, {name="trunks:twig_10", param2=3})
+ minetest.set_node(west, {name="trunks:twig_10", param2=3})
end
if minetest.registered_nodes[node_n_w.name].buildable_to then
minetest.set_node(north_west, {name="trunks:twig_11", param2=3})
@@ -199,12 +199,12 @@ end
-- TRuNKS
-----------------------------------------------------------------------------------------------
local TRuNKS = {
--- MoD TRuNK NR
- {"default", "tree", 1},
+-- MoD TRuNK NR
+ {"default", "tree", 1},
{"default", "jungletree", 2},
{"default", "pine_tree", 12},
- {"trees", "tree_conifer", 3},
+ {"trees", "tree_conifer", 3},
{"trees", "tree_mangrove", 4},
{"trees", "tree_palm", 5},
@@ -223,11 +223,11 @@ local TRuNKS = {
if Horizontal_Trunks == true then -- see settings.txt
for i in pairs(TRuNKS) do
- local MoD = TRuNKS[i][1]
- local TRuNK = TRuNKS[i][2]
- local NR = TRuNKS[i][3]
+ local MoD = TRuNKS[i][1]
+ local TRuNK = TRuNKS[i][2]
+ local NR = TRuNKS[i][3]
local trunkname = MoD..":"..TRuNK
- if minetest.get_modpath(MoD) ~= nil
+ if minetest.get_modpath(MoD) ~= nil
and NR < 6 -- moretrees trunks allready have facedir
and minetest.registered_nodes[trunkname] then -- the node being called exists.
temptrunk = clone_node(trunkname)
@@ -236,9 +236,9 @@ for i in pairs(TRuNKS) do
end
end
end
-
+
abstract_trunks.place_trunk = function(pos)
-
+
local right_here = {x=pos.x, y=pos.y+1, z=pos.z}
local north = {x=pos.x, y=pos.y+1, z=pos.z+1}
local north2 = {x=pos.x, y=pos.y+1, z=pos.z+2}
@@ -248,7 +248,7 @@ abstract_trunks.place_trunk = function(pos)
local west2 = {x=pos.x-2, y=pos.y+1, z=pos.z}
local east = {x=pos.x+1, y=pos.y+1, z=pos.z}
local east2 = {x=pos.x+2, y=pos.y+1, z=pos.z}
-
+
local node_here = minetest.get_node(right_here)
local node_north = minetest.get_node(north)
local node_north2 = minetest.get_node(north2)
@@ -260,11 +260,11 @@ abstract_trunks.place_trunk = function(pos)
local node_east2 = minetest.get_node(east2)
if minetest.registered_nodes[node_here.name].buildable_to then -- instead of check_air = true,
for i in pairs(TRuNKS) do
- local MoD = TRuNKS[i][1]
- local TRuNK = TRuNKS[i][2]
- local NR = TRuNKS[i][3]
- local chance = math.random(1, 17)
- local length = math.random(3,5)
+ local MoD = TRuNKS[i][1]
+ local TRuNK = TRuNKS[i][2]
+ local NR = TRuNKS[i][3]
+ local chance = math.random(1, 17)
+ local length = math.random(3,5)
if chance == NR then
local trunk_type = math.random(1,3)
if trunk_type == 1 then
@@ -278,7 +278,7 @@ abstract_trunks.place_trunk = function(pos)
if minetest.registered_nodes[node_north.name].buildable_to then
minetest.set_node(north, {name=MoD..":"..TRuNK, param2=4})
end
-
+
if length >= 4 and minetest.registered_nodes[node_north2.name].buildable_to then
minetest.set_node(north2, {name=MoD..":"..TRuNK, param2=4})
end
@@ -365,13 +365,13 @@ if Moss_on_ground == true then
abstract_trunks.grow_moss_on_ground = function(pos)
local on_ground = {x=pos.x, y=pos.y+1, z=pos.z}
local moss_type = math.random(1,21)
-
+
if moss_type == 1 then
minetest.set_node(on_ground, {name="trunks:moss_fungus", param2=math.random(0,3)})
else
minetest.set_node(on_ground, {name="trunks:moss", param2=math.random(0,3)})
end
-
+
end
biome_lib:register_generate_plant({
@@ -406,14 +406,14 @@ abstract_trunks.grow_moss_on_trunk = function(pos)
local at_side_s = {x=pos.x, y=pos.y, z=pos.z-1}
local at_side_w = {x=pos.x-1, y=pos.y, z=pos.z}
local undrneath = {x=pos.x, y=pos.y-1, z=pos.z}
-
+
local node_here = minetest.get_node(on_ground)
local node_north = minetest.get_node(at_side_n)
local node_east = minetest.get_node(at_side_e)
local node_south = minetest.get_node(at_side_s)
local node_west = minetest.get_node(at_side_w)
local node_under = minetest.get_node(undrneath)
-
+
--if minetest.get_item_group(node_under.name, "tree") < 1 then
local moss_type = math.random(1,41)
if minetest.registered_nodes[node_here.name].buildable_to then -- instead of check_air = true,
@@ -491,32 +491,32 @@ biome_lib:register_generate_plant({
end
-----------------------------------------------------------------------------------------------
--- RooTS
+-- RooTS
-----------------------------------------------------------------------------------------------
if Roots == true then -- see settings.txt
abstract_trunks.grow_roots = function(pos)
- local twig_size = math.random(1,27)
-
- local right_here = {x=pos.x , y=pos.y , z=pos.z }
- local below = {x=pos.x , y=pos.y-1, z=pos.z }
- local north = {x=pos.x , y=pos.y , z=pos.z+1}
- local east = {x=pos.x+1, y=pos.y , z=pos.z }
- local south = {x=pos.x , y=pos.y , z=pos.z-1}
- local west = {x=pos.x-1, y=pos.y , z=pos.z }
-
- local node_here = minetest.get_node(right_here)
+ local twig_size = math.random(1,27)
+
+ local right_here = {x=pos.x , y=pos.y , z=pos.z }
+ local below = {x=pos.x , y=pos.y-1, z=pos.z }
+ local north = {x=pos.x , y=pos.y , z=pos.z+1}
+ local east = {x=pos.x+1, y=pos.y , z=pos.z }
+ local south = {x=pos.x , y=pos.y , z=pos.z-1}
+ local west = {x=pos.x-1, y=pos.y , z=pos.z }
+
+ local node_here = minetest.get_node(right_here)
local node_below = minetest.get_node(below)
- local node_north = minetest.get_node(north)
- local node_east = minetest.get_node(east)
- local node_south = minetest.get_node(south)
- local node_west = minetest.get_node(west)
+ local node_north = minetest.get_node(north)
+ local node_east = minetest.get_node(east)
+ local node_south = minetest.get_node(south)
+ local node_west = minetest.get_node(west)
for i in pairs(TRuNKS) do
- local MoD = TRuNKS[i][1]
- local TRuNK = TRuNKS[i][2]
- if minetest.get_modpath(MoD) ~= nil
- and node_here.name == MoD..":"..TRuNK
+ local MoD = TRuNKS[i][1]
+ local TRuNK = TRuNKS[i][2]
+ if minetest.get_modpath(MoD) ~= nil
+ and node_here.name == MoD..":"..TRuNK
and string.find(node_below.name, "dirt")
and node_here.param2 == 0 then
if minetest.registered_nodes[node_north.name].buildable_to then