mirror of
https://github.com/luanti-org/minetest_game.git
synced 2025-07-06 06:30:40 -04:00
Introduce default.do_with_area
This commit is contained in:
parent
0351c66915
commit
23415c7e16
3 changed files with 157 additions and 198 deletions
|
@ -835,3 +835,17 @@ function default.can_interact_with_node(player, pos)
|
|||
|
||||
return false
|
||||
end
|
||||
|
||||
function default.do_with_area(p1, p2, func)
|
||||
local vm = VoxelManip()
|
||||
local minp, maxp = vm:read_from_map(p1, p2)
|
||||
local va = VoxelArea:new({MinEdge = minp, MaxEdge = maxp})
|
||||
local data = vm:get_data()
|
||||
func(va, data)
|
||||
vm:set_data(data)
|
||||
vm:write_to_map()
|
||||
vm:update_liquids()
|
||||
if vm.close ~= nil then
|
||||
vm:close()
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue