Add AUTOBUILD_CHUNKDIST

This commit is contained in:
Wuzzy 2022-04-16 01:33:59 +02:00
parent f62368898f
commit be986812aa

View File

@ -18,6 +18,8 @@ local AUTOBUILD_UPDATE_TIME = 1.0
-- x/y/z size of chunks to generate in autobuild mode. -- x/y/z size of chunks to generate in autobuild mode.
local AUTOBUILD_SIZE = 16 local AUTOBUILD_SIZE = 16
-- Amount of chunks to generate around player
local AUTOBUILD_CHUNKDIST = 2
-- Color of the formspec box[] element -- Color of the formspec box[] element
@ -763,42 +765,23 @@ minetest.register_globalstep(function(dtime)
local pos = vector.round(player:get_pos()) local pos = vector.round(player:get_pos())
pos = sidelen_pos(pos, AUTOBUILD_SIZE) pos = sidelen_pos(pos, AUTOBUILD_SIZE)
local neighbors = { local neighbors = { vector.new(0, 0, 0) }
vector.new(0, 0, 0), local c = AUTOBUILD_CHUNKDIST
vector.new(0, 0, -1), local cc = c
vector.new(0, 0, 1), if current_perlin.dimensions == 2 then
vector.new(0, -1, -1), cc = 0
vector.new(0, -1, 0), end
vector.new(0, -1, 1), for cx=-c, c do
vector.new(0, 1, -1), for cy=-cc, cc do
vector.new(0, 1, 0), for cz=-c, c do
vector.new(0, 1, 1), table.insert(neighbors, vector.new(cx, cy, cz))
vector.new(-1, -1, -1), end
vector.new(-1, -1, 0), end
vector.new(-1, -1, 1), end
vector.new(-1, 0, -1),
vector.new(-1, 0, 0),
vector.new(-1, 0, 1),
vector.new(-1, 1, -1),
vector.new(-1, 1, 0),
vector.new(-1, 1, 1),
vector.new(1, -1, -1),
vector.new(1, -1, 0),
vector.new(1, -1, 1),
vector.new(1, 0, -1),
vector.new(1, 0, 0),
vector.new(1, 0, 1),
vector.new(1, 1, -1),
vector.new(1, 1, 0),
vector.new(1, 1, 1),
}
for n=1, #neighbors do for n=1, #neighbors do
if current_perlin.dimensions == 3 or neighbors[n].y == 0 then local offset = vector.multiply(neighbors[n], AUTOBUILD_SIZE)
local offset = vector.multiply(neighbors[n], 16) local npos = vector.add(pos, offset)
local npos = vector.add(pos, offset) build(npos, player:get_player_name())
build(npos, player:get_player_name())
end
end end
end end
end) end)