Register_on_generated local variables
Very strange, but I'm guessing it's related to the 'local' variables. The first part of the code works (dirt_grass), the second (rock) however does nothing. Anyone able to tell what I'm doing wrong?
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
- Code: Select all
minetest.register_on_generated(function(minp, maxp, seed)
for z = minp.z, maxp.z, 1 do
for x = minp.x, maxp.x, 1 do
for y = minp.y, maxp.y, 1 do
local p = {x = x, y = y, z = z}
local ran = math.random(1, 3)
if minetest.get_node(p).name == 'voxus:dirt_grass' then
minetest.set_node(p, {name='voxus:dirt_grass'})
end
if minetest.get_node(p).name == 'voxus:rock' and ran == 1 then
local p_above = p
p_above.y = p.y + 1
local p_below = p
p_below.y = p.y - 1
if minetest.get_node(p_below).name == 'air' then
minetest.set_node(p_below, {name='voxus:trunk'})
end
if minetest.get_node(p_above).name == 'air' then
minetest.set_node(p_above, {name='voxus:mushroom_tall'})
end
end
end
end
end
end)