179c993ee7
The skybox textures have to follow this naming convention to be auto-detected by `ctf_map`: `<mapname>_skybox_<1-6>.png`
45 lines
1.2 KiB
Lua
45 lines
1.2 KiB
Lua
ctf_map = {}
|
|
|
|
function ctf_map.get_team_relative_z(player)
|
|
local name = player:get_player_name()
|
|
local tname = ctf.player(name).team
|
|
return (tname == "red" and 1 or -1) * player:get_pos().z
|
|
end
|
|
|
|
-- Convenience function to check whether a file (or multiple files) exists in mapdir
|
|
function ctf_map.file_exists(subdir, target)
|
|
local list = minetest.get_dir_list(ctf_map.mapdir .. subdir, false)
|
|
if type(target) == "string" then
|
|
return table.indexof(list, target) ~= 1
|
|
elseif type(target) == "table" then
|
|
for _, filename in pairs(target) do
|
|
if table.indexof(list, filename) == -1 then
|
|
return false
|
|
end
|
|
end
|
|
return true
|
|
end
|
|
end
|
|
|
|
-- Overridden by server mods
|
|
function ctf_map.can_cross(player)
|
|
return false
|
|
end
|
|
|
|
local modpath = minetest.get_modpath("ctf_map")
|
|
dofile(modpath .. "/nodes.lua")
|
|
dofile(modpath .. "/emerge.lua")
|
|
dofile(modpath .. "/barrier.lua")
|
|
|
|
if minetest.get_modpath("ctf") then
|
|
dofile(modpath .. "/base.lua")
|
|
dofile(modpath .. "/chest.lua")
|
|
dofile(modpath .. "/give_initial_stuff.lua")
|
|
dofile(modpath .. "/time_sky.lua")
|
|
dofile(modpath .. "/schem_map.lua")
|
|
dofile(modpath .. "/maps_catalog.lua")
|
|
|
|
ctf_match.register_on_build_time_end(ctf_map.remove_middle_barrier)
|
|
else
|
|
dofile(modpath .. "/map_maker.lua")
|
|
end
|