mapsync-cd2025/init.lua
BuckarooBanzay 88ff77dcba hyperloop compat
fixes #7
2024-08-14 20:11:24 +02:00

84 lines
2.1 KiB
Lua

local MP = minetest.get_modpath("mapsync")
local storage = minetest.get_mod_storage()
-- mod namespace
mapsync = {
-- current major version
version = 1,
-- time of last map change (for auto_updating / change detection)
last_mapchange = os.time(),
-- mod storage
storage = storage,
-- autosave feature
autosave = storage:get_int("autosave") == 1,
}
-- secure/insecure environment
local global_env = _G
local ie = minetest.request_insecure_environment and minetest.request_insecure_environment()
if ie then
minetest.log("action", "[mapsync] using insecure environment")
-- register insecure environment
global_env = ie
end
-- api surface
dofile(MP.."/api.lua")
dofile(MP.."/privs.lua")
-- utilities / helpers
dofile(MP.."/pos_iterator.lua")
dofile(MP.."/encoding.lua")
dofile(MP.."/serialize_mapblock.lua")
dofile(MP.."/deserialize_mapblock.lua")
dofile(MP.."/localize_nodeids.lua")
dofile(MP.."/functions.lua")
-- diff / patch
dofile(MP.."/create_diff.lua")
dofile(MP.."/apply_diff.lua")
loadfile(MP.."/patch.lua")(global_env)
-- save/load
dofile(MP.."/auto_save.lua")
dofile(MP.."/auto_update.lua")
loadfile(MP.."/save.lua")(global_env)
loadfile(MP.."/data.lua")(global_env)
dofile(MP.."/load.lua")
dofile(MP.."/mapgen.lua")
-- hud stuff
dofile(MP.."/hud.lua")
-- pass on global env (secure/insecure)
loadfile(MP.."/serialize_chunk.lua")(global_env)
loadfile(MP.."/parse_chunk.lua")(global_env)
loadfile(MP.."/deserialize_chunk.lua")(global_env)
-- mod integrations
if minetest.get_modpath("travelnet") then
dofile(MP.."/integrations/travelnet.lua")
end
if minetest.get_modpath("advtrains") then
dofile(MP.."/integrations/advtrains.lua")
end
if minetest.get_modpath("hyperloop") then
dofile(MP.."/integrations/hyperloop.lua")
end
if minetest.get_modpath("elevator") then
dofile(MP.."/integrations/elevator.lua")
end
-- testing
if minetest.get_modpath("mtt") and mtt.enabled then
dofile(MP.."/init.spec.lua")
dofile(MP.."/functions.spec.lua")
dofile(MP.."/data.spec.lua")
dofile(MP.."/diff.spec.lua")
dofile(MP.."/patch.spec.lua")
dofile(MP.."/api.spec.lua")
dofile(MP.."/serialize_chunk.spec.lua")
end