local util = include( "modules/util" )
local serverdefs = include( "modules/serverdefs" )
local CORP_NAMES = serverdefs.CORP_NAMES
local ESCAPE_MISSION_TAGS = { "vault", "ceo_office", "security", "executive_terminals", "server_farm", "nanofab", "cyberlab", "detention_centre" }
local NO_CFO_MISSION_TAGS = { "vault", "security", "executive_terminals", "server_farm", "nanofab", "cyberlab", "detention_centre" }
local DEFAULT_MISSION_TAGS = util.tmerge( { "2max" }, CORP_NAMES, ESCAPE_MISSION_TAGS )
local DEFAULT_MISSION_TAGS_FIRST = util.tmerge( { "2max" }, CORP_NAMES, NO_CFO_MISSION_TAGS )
local simdefs = {
map_colours_normal =
{
asia = {14/255, 54/255, 79/255, 1},
europe = {22/255, 56/255, 56/255, 1},
sa = {42/255, 61/255, 30/255, 1},
na = {28/255, 36/255, 64/255, 1},
omni = {255/255,175/255,36/255, 1},
atlantis = {17/255,61/255,17/255},
},
map_colours_highlight =
{
asia = {89/255,138/255,221/255, 1},
europe = {180/255,180/255,180/255, 1},
sa = {200/255, 125/255, 13/255, 1},
na = {187/255,82/255,200/255, 1},
omni = {255/255,175/255,36/255, 1},
atlantis = {93/255,190/255,51/255},
},
map_colours_unhighlight =
{
asia = {34/255,57/255,56/255,.5},
europe = {34/255,57/255,56/255,.5},
sa = {34/255,57/255,56/255,.5},
na = {34/255,57/255,56/255,.5},
omni = {255/255,175/255,36/255, 1},
atlantis = {34/255,57/255,56/255,.5},
},
CORP_NAMES = CORP_NAMES,
ESCAPE_MISSION_TAGS = ESCAPE_MISSION_TAGS,
NO_CFO_MISSION_TAGS = NO_CFO_MISSION_TAGS,
DEFAULT_MISSION_TAGS = DEFAULT_MISSION_TAGS,
DEFAULT_MISSION_TAGS_FIRST = DEFAULT_MISSION_TAGS_FIRST,
}
local _simdefs = include("sim/simdefs")
for k, v in pairs(simdefs) do
rawset(_simdefs,k,v)
end
local idx = 4
local function tryGet(t,...)
local args = {...}
if t[table.remove(args,1)] then
if #args <= 0 then
return true
else
return tryGet(t,unpack(args))
end
end
return false
end
if tryGet(_simdefs,"SCREEN_CUSTOMS","map_screen.lua","widgets",4,"children",1,"children") then
idx = #_simdefs.SCREEN_CUSTOMS["map_screen.lua"].widgets[4].children[1].children
end
local function apply()
table.insert(CORP_NAMES,"atlantis")
table.insert(DEFAULT_MISSION_TAGS,"atlantis")
table.insert(DEFAULT_MISSION_TAGS_FIRST,"atlantis")
_simdefs.SCREEN_CUSTOMS["map_screen.lua"].widgets[4].children[1].children[idx + 1].isVisible = true
end
local function reset()
local array = include("modules/array")
array.removeElement(CORP_NAMES,"atlantis")
array.removeElement(DEFAULT_MISSION_TAGS,"atlantis")
array.removeElement(DEFAULT_MISSION_TAGS_FIRST,"atlantis")
_simdefs.SCREEN_CUSTOMS["map_screen.lua"].widgets[4].children[1].children[idx + 1].isVisible = false
end
log:write("SIM IDX "..tostring(idx))
_simdefs.SCREEN_CUSTOMS = util.extend(_simdefs.SCREEN_CUSTOMS){
["map_screen.lua"] = {
widgets = {
[4] = {
children = {
[1] = {
children = {
[idx + 1] = {
name = [[atlantis]],
isVisible = true,
noInput = false,
anchor = 1,
rotation = 0,
x = 0,
xpx = true,
y = 0,
ypx = true,
w = 3552,
wpx = true,
h = 610,
hpx = true,
sx = 1,
sy = 1,
scissor =
{
-0.166666001081467,
-0.5,
0.166633993387222,
0.5,
},
ctor = [[image]],
color =
{
1,
1,
1,
1,
},
tilew = 3,
tileh = 1,
images =
{
{
file = [[gui/map_atlantis.png]],
name = [[]],
}
}
}
}
}
}
}
}
}
}
return {
apply = apply,
reset = reset,
}
bG9jYWwgdXRpbCA9IGluY2x1ZGUoICJtb2R1bGVzL3V0aWwiICkKbG9jYWwgc2VydmVyZGVmcyA9IGluY2x1ZGUoICJtb2R1bGVzL3NlcnZlcmRlZnMiICkKCmxvY2FsIENPUlBfTkFNRVMgPSBzZXJ2ZXJkZWZzLkNPUlBfTkFNRVMKbG9jYWwgRVNDQVBFX01JU1NJT05fVEFHUyA9IHsgInZhdWx0IiwgImNlb19vZmZpY2UiLCAic2VjdXJpdHkiLCAiZXhlY3V0aXZlX3Rlcm1pbmFscyIsICJzZXJ2ZXJfZmFybSIsICJuYW5vZmFiIiwgImN5YmVybGFiIiwgImRldGVudGlvbl9jZW50cmUiIH0KbG9jYWwgTk9fQ0ZPX01JU1NJT05fVEFHUyA9IHsgInZhdWx0IiwgInNlY3VyaXR5IiwgImV4ZWN1dGl2ZV90ZXJtaW5hbHMiLCAic2VydmVyX2Zhcm0iLCAibmFub2ZhYiIsICJjeWJlcmxhYiIsICJkZXRlbnRpb25fY2VudHJlIiB9CmxvY2FsIERFRkFVTFRfTUlTU0lPTl9UQUdTID0gdXRpbC50bWVyZ2UoIHsgIjJtYXgiIH0sIENPUlBfTkFNRVMsIEVTQ0FQRV9NSVNTSU9OX1RBR1MgKQpsb2NhbCBERUZBVUxUX01JU1NJT05fVEFHU19GSVJTVCA9IHV0aWwudG1lcmdlKCB7ICIybWF4IiB9LCBDT1JQX05BTUVTLCBOT19DRk9fTUlTU0lPTl9UQUdTICkKCmxvY2FsIHNpbWRlZnMgPSB7CgltYXBfY29sb3Vyc19ub3JtYWwgPQoJewoJCWFzaWEgPSB7MTQvMjU1LCA1NC8yNTUsIDc5LzI1NSwgMX0sCgkJZXVyb3BlID0gezIyLzI1NSwgNTYvMjU1LCA1Ni8yNTUsIDF9LAoJCXNhID0gezQyLzI1NSwgNjEvMjU1LCAzMC8yNTUsIDF9LAoJCW5hID0gezI4LzI1NSwgMzYvMjU1LCA2NC8yNTUsIDF9LAoJCW9tbmkgPSB7MjU1LzI1NSwxNzUvMjU1LDM2LzI1NSwgMX0sCQoJCWF0bGFudGlzID0gezE3LzI1NSw2MS8yNTUsMTcvMjU1fSwKCX0sCgltYXBfY29sb3Vyc19oaWdobGlnaHQgPQoJewoJCWFzaWEgPSB7ODkvMjU1LDEzOC8yNTUsMjIxLzI1NSwgMX0sCgkJZXVyb3BlID0gezE4MC8yNTUsMTgwLzI1NSwxODAvMjU1LCAxfSwKCQlzYSA9IHsyMDAvMjU1LCAxMjUvMjU1LCAxMy8yNTUsIDF9LAoJCW5hID0gezE4Ny8yNTUsODIvMjU1LDIwMC8yNTUsIDF9LAoJCW9tbmkgPSB7MjU1LzI1NSwxNzUvMjU1LDM2LzI1NSwgMX0sCgkJYXRsYW50aXMgPSB7OTMvMjU1LDE5MC8yNTUsNTEvMjU1fSwKCX0sCgoJbWFwX2NvbG91cnNfdW5oaWdobGlnaHQgPQoJewoJCWFzaWEgPSB7MzQvMjU1LDU3LzI1NSw1Ni8yNTUsLjV9LAoJCWV1cm9wZSA9IHszNC8yNTUsNTcvMjU1LDU2LzI1NSwuNX0sCgkJc2EgPSB7MzQvMjU1LDU3LzI1NSw1Ni8yNTUsLjV9LAoJCW5hID0gezM0LzI1NSw1Ny8yNTUsNTYvMjU1LC41fSwKCQlvbW5pID0gezI1NS8yNTUsMTc1LzI1NSwzNi8yNTUsIDF9LAoJCWF0bGFudGlzID0gezM0LzI1NSw1Ny8yNTUsNTYvMjU1LC41fSwJCgl9LAoJCglDT1JQX05BTUVTID0gQ09SUF9OQU1FUywKCUVTQ0FQRV9NSVNTSU9OX1RBR1MgPSBFU0NBUEVfTUlTU0lPTl9UQUdTLAoJTk9fQ0ZPX01JU1NJT05fVEFHUyA9IE5PX0NGT19NSVNTSU9OX1RBR1MsCglERUZBVUxUX01JU1NJT05fVEFHUyA9IERFRkFVTFRfTUlTU0lPTl9UQUdTLAoJREVGQVVMVF9NSVNTSU9OX1RBR1NfRklSU1QgPSBERUZBVUxUX01JU1NJT05fVEFHU19GSVJTVCwKfQoJCmxvY2FsIF9zaW1kZWZzID0gaW5jbHVkZSgic2ltL3NpbWRlZnMiKQoKZm9yIGssIHYgaW4gcGFpcnMoc2ltZGVmcykgZG8KCXJhd3NldChfc2ltZGVmcyxrLHYpCmVuZAoKbG9jYWwgaWR4ID0gNAoKbG9jYWwgZnVuY3Rpb24gdHJ5R2V0KHQsLi4uKQoJbG9jYWwgYXJncyA9IHsuLi59CglpZiB0W3RhYmxlLnJlbW92ZShhcmdzLDEpXSB0aGVuCgkJaWYgI2FyZ3MgPD0gMCB0aGVuCgkJCXJldHVybiB0cnVlCgkJZWxzZQoJCQlyZXR1cm4gdHJ5R2V0KHQsdW5wYWNrKGFyZ3MpKQoJCWVuZAoJZW5kCglyZXR1cm4gZmFsc2UKZW5kCgppZiB0cnlHZXQoX3NpbWRlZnMsIlNDUkVFTl9DVVNUT01TIiwibWFwX3NjcmVlbi5sdWEiLCJ3aWRnZXRzIiw0LCJjaGlsZHJlbiIsMSwiY2hpbGRyZW4iKSB0aGVuCglpZHggPSAjX3NpbWRlZnMuU0NSRUVOX0NVU1RPTVNbIm1hcF9zY3JlZW4ubHVhIl0ud2lkZ2V0c1s0XS5jaGlsZHJlblsxXS5jaGlsZHJlbgplbmQKCQoKbG9jYWwgZnVuY3Rpb24gYXBwbHkoKQoJdGFibGUuaW5zZXJ0KENPUlBfTkFNRVMsImF0bGFudGlzIikKCXRhYmxlLmluc2VydChERUZBVUxUX01JU1NJT05fVEFHUywiYXRsYW50aXMiKQoJdGFibGUuaW5zZXJ0KERFRkFVTFRfTUlTU0lPTl9UQUdTX0ZJUlNULCJhdGxhbnRpcyIpCglfc2ltZGVmcy5TQ1JFRU5fQ1VTVE9NU1sibWFwX3NjcmVlbi5sdWEiXS53aWRnZXRzWzRdLmNoaWxkcmVuWzFdLmNoaWxkcmVuW2lkeCArIDFdLmlzVmlzaWJsZSA9IHRydWUKZW5kCgpsb2NhbCBmdW5jdGlvbiByZXNldCgpCglsb2NhbCBhcnJheSA9IGluY2x1ZGUoIm1vZHVsZXMvYXJyYXkiKQoJYXJyYXkucmVtb3ZlRWxlbWVudChDT1JQX05BTUVTLCJhdGxhbnRpcyIpCglhcnJheS5yZW1vdmVFbGVtZW50KERFRkFVTFRfTUlTU0lPTl9UQUdTLCJhdGxhbnRpcyIpCglhcnJheS5yZW1vdmVFbGVtZW50KERFRkFVTFRfTUlTU0lPTl9UQUdTX0ZJUlNULCJhdGxhbnRpcyIpCglfc2ltZGVmcy5TQ1JFRU5fQ1VTVE9NU1sibWFwX3NjcmVlbi5sdWEiXS53aWRnZXRzWzRdLmNoaWxkcmVuWzFdLmNoaWxkcmVuW2lkeCArIDFdLmlzVmlzaWJsZSA9IGZhbHNlCmVuZAoKbG9nOndyaXRlKCJTSU0gSURYICIuLnRvc3RyaW5nKGlkeCkpCgpfc2ltZGVmcy5TQ1JFRU5fQ1VTVE9NUyA9IHV0aWwuZXh0ZW5kKF9zaW1kZWZzLlNDUkVFTl9DVVNUT01TKXsKCVsibWFwX3NjcmVlbi5sdWEiXSA9IHsKCQl3aWRnZXRzID0gewoJCQlbNF0gPSB7CgkJCQljaGlsZHJlbiA9IHsKCQkJCQlbMV0gPSB7CgkJCQkJCWNoaWxkcmVuID0gewoJCQkJCQkJW2lkeCArIDFdID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWUgPSBbW2F0bGFudGlzXV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNWaXNpYmxlID0gdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub0lucHV0ID0gZmFsc2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5jaG9yID0gMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3RhdGlvbiA9IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeCA9IDAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeHB4ID0gdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB5ID0gMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB5cHggPSB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHcgPSAzNTUyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdweCA9IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaCA9IDYxMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocHggPSB0cnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN4ID0gMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeSA9IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Npc3NvciA9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtMC4xNjY2NjYwMDEwODE0NjcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0wLjUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMTY2NjMzOTkzMzg3MjIyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdG9yID0gW1tpbWFnZV1dLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yID0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aWxldyA9IDMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGlsZWggPSAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltYWdlcyA9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlID0gW1tndWkvbWFwX2F0bGFudGlzLnBuZ11dLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSA9IFtbXV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgkJCQkJCX0KCQkJCQl9CgkJCQl9CgkJCX0KCQl9Cgl9Cn0KCnJldHVybiB7CglhcHBseSA9IGFwcGx5LAoJcmVzZXQgPSByZXNldCwKfQ==