From 81d0b9d193890dc7d0a499aea62c8557e6c2316c Mon Sep 17 00:00:00 2001 From: RealBadAngel Date: Tue, 22 Jul 2014 23:08:09 +0200 Subject: [PATCH] Add rotation to plants. --- mods/default/mapgen.lua | 11 ++++++++--- mods/farming/api.lua | 4 ++-- mods/flowers/init.lua | 3 ++- mods/flowers/mapgen.lua | 3 ++- 4 files changed, 14 insertions(+), 7 deletions(-) diff --git a/mods/default/mapgen.lua b/mods/default/mapgen.lua index 4907cf7b..3ee0f86f 100644 --- a/mods/default/mapgen.lua +++ b/mods/default/mapgen.lua @@ -324,12 +324,13 @@ function default.generate_ore(name, wherein, minp, maxp, seed, chunks_per_volume end function default.make_papyrus(pos, size) + local rot = math.random(0,179) for y=0,size-1 do local p = {x=pos.x, y=pos.y+y, z=pos.z} local nn = minetest.get_node(p).name if minetest.registered_nodes[nn] and minetest.registered_nodes[nn].buildable_to then - minetest.set_node(p, {name="default:papyrus"}) + minetest.set_node(p, {name="default:papyrus", param2 = rot}) else return end @@ -493,11 +494,15 @@ minetest.register_on_generated(function(minp, maxp, seed) nn = minetest.get_node({x=x,y=ground_y,z=z}).name -- If desert sand, add dry shrub if nn == "default:desert_sand" then - minetest.set_node(p,{name="default:dry_shrub"}) + minetest.set_node(p, + {name="default:dry_shrub", + param2 = math.random(0, 179)}) -- If dirt with grass, add grass elseif nn == "default:dirt_with_grass" then - minetest.set_node(p,{name="default:grass_"..pr:next(1, 5)}) + minetest.set_node(p, + {name="default:grass_"..pr:next(1, 5), + param2 = math.random(0, 179)}) end end end diff --git a/mods/farming/api.lua b/mods/farming/api.lua index f1767d17..3d3f4764 100644 --- a/mods/farming/api.lua +++ b/mods/farming/api.lua @@ -204,7 +204,7 @@ farming.register_plant = function(name, def) end if fertmatch == true and minetest.get_item_group(minetest.get_node({x = pos.x, y = pos.y - 1, z = pos.z}).name, "wet") ~= 0 then - minetest.set_node(pos, {name = node.name:gsub("seed_", "") .. "_1"}) + minetest.set_node(pos, {name = node.name:gsub("seed_", "") .. "_1", param2 = math.random(0, 179)}) end end }) @@ -272,7 +272,7 @@ farming.register_plant = function(name, def) -- grow local height = minetest.get_item_group(node.name, pname) + 1 - minetest.set_node(pos, {name = mname .. ":" .. pname .. "_" .. height}) + minetest.set_node(pos, {name = mname .. ":" .. pname .. "_" .. height, param2 = node.param2}) end }) -- Return diff --git a/mods/flowers/init.lua b/mods/flowers/init.lua index b4096475..c3b9d39d 100644 --- a/mods/flowers/init.lua +++ b/mods/flowers/init.lua @@ -130,7 +130,8 @@ minetest.register_abm({ local under = minetest.get_node(pos) pos.y = pos.y + 1 if under.name == "default:desert_sand" then - minetest.set_node(pos, {name="default:dry_shrub"}) + minetest.set_node(pos, + {name = "default:dry_shrub", param2 = math.random(0, 179)}) elseif under.name ~= "default:dirt_with_grass" then return end diff --git a/mods/flowers/mapgen.lua b/mods/flowers/mapgen.lua index 7148f6e5..a537b596 100644 --- a/mods/flowers/mapgen.lua +++ b/mods/flowers/mapgen.lua @@ -50,7 +50,8 @@ minetest.register_on_generated(function(minp, maxp, seed) elseif flower_choice == 6 then flower = "flowers:viola" end - minetest.set_node(p, {name=flower}) + minetest.set_node(p, {name = flower, + param2 = math.random(0, 179)}) end end end