1
0
mirror of https://github.com/ComfyFactory/ComfyFactorio.git synced 2025-01-04 00:15:45 +02:00
ComfyFactorio/tools/map_pregen.lua
2019-03-13 17:09:06 +01:00

35 lines
1.2 KiB
Lua

local event = require 'utils.event'
local function on_tick(event)
if global.map_pregeneration_is_active then
if game.tick % 600 == 0 then
local r = 1
for x = 1, global.chunk_radius, 1 do
if game.forces.map_pregen.is_chunk_charted(game.players[1].surface, {x,x}) then r = x end
end
game.print("Map chunks are generating... current radius " .. r, { r=0.22, g=0.99, b=0.99})
if game.forces.map_pregen.is_chunk_charted(game.players[1].surface, {global.chunk_radius, global.chunk_radius}) then
game.print("Map generation done!", {r=0.22, g=0.99, b=0.99})
game.players[1].force = game.forces["player"]
global.map_pregeneration_is_active = nil
end
end
end
end
function map_pregen(chunk_radius)
if chunk_radius then
global.chunk_radius = chunk_radius
else
global.chunk_radius = 32
end
local radius = global.chunk_radius * 32
if not game.forces.map_pregen then game.create_force("map_pregen") end
game.players[1].force = game.forces["map_pregen"]
game.forces.map_pregen.chart(game.players[1].surface,{{x = -1 * radius, y = -1 * radius}, {x = radius, y = radius}})
global.map_pregeneration_is_active = true
end
event.add(defines.events.on_tick, on_tick)