Growth tool grows reeds, leaves and fire
This commit is contained in:
parent
abb28f6f83
commit
cf140b66e4
@ -622,6 +622,35 @@ minetest.register_tool("tools:grow", {
|
||||
}
|
||||
local flower = flowers[math.random(1, #flowers)]
|
||||
minetest.set_node(pos, {name="nodes:flowerpot_"..flower, param2=param2})
|
||||
elseif nname == "nodes:fire" or minetest.get_item_group(nname, "leaves") == 1 then
|
||||
-- Grow leaves and spread fire
|
||||
local posses = {
|
||||
{ x=0, y=0, z=1 },
|
||||
{ x=0, y=0, z=-1 },
|
||||
{ x=0, y=1, z=0 },
|
||||
{ x=0, y=-1, z=0 },
|
||||
{ x=1, y=0, z=0 },
|
||||
{ x=-1, y=0, z=0 },
|
||||
}
|
||||
for p=1, #posses do
|
||||
local ppos = vector.add(pos, posses[p])
|
||||
if minetest.get_node(ppos).name == "air" then
|
||||
minetest.set_node(ppos, {name=nname})
|
||||
end
|
||||
end
|
||||
elseif nname == "nodes:reeds" then
|
||||
-- Grow reeds
|
||||
local above
|
||||
for i=1,15 do
|
||||
above = {x=pos.x,y=pos.y+i,z=pos.z}
|
||||
local node = minetest.get_node(above)
|
||||
if node.name == "air" then
|
||||
minetest.set_node(above, {name=nname})
|
||||
break
|
||||
elseif node.name ~= nname then
|
||||
break
|
||||
end
|
||||
end
|
||||
elseif nname == "nodes:dirt" then
|
||||
-- Grow grass cover on dirt
|
||||
for x = math.max(box.minp.x + 1, pos.x - 2), math.min(box.maxp.x - 1, pos.x + 2) do
|
||||
|
Loading…
x
Reference in New Issue
Block a user