From 448e3d2be2a43883622642e00cb9c28fbff4ae18 Mon Sep 17 00:00:00 2001 From: Vanessa Ezekowitz Date: Sun, 30 Jun 2013 23:55:07 -0400 Subject: [PATCH] Phased out all deprecated minetest.env:* uses in favor of minetest.* --- plants_lib/init.lua | 114 ++++++++++++++++++++++---------------------- 1 file changed, 57 insertions(+), 57 deletions(-) diff --git a/plants_lib/init.lua b/plants_lib/init.lua index e8c8de8..93de949 100644 --- a/plants_lib/init.lua +++ b/plants_lib/init.lua @@ -41,7 +41,7 @@ local function dump_pos(pos) end function plantslib:is_node_loaded(node_pos) - n = minetest.env:get_node_or_nil(node_pos) + n = minetest.get_node_or_nil(node_pos) if (not n) or (n.name == "ignore") then return false end @@ -100,18 +100,18 @@ function plantslib:search_for_surfaces(minp, maxp, biomedef, node_or_function_or plantslib:set_defaults(biome) plantslib:dbg("Started checking generated mapblock volume...") - local searchnodes = minetest.env:find_nodes_in_area(minp, maxp, biome.surface) + local searchnodes = minetest.find_nodes_in_area(minp, maxp, biome.surface) local in_biome_nodes = {} local num_in_biome_nodes = 0 for i in ipairs(searchnodes) do local pos = searchnodes[i] local p_top = { x = pos.x, y = pos.y + 1, z = pos.z } - local perlin1 = minetest.env:get_perlin(biome.seed_diff, perlin_octaves, perlin_persistence, perlin_scale) + local perlin1 = minetest.get_perlin(biome.seed_diff, perlin_octaves, perlin_persistence, perlin_scale) local noise1 = perlin1:get2d({x=p_top.x, y=p_top.z}) local noise2 = plantslib.perlin_temperature:get2d({x=p_top.x, y=p_top.z}) local noise3 = plantslib.perlin_humidity:get2d({x=p_top.x+150, y=p_top.z+50}) - if (not biome.depth or minetest.env:get_node({ x = pos.x, y = pos.y-biome.depth-1, z = pos.z }).name ~= biome.surface) - and (not biome.check_air or (biome.check_air and minetest.env:get_node(p_top).name == "air")) + if (not biome.depth or minetest.get_node({ x = pos.x, y = pos.y-biome.depth-1, z = pos.z }).name ~= biome.surface) + and (not biome.check_air or (biome.check_air and minetest.get_node(p_top).name == "air")) and pos.y >= biome.min_elevation and pos.y <= biome.max_elevation and noise1 > biome.plantlife_limit @@ -119,10 +119,10 @@ function plantslib:search_for_surfaces(minp, maxp, biomedef, node_or_function_or and noise2 >= biome.temp_max and noise3 <= biome.humidity_min and noise3 >= biome.humidity_max - and (not biome.ncount or table.getn(minetest.env:find_nodes_in_area({x=pos.x-1, y=pos.y, z=pos.z-1}, {x=pos.x+1, y=pos.y, z=pos.z+1}, biome.neighbors)) > biome.ncount) - and (not biome.near_nodes or table.getn(minetest.env:find_nodes_in_area({x=pos.x-biome.near_nodes_size, y=pos.y-biome.near_nodes_vertical, z=pos.z-biome.near_nodes_size}, {x=pos.x+biome.near_nodes_size, y=pos.y+biome.near_nodes_vertical, z=pos.z+biome.near_nodes_size}, biome.near_nodes)) >= biome.near_nodes_count) + and (not biome.ncount or table.getn(minetest.find_nodes_in_area({x=pos.x-1, y=pos.y, z=pos.z-1}, {x=pos.x+1, y=pos.y, z=pos.z+1}, biome.neighbors)) > biome.ncount) + and (not biome.near_nodes or table.getn(minetest.find_nodes_in_area({x=pos.x-biome.near_nodes_size, y=pos.y-biome.near_nodes_vertical, z=pos.z-biome.near_nodes_size}, {x=pos.x+biome.near_nodes_size, y=pos.y+biome.near_nodes_vertical, z=pos.z+biome.near_nodes_size}, biome.near_nodes)) >= biome.near_nodes_count) and math.random(1,100) > biome.rarity - and (not biome.below_nodes or string.find(dump(biome.below_nodes), minetest.env:get_node({x=pos.x, y=pos.y-1, z=pos.z}).name) ) + and (not biome.below_nodes or string.find(dump(biome.below_nodes), minetest.get_node({x=pos.x, y=pos.y-1, z=pos.z}).name) ) then table.insert(in_biome_nodes, pos) num_in_biome_nodes = num_in_biome_nodes + 1 @@ -142,27 +142,27 @@ function plantslib:search_for_surfaces(minp, maxp, biomedef, node_or_function_or pos.y = pos.y-1 end local p_top = { x = pos.x, y = pos.y + 1, z = pos.z } - if not(biome.avoid_radius and biome.avoid_nodes) or not minetest.env:find_node_near(p_top, biome.avoid_radius + math.random(-1.5,1.5), biome.avoid_nodes) then + if not(biome.avoid_radius and biome.avoid_nodes) or not minetest.find_node_near(p_top, biome.avoid_radius + math.random(-1.5,1.5), biome.avoid_nodes) then spawned = true if biome.delete_above then - minetest.env:remove_node(p_top) - minetest.env:remove_node({x=p_top.x, y=p_top.y+1, z=p_top.z}) + minetest.remove_node(p_top) + minetest.remove_node({x=p_top.x, y=p_top.y+1, z=p_top.z}) end if biome.delete_above_surround then - minetest.env:remove_node({x=p_top.x-1, y=p_top.y, z=p_top.z}) - minetest.env:remove_node({x=p_top.x+1, y=p_top.y, z=p_top.z}) - minetest.env:remove_node({x=p_top.x, y=p_top.y, z=p_top.z-1}) - minetest.env:remove_node({x=p_top.x, y=p_top.y, z=p_top.z+1}) + minetest.remove_node({x=p_top.x-1, y=p_top.y, z=p_top.z}) + minetest.remove_node({x=p_top.x+1, y=p_top.y, z=p_top.z}) + minetest.remove_node({x=p_top.x, y=p_top.y, z=p_top.z-1}) + minetest.remove_node({x=p_top.x, y=p_top.y, z=p_top.z+1}) - minetest.env:remove_node({x=p_top.x-1, y=p_top.y+1, z=p_top.z}) - minetest.env:remove_node({x=p_top.x+1, y=p_top.y+1, z=p_top.z}) - minetest.env:remove_node({x=p_top.x, y=p_top.y+1, z=p_top.z-1}) - minetest.env:remove_node({x=p_top.x, y=p_top.y+1, z=p_top.z+1}) + minetest.remove_node({x=p_top.x-1, y=p_top.y+1, z=p_top.z}) + minetest.remove_node({x=p_top.x+1, y=p_top.y+1, z=p_top.z}) + minetest.remove_node({x=p_top.x, y=p_top.y+1, z=p_top.z-1}) + minetest.remove_node({x=p_top.x, y=p_top.y+1, z=p_top.z+1}) end if biome.spawn_replace_node then - minetest.env:remove_node(pos) + minetest.remove_node(pos) end if type(node_or_function_or_model) == "table" then @@ -177,7 +177,7 @@ function plantslib:search_for_surfaces(minp, maxp, biomedef, node_or_function_or plantslib:dbg("Executed that function in ".. (os.clock()-t2)*1000 .."ms") else plantslib:dbg("Add node: "..node_or_function_or_model.." at ("..dump(p_top)..")") - minetest.env:add_node(p_top, { name = node_or_function_or_model }) + minetest.add_node(p_top, { name = node_or_function_or_model }) end end else @@ -225,8 +225,8 @@ function plantslib:spawn_on_surfaces(sd,sp,sr,sc,ss,sa) neighbors = biome.neighbors, action = function(pos, node, active_object_count, active_object_count_wider) local p_top = { x = pos.x, y = pos.y + 1, z = pos.z } - local n_top = minetest.env:get_node(p_top) - local perlin1 = minetest.env:get_perlin(biome.seed_diff, perlin_octaves, perlin_persistence, perlin_scale) + local n_top = minetest.get_node(p_top) + local perlin1 = minetest.get_perlin(biome.seed_diff, perlin_octaves, perlin_persistence, perlin_scale) local noise1 = perlin1:get2d({x=p_top.x, y=p_top.z}) local noise2 = plantslib.perlin_temperature:get2d({x=p_top.x, y=p_top.z}) local noise3 = plantslib.perlin_humidity:get2d({x=p_top.x+150, y=p_top.z+50}) @@ -236,13 +236,13 @@ function plantslib:spawn_on_surfaces(sd,sp,sr,sc,ss,sa) and noise3 <= biome.humidity_min and noise3 >= biome.humidity_max and plantslib:is_node_loaded(p_top) then - local n_light = minetest.env:get_node_light(p_top, nil) - if (not(biome.avoid_nodes and biome.avoid_radius) or not minetest.env:find_node_near(p_top, biome.avoid_radius + math.random(-1.5,2), biome.avoid_nodes)) + local n_light = minetest.get_node_light(p_top, nil) + if (not(biome.avoid_nodes and biome.avoid_radius) or not minetest.find_node_near(p_top, biome.avoid_radius + math.random(-1.5,2), biome.avoid_nodes)) and n_light >= biome.light_min and n_light <= biome.light_max - and (not(biome.neighbors and biome.ncount) or table.getn(minetest.env:find_nodes_in_area({x=pos.x-1, y=pos.y, z=pos.z-1}, {x=pos.x+1, y=pos.y, z=pos.z+1}, biome.neighbors)) > biome.ncount ) - and (not(biome.near_nodes and biome.near_nodes_count and biome.near_nodes_size) or table.getn(minetest.env:find_nodes_in_area({x=pos.x-biome.near_nodes_size, y=pos.y-biome.near_nodes_vertical, z=pos.z-biome.near_nodes_size}, {x=pos.x+biome.near_nodes_size, y=pos.y+biome.near_nodes_vertical, z=pos.z+biome.near_nodes_size}, biome.near_nodes)) >= biome.near_nodes_count) - and (not(biome.air_count and biome.air_size) or table.getn(minetest.env:find_nodes_in_area({x=p_top.x-biome.air_size, y=p_top.y, z=p_top.z-biome.air_size}, {x=p_top.x+biome.air_size, y=p_top.y, z=p_top.z+biome.air_size}, "air")) >= biome.air_count) + and (not(biome.neighbors and biome.ncount) or table.getn(minetest.find_nodes_in_area({x=pos.x-1, y=pos.y, z=pos.z-1}, {x=pos.x+1, y=pos.y, z=pos.z+1}, biome.neighbors)) > biome.ncount ) + and (not(biome.near_nodes and biome.near_nodes_count and biome.near_nodes_size) or table.getn(minetest.find_nodes_in_area({x=pos.x-biome.near_nodes_size, y=pos.y-biome.near_nodes_vertical, z=pos.z-biome.near_nodes_size}, {x=pos.x+biome.near_nodes_size, y=pos.y+biome.near_nodes_vertical, z=pos.z+biome.near_nodes_size}, biome.near_nodes)) >= biome.near_nodes_count) + and (not(biome.air_count and biome.air_size) or table.getn(minetest.find_nodes_in_area({x=p_top.x-biome.air_size, y=p_top.y, z=p_top.z-biome.air_size}, {x=p_top.x+biome.air_size, y=p_top.y, z=p_top.z+biome.air_size}, "air")) >= biome.air_count) and pos.y >= biome.min_elevation and pos.y <= biome.max_elevation then @@ -250,12 +250,12 @@ function plantslib:spawn_on_surfaces(sd,sp,sr,sc,ss,sa) if biome.alt_wallnode and walldir then if n_top.name == "air" then plantslib:dbg("Spawn: "..biome.alt_wallnode.." on top of ("..dump(pos)..") against wall "..walldir) - minetest.env:add_node(p_top, { name = biome.alt_wallnode, param2 = walldir }) + minetest.add_node(p_top, { name = biome.alt_wallnode, param2 = walldir }) end else - local currentsurface = minetest.env:get_node(pos).name + local currentsurface = minetest.get_node(pos).name if currentsurface ~= "default:water_source" - or (currentsurface == "default:water_source" and table.getn(minetest.env:find_nodes_in_area({x=pos.x, y=pos.y-biome.depth_max-1, z=pos.z}, {x=pos.x, y=pos.y, z=pos.z}, {"default:dirt", "default:dirt_with_grass", "default:sand"})) > 0 ) + or (currentsurface == "default:water_source" and table.getn(minetest.find_nodes_in_area({x=pos.x, y=pos.y-biome.depth_max-1, z=pos.z}, {x=pos.x, y=pos.y, z=pos.z}, {"default:dirt", "default:dirt_with_grass", "default:sand"})) > 0 ) then local rnd = math.random(1, biome.spawn_plants_count) local plant_to_spawn = biome.spawn_plants[rnd] @@ -271,23 +271,23 @@ function plantslib:spawn_on_surfaces(sd,sp,sr,sc,ss,sa) elseif not biome.spawn_on_side and not biome.spawn_on_bottom and not biome.spawn_replace_node then if n_top.name == "air" then plantslib:dbg("Spawn: "..plant_to_spawn.." on top of ("..dump(pos).."); facedir="..fdir) - minetest.env:add_node(p_top, { name = plant_to_spawn, param2 = fdir }) + minetest.add_node(p_top, { name = plant_to_spawn, param2 = fdir }) end elseif biome.spawn_replace_node then - plantslib:dbg("Spawn: "..plant_to_spawn.." to replace "..minetest.env:get_node(pos).name.." at ("..dump(pos)..")") - minetest.env:add_node(pos, { name = plant_to_spawn, param2 = fdir }) + plantslib:dbg("Spawn: "..plant_to_spawn.." to replace "..minetest.get_node(pos).name.." at ("..dump(pos)..")") + minetest.add_node(pos, { name = plant_to_spawn, param2 = fdir }) elseif biome.spawn_on_side then local onside = plantslib:find_open_side(pos) if onside then plantslib:dbg("Spawn: "..plant_to_spawn.." at side of ("..dump(pos).."), facedir "..onside.facedir.."") - minetest.env:add_node(onside.newpos, { name = plant_to_spawn, param2 = onside.facedir }) + minetest.add_node(onside.newpos, { name = plant_to_spawn, param2 = onside.facedir }) end elseif biome.spawn_on_bottom then - if minetest.env:get_node({x=pos.x, y=pos.y-1, z=pos.z}).name == "air" then + if minetest.get_node({x=pos.x, y=pos.y-1, z=pos.z}).name == "air" then plantslib:dbg("Spawn: "..plant_to_spawn.." on bottom of ("..dump(pos)..")") - minetest.env:add_node({x=pos.x, y=pos.y-1, z=pos.z}, { name = plant_to_spawn, param2 = fdir} ) + minetest.add_node({x=pos.x, y=pos.y-1, z=pos.z}, { name = plant_to_spawn, param2 = fdir} ) end end end @@ -319,9 +319,9 @@ function plantslib:grow_plants(opts) action = function(pos, node, active_object_count, active_object_count_wider) local p_top = {x=pos.x, y=pos.y+1, z=pos.z} local p_bot = {x=pos.x, y=pos.y-1, z=pos.z} - local n_top = minetest.env:get_node(p_top) - local n_bot = minetest.env:get_node(p_bot) - local root_node = minetest.env:get_node({x=pos.x, y=pos.y-options.height_limit, z=pos.z}) + local n_top = minetest.get_node(p_top) + local n_bot = minetest.get_node(p_bot) + local root_node = minetest.get_node({x=pos.x, y=pos.y-options.height_limit, z=pos.z}) local walldir = nil if options.need_wall and options.verticals_list then walldir = plantslib:find_adjacent_wall(p_top, options.verticals_list) @@ -332,17 +332,17 @@ function plantslib:grow_plants(opts) -- to dry shrub in desert if n_bot.name == options.dry_early_node and options.grow_plant == "junglegrass:short" then plantslib:dbg("Die: "..options.grow_plant.." becomes default:dry_shrub at ("..dump(pos)..")") - minetest.env:add_node(pos, { name = "default:dry_shrub" }) + minetest.add_node(pos, { name = "default:dry_shrub" }) elseif options.grow_vertically and walldir then if plantslib:search_downward(pos, options.height_limit, options.ground_nodes) then plantslib:dbg("Grow "..options.grow_plant.." vertically to "..dump(p_top)) - minetest.env:add_node(p_top, { name = options.grow_plant, param2 = walldir}) + minetest.add_node(p_top, { name = options.grow_plant, param2 = walldir}) end elseif not options.grow_result and not options.grow_function then plantslib:dbg("Die: "..options.grow_plant.." at ("..dump(pos)..")") - minetest.env:remove_node(pos) + minetest.remove_node(pos) else plantslib:replace_object(pos, options.grow_result, options.grow_function, options.facedir, options.seed_diff) @@ -360,11 +360,11 @@ function plantslib:replace_object(pos, replacement, grow_function, walldir, seed plantslib:dbg("replace_object called, growtype="..dump(grow_function)) if growtype == "table" then plantslib:dbg("Grow: spawn tree at "..dump(pos)) - minetest.env:remove_node(pos) + minetest.remove_node(pos) plantslib:grow_tree(pos, grow_function) return elseif growtype == "string" then - local perlin1 = minetest.env:get_perlin(seeddiff, perlin_octaves, perlin_persistence, perlin_scale) + local perlin1 = minetest.get_perlin(seeddiff, perlin_octaves, perlin_persistence, perlin_scale) local noise1 = perlin1:get2d({x=pos.x, y=pos.z}) local noise2 = plantslib.perlin_temperature:get2d({x=pos.x, y=pos.z}) plantslib:dbg("Grow: call function "..grow_function.."("..dump_pos(pos)..","..noise1..","..noise2..","..dump(walldir)..")") @@ -372,7 +372,7 @@ function plantslib:replace_object(pos, replacement, grow_function, walldir, seed return elseif growtype == "nil" then plantslib:dbg("Grow: place "..replacement.." at ("..dump(pos)..") on wall "..dump(walldir)) - minetest.env:add_node(pos, { name = replacement, param2 = walldir}) + minetest.add_node(pos, { name = replacement, param2 = walldir}) return elseif growtype ~= "nil" and growtype ~= "string" and growtype ~= "table" then error("Invalid grow function "..dump(grow_function).." used on object at ("..dump(pos)..")") @@ -384,10 +384,10 @@ end function plantslib:find_adjacent_wall(pos, verticals) local verts = dump(verticals) - if string.find(verts, minetest.env:get_node({ x=pos.x-1, y=pos.y, z=pos.z }).name) then return 3 end - if string.find(verts, minetest.env:get_node({ x=pos.x+1, y=pos.y, z=pos.z }).name) then return 2 end - if string.find(verts, minetest.env:get_node({ x=pos.x , y=pos.y, z=pos.z-1 }).name) then return 5 end - if string.find(verts, minetest.env:get_node({ x=pos.x , y=pos.y, z=pos.z+1 }).name) then return 4 end + if string.find(verts, minetest.get_node({ x=pos.x-1, y=pos.y, z=pos.z }).name) then return 3 end + if string.find(verts, minetest.get_node({ x=pos.x+1, y=pos.y, z=pos.z }).name) then return 2 end + if string.find(verts, minetest.get_node({ x=pos.x , y=pos.y, z=pos.z-1 }).name) then return 5 end + if string.find(verts, minetest.get_node({ x=pos.x , y=pos.y, z=pos.z+1 }).name) then return 4 end return nil end @@ -397,7 +397,7 @@ end function plantslib:search_downward(pos, heightlimit, ground) for i = 0, heightlimit do - if string.find(dump(ground), minetest.env:get_node({x=pos.x, y=pos.y-i, z = pos.z}).name) then + if string.find(dump(ground), minetest.get_node({x=pos.x, y=pos.y-i, z = pos.z}).name) then return {x=pos.x, y=pos.y-i, z = pos.z} end end @@ -405,16 +405,16 @@ function plantslib:search_downward(pos, heightlimit, ground) end function plantslib:find_open_side(pos) - if minetest.env:get_node({ x=pos.x-1, y=pos.y, z=pos.z }).name == "air" then + if minetest.get_node({ x=pos.x-1, y=pos.y, z=pos.z }).name == "air" then return {newpos = { x=pos.x-1, y=pos.y, z=pos.z }, facedir = 2} end - if minetest.env:get_node({ x=pos.x+1, y=pos.y, z=pos.z }).name == "air" then + if minetest.get_node({ x=pos.x+1, y=pos.y, z=pos.z }).name == "air" then return {newpos = { x=pos.x+1, y=pos.y, z=pos.z }, facedir = 3} end - if minetest.env:get_node({ x=pos.x, y=pos.y, z=pos.z-1 }).name == "air" then + if minetest.get_node({ x=pos.x, y=pos.y, z=pos.z-1 }).name == "air" then return {newpos = { x=pos.x, y=pos.y, z=pos.z-1 }, facedir = 4} end - if minetest.env:get_node({ x=pos.x, y=pos.y, z=pos.z+1 }).name == "air" then + if minetest.get_node({ x=pos.x, y=pos.y, z=pos.z+1 }).name == "air" then return {newpos = { x=pos.x, y=pos.y, z=pos.z+1 }, facedir = 5} end return nil @@ -425,7 +425,7 @@ end function plantslib:generate_tree(pos, node_or_function_or_model) local t=os.clock() - minetest.env:spawn_tree(pos, node_or_function_or_model) + minetest.spawn_tree(pos, node_or_function_or_model) plantslib:dbg("Generated one tree in ".. (os.clock()-t)*1000 .."ms") end @@ -433,7 +433,7 @@ end function plantslib:grow_tree(pos, node_or_function_or_model) local t=os.clock() - minetest.env:spawn_tree(pos, node_or_function_or_model) + minetest.spawn_tree(pos, node_or_function_or_model) plantslib:dbg("Generated one tree in ".. (os.clock()-t)*1000 .."ms") end