mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-11 23:23:28 +01:00
Merge pull request #2343 from Fox-McCloud/game-mode-cleanup
Removes Nations and Unused Gamemodes
This commit is contained in:
@@ -542,7 +542,7 @@
|
||||
"akv" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/device/taperecorder{pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor{dir = 2; icon_state = "redfull"; tag = "icon-redfull (NORTHWEST)"},/area/security/main)
|
||||
"akw" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/security/main)
|
||||
"akx" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/security/main)
|
||||
"aky" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/landmark/nations{name = "Brigston"},/turf/simulated/floor,/area/security/main)
|
||||
"aky" = (/obj/machinery/hologram/holopad,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor,/area/bridge)
|
||||
"akz" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor,/area/security/main)
|
||||
"akA" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch/gamma{locked = 1; req_access_txt = "1"; use_power = 0},/turf/simulated/floor{icon_state = "dark"},/area/security/main)
|
||||
"akB" = (/turf/simulated/floor/plating/airless,/turf/simulated/floor/plating/airless/catwalk{tag = "icon-catwalk6"; icon_state = "catwalk6"},/area/solar/auxstarboard)
|
||||
@@ -3163,7 +3163,7 @@
|
||||
"biQ" = (/obj/effect/landmark{name = "Marauder Entry"},/turf/simulated/floor,/area/bridge)
|
||||
"biR" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor,/area/bridge)
|
||||
"biS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/effect/landmark{name = "Marauder Entry"},/turf/simulated/floor,/area/bridge)
|
||||
"biT" = (/obj/machinery/hologram/holopad,/obj/effect/landmark/nations{name = "People's Republic of Commandzakstan"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor,/area/bridge)
|
||||
"biT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1; level = 1},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"})
|
||||
"biU" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor,/area/bridge)
|
||||
"biV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/item/device/radio/beacon,/obj/effect/landmark{name = "Marauder Entry"},/turf/simulated/floor,/area/bridge)
|
||||
"biW" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor,/area/bridge)
|
||||
@@ -4725,7 +4725,7 @@
|
||||
"bMS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 1; icon_state = "whitered"},/area/medical/research{name = "Research Division"})
|
||||
"bMT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor{dir = 1; icon_state = "whiteredcorner"},/area/medical/research{name = "Research Division"})
|
||||
"bMU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor{dir = 5; icon_state = "whitehall"},/area/medical/research{name = "Research Division"})
|
||||
"bMV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1; level = 1},/obj/effect/landmark/nations{name = "Scientopia"},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"})
|
||||
"bMV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2)
|
||||
"bMW" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor{dir = 9; icon_state = "whitehall"},/area/medical/research{name = "Research Division"})
|
||||
"bMX" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area/crew_quarters/hor)
|
||||
"bMY" = (/obj/effect/spawner/window/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/crew_quarters/hor)
|
||||
@@ -5744,7 +5744,6 @@
|
||||
"cgx" = (/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"; tag = "icon-pipe-j1 (WEST)"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2)
|
||||
"cgy" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/junction{dir = 8},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2)
|
||||
"cgz" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2)
|
||||
"cgA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/effect/landmark/nations{name = "Medistan"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2)
|
||||
"cgB" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2)
|
||||
"cgC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4; initialize_directions = 11; level = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2)
|
||||
"cgD" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay2)
|
||||
@@ -6548,7 +6547,6 @@
|
||||
"cvV" = (/obj/machinery/door/firedoor{dir = 8; name = "Firelock West"},/obj/machinery/door/airlock/glass_engineering{name = "Engineering"; req_access_txt = "32"; req_one_access_txt = "0"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/engine/break_room)
|
||||
"cvW" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/engine/break_room)
|
||||
"cvX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/engine/break_room)
|
||||
"cvY" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark/nations{name = "Atmosia"},/turf/simulated/floor,/area/engine/break_room)
|
||||
"cvZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{level = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/engine/break_room)
|
||||
"cwa" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{level = 1},/obj/effect/spawner/window/reinforced,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "atmos"; name = "Atmos Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/atmos/control)
|
||||
"cwb" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor,/area/atmos/control)
|
||||
@@ -8311,7 +8309,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacGacGafxacGacGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeAafyafyafAaeAafyafyafAaeAaaaagSaifaigaihagSaiiaijaikailaimainaioaipagvaiqairahhaisaitaiuahUaivaiwaixaiyaizaiAaiBaiCaiDaiEaiFaiGaiFaiHahAaieaieaieaieaieaieaieaieahAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagQaaaaaaaaaaiIaaaaaaaaaagQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacGaaaaabaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeAafAafyaiJaeAafAafyaiKaeAaaaagSaiLaiMaiNagSaiOaiOaiOaiOaiPaiQaiRaiSagvaiTaiUaiVaiWaiXaiYahUaiZajaajbajcajdajeajfajgaiDaiEajhaiGajhajiahAaieaieaieaieaieaieaieaieahAagQagQajjaabagQagQagQagQagQagQagQagQagQagQagQagQagQagQaabaabajkajlajmaabaabagQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafxaabajnaabafxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaaaaaaaaaaaaaaaaaaaaaeAajoajpajqajrajoajpajqajsajtajuajuajuajuajuajuajuajuajvajwajxajyajzajAajBajCajDajEajFajGahUajHajIajJajKajdajeajKajgajLaiEaiCaiCajMajNajOaieaieaieaieaieaieaieaieahAaabaabaabaabaabaabaaaaabaaaaabaabaabaabaabaabaabaabaaaaaaaaaajkajPajmaaaaaaagQaaaaaaaaaaaaaaaaaaaaaaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacGacGacGafxafxaabaabaaaajQaaaaabaabafxafxacGacGacGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeAajRajSajTafyajUajVajWajXajtajYajZakaakbakcakdakdajuakeakfakgakhakiajBakjakkaklakmaknajFakoakpakqakqajKakraksaktakuakvakwakxakyakzaiCakAaieaieaieaieaieaieaieaieahAaabakBakCakCakCakDakCakCakCakCakDakCakCakCakCakEaabaaaaaaaaaajkajPajmaaaaaaagQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacGacGacGafxafxaabaabaaaajQaaaaabaabafxafxacGacGacGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeAajRajSajTafyajUajVajWajXajtajYajZakaakbakcakdakdajuakeakfakgakhakiajBakjakkaklakmaknajFakoakpakqakqajKakraksaktakuakvakwakxakxakzaiCakAaieaieaieaieaieaieaieaieahAaabakBakCakCakCakDakCakCakCakCakDakCakCakCakCakEaabaaaaaaaaaajkajPajmaaaaaaagQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacGaaaaaaaabaaaaabaaaaaaajQaaaaaaaabaaaaabaaaaaaacGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeAakFafyakGakHakIakJakKakLajtakMakNakOakOakPakQakRajuakSakTakUakVakiakWakXakYakZalaalbalcaldaleakqalfalgalhalialjalkallalmaiCaiCaiCalnajOaieaieaieaieaieaieaieaieahAaabaloaabaabaabaloaabaaaaaaaabaloaabaabaaaaaaaloaabaaaaabaabajkajPajmaaaaaaagQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacGaabalpalpalpalpalpaaaalqaaaalpalpalpalpalpaabacGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeAalralsakGafyaltakJalualvajtalwalxalyalzakQakQakRajualAalBalCalDalEajBalFalGaklalHalIajFalJalKalLalLalMajdalNalOalPalQaiCaiFaiGaiCalRahAahAahAahAahAahAahAahAahAahAaabaloaabaaaajkajlajmaaaaaaajkajlajmaaaaaaajkajlajmaabaabaaaajkajPajmaaaaaaagQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacGaaaalSalTalTalTalTalUalValWalXalXalXalXalYaaaacGaaaaaaaaaalZamaamaamaambamcaaaaaaaaaaeAaeAaeAamdamdameamfamgamdajuamhamiamjamkamlammamnajuamoampamqakVamrajGamsamtamuamvamwajGamxamyamzamAamBamCamDamEamFamGaiCajhamHamIamJahAamKamKamKamKamKaaaaaaaaaaaaaabaloaabaaaajkajPajmaaaaaaajkajPajmaaaaaaajkajPajmaaaaaaaaaajkajPajmaaaaaaagQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
@@ -8356,7 +8354,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdCbdDaJrbdEbdFbdGbdHbdIbdJbdHbdKbdLbdHbdHbdMbdNbdObdPbdQbdQbdQbdRbdQbdSbdTaDEbdUbdVbdWbcobdXbdYbdZbeabebbecbedbeebefbegbehbeibcobejbekbctbelbembenbcvbeobepbeqbcvberbesbetberberberbeuaXJaXObcDaaaaaaaaaaaaaaaaaaaaabcEbevbewbexbeybezbeAbeBbeCbeDbeEbeFbcEaaaaaaaaaaaaaaaaaaaaabcKbeGaYibeHaMebeIbcNbcSbcSbcSbcSbcSbeJbeKbcSbcSbcSbeLbeMbeMbeNbeObePbeQbeRbeSbeTbeUaVbbeVbeWbeXbeYbeYbeXbeZbfaaVbaVhayHaRDbfbbfcaTvbbPbbQaTvbfdbfdaRDaRDbfeaRDaQbbffbbWbbZbfgbfgbfhbbZaQbaQbaQbbfibatbfjbfjbfkbfjbatbflbaAaabaaaaaabfmaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdCbfnbfobfnbfnbfnbfnbfnbfnbfobfnbfnbfpaJrbfqbfrbfsaJrbftaJrbfubfvbfwbfxbfyaDEbdVbdVbfzbcobfAbecbecbecbecbecbedbfBbecbecbecbfCbcobejbfDbctbfEbfFbfGbcvbfHbfIbfJbcvbfKbfLbfMbfNbfObesbeuaXJaXObcDaaaaaaaaaaaabcEbcEbcEbcEbfPbfQbfRbfSbfTbfUbfVbfWbfXbfYbfZbcEbcEbcEbcEaaaaaaaaaaaabcKbeGaYibgabgbbgcbgdbgebgfbgcbggbghbgibgjbgkbglbcSbeLbgmbeMbgnbgobeMbgpbgqbgrbgsbeMbgtbgubgvbeXbeYbeYbeXbgwbgxaVbaVhaKsaRDbdjaTvbbPbbPbbQbbPaTvaTvbgybgzaTvbgAaQbbgBbgCbgDbfgbfgbgEbgDbgFaQbbgGbgHbatbgIbgIbgJbgIbatbdAbaAbgKbaAbaAbaAaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCuaCuaInaInaInaInaInaInaInaInaInaCuaDEbgLbgMbgNbgNbgNbgNbgNbgNbgObgNbgNbgNaDEbdVbejbgPbcobgQbecbecbgRbgSbgTbgUbgRbecbecbecbgVbcobejbekbctbgWbgXbgYbcvbgZbhabhbbcvbhcbhdbhebhfbhgbesbhhbhiaXObcDbcDbhjbcEbcEbcEbhkbhlbhmbhnbhobhobhpbhqbhobhrbhobhsbhtbhubhvbhwbhxbcEbcEbcEbhjbcKbcKbeGaYiaYiaMebhybhzbgkbhAbcSbhBbhCbcSbhDbhEbglbcSbeLbeMbeMbhFbhGbhHbhIbhJbhKbhLbeMbhMbgubhNbeXbeYbeYbhObhPbhQaVbaVhayHaRDbhRbhSbhTbbPbbQbhUaTvaTvbhVaTvbhWbhXaQbbhYbhZbiabfgbfgbibbiabicaQbbidbgHbatbatbatbavbatbatbiebifbigbihbiibijaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabikbikbikbikbikbikbikbikbikbikbikbikaabaInaLAaJtbilbgNbimbinbiobipbiqbirbisbitbgNbiubivbiwbixbcobiybecbecbgRbgTbizbiAbgRbecbecbiBbiCbcobejbekbctbctbiDbctbcvbiEbiFbiGbcvbiHbhfbiIbhfbiJbesbeubiKaXOaXPaXPbiLbiMbiNbcEbiObfRbiPbhobhobiQbiRbiSbiTbiSbiUbiVbiWbiXbiYbiZbjabcEbjbbiMbjcbjdbjebeGaYiaYibjfbcSbjgbcSbcSbcSbjhbjibcSbhDbjjbglbcSbeLbeMbeMbjkbjlbjmbjnbjobjpbhLbjqaVbbjrbhNbeXbeYbeYbeXbhPbjsaVbbjtbjuaRDbjvaRDaRDbjwbbQbjxbjyaTvbjzbjAaWSbjBbdvbjCbjDbjEbjFbjFbjGbjHbjIbdvbjJbjKbatbjLbatbavbatbatbjMbaAbgKbaAbaAbgKaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabikbikbikbikbikbikbikbikbikbikbikbikaabaInaLAaJtbilbgNbimbinbiobipbiqbirbisbitbgNbiubivbiwbixbcobiybecbecbgRbgTbizbiAbgRbecbecbiBbiCbcobejbekbctbctbiDbctbcvbiEbiFbiGbcvbiHbhfbiIbhfbiJbesbeubiKaXOaXPaXPbiLbiMbiNbcEbiObfRbiPbhobhobiQbiRbiSakybiSbiUbiVbiWbiXbiYbiZbjabcEbjbbiMbjcbjdbjebeGaYiaYibjfbcSbjgbcSbcSbcSbjhbjibcSbhDbjjbglbcSbeLbeMbeMbjkbjlbjmbjnbjobjpbhLbjqaVbbjrbhNbeXbeYbeYbeXbhPbjsaVbbjtbjuaRDbjvaRDaRDbjwbbQbjxbjyaTvbjzbjAaWSbjBbdvbjCbjDbjEbjFbjFbjGbjHbjIbdvbjJbjKbatbjLbatbavbatbatbjMbaAbgKbaAbaAbgKaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabikbikbikbikbikbikbikbikbikbikbikbikbikbjNaInaKzaKBbfqbgNbimbjObjPbimbjQbjRbjSbjTbgNbjUaFmbjWbcsbcobjXbjYbjZbkabkbbkcbkdbkebkebkebkfbkgbcobejbivbkhbkibkjbkkbcvbcvbcvbcvbcvbklbkmbknbkobkpbesbeubiKaXJaXJaXJbkqbkrbksbktbkubkvbhobkwbkxbkybkzbkAbkBbkCbkDbkEbkFbkGbkubkHbkIbkJbkKbkLbkMbkNbkObkPaYibkQaMebcSbkRbkSbglbcSbkTbkUbcSbkVbkWbglbcSbeLbeMbeMbeMbeNbeMbkXbeMbjpbhLbkYaVbbkZbhNbeXbeYbeYbeXbhPblaaVbblbblcbldbleblfblgblhblibljbljbljbljbljbljblkbllblmbfgbfgbfgbfgbfgbfgblnbloblpbgHbatbatbatbavbatbatblqbaAblrblrblrbaAaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabikbikbikbikbikbikbikbikbikbikbikbikbikblsbltblublvbfqbgNblwbimblxblxblxblybimblzbgNblAblBbjWblCblCblCblCblDblCblEbecblFblGblHblHblIblJbcoblKblLblMblNblOblPblQblRblSblRblTblTblTblTblTblUberbeublVblWblXblYblZbmabmbbmcbmdbkBbmebmfbmgbmgbmgbmgbmhbmgbmibmjbmkbmlbmebmmbmnbcEbmobmpbmqbmrbmsbmtaYiaYibjfbcSbmubcSbcSbcSaRebcSbcSbmvbmvbmwbmwbmxbeMbeMbmybmzbeMbeMbeMbmAbmBbmCaVbbgxbhNbeXbeXbeXbeXbhPbmDaVbbmEbmFbmFbmGbmFbmHbbPbbPbbPbbPbmIbbPbbPbbPbmJblobfgbfgbfgbfgbfgbfgbfgblnbloblpbgHbatbfjbfjbfkbfjbatbmKbaAbmLbmMbmNbaAaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaaaaaaaaaaaaaaaaaaaaaaaaaaabmObmObmObmObmOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabikbikbikbikbikbikbikbikbikbikbikbikbikaInaInaKzbmPbcjbmQbimbmRblxblxblxblybmRbimbgNbmSbmTbjWblCbmUbmVbmWbmXblCbmYbmZbnabcobnbbncbndbnebcobejbnfbngbngbnhbngbngbngbngbnibnjbnjbnjbnkbnjbnlbnmbnnbnobnpbnqbnqbnqbnqbnqbnqbnrbnsbnrbmgbmgbntbnubnvbnwbnxbnybntbnzbmgbnAbnBbnAbnAbnAbnAbnAbnAbnAbmtaYiaYiaMebnCbnDbcSbnEbcSbnFbcSbnGbnHbnIbmwbnJaUTbnKbnLaUTaUTbnMbnNbnNbnNaUTaUTaVbbnObnPbnQbnQbnQbnQbnPbnRaVbbnSbmFbmFbmGbnTaRDbnUbnVbnWbnXbnYbnZboabobbocaQbbodaRSboebfgbfgboeaRSbofaQbbogbgHbatbgIbgIbgJbgIbatblqbaAblrblrblrbaAaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaQfaaaaaaaaaaaaaaaaaaaaaaaabmObmObmObmObmObmObmOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
@@ -8375,7 +8373,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFlbFlbFlbFlbFlaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFlbFlbFlbFlbFlbFlbFlaaaaaaaaaaaaaaaaaaaaaaaaaaabFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBQbBQbBQbBQbBQbBQbBQbGVbGWbGVbGXbGYbGZbGYbGYbGYbGYbHabyvbAfbHbbngbngbHcbpIbAibFvbHdbtLbHebHfbHfbHgbHhbHibHjbHkbHlbHmbHnbHobHpbHqbHrbHsbCpbCqbAEbvjbHtbHubHvbHwbHxbvjaaabEkbHybHzbHybHybHybHybHybHAbHybHBbvvbFXbucbHCbHDbHDbHEbHFbEybHGbHHbHIbHJbHKbHLbHMbHIbHNbHObHPbHQbHRbHSbHTbHTbHUbHVbHWbHXbHYbHZbIabIbbIcbIdbIebIfbIfbIgbIhbIibxGbIjbxJbxJbIkbIlbEUbImbInbIobIpbIqbIrbIsbItbIubIvbIubusbusbIwbEXbEXbIxbIxbIxbIxbIxbEXbFfbFjbFhbFjbFjbIybFfaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmObmObmObmObmObmObmObmObmOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFlbFlbFlbFlbFlbFlbFlbFlbFlaaaaaaaaaaaaaaaaaaaaabFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBQbBQbBQbBQbBQbBQbBQbIzbIAbIzbIBbAebFqbFrbFrbFrbAebAebyvbAfbICbIDbngbIEbpIbAibFvbIFbtLbIGbpIbrsbpIbIHbDXbvvbIIbHlbHmbIJbIKbILbIMbINbIObIPbIQbIRbISbISbITbIUbIVbvjbvjaaabEkbHybIWbIXbIYbIZbJabJbbJcbJdbJebvvbFXbCHbJfbJgbJhbJibJjbEybJkbJlbJmbJnbJobJpbJqbJrbJsbJtbJubJvbJwbJxbJybJzbJAbJBbJCbJDbJEbGwbJFbGybJGbJHbvYbJIbJJbJKbJLbJLbxGbJMbJNbJObxGbJPbEUbJQbxGbJRbJSbJTbJUbJVbJWbJXbJYbJZbKabKbbKcbKdbKebKfbKfbKgbKhbKibKjbKkbDzbDAbKlbDAbDzbKmaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmObmObmObmObmObmObmObmObmOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFlbFlbFlbFlbFlbFlbFlbFlbFlaaaaaaaaaaaaaaaaaabFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBQbBQbBQbBQbBQbBQbBQbFnbBRbBRbKnbAebFqbAebAebAebAebAebyvbAfbICbKobngbKpbpIbKqbKrbpIbKsbpHbpIbpIbKtbtLbDXbvvbIIbHlbHmbCpbKubKvbKwbKxbKybKzbKAbKBbKCbKDbwXbKEbKFbwXbwYbwYbKGbHybKHbKIbKJbKKbKLbKLbKMbKNbKObvvbKPbucbEybKQbEubKRbKSbEybJkbKTbKUbKVbKWbKXbKYbKUbJkbKZbLabLbbLbbLbbLcbLbbLdbLdbLebLfbLgbLhbLhbLibLgbLgbLhbLhbLjbLkbLjbLjbxGbxGbxGbxGbxGbLlbLmbBobxGbLnbLobLpbLqbLqbLrbLsbLtbLubLvbLwbLxbLybLzbLAbLAbLBbJVbLCbEXbLDbLDbLDbLEbEXbLFaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmObmObmObmObmObmObmObmObmOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFlbFlbFlbFlbFlbFlbFlbFlbFlaaaaaaaaaaaaaaaaaabFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBQbBQbBQbBQbBQbBQbBQbIzbIAbIzbFobLGbLHbAebAebAebLGbAebyvbAfbICbLIbngbLJbpIbAibFvbpIbnmbLKbpIbpIbLLbtLbDXbvvbLMbHlbLNbCpbLObLPbLQbLRbLSbKzbLTbLUbLVbLWbLXbLYbLZbMaaaaaaaaaabHybMbbMcbMdbMdbMebMfbMgbHybMhbMibFXbMjbMkbMlbMmbMnbMobMpbMqbJlbMrbMsbMtbMubMvbMrbJkbKZbMwbMxbMybMzbMAbMBbLdbMCbMDbMEbLgbMFbMGbMHbMIbMJbMKbMLbKabMMbLqbLqbMNbMObLqbMPbMQbMRbMSbMTbLqbMUbMVbMWbMXbMYbMZbNabNbbNabNabNabIwbEXbEXbIxbIxbEXbNcbNdbNebNfbNgbNhbNibLDaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFlbFlbFlbFlbFlbFlbFlbFlbFlaaaaaaaaaaaaaaaaaabFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBQbBQbBQbBQbBQbBQbBQbIzbIAbIzbFobLGbLHbAebAebAebLGbAebyvbAfbICbLIbngbLJbpIbAibFvbpIbnmbLKbpIbpIbLLbtLbDXbvvbLMbHlbLNbCpbLObLPbLQbLRbLSbKzbLTbLUbLVbLWbLXbLYbLZbMaaaaaaaaaabHybMbbMcbMdbMdbMebMfbMgbHybMhbMibFXbMjbMkbMlbMmbMnbMobMpbMqbJlbMrbMsbMtbMubMvbMrbJkbKZbMwbMxbMybMzbMAbMBbLdbMCbMDbMEbLgbMFbMGbMHbMIbMJbMKbMLbKabMMbLqbLqbMNbMObLqbMPbMQbMRbMSbMTbLqbMUbiTbMWbMXbMYbMZbNabNbbNabNabNabIwbEXbEXbIxbIxbEXbNcbNdbNebNfbNgbNhbNibLDaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFlbFlbFlbFlbFlbFlbFlbFlbFlaaaaaaaaaaaaaaaaaabFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBQbBQbBQbBQbBQbBQbBQbNjbNkbNjbNlbNmbNnbNnbNnbNnbNnbNobNpbNqbICbNrbngbNsbNtbNubNvbNwbNxbNybNybNybNzbNzbNAbvvbNBbNCbHmbCpbNDbNEbNFbKvbNGbKzbNHbNIbNJbNKbNLbFNbNMbMaaaaaaaaaabHybNNbNObNPbNQbMebMfbMgbHybNRbNSbNTbNUbNVbNWbNXbNYbNZbOabObbOcbKUbKUbOdbOebKUbKUbJkbKZbOfbOgbOhbOibOjbOkbLdbOlbOmbOnbOobOpbOqbOrbOrbOsbOtbOubOvbOwbJVbJVbOxbJVbOybJVbOzbJVbOAbOBbOBbOCbODbOEbOFbOGbOHbOIbOJbOKbOLbNabOMbONaaaaaaaaabEXbOObOPbOQbORbOSbOTbOUbEXaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFlbFlbFlbFlbFlbFlbFlbFlbFlaaaaaaaaaaaaaaaaaabFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBQbBQbBQbBQbBQbBQbBQbFnbBRbBRbngbngbBRbBRbBRbBRbBRbngbngbBRbBRbBRbngbOVbOVbOVbOWbOVbNzbOXbOYbOZbPabNzbDXbvvbPbbPcbPcbCpbCpbCpbCpbCpbPdbKzbISbIRbPebNKbPgbPhbMabMabvjbvjbvjbHybHzbHybHybHybHybHybHybHybPibvvbPjbPkbPlbPmbPnbPlbPlbPobPpbPqbPrbPsbPtbPubPvbPwbMqbPxbPybPzbPAbPBbPCbPDbPEbPFbPGbPHbPIbPJbPKbPLbMHbPMbLhbLhbPNbPObPNbPPbPQbPPbPPbPPbPRbPSbPTbPTbPUbPVbPWbPXbOFbPYbPZbQabQbbQcbQdbNabOMbONaaaaaaaaabEXbQebQfbEXbKjbEXbEXbKjbEXaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFlbFlbFlbFlbFlbFlbFlbFlbFlaaaaaaaaaaaaaaaaaaaaabFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBQbBQbBQbBQbBQbBQbBQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQgaabaaaaaaaaaaaabOVbQhbQibQjbQkbNzbQlbQmbQnbQobNzbDXbvvbQpbQqbQrbQsbQtbQubQvbQwbQxbQybQzbQAbQBbQCbQDbQEbQFbQGbQHbQIbQJbQKbQLbQMbQNbubbQObvvbQPbQQbQRbvvbQSbPlbQTbQUbQVbQWbQXbJkbQYbQZbRabRbbRcbRdbRebRfbRgbRhbRibLbbRjbOibRkbRlbRmbRnbRobRpbLgbRqbMHbMHbMHbRrbLhbPNbRsbRtbRubRvbRwbRxbRybPPbRzbRAbRBbPTbPTbRCbPWbRDbREbRFbRGbRHbRIbRJbRKbNabRLbwoaaaaaaaaabEXbEXbEXbEXaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
@@ -8388,7 +8386,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFlbFlbFlbFlbFlbFlbFlbFlbF
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFlbFlbFlbFlbFlbFlbFlbFlbFlaaaaaaaaaaaaaaaaaaaaaaaaaaabFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmbFmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaaaaaaaaaaaaaaaaabUEcaVcaWcaXbUEbUIbUIbUIbOVcaYcaZcaZcaZbOVbOVbUTcbacbacbbcbcbUTcbdcbebUVbZHbYnbYnbYncbfbUZbYpbYqbYqcbgcbhcbicbjcbkcblbVfbVfbVfbVfbVfcbmbVfbVfcbncbobVkbVkcbpbVkbVnbVkbVkbPlcbqcbqbPlbPlcbrcbscbtcbucbvcbwcbxcbycbzcbAcbBcaocapcbCcbDcbEcbFcbGcbHbVAcbIcbJcbKcbLcbMcbNcbOcbPcbQcbPcbRcbRcbRcbPcbScbPcbPcbTcbUbZmbZmbPTcbVbZnbPXcbWcbXcbYcbZccaccbccccccccdcceccfccgcchcciccjcckcclccmccnccoccpccqccrccscctaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaabWgbWhccuccvccvbXZbXZbXZbXZbXZbXZbXZbXZbWhbWhaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFlbFlbFlbFlbFlbFlbFlbFlbFlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccwbTgccxbTgccycczaabaaabOVbOVbUIbUIbUIbOVaaabUTccAccBccCccDbZFccEccFbUVccGccHccIbYnccJccKccLccMccNccOccPbUZccQccRccSccTccUccUccUccUccVccWccXccYccYccZccZcdacdbcdcbVibPlcddcdecdfcdgcdhbYKcdicbtcdjcdkcdlcdmbSwcdncdocdpcdqcdrcdrcdscdrcdrcdrcdtbVAcducdvcdwcdxcdycdzcdAcbPcdBcdCcdDcdEcdFcdCcdGcdHcdCcdIcdJbRBbPTbPTcdKcdLcdMcdNcdOcdPcdQcdRcdScdTcdUcdVcdWcdXcdYcdZceacebceaceccebcebcebcedceecefcegcehaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaabWhbWhceibXZbXZbXZbXZbXZbXZbXZbXZbXZbXZbXZbWhbWhaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFlbFlbFlbFlbFlbFlbFlbFlbFlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabcejbUTbUTbUTcekbUTbUTcelbUVcemcenceocepceqcercescetceucevcewccKcexceycezceAceBceBceBceBceCceDceEceFceGceFceHceIceJceKceLceMceNceOcePceQceRceSceTceUceVceWceXceYceZcfacfbcfccfdcfdcfdcfecffcfgcfhcficfjcfjcfkcfjcflcfmcfncfocbPcfpcfqcfrcfscfrcftcfucfvcdCbPTcfwbPTbPTcfxcfybZnbBxbEXbUAcfzbUAbUAcfAcfBcfCcfDcfEcebcfFcfGcfHcdUcfHcdUcfIcdUcdUbUAcfJcfKcfLcfMaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaabWhbXZbXZbXZbXZbXZbXZcfNbXZcfObXZbXZbXZbXZbXZbWhbWhaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacejcfPcfQcfRbUTcfSbUVcfTcfUcfVbZHcfWcfXcfYbYpcfZcgacgbcfXcgccgdcgecgfcgfcggcghcgicgjcgkcglcgmbGycgnbVicgobGybGycgpcgqcgrcgscgtceQcgucgvcgwcgxcgycgzcgAcgBcgCcgzcgzcgDcgEcgEcgEcgEcgEcgGcgFcgHcgJcgJcgKcgLcgMcgNcgOcgPcbPcgQcgRcgScgTcgScgUcgVcfrcgWcgXcgYbBxcgZbBxcfybZnbBxbEXchachbchcbUAbUAbUAbUAbUAchdcdUchechfcfIcdUchgcdUbZpcdUchhbUAchichjchkbUAaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaabWhchlchlchlchlchlchlchmbXZchnchlcfObXZbXZbXZbXZbWhaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacejcfPcfQcfRbUTcfSbUVcfTcfUcfVbZHcfWcfXcfYbYpcfZcgacgbcfXcgccgdcgecgfcgfcggcghcgicgjcgkcglcgmbGycgnbVicgobGybGycgpcgqcgrcgscgtceQcgucgvcgwcgxcgycgzbMVcgBcgCcgzcgzcgDcgEcgEcgEcgEcgEcgGcgFcgHcgJcgJcgKcgLcgMcgNcgOcgPcbPcgQcgRcgScgTcgScgUcgVcfrcgWcgXcgYbBxcgZbBxcfybZnbBxbEXchachbchcbUAbUAbUAbUAbUAchdcdUchechfcfIcdUchgcdUbZpcdUchhbUAchichjchkbUAaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaabWhchlchlchlchlchlchlchmbXZchnchlcfObXZbXZbXZbXZbWhaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacejchochpchqbUTcfSchrchrchrchrchrchrbUZbUZbUZbUZbUZbUZbUZchschtchuchvchwchxchychychzchAcglbGybGychBchCchDbGybGybGychEchFchGceOchHchIchJcgEchKchLchMbSqchLchNcfdcfdcfdcfdcfdcfdcfdcfdcfdcgIbSqchOchPchQchRchSchTchUchVcbPchWchXcfrchYcfrchZciacibciccidciecifbBxcigcfybZncihbEXbFeciicijcikbwobxXbxXbUAcilcimcinciocipciqcirciscitciucivbUAciwcixciycizaacaacaaaaaaaahaaaaaaaaaaaaaaaaaaaaaaaaciAbXXbXXbXXbXXbXXbXXbXXciBciCbXZbXZbXZbXZciDbYabWhaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacejcejcejcejbUTcfScejaaaaaaaaaaaaciEbaTciGciHciIciJciKciLciMciNciOciPciQciRciSciSciTciUciVciWciWciWciWciXciWbGybGybPlciYciZcjacjbcjccjdchScjecjfcjgcjhcjicjjcjkcfdcfdcjlcjpcjpcjpcjpckNclSckUcjqcjqcjrcjscjtcbAcjucjvcbPcjwcjxcjycjzcjAcfrcjBcbPcbPbEXcjCbEXbEXbEXcjDcjEcjFbEXbxXciicjGcjHbwobwobwobUAbUAbUAbUAbUAbUAbUAbUAbUAbUAbUAbUAbUAbUAbUAbUAbUAaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaabWhccvccvccvccvccvccvcjIbXZccuccvcjJbXZbXZbXZbXZbWhaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAjaaaaabaabcjKcjKcjKcjKcjKcjKcjLcjKbUTcelcjMaaacjNcjOcjPcjQcjRcjScjTcjUcjVcjWcjXcjYcjZckackbckcckdckeckfckgckhciVckickjckjckjckkciWbGybGycklcklcklcklckmcklckncknckocklcklckpcklckqckrckscktcksclZaPKcmacmmcmlcmocmnckzckAckBckCckDckEckFcdccbPcbPckGcbPckHcbPckIckJckKcgnckLckMckvckOckPckQckRckSckPbxXciickTbxXbxXckVckWckXchabxXbxXbxXbxXbxXbxXbxXckYckZbONaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabWhbXZbXZbXZbXZbXZbXZcfNbXZcjJbXZbXZbXZbXZbXZbWhbWhaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
@@ -8401,7 +8399,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsccsdcsecsfcsgcsgcshcsicsjcskcslcsmcsncsocspcspcspcsqcsrcsscstcstcsucsvcswcsxcsycsxcsxcsxcswcsxcsxcszcsAcsBcsCcgdcbkcsDcsEcsFcsGcgfcsHcmQcsIcsJcsKcsLcsMcsNcsObGybGycpFcsPcsQcsRcsScsTcsUcpFcsVcsTcsWcsXcsRcsYcwraaaaaaaaacEjdbAdbzdbAdbAdbCdbBdbEdbDdbycwFbVibGycuscoDcwpaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaactdckPcxGckSctdctfctgcthctictjctkctlcpXcpXctmctnctoctpctqbwocvzbxXcxHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsccsdctuctvctwctvctxctyctzctActBctCctBctDctEctEctFctEcgdctGcblcblctEctHctEctEctEctEctEctEctEctEctEctEctIctJctKctLctMctNctOctPctQctRctSctTctUctVctWctXctYctZcuacnqcubcuccudcuecufcugcuhcuicpFcujcqKcugcukcqJculcwraaaaaaaaadbFcmkdbGdbJdbIdbCdbKdbMdbLdbOdbNceFceJdbPcoDcwpaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaackPcurcyFcutckPcnCcnCcnCcnCcnCcnCcuuctlcuvcuwcuxcuycnCcnCbwocvzbxXcxHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsccuBctvcuCcuDcuEcuFcuGcuHcuIcuJcuKcuLcuMcuNcuOcuPcuQcuRceAcuSceAcuNcuTcuNcuNcuNcuNcuNcuNcuNcuNcuNcuNcuUctEcuVcuWcuXcuYcuZcvacvbcvccvdcvecvfcvgcvhcvicvjcvkcsLceJcvlcvmcvncqKcqJcqKcqKcvocpFcvpcqKcqKcqNcqJcyGcwraaaaaaaaadbFdbRdbQdbTdbSdbVdbUdbXdbWdbybGychCcyHcuscoAaaaaaaaaaaaaaaaaabckPckPckPckPckPckPckPckPckPcvucxScvwckPcxOcxOcyIckPaabcnCcnCcvAcnCcvBcvCcvDcnCcyKcyJcvzbxXcxHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadbabLcrjcrjcrjcrjcrjcrjcvFcvGcvGcvHctBcvIcrjcrmcvJcvKcvKcvLcvKcvMcvKcvKcvNcvOcvKcvKcvOcvOcvOcvKcvKcvKcvKcvPcvQcvRcvScvTcvUcvVcvWcvXcvWcvWcvYcvWcvZcwacwbcwccwdcsObGycvrcwecwfcwgcwhcwicwjcwkcpFcwlcwjcwmcqNcwncwocpMaaaaaaaaadbFdbZdbYdcadbIdccdcbdbUczRdbycyObVibVicuscoAaaaaaaaaaaaaaaaaaackPcwtcwucwvcwwcwxcwycwzcwAcwBcxScwDckPcxOcBZcyPckPaabaabcwGcwHcwIcwJcwKcwLcwGbxXbxXcvzczfbwoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadbabLcrjcrjcrjcrjcrjcrjcvFcvGcvGcvHctBcvIcrjcrmcvJcvKcvKcvLcvKcvMcvKcvKcvNcvOcvKcvKcvOcvOcvOcvKcvKcvKcvKcvPcvQcvRcvScvTcvUcvVcvWcvXcvWcvWcvWcvWcvZcwacwbcwccwdcsObGycvrcwecwfcwgcwhcwicwjcwkcpFcwlcwjcwmcqNcwncwocpMaaaaaaaaadbFdbZdbYdcadbIdccdcbdbUczRdbycyObVibVicuscoAaaaaaaaaaaaaaaaaaackPcwtcwucwvcwwcwxcwycwzcwAcwBcxScwDckPcxOcBZcyPckPaabaabcwGcwHcwIcwJcwKcwLcwGbxXbxXcvzczfbwoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacGacGacGafxafxacGafxafxafxagiafxafxaabagiaqZaaaaabaabcwNcwNcwNcrjcwOcwPcwQcwRcwScwTcwUcwVcwWcwXcwYcwZcxacxbcxccxdcxecxfcxgcvKcxfcxhcxicxjcxjcxkcvKcxlcxmcxncxocbkcxpcxqcxrcxscxtcxucxtcxvcxwcxxcxycxzcxAcsOcsOcvrcwecpMcpMcxBcpMcpMcxCcxDcxEcxEcxEcxFcxEcyUcpMaaaaaaaaadbFdbFdbFdbFdbFdbydcedcgdcfdbybGybGyczhcuscoAaaaaaaaaaaaaaaaaaackPcxOcxPcxOcxQcxRcqUcxScwAcxTczicxTckPcxOcxOcMpckPaabaaacwGcxWcxXcwJcwJcxYcwGczjbxXcvzbzNczMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyacyacyacyacyaaaaaaaaaaaaaaaaaaaaaaaaaacGaaaaaaaabaabaaaaabaabaaaaaaaabaabaabaaaaqZaaaaaaaaaaabaabcwNcrjcrjcrjcrjcrjcrjcrjcrjcybcwWcwXcyccydcyecyfcyfcyfcyfcygcyhcyicxjcyjcxjcxjcykcxjcylcymcyncyocxocbkcypcyqcyrcxscyscytcyucxscyvcywcyxcyycyzcyAcyBcyCcyDcyEcyEcAaczUcAdcAccAeczTcALceJcAhbGycAMcoAcoAcoAcoAcoAaaaaaaaaaaaadcidchdckdcjdbydclbVibVicuscoAcoAcoAcoAcoAaaaaaackPcxOcxOcxOcyZczaczbczcczdczecAiczgckPcAVcAYcAWckPaaaaaacwGczkcwJczlcwJczmcwGbxXbxXcvzczMbwoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacyacyacyacyacyacyacyaaaaaaaaaaaaaaaaaaaaaaacGaaaczoczpczqaaaczoczpczqaaaczoczpczqaabczraabaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaczscwWcwXcztcxjcykczucxjcxjcxjczvcxjcztcztcxjcxjcxjcxjczwczxcymczyctEczzcbkcyqcyqczAcxsczBczCczDcxsczEctWczFczGczHczIczJczKbGyczLcdcczLbGycBacAZcBccBccBccBccBPcBNcBNcBNcBNcBNcBQcoAaaaaaaaaaaaadcidchdckdcmdcnbGyckObVicusbGybGybGycgmcoAaaaaaackPcwAcwAcwAcwAczWcqUczXczYczZcCfcAbckPcCGcCYcCIckPaaaaaacwGcAfcAgcDLcwJcDNcwGcEdbxXcvzbwoaabaabaabaabaaaaaaaaaaaaaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
|
||||
@@ -8,4 +8,3 @@
|
||||
#define IMPTRACK_HUD 7 // tracking implant
|
||||
#define SPECIALROLE_HUD 8 // AntagHUD image
|
||||
#define STATUS_HUD_OOC 9 // STATUS_HUD without virus db check for someone being ill.
|
||||
#define NATIONS_HUD 10 //Show nations icons during nations gamemode
|
||||
|
||||
@@ -31,11 +31,6 @@
|
||||
var/datum/job/J = new T
|
||||
joblist[J.title] = J
|
||||
|
||||
paths = subtypesof(/datum/nations)
|
||||
for(var/T in paths)
|
||||
var/datum/nations/N = new T
|
||||
all_nations[N.name] = N
|
||||
|
||||
paths = subtypesof(/datum/superheroes)
|
||||
for(var/T in paths)
|
||||
var/datum/superheroes/S = new T
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
var/global/list/all_species[0]
|
||||
var/global/list/all_languages[0]
|
||||
var/global/list/language_keys[0] // Table of say codes for all languages
|
||||
var/global/list/all_nations[0]
|
||||
var/global/list/all_superheroes[0]
|
||||
var/global/list/whitelisted_species = list()
|
||||
|
||||
|
||||
@@ -8,7 +8,6 @@ var/global/list/side_effects = list() //list of all medical sideeffects types
|
||||
var/global/list/mechas_list = list() //list of all mechs. Used by hostile mobs target tracking.
|
||||
var/global/list/spacepods_list = list() //list of all space pods. Used by hostile mobs target tracking.
|
||||
var/global/list/joblist = list() //list of all jobstypes, minus borg and AI
|
||||
var/global/list/flag_list = list() //list of flags during Nations gamemode
|
||||
var/global/list/airlocks = list() //list of all airlocks
|
||||
var/global/list/singularities = list() //list of all singularities
|
||||
var/global/list/janitorial_equipment = list() //list of janitorial equipment
|
||||
|
||||
@@ -167,18 +167,4 @@
|
||||
if(istype(teleatom, /mob/living))
|
||||
var/mob/living/MM = teleatom
|
||||
MM << "<span class='warning'>The bluespace interface on your bag of holding interferes with the teleport!</span>"
|
||||
return 1
|
||||
|
||||
/datum/teleport/instant/science/teleportChecks()
|
||||
if(istype(teleatom, /obj/item/flag/nation)) // Don't let nation's flags get teleported either --Fox
|
||||
teleatom.visible_message("<span class='warning'>The portal rejects [teleatom]!</span>")
|
||||
return 0
|
||||
|
||||
if(!isemptylist(teleatom.search_contents_for(/obj/item/flag/nation)))
|
||||
if(istype(teleatom, /mob/living))
|
||||
var/mob/living/MM = teleatom
|
||||
MM.visible_message("<span class='warning'>The portal rejects [MM]!","<span class='warning'>The flag that you're carrying seems to be unable to pass through the portal. Better drop it if you want to go through.</span>")
|
||||
else
|
||||
teleatom.visible_message("<span class='warning'>The portal rejects [teleatom]!</span>")
|
||||
return 0
|
||||
return 1
|
||||
@@ -55,7 +55,6 @@
|
||||
|
||||
var/datum/faction/faction //associated faction
|
||||
var/datum/changeling/changeling //changeling holder
|
||||
var/datum/nations/nation //associated nation for CTF
|
||||
var/datum/vampire/vampire //vampire holder
|
||||
|
||||
var/rev_cooldown = 0
|
||||
|
||||
@@ -1,224 +0,0 @@
|
||||
/datum/game_mode/epidemic
|
||||
name = "epidemic"
|
||||
config_tag = "epidemic"
|
||||
required_players = 1
|
||||
required_players_secret = 15
|
||||
|
||||
var/const/waittime_l = 300 //lower bound on time before intercept arrives (in tenths of seconds)
|
||||
var/const/waittime_h = 600 //upper bound on time before intercept arrives (in tenths of seconds)
|
||||
var/checkwin_counter =0
|
||||
var/finished = 0
|
||||
|
||||
var/cruiser_arrival
|
||||
|
||||
var/virus_name = ""
|
||||
|
||||
var/stage = 0
|
||||
var/doctors = 0
|
||||
|
||||
///////////////////////////
|
||||
//Announces the game type//
|
||||
///////////////////////////
|
||||
/datum/game_mode/epidemic/announce()
|
||||
world << "<B>The current game mode is - Epidemic!</B>"
|
||||
world << "<B>A deadly epidemic is spreading on the station. Find a cure as fast as possible, and keep your distance to anyone who speaks in a hoarse voice!</B>"
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
//Gets the round setup, cancelling if there's not enough players at the start//
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/datum/game_mode/epidemic/pre_setup()
|
||||
doctors = 0
|
||||
for(var/mob/new_player/player in world)
|
||||
if(player.mind.assigned_role in list("Chief Medical Officer","Medical Doctor"))
|
||||
doctors++
|
||||
break
|
||||
|
||||
if(doctors < 1)
|
||||
return 0
|
||||
|
||||
return 1
|
||||
|
||||
/datum/game_mode/epidemic/proc/cruiser_seconds()
|
||||
return (cruiser_arrival - world.time) / 10
|
||||
|
||||
////////////////////// INTERCEPT ////////////////////////
|
||||
/// OVERWRITE THE INTERCEPT WITH A QUARANTINE WARNING ///
|
||||
/////////////////////////////////////////////////////////
|
||||
|
||||
/datum/game_mode/epidemic/send_intercept()
|
||||
var/intercepttext = "<FONT size = 3 color='red'><B>CONFIDENTIAL REPORT</FONT><HR>"
|
||||
virus_name = "X-[rand(1,99)]™"
|
||||
intercepttext += "<B>Warning: Pathogen [virus_name] has been detected on [station_name()].</B><BR><BR>"
|
||||
intercepttext += "<B>Code violet quarantine of [station_name()] put under immediate effect.</B><BR>"
|
||||
intercepttext += "<B>Class [rand(2,5)] cruiser has been dispatched. ETA: [round(cruiser_seconds() / 60)] minutes.</B><BR>"
|
||||
intercepttext += "<BR><B><FONT size = 2 color='blue'>Instructions</FONT></B><BR>"
|
||||
intercepttext += "<B>* ELIMINATE THREAT WITH EXTREME PREJUDICE. [virus_name] IS HIGHLY CONTAGIOUS. INFECTED CREW MEMBERS MUST BE QUARANTINED IMMEDIATELY.</B><BR>"
|
||||
intercepttext += "<B>* [station_name()] is under QUARANTINE. Any vessels outbound from [station_name()] will be tracked down and destroyed.</B><BR>"
|
||||
intercepttext += "<B>* The existence of [virus_name] is highly confidential. To prevent a panic, only high-ranking staff members are authorized to know of its existence. Crew members that illegally obtained knowledge of [virus_name] are to be neutralized.</B><BR>"
|
||||
intercepttext += "<B>* A cure is to be researched immediately, but Nanotrasen intellectual property must be respected. To prevent knowledge of [virus_name] from falling into unauthorized hands, all medical staff that work with the pathogen must be enhanced with a Nanotrasen loyality implant.</B><BR>"
|
||||
|
||||
|
||||
for (var/obj/machinery/computer/communications/comm in world)
|
||||
if (!(comm.stat & (BROKEN | NOPOWER)) && comm.prints_intercept)
|
||||
var/obj/item/weapon/paper/intercept = new /obj/item/weapon/paper( comm.loc )
|
||||
intercept.name = "paper"
|
||||
intercept.info = intercepttext
|
||||
|
||||
comm.messagetitle.Add("Cent. Com. CONFIDENTIAL REPORT")
|
||||
comm.messagetext.Add(intercepttext)
|
||||
|
||||
world << sound('sound/AI/commandreport.ogg')
|
||||
|
||||
// add an extra law to the AI to make sure it cooperates with the heads
|
||||
var/extra_law = "Crew authorized to know of pathogen [virus_name]'s existence are: Heads of command, any crew member with loyalty implant. Do not allow unauthorized personnel to gain knowledge of [virus_name]. Aid authorized personnel in quarantining and neutrlizing the outbreak. This law overrides all other laws."
|
||||
for(var/mob/living/silicon/ai/M in world)
|
||||
M.add_ion_law(extra_law)
|
||||
M << "\red " + extra_law
|
||||
|
||||
/datum/game_mode/epidemic/proc/announce_to_kill_crew()
|
||||
var/intercepttext = "<FONT size = 3 color='red'><B>CONFIDENTIAL REPORT</FONT><HR>"
|
||||
intercepttext += "<FONT size = 2;color='red'><B>PATHOGEN [virus_name] IS STILL PRESENT ON [station_name()]. IN COMPLIANCE WITH NANOTRASEN LAWS FOR INTERSTELLAR SAFETY, EMERGENCY SAFETY MEASURES HAVE BEEN AUTHORIZED. ALL INFECTED CREW MEMBERS ON [station_name()] ARE TO BE NEUTRALIZED AND DISPOSED OF IN A MANNER THAT WILL DESTROY ALL TRACES OF THE PATHOGEN. FAILURE TO COMPLY WILL RESULT IN IMMEDIATE DESTRUCTION OF [station_name].</B></FONT><BR>"
|
||||
intercepttext += "<B>CRUISER WILL ARRIVE IN [round(cruiser_seconds()/60)] MINUTES</B><BR>"
|
||||
|
||||
for (var/obj/machinery/computer/communications/comm in world)
|
||||
if (!(comm.stat & (BROKEN | NOPOWER)) && comm.prints_intercept)
|
||||
var/obj/item/weapon/paper/intercept = new /obj/item/weapon/paper( comm.loc )
|
||||
intercept.name = "paper"
|
||||
intercept.info = intercepttext
|
||||
|
||||
comm.messagetitle.Add("Cent. Com. CONFIDENTIAL REPORT")
|
||||
comm.messagetext.Add(intercepttext)
|
||||
world << sound('sound/AI/commandreport.ogg')
|
||||
|
||||
|
||||
/datum/game_mode/epidemic/post_setup()
|
||||
// make sure viral outbreak events don't happen on this mode
|
||||
EventTypes.Remove(/datum/event/viralinfection)
|
||||
|
||||
// scan the crew for possible infectees
|
||||
var/list/crew = list()
|
||||
for(var/mob/living/carbon/human/H in world) if(H.client)
|
||||
// heads should not be infected
|
||||
if(H.mind.assigned_role in command_positions) continue
|
||||
crew += H
|
||||
|
||||
if(crew.len < 2)
|
||||
world << "\red There aren't enough players for this mode!"
|
||||
world << "\red Rebooting world in 5 seconds."
|
||||
|
||||
if(blackbox)
|
||||
blackbox.save_all_data_to_sql()
|
||||
sleep(50)
|
||||
world.Reboot()
|
||||
|
||||
var/datum/disease2/disease/lethal = new
|
||||
lethal.makerandom(1)
|
||||
lethal.infectionchance = 5
|
||||
|
||||
// the more doctors, the more will be infected
|
||||
var/lethal_amount = doctors * 2
|
||||
|
||||
// keep track of initial infectees
|
||||
var/list/infectees = list()
|
||||
|
||||
for(var/i = 0, i < lethal_amount, i++)
|
||||
var/mob/living/carbon/human/H = pick(crew)
|
||||
if(lethal.uniqueID in H.virus2)
|
||||
i--
|
||||
continue
|
||||
H.virus2["[lethal.uniqueID]"] = lethal.getcopy()
|
||||
infectees += H
|
||||
|
||||
var/mob/living/carbon/human/patient_zero = pick(infectees)
|
||||
var/datum/disease2/disease/V = patient_zero.virus2["[lethal.uniqueID]"]
|
||||
V.stage = 3
|
||||
|
||||
cruiser_arrival = world.time + (10 * 90 * 60)
|
||||
stage = 1
|
||||
|
||||
spawn (rand(waittime_l, waittime_h))
|
||||
send_intercept()
|
||||
|
||||
|
||||
..()
|
||||
|
||||
|
||||
/datum/game_mode/epidemic/process()
|
||||
if(stage == 1 && cruiser_seconds() < 60 * 30)
|
||||
announce_to_kill_crew()
|
||||
stage = 2
|
||||
else if(stage == 2 && cruiser_seconds() <= 60 * 5)
|
||||
command_announcement.Announce("Inbound cruiser detected on collision course. Scans indicate the ship to be armed and ready to fire. Estimated time of arrival: 5 minutes.", "[station_name()] Early Warning System")
|
||||
stage = 3
|
||||
else if(stage == 3 && cruiser_seconds() <= 0)
|
||||
crew_lose()
|
||||
stage = 4
|
||||
|
||||
checkwin_counter++
|
||||
if(checkwin_counter >= 20)
|
||||
if(!finished)
|
||||
ticker.mode.check_win()
|
||||
checkwin_counter = 0
|
||||
return 0
|
||||
|
||||
//////////////////////////////////////
|
||||
//Checks if the revs have won or not//
|
||||
//////////////////////////////////////
|
||||
/datum/game_mode/epidemic/check_win()
|
||||
var/alive = 0
|
||||
var/sick = 0
|
||||
for(var/mob/living/carbon/human/H in world)
|
||||
if(H.key && H.stat != 2) alive++
|
||||
if(H.virus2.len && H.stat != 2) sick++
|
||||
|
||||
if(alive == 0)
|
||||
finished = 2
|
||||
if(sick == 0)
|
||||
finished = 1
|
||||
return
|
||||
|
||||
///////////////////////////////
|
||||
//Checks if the round is over//
|
||||
///////////////////////////////
|
||||
/datum/game_mode/epidemic/check_finished()
|
||||
if(finished != 0)
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
|
||||
///////////////////////////////////////////
|
||||
///Handle crew failure(station explodes)///
|
||||
///////////////////////////////////////////
|
||||
/datum/game_mode/epidemic/proc/crew_lose()
|
||||
ticker.mode:explosion_in_progress = 1
|
||||
for(var/mob/M in world)
|
||||
if(M.client)
|
||||
M << 'sound/machines/Alarm.ogg'
|
||||
world << "\blue<b>Incoming missile detected.. Impact in 10..</b>"
|
||||
for (var/i=9 to 1 step -1)
|
||||
sleep(10)
|
||||
world << "\blue<b>[i]..</b>"
|
||||
sleep(10)
|
||||
enter_allowed = 0
|
||||
if(ticker)
|
||||
ticker.station_explosion_cinematic(0,null)
|
||||
if(ticker.mode)
|
||||
ticker.mode:station_was_nuked = 1
|
||||
ticker.mode:explosion_in_progress = 0
|
||||
finished = 2
|
||||
return
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
//Announces the end of the game with all relavent information stated//
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
/datum/game_mode/epidemic/declare_completion()
|
||||
if(finished == 1)
|
||||
feedback_set_details("round_end_result","win - epidemic cured")
|
||||
world << "\red <FONT size = 3><B> The virus outbreak was contained! The crew wins!</B></FONT>"
|
||||
else if(finished == 2)
|
||||
feedback_set_details("round_end_result","loss - rev heads killed")
|
||||
world << "\red <FONT size = 3><B> The crew succumbed to the epidemic!</B></FONT>"
|
||||
..()
|
||||
return 1
|
||||
@@ -1,181 +0,0 @@
|
||||
//This file was auto-corrected by findeclaration.exe on 29/05/2012 15:03:04
|
||||
|
||||
/datum/game_mode/var/list/memes = list()
|
||||
|
||||
/datum/game_mode/meme
|
||||
name = "Memetic Anomaly"
|
||||
config_tag = "meme"
|
||||
required_players = 3
|
||||
required_players_secret = 10
|
||||
restricted_jobs = list("AI", "Cyborg")
|
||||
recommended_enemies = 2 // need at least a meme and a host
|
||||
votable = 0 // temporarily disable this mode for voting
|
||||
|
||||
|
||||
|
||||
var/var/list/datum/mind/first_hosts = list()
|
||||
var/var/list/assigned_hosts = list()
|
||||
|
||||
var/const/prob_int_murder_target = 50 // intercept names the assassination target half the time
|
||||
var/const/prob_right_murder_target_l = 25 // lower bound on probability of naming right assassination target
|
||||
var/const/prob_right_murder_target_h = 50 // upper bound on probability of naimg the right assassination target
|
||||
|
||||
var/const/prob_int_item = 50 // intercept names the theft target half the time
|
||||
var/const/prob_right_item_l = 25 // lower bound on probability of naming right theft target
|
||||
var/const/prob_right_item_h = 50 // upper bound on probability of naming the right theft target
|
||||
|
||||
var/const/prob_int_sab_target = 50 // intercept names the sabotage target half the time
|
||||
var/const/prob_right_sab_target_l = 25 // lower bound on probability of naming right sabotage target
|
||||
var/const/prob_right_sab_target_h = 50 // upper bound on probability of naming right sabotage target
|
||||
|
||||
var/const/prob_right_killer_l = 25 //lower bound on probability of naming the right operative
|
||||
var/const/prob_right_killer_h = 50 //upper bound on probability of naming the right operative
|
||||
var/const/prob_right_objective_l = 25 //lower bound on probability of determining the objective correctly
|
||||
var/const/prob_right_objective_h = 50 //upper bound on probability of determining the objective correctly
|
||||
|
||||
var/const/waittime_l = 600 //lower bound on time before intercept arrives (in tenths of seconds)
|
||||
var/const/waittime_h = 1800 //upper bound on time before intercept arrives (in tenths of seconds)
|
||||
|
||||
/datum/game_mode/meme/announce()
|
||||
world << "<B>The current game mode is - Meme!</B>"
|
||||
world << "<B>An unknown creature has infested the mind of a crew member. Find and destroy it by any means necessary.</B>"
|
||||
|
||||
/datum/game_mode/meme/can_start()
|
||||
if(!..())
|
||||
return 0
|
||||
|
||||
// for every 10 players, get 1 meme, and for each meme, get a host
|
||||
// also make sure that there's at least one meme and one host
|
||||
recommended_enemies = max(src.num_players() / 20 * 2, 2)
|
||||
|
||||
var/list/datum/mind/possible_memes = get_players_for_role(BE_MEME)
|
||||
|
||||
if(possible_memes.len < 2)
|
||||
log_admin("MODE FAILURE: MEME. NOT ENOUGH MEME CANDIDATES.")
|
||||
return 0 // not enough candidates for meme
|
||||
|
||||
// for each 2 possible memes, add one meme and one host
|
||||
while(possible_memes.len >= 2)
|
||||
var/datum/mind/meme = pick(possible_memes)
|
||||
possible_memes.Remove(meme)
|
||||
|
||||
var/datum/mind/first_host = pick(possible_memes)
|
||||
possible_memes.Remove(first_host)
|
||||
|
||||
modePlayer += meme
|
||||
modePlayer += first_host
|
||||
memes += meme
|
||||
first_hosts += first_host
|
||||
|
||||
// so that we can later know which host belongs to which meme
|
||||
assigned_hosts[meme.key] = first_host
|
||||
|
||||
meme.assigned_role = "MODE" //So they aren't chosen for other jobs.
|
||||
meme.special_role = "Meme"
|
||||
|
||||
return 1
|
||||
|
||||
/datum/game_mode/meme/pre_setup()
|
||||
return 1
|
||||
|
||||
|
||||
/datum/game_mode/meme/post_setup()
|
||||
// create a meme and enter it
|
||||
for(var/datum/mind/meme in memes)
|
||||
var/mob/living/parasite/meme/M = new
|
||||
var/mob/original = meme.current
|
||||
meme.transfer_to(M)
|
||||
M.clearHUD()
|
||||
|
||||
// get the host for this meme
|
||||
var/datum/mind/first_host = assigned_hosts[meme.key]
|
||||
// this is a redundant check, but I don't think the above works..
|
||||
// if picking hosts works with this method, remove the method above
|
||||
if(!first_host)
|
||||
first_host = pick(first_hosts)
|
||||
first_hosts.Remove(first_host)
|
||||
M.enter_host(first_host.current)
|
||||
forge_meme_objectives(meme, first_host)
|
||||
|
||||
del original
|
||||
|
||||
log_admin("Created [memes.len] memes.")
|
||||
|
||||
spawn (rand(waittime_l, waittime_h))
|
||||
send_intercept()
|
||||
..()
|
||||
return
|
||||
|
||||
|
||||
/datum/game_mode/proc/forge_meme_objectives(var/datum/mind/meme, var/datum/mind/first_host)
|
||||
// meme always needs to attune X hosts
|
||||
var/datum/objective/meme_attune/attune_objective = new
|
||||
attune_objective.owner = meme
|
||||
attune_objective.gen_amount_goal(3,6)
|
||||
meme.objectives += attune_objective
|
||||
|
||||
// generate some random objectives, use standard traitor objectives
|
||||
var/job = first_host.assigned_role
|
||||
|
||||
for(var/datum/objective/o in SelectObjectives(job, meme))
|
||||
o.owner = meme
|
||||
meme.objectives += o
|
||||
|
||||
greet_meme(meme)
|
||||
|
||||
return
|
||||
|
||||
/datum/game_mode/proc/greet_meme(var/datum/mind/meme, var/you_are=1)
|
||||
if (you_are)
|
||||
meme.current << "<B>\red You are a meme!</B>"
|
||||
|
||||
var/obj_count = 1
|
||||
for(var/datum/objective/objective in meme.objectives)
|
||||
meme.current << "<B>Objective #[obj_count]</B>: [objective.explanation_text]"
|
||||
obj_count++
|
||||
return
|
||||
|
||||
/datum/game_mode/meme/check_finished()
|
||||
var/memes_alive = 0
|
||||
for(var/datum/mind/meme in memes)
|
||||
if(!istype(meme.current,/mob/living))
|
||||
continue
|
||||
if(meme.current.stat==2)
|
||||
continue
|
||||
memes_alive++
|
||||
|
||||
if (memes_alive)
|
||||
return ..()
|
||||
else
|
||||
return 1
|
||||
|
||||
/datum/game_mode/proc/auto_declare_completion_meme()
|
||||
for(var/datum/mind/meme in memes)
|
||||
var/memewin = 1
|
||||
var/attuned = 0
|
||||
if((meme.current) && istype(meme.current,/mob/living/parasite/meme))
|
||||
world << "<B>The meme was [meme.current.key].</B>"
|
||||
world << "<B>The last host was [meme.current:host.key].</B>"
|
||||
world << "<B>Hosts attuned: [attuned]</B>"
|
||||
|
||||
var/count = 1
|
||||
for(var/datum/objective/objective in meme.objectives)
|
||||
if(objective.check_completion())
|
||||
world << "<B>Objective #[count]</B>: [objective.explanation_text] \green <B>Success</B>"
|
||||
feedback_add_details("meme_objective","[objective.type]|SUCCESS")
|
||||
else
|
||||
world << "<B>Objective #[count]</B>: [objective.explanation_text] \red Failed"
|
||||
feedback_add_details("meme_objective","[objective.type]|FAIL")
|
||||
memewin = 0
|
||||
count++
|
||||
|
||||
else
|
||||
memewin = 0
|
||||
|
||||
if(memewin)
|
||||
world << "<B>The meme was successful!<B>"
|
||||
feedback_add_details("meme_success","SUCCESS")
|
||||
else
|
||||
world << "<B>The meme has failed!<B>"
|
||||
feedback_add_details("meme_success","FAIL")
|
||||
return 1
|
||||
@@ -1,65 +0,0 @@
|
||||
/obj/item/weapon/pinpointer/advpinpointer/flag
|
||||
name = "\improper Flag Pinpointer"
|
||||
desc = "Tracks the position of every nation's flag."
|
||||
|
||||
/obj/item/weapon/pinpointer/advpinpointer/flag/attack_self()
|
||||
switch(mode)
|
||||
if (0)
|
||||
mode = 1
|
||||
active = 1
|
||||
target = locate(/obj/item/flag/nation/atmos)
|
||||
point_at(target)
|
||||
usr << "\blue You calibrate \the [src] to locate the [target.name]"
|
||||
if (1)
|
||||
mode = 2
|
||||
target = locate(/obj/item/flag/nation/sec)
|
||||
usr << "\blue You calibrate \the [src] to locate the [target.name]"
|
||||
if (2)
|
||||
mode = 3
|
||||
target = locate(/obj/item/flag/nation/cargo)
|
||||
usr << "\blue You calibrate \the [src] to locate the [target.name]"
|
||||
if (3)
|
||||
mode = 4
|
||||
target = locate(/obj/item/flag/nation/command)
|
||||
usr << "\blue You calibrate \the [src] to locate the [target.name]"
|
||||
if (4)
|
||||
mode = 5
|
||||
target = locate(/obj/item/flag/nation/med)
|
||||
usr << "\blue You calibrate \the [src] to locate the [target.name]"
|
||||
if (5)
|
||||
mode = 6
|
||||
target = locate(/obj/item/flag/nation/rnd)
|
||||
usr << "\blue You calibrate \the [src] to locate the [target.name]"
|
||||
else
|
||||
mode = 0
|
||||
active = 0
|
||||
icon_state = "pinoff"
|
||||
usr << "\blue You switch \the [src] off."
|
||||
|
||||
/obj/item/weapon/pinpointer/advpinpointer/flag/examine(mob/user)
|
||||
switch(mode)
|
||||
if (1)
|
||||
user << "Is is calibrated for the [target.name]"
|
||||
if (2)
|
||||
user << "Is is calibrated for the [target.name]"
|
||||
if (3)
|
||||
user << "Is is calibrated for the [target.name]"
|
||||
if (4)
|
||||
user << "Is is calibrated for the [target.name]"
|
||||
if (5)
|
||||
user << "Is is calibrated for the [target.name]"
|
||||
else
|
||||
user << "It is switched off."
|
||||
|
||||
/datum/supply_packs/key_pinpointer_nations
|
||||
name = "Nations Flag Pinpointer crate"
|
||||
contains = list(/obj/item/weapon/pinpointer/advpinpointer/flag)
|
||||
cost = 20
|
||||
containertype = /obj/structure/closet/crate
|
||||
containername = "Nations Flag Pinpointer crate"
|
||||
access = access_heads
|
||||
group = "Operations"
|
||||
|
||||
New()
|
||||
if (istype(ticker.mode,/datum/game_mode/nations))
|
||||
..()
|
||||
@@ -1,142 +0,0 @@
|
||||
/obj/item/flag/nation
|
||||
density = 1
|
||||
anchored = 1
|
||||
var/turf/startloc = null
|
||||
var/captured = 0
|
||||
var/list/vassals = list()
|
||||
var/datum/nations/liege = null
|
||||
var/datum/nations/nation = null
|
||||
|
||||
/obj/item/flag/nation/New()
|
||||
..()
|
||||
flag_list += src
|
||||
|
||||
/obj/item/flag/nation/fire_act()
|
||||
return
|
||||
|
||||
/obj/item/flag/nation/Ignite()
|
||||
return
|
||||
|
||||
/obj/item/flag/nation/light()
|
||||
return
|
||||
|
||||
/obj/item/flag/nation/attackby(var/obj/item/weapon/W, var/mob/user, params)
|
||||
return
|
||||
|
||||
|
||||
/obj/item/flag/nation/ex_act()
|
||||
return
|
||||
|
||||
/obj/item/flag/nation/blob_act()
|
||||
return
|
||||
|
||||
|
||||
/obj/item/flag/nation/attack_hand(mob/user as mob)
|
||||
if(user.mind)
|
||||
if(user.mind.nation)
|
||||
var/obj/item/flag/nation/F = locate(user.mind.nation.flagpath)
|
||||
if(istype(user.mind.nation,nation)) //Same team as flag
|
||||
if(liege && liege == F.liege)
|
||||
user << "<span class='warning'>You can't steal your liege's flags!</span>"
|
||||
return
|
||||
else if(loc != startloc)
|
||||
loc = startloc
|
||||
user.visible_message("[user] sends [src] back to base!", "You return [src] to your base!")
|
||||
return
|
||||
else
|
||||
user << "<span class='warning'>You can't move your flag from it's home location!</span>"
|
||||
return
|
||||
else
|
||||
if(captured && Adjacent(F.startloc))
|
||||
user << "<span class='warning'>This flag has already been captured by your team!</span>"
|
||||
return
|
||||
else if(..())
|
||||
captured = 0
|
||||
anchored = 0
|
||||
var/obj/item/flag/nation/N = null
|
||||
if(liege)
|
||||
N = locate(liege.flagpath)
|
||||
for(var/mob/living/carbon/human/H in player_list)
|
||||
if(H.mind && H.mind.nation && liege && nation)
|
||||
if(H.mind.nation.name == liege.name) //we have to check based on the name var since they will be different instances of the nation datum
|
||||
H.mind.current << "<span class='warning'>You are no longer the liege of [nation]!</span>"
|
||||
if(H.mind.nation.name == nation.name)
|
||||
H.mind.current << "<span class='warning'>You are no longer vassals of [liege]!</span>"
|
||||
if(N)
|
||||
N.vassals -= nation
|
||||
liege = null
|
||||
else
|
||||
user << "<span class='warning'>You are not part of a nation and therefore cannot pick up any flags!</span>"
|
||||
return
|
||||
return
|
||||
|
||||
/obj/item/flag/nation/dropped(mob/user as mob)
|
||||
..()
|
||||
spawn(20)
|
||||
anchored = 1
|
||||
var/obj/item/flag/nation/F = locate(user.mind.nation.flagpath)
|
||||
if(F.loc != F.startloc) return
|
||||
for(var/obj/item/flag/nation/S in orange(1,F.startloc))
|
||||
if(S == src)
|
||||
captured = 1
|
||||
liege = F.nation
|
||||
F.vassals += nation
|
||||
//Announce capture/vassalage here.
|
||||
for(var/mob/living/carbon/human/H in player_list)
|
||||
if(H.mind && H.mind.nation && F.nation && nation)
|
||||
if(H.mind.nation.name == F.nation.name)
|
||||
H.mind.current << "<span class='warning'>You have just vassalized [nation]! They must now obey any members of your nation!</span>"
|
||||
continue
|
||||
if(H.mind.nation.name == nation.name)
|
||||
H.mind.current << "<span class='warning'>You are now vassals of [liege]! You must now obey the orders of any of their members!</span>"
|
||||
continue
|
||||
//Check for Victory
|
||||
for(var/obj/item/flag/nation/N in flag_list)
|
||||
if(F.nation && N.nation)
|
||||
if(F.nation.name == N.nation.name)
|
||||
continue
|
||||
if(N.liege && F.nation)
|
||||
if(N.captured && N.liege.name == F.nation.name)
|
||||
continue
|
||||
else
|
||||
return
|
||||
ticker.mode.declare_completion(F.nation)
|
||||
|
||||
|
||||
|
||||
//Nations/Department flags --Nations Gamemode Specific
|
||||
/obj/item/flag/nation/cargo
|
||||
name = "Cargonia flag"
|
||||
desc = "The flag of the independent, sovereign nation of Cargonia."
|
||||
icon_state = "cargoflag"
|
||||
nation = new /datum/nations/cargonia
|
||||
|
||||
/obj/item/flag/nation/med
|
||||
name = "Medistan flag"
|
||||
desc = "The flag of the independent, sovereign nation of Medistan."
|
||||
icon_state = "medflag"
|
||||
nation = new /datum/nations/medistan
|
||||
|
||||
/obj/item/flag/nation/sec
|
||||
name = "Brigston flag"
|
||||
desc = "The flag of the independent, sovereign nation of Brigston."
|
||||
icon_state = "secflag"
|
||||
nation = new /datum/nations/brigston
|
||||
|
||||
/obj/item/flag/nation/rnd
|
||||
name = "Scientopia flag"
|
||||
desc = "The flag of the independent, sovereign nation of Scientopia."
|
||||
icon_state = "rndflag"
|
||||
nation = new /datum/nations/scientopia
|
||||
|
||||
/obj/item/flag/nation/atmos
|
||||
name = "Atmosia flag"
|
||||
desc = "The flag of the independent, sovereign nation of Atmosia."
|
||||
icon_state = "atmosflag"
|
||||
nation = new /datum/nations/atmosia
|
||||
|
||||
/obj/item/flag/nation/command
|
||||
name = "People's Republic of Commandzakstan flag"
|
||||
desc = "The flag of the independent, sovereign nation of the People's Republic of Commandzakstan."
|
||||
icon_state = "ntflag"
|
||||
nation = new /datum/nations/command
|
||||
@@ -1,30 +0,0 @@
|
||||
/datum/nations
|
||||
var/name
|
||||
var/flagpath
|
||||
|
||||
/datum/nations/atmosia
|
||||
name = "Atmosia"
|
||||
flagpath = /obj/item/flag/nation/atmos
|
||||
|
||||
/datum/nations/brigston
|
||||
name = "Brigston"
|
||||
flagpath = /obj/item/flag/nation/sec
|
||||
|
||||
/datum/nations/cargonia
|
||||
name = "Cargonia"
|
||||
flagpath = /obj/item/flag/nation/cargo
|
||||
|
||||
/datum/nations/command
|
||||
name = "People's Republic of Commandzakstan"
|
||||
flagpath = /obj/item/flag/nation/command
|
||||
|
||||
/datum/nations/medistan
|
||||
name = "Medistan"
|
||||
flagpath = /obj/item/flag/nation/med
|
||||
|
||||
/datum/nations/scientopia
|
||||
name = "Scientopia"
|
||||
flagpath = /obj/item/flag/nation/rnd
|
||||
|
||||
|
||||
|
||||
@@ -1,439 +0,0 @@
|
||||
var/global/no_synthetic = 0
|
||||
|
||||
datum/game_mode/nations
|
||||
name = "nations"
|
||||
config_tag = "nations"
|
||||
required_players_secret = 25
|
||||
var/const/waittime_l = 1200 //lower bound on time before intercept arrives (in tenths of seconds)
|
||||
var/const/waittime_h = 3000 //upper bound on time before intercept arrives (in tenths of seconds)
|
||||
var/kickoff = 0
|
||||
var/victory = 0
|
||||
var/list/cargonians = list("Quartermaster","Cargo Technician","Shaft Miner")
|
||||
|
||||
/datum/game_mode/nations/pre_pre_setup()
|
||||
no_synthetic = 1
|
||||
|
||||
/datum/game_mode/nations/post_setup()
|
||||
spawn (rand(waittime_l, waittime_h))
|
||||
remove_flags()
|
||||
spawn(50)
|
||||
kickoff=1
|
||||
send_intercept()
|
||||
split_teams()
|
||||
spawn_flags()
|
||||
populate_vars()
|
||||
for(var/mob/M in player_list)
|
||||
if(!istype(M,/mob/new_player))
|
||||
M << sound('sound/effects/purge_siren.ogg')
|
||||
return ..()
|
||||
|
||||
/datum/game_mode/nations/send_intercept()
|
||||
command_announcement.Announce("Due to recent and COMPLETELY UNFOUNDED allegations of massive fraud and insider trading \
|
||||
affecting trillions of investors, the Nanotrasen Corporation has decided to liquidate all \
|
||||
assets of the Centcom Division in order to pay the massive legal fees that will be incurred \
|
||||
during the following centuries long court process. Therefore, all current employment contracts \
|
||||
are IMMEDIATELY TERMINATED. Nanotrasen will be unable to send a rescue shuttle to carry you home,\
|
||||
however they remain willing for the time being to continue trading cargo. Have a pleasant \
|
||||
day.", "FINAL TRANSMISSION, CENTCOM COMMAND.")
|
||||
|
||||
|
||||
|
||||
/datum/game_mode/nations/proc/remove_flags()
|
||||
for(var/obj/item/flag/F in world)
|
||||
qdel(F)
|
||||
|
||||
/datum/game_mode/nations/proc/spawn_flags()
|
||||
|
||||
for(var/obj/effect/landmark/nations/N in landmarks_list)
|
||||
switch(N.name)
|
||||
if("Atmosia")
|
||||
new /obj/item/flag/nation/atmos(get_turf(N))
|
||||
if("Brigston")
|
||||
new /obj/item/flag/nation/sec(get_turf(N))
|
||||
if("Cargonia")
|
||||
new /obj/item/flag/nation/cargo(get_turf(N))
|
||||
if("People's Republic of Commandzakstan")
|
||||
new /obj/item/flag/nation/command(get_turf(N))
|
||||
if("Medistan")
|
||||
new /obj/item/flag/nation/med(get_turf(N))
|
||||
if("Scientopia")
|
||||
new /obj/item/flag/nation/rnd(get_turf(N))
|
||||
|
||||
/datum/game_mode/nations/proc/split_teams()
|
||||
|
||||
for(var/mob/living/carbon/human/H in player_list)
|
||||
if(H.mind)
|
||||
if(H.mind.assigned_role in engineering_positions)
|
||||
H.mind.nation = all_nations["Atmosia"]
|
||||
H.hud_updateflag |= 1 << NATIONS_HUD
|
||||
var/I = image('icons/mob/hud.dmi', loc = H.mind.current, icon_state = "hudatmosia")
|
||||
H.client.images += I
|
||||
H.verbs += /mob/proc/respawn_self
|
||||
H.verbs += /mob/proc/nations_status
|
||||
H.verbs -= /mob/living/verb/ghost
|
||||
H.equip_or_collect(new /obj/item/weapon/pinpointer/advpinpointer/flag(H), slot_r_hand)
|
||||
H << "You are now part of the great sovereign nation of [H.mind.nation.name]!"
|
||||
continue
|
||||
else if(H.mind.assigned_role in medical_positions)
|
||||
H.mind.nation = all_nations["Medistan"]
|
||||
H.hud_updateflag |= 1 << NATIONS_HUD
|
||||
var/I = image('icons/mob/hud.dmi', loc = H.mind.current, icon_state = "hudmedistan")
|
||||
H.client.images += I
|
||||
H.verbs += /mob/proc/respawn_self
|
||||
H.verbs += /mob/proc/nations_status
|
||||
H.verbs -= /mob/living/verb/ghost
|
||||
H.equip_or_collect(new /obj/item/weapon/pinpointer/advpinpointer/flag(H), slot_r_hand)
|
||||
H << "You are now part of the great sovereign nation of [H.mind.nation.name]!"
|
||||
continue
|
||||
else if(H.mind.assigned_role in science_positions)
|
||||
H.mind.nation = all_nations["Scientopia"]
|
||||
H.hud_updateflag |= 1 << NATIONS_HUD
|
||||
var/I = image('icons/mob/hud.dmi', loc = H.mind.current, icon_state = "hudscientopia")
|
||||
H.client.images += I
|
||||
H.verbs += /mob/proc/respawn_self
|
||||
H.verbs += /mob/proc/nations_status
|
||||
H.verbs -= /mob/living/verb/ghost
|
||||
H.equip_or_collect(new /obj/item/weapon/pinpointer/advpinpointer/flag(H), slot_r_hand)
|
||||
H << "You are now part of the great sovereign nation of [H.mind.nation.name]!"
|
||||
continue
|
||||
else if(H.mind.assigned_role in security_positions)
|
||||
H.mind.nation = all_nations["Brigston"]
|
||||
H.hud_updateflag |= 1 << NATIONS_HUD
|
||||
var/I = image('icons/mob/hud.dmi', loc = H.mind.current, icon_state = "hudbrigston")
|
||||
H.client.images += I
|
||||
H.verbs += /mob/proc/respawn_self
|
||||
H.verbs += /mob/proc/nations_status
|
||||
H.verbs -= /mob/living/verb/ghost
|
||||
H.equip_or_collect(new /obj/item/weapon/pinpointer/advpinpointer/flag(H), slot_r_hand)
|
||||
H << "You are now part of the great sovereign nation of [H.mind.nation.name]!"
|
||||
continue
|
||||
else if(H.mind.assigned_role in cargonians)
|
||||
H.mind.nation = all_nations["Cargonia"]
|
||||
H.hud_updateflag |= 1 << NATIONS_HUD
|
||||
var/I = image('icons/mob/hud.dmi', loc = H.mind.current, icon_state = "hudcargonia")
|
||||
H.client.images += I
|
||||
H.verbs += /mob/proc/respawn_self
|
||||
H.verbs += /mob/proc/nations_status
|
||||
H.verbs -= /mob/living/verb/ghost
|
||||
H.equip_or_collect(new /obj/item/weapon/pinpointer/advpinpointer/flag(H), slot_r_hand)
|
||||
H << "You are now part of the great sovereign nation of [H.mind.nation.name]!"
|
||||
continue
|
||||
else if(H.mind.assigned_role in support_positions)
|
||||
H.mind.nation = all_nations["People's Republic of Commandzakstan"]
|
||||
H.hud_updateflag |= 1 << NATIONS_HUD
|
||||
var/I = image('icons/mob/hud.dmi', loc = H.mind.current, icon_state = "hudcommand")
|
||||
H.client.images += I
|
||||
H.verbs += /mob/proc/respawn_self
|
||||
H.verbs += /mob/proc/nations_status
|
||||
H.verbs -= /mob/living/verb/ghost
|
||||
H.equip_or_collect(new /obj/item/weapon/pinpointer/advpinpointer/flag(H), slot_r_hand)
|
||||
H << "You are now part of the great sovereign nation of [H.mind.nation.name]!"
|
||||
continue
|
||||
else if(H.mind.assigned_role in command_positions)
|
||||
H.mind.nation = all_nations["People's Republic of Commandzakstan"]
|
||||
H.hud_updateflag |= 1 << NATIONS_HUD
|
||||
var/I = image('icons/mob/hud.dmi', loc = H.mind.current, icon_state = "hudcommand")
|
||||
H.client.images += I
|
||||
H.verbs += /mob/proc/respawn_self
|
||||
H.verbs += /mob/proc/nations_status
|
||||
H.verbs -= /mob/living/verb/ghost
|
||||
H.equip_or_collect(new /obj/item/weapon/pinpointer/advpinpointer/flag(H), slot_r_hand)
|
||||
H << "You are now part of the great sovereign nation of [H.mind.nation.name]!"
|
||||
continue
|
||||
else
|
||||
message_admins("[H.name] with [H.mind.assigned_role] could not find any nation to assign!")
|
||||
continue
|
||||
|
||||
/datum/game_mode/nations/proc/populate_vars()
|
||||
for(var/obj/effect/landmark/nations/N in landmarks_list)
|
||||
switch(N.name)
|
||||
if("Atmosia")
|
||||
for(var/obj/item/flag/nation/atmos/A in flag_list)
|
||||
A.startloc = get_turf(N)
|
||||
continue
|
||||
if("Brigston")
|
||||
for(var/obj/item/flag/nation/sec/B in flag_list)
|
||||
B.startloc = get_turf(N)
|
||||
continue
|
||||
if("Cargonia")
|
||||
for(var/obj/item/flag/nation/cargo/C in flag_list)
|
||||
C.startloc = get_turf(N)
|
||||
continue
|
||||
if("People's Republic of Commandzakstan")
|
||||
for(var/obj/item/flag/nation/command/D in flag_list)
|
||||
D.startloc = get_turf(N)
|
||||
continue
|
||||
if("Medistan")
|
||||
for(var/obj/item/flag/nation/med/M in flag_list)
|
||||
M.startloc = get_turf(N)
|
||||
continue
|
||||
if("Scientopia")
|
||||
for(var/obj/item/flag/nation/rnd/S in flag_list)
|
||||
S.startloc = get_turf(N)
|
||||
continue
|
||||
|
||||
/datum/game_mode/nations/check_finished()
|
||||
if(victory)
|
||||
return 1
|
||||
return 0
|
||||
|
||||
/datum/game_mode/nations/declare_completion(var/datum/nations/N)
|
||||
world << "[N.name] has captured all of the station. All glory to [N.name]"
|
||||
victory = 1
|
||||
|
||||
|
||||
|
||||
/mob/proc/nations_status()
|
||||
set category = "OOC"
|
||||
set name = "Nation Status"
|
||||
set desc = "Information on your nation and your allies."
|
||||
|
||||
if (!( ticker )) return
|
||||
if (ticker.mode.name != "nations") return
|
||||
if(!mind) return
|
||||
if(!mind.nation) return
|
||||
|
||||
var/obj/item/flag/nation/F = locate(mind.nation.flagpath)
|
||||
|
||||
var/dat = "<html><head><title>Nation Status</title></head><body><h1><B>Nation Status</B></h1>"
|
||||
|
||||
dat += "You are part of the nation of <B>[mind.nation.name]</B>.<BR>"
|
||||
dat += "You -cannot- defect to another nation. Doing so or helping<br>"
|
||||
dat += "another nation you are not a vassal of is bannable.<br>"
|
||||
|
||||
dat += "<br><table cellspacing=5><tr><td><B>Liege</B></td><td></td></tr>"
|
||||
if(F.liege)
|
||||
dat += "You are currently the vassal of [F.liege.name] and must obey<br>"
|
||||
dat += "the commands of ANY of their members.<br>"
|
||||
else
|
||||
dat += "You are not currently vassalized by anyone! Protect your flag!<br>"
|
||||
dat += "</table>"
|
||||
|
||||
dat += "<br><table cellspacing=5><tr><td><B>Vassals</B></td><td></td></tr>"
|
||||
if(F.vassals.len)
|
||||
for(var/datum/nations/V in F.vassals)
|
||||
dat += "[V.name] is your vassal and must obey the commands of ANY of your members."
|
||||
else
|
||||
dat += "You do not currently have any vassals! Capture flags to vassalize!<br>"
|
||||
dat += "</table>"
|
||||
dat += "<br><table cellspacing=5><tr><td><B>Geneva Space Convention</B></td><td></td></tr>"
|
||||
dat += "The following are considered OUTLAWED by the Geneva Space Convention and will result"
|
||||
dat += "in severe consequences if used in warfare:<br>"
|
||||
dat += "<B>Scientopia - Large Scale Bombs - Nuclear Warfare"
|
||||
dat += "Atmosia - Using atmos as a weapon - Chemical Warfare"
|
||||
dat += "Medistan - Releasing harmful viruses - Biological Warfare</B>"
|
||||
dat += "</table>"
|
||||
|
||||
dat += "</body></html>"
|
||||
usr << browse(dat, "window=nationstatus;size=400x500")
|
||||
|
||||
/mob/proc/respawn_self()
|
||||
set category = "OOC"
|
||||
set name = "Respawn Character"
|
||||
set desc = "Respawn yourself (15 minute cooldown)."
|
||||
|
||||
if (!( ticker ))
|
||||
usr << "\blue <B>The round hasn't started!</B>"
|
||||
return
|
||||
if(stat!=2)
|
||||
usr << "\blue You must be dead to respawn."
|
||||
return
|
||||
if (ticker.mode.name != "nations")
|
||||
usr << "\blue Respawn is disabled."
|
||||
return
|
||||
if(!mind)
|
||||
return
|
||||
if(!mind.nation)
|
||||
src << "It appears you're not part of a nation. Use Respawn as NPC instead."
|
||||
return
|
||||
if(!mind.assigned_role)
|
||||
src << "It appears you're not part of a nation. Use Respawn as NPC instead."
|
||||
return
|
||||
if(!mind.assigned_role in get_all_jobs())
|
||||
src << "It appears you're not part of a nation. Use Respawn as NPC instead."
|
||||
return
|
||||
if(mind.special_role)
|
||||
src << "It appears you beame an antag and are longer part of a nation. Use Respawn as NPC instead."
|
||||
return
|
||||
else
|
||||
var/deathtime = world.time - src.timeofdeath
|
||||
var/deathtimeminutes = round(deathtime / 600)
|
||||
var/pluralcheck = "minute"
|
||||
if(deathtimeminutes == 0)
|
||||
pluralcheck = ""
|
||||
else if(deathtimeminutes == 1)
|
||||
pluralcheck = " [deathtimeminutes] minute and"
|
||||
else if(deathtimeminutes > 1)
|
||||
pluralcheck = " [deathtimeminutes] minutes and"
|
||||
var/deathtimeseconds = round((deathtime - deathtimeminutes * 600) / 10,1)
|
||||
usr << "You have been dead for[pluralcheck] [deathtimeseconds] seconds."
|
||||
if (deathtime < 9000)
|
||||
usr << "You must wait 15 minutes to respawn!"
|
||||
return
|
||||
else
|
||||
|
||||
//Ok, it's not a xeno or a monkey. So, spawn a human.
|
||||
var/mob/living/carbon/human/new_character = new(pick(latejoin))//The mob being spawned.
|
||||
|
||||
var/datum/data/record/record_found //Referenced to later to either randomize or not randomize the character.
|
||||
if(mind) //mind isn't currently in use by someone/something
|
||||
/*Try and locate a record for the person being respawned through data_core.
|
||||
This isn't an exact science but it does the trick more often than not.*/
|
||||
var/id = md5("[real_name][mind.assigned_role]")
|
||||
for(var/datum/data/record/t in data_core.locked)
|
||||
if(t.fields["id"]==id)
|
||||
record_found = t//We shall now reference the record.
|
||||
break
|
||||
|
||||
if(record_found)//If they have a record we can determine a few things.
|
||||
new_character.real_name = record_found.fields["name"]
|
||||
new_character.gender = record_found.fields["sex"]
|
||||
new_character.age = record_found.fields["age"]
|
||||
new_character.b_type = record_found.fields["b_type"]
|
||||
else
|
||||
new_character.gender = pick(MALE,FEMALE)
|
||||
var/datum/preferences/A = new()
|
||||
A.copy_to(new_character)
|
||||
|
||||
if(!new_character.real_name)
|
||||
if(new_character.gender == MALE)
|
||||
new_character.real_name = capitalize(pick(first_names_male)) + " " + capitalize(pick(last_names))
|
||||
else
|
||||
new_character.real_name = capitalize(pick(first_names_female)) + " " + capitalize(pick(last_names))
|
||||
new_character.name = new_character.real_name
|
||||
|
||||
if(mind)
|
||||
mind.transfer_to(new_character) //be careful when doing stuff like this! I've already checked the mind isn't in use
|
||||
new_character.mind.special_verbs = list()
|
||||
else
|
||||
new_character.mind_initialize()
|
||||
if(!new_character.mind.assigned_role) new_character.mind.assigned_role = "Civilian"//If they somehow got a null assigned role.
|
||||
|
||||
//DNA
|
||||
if(record_found)//Pull up their name from database records if they did have a mind.
|
||||
new_character.dna = new()//Let's first give them a new DNA.
|
||||
new_character.dna.unique_enzymes = record_found.fields["b_dna"]//Enzymes are based on real name but we'll use the record for conformity.
|
||||
|
||||
// I HATE BYOND. HATE. HATE. - N3X
|
||||
var/list/newSE= record_found.fields["enzymes"]
|
||||
var/list/newUI = record_found.fields["identity"]
|
||||
new_character.dna.SE = newSE.Copy() //This is the default of enzymes so I think it's safe to go with.
|
||||
new_character.dna.UpdateSE()
|
||||
new_character.UpdateAppearance(newUI.Copy())//Now we configure their appearance based on their unique identity, same as with a DNA machine or somesuch.
|
||||
else//If they have no records, we just do a random DNA for them, based on their random appearance/savefile.
|
||||
new_character.dna.ready_dna(new_character)
|
||||
|
||||
new_character.key = key
|
||||
|
||||
job_master.EquipRank(new_character, new_character.mind.assigned_role, 1)//Or we simply equip them.
|
||||
|
||||
if(!record_found)//If there are no records for them. If they have a record, this info is already in there. MODE people are not announced anyway.
|
||||
data_core.manifest_inject(new_character)
|
||||
|
||||
new_character << "You have been fully respawned. Get back in the fight!."
|
||||
new_character.hud_updateflag |= 1 << NATIONS_HUD
|
||||
return new_character
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* LateSpawn hook.
|
||||
* Called in newplayer.dm when a humanoid character joins the round after it started.
|
||||
* Parameters: var/mob/living/carbon/human, var/rank
|
||||
*/
|
||||
/hook/latespawn/proc/give_latejoiners_nations(var/mob/living/carbon/human/H)
|
||||
var/datum/game_mode/nations/mode = get_nations_mode()
|
||||
if (!mode) return 1
|
||||
|
||||
if(!mode.kickoff) return 1
|
||||
|
||||
var/list/cargonians = list("Quartermaster","Cargo Technician","Shaft Miner")
|
||||
if(H.mind)
|
||||
if(H.mind.assigned_role in engineering_positions)
|
||||
H.mind.nation = all_nations["Atmosia"]
|
||||
H.hud_updateflag |= 1 << NATIONS_HUD
|
||||
var/I = image('icons/mob/hud.dmi', loc = H.mind.current, icon_state = "hudatmosia")
|
||||
H.client.images += I
|
||||
H.verbs += /mob/proc/respawn_self
|
||||
H.verbs += /mob/proc/nations_status
|
||||
H.verbs -= /mob/living/verb/ghost
|
||||
H.equip_or_collect(new /obj/item/weapon/pinpointer/advpinpointer/flag(H), slot_r_hand)
|
||||
H << "You are now part of the great sovereign nation of [H.mind.nation.name]!"
|
||||
return 1
|
||||
else if(H.mind.assigned_role in medical_positions)
|
||||
H.mind.nation = all_nations["Medistan"]
|
||||
H.hud_updateflag |= 1 << NATIONS_HUD
|
||||
var/I = image('icons/mob/hud.dmi', loc = H.mind.current, icon_state = "hudmedistan")
|
||||
H.client.images += I
|
||||
H.verbs += /mob/proc/respawn_self
|
||||
H.verbs += /mob/proc/nations_status
|
||||
H.verbs -= /mob/living/verb/ghost
|
||||
H.equip_or_collect(new /obj/item/weapon/pinpointer/advpinpointer/flag(H), slot_r_hand)
|
||||
H << "You are now part of the great sovereign nation of [H.mind.nation.name]!"
|
||||
return 1
|
||||
else if(H.mind.assigned_role in science_positions)
|
||||
H.mind.nation = all_nations["Scientopia"]
|
||||
H.hud_updateflag |= 1 << NATIONS_HUD
|
||||
var/I = image('icons/mob/hud.dmi', loc = H.mind.current, icon_state = "hudscientopia")
|
||||
H.client.images += I
|
||||
H.verbs += /mob/proc/respawn_self
|
||||
H.verbs += /mob/proc/nations_status
|
||||
H.verbs -= /mob/living/verb/ghost
|
||||
H.equip_or_collect(new /obj/item/weapon/pinpointer/advpinpointer/flag(H), slot_r_hand)
|
||||
H << "You are now part of the great sovereign nation of [H.mind.nation.name]!"
|
||||
return 1
|
||||
else if(H.mind.assigned_role in security_positions)
|
||||
H.mind.nation = all_nations["Brigston"]
|
||||
H.hud_updateflag |= 1 << NATIONS_HUD
|
||||
var/I = image('icons/mob/hud.dmi', loc = H.mind.current, icon_state = "hudbrigston")
|
||||
H.client.images += I
|
||||
H.verbs += /mob/proc/respawn_self
|
||||
H.verbs += /mob/proc/nations_status
|
||||
H.verbs -= /mob/living/verb/ghost
|
||||
H.equip_or_collect(new /obj/item/weapon/pinpointer/advpinpointer/flag(H), slot_r_hand)
|
||||
H << "You are now part of the great sovereign nation of [H.mind.nation.name]!"
|
||||
return 1
|
||||
else if(H.mind.assigned_role in cargonians)
|
||||
H.mind.nation = all_nations["Cargonia"]
|
||||
H.hud_updateflag |= 1 << NATIONS_HUD
|
||||
var/I = image('icons/mob/hud.dmi', loc = H.mind.current, icon_state = "hudcargonia")
|
||||
H.client.images += I
|
||||
H.verbs += /mob/proc/respawn_self
|
||||
H.verbs += /mob/proc/nations_status
|
||||
H.verbs -= /mob/living/verb/ghost
|
||||
H.equip_or_collect(new /obj/item/weapon/pinpointer/advpinpointer/flag(H), slot_r_hand)
|
||||
H << "You are now part of the great sovereign nation of [H.mind.nation.name]!"
|
||||
return 1
|
||||
else if(H.mind.assigned_role in support_positions)
|
||||
H.mind.nation = all_nations["People's Republic of Commandzakstan"]
|
||||
H.hud_updateflag |= 1 << NATIONS_HUD
|
||||
var/I = image('icons/mob/hud.dmi', loc = H.mind.current, icon_state = "hudcommand")
|
||||
H.client.images += I
|
||||
H.verbs += /mob/proc/respawn_self
|
||||
H.verbs += /mob/proc/nations_status
|
||||
H.verbs -= /mob/living/verb/ghost
|
||||
H.equip_or_collect(new /obj/item/weapon/pinpointer/advpinpointer/flag(H), slot_r_hand)
|
||||
H << "You are now part of the great sovereign nation of [H.mind.nation.name]!"
|
||||
return 1
|
||||
else if(H.mind.assigned_role in command_positions)
|
||||
H.mind.nation = all_nations["People's Republic of Commandzakstan"]
|
||||
H.hud_updateflag |= 1 << NATIONS_HUD
|
||||
var/I = image('icons/mob/hud.dmi', loc = H.mind.current, icon_state = "hudcommand")
|
||||
H.client.images += I
|
||||
H.verbs += /mob/proc/respawn_self
|
||||
H.verbs += /mob/proc/nations_status
|
||||
H.verbs -= /mob/living/verb/ghost
|
||||
H.equip_or_collect(new /obj/item/weapon/pinpointer/advpinpointer/flag(H), slot_r_hand)
|
||||
H << "You are now part of the great sovereign nation of [H.mind.nation.name]!"
|
||||
return 1
|
||||
else
|
||||
message_admins("[key_name_admin(H)] with [H.mind.assigned_role] could not find any nation to assign!")
|
||||
return 1
|
||||
message_admins("[key_name_admin(H)] latejoined with no mind.")
|
||||
return 1
|
||||
|
||||
/proc/get_nations_mode()
|
||||
if(!ticker || !istype(ticker.mode, /datum/game_mode/nations))
|
||||
return null
|
||||
|
||||
return ticker.mode
|
||||
@@ -14,29 +14,16 @@ var/global/datum/controller/occupations/job_master
|
||||
|
||||
|
||||
proc/SetupOccupations(var/list/faction = list("Station"))
|
||||
if(no_synthetic)
|
||||
occupations = list()
|
||||
var/list/all_jobs = subtypesof(/datum/job) -list(/datum/job/ai,/datum/job/cyborg)
|
||||
if(!all_jobs.len)
|
||||
world << "\red \b Error setting up jobs, no job datums found"
|
||||
return 0
|
||||
for(var/J in all_jobs)
|
||||
var/datum/job/job = new J()
|
||||
if(!job) continue
|
||||
if(!job.faction in faction) continue
|
||||
occupations += job
|
||||
else
|
||||
occupations = list()
|
||||
var/list/all_jobs = subtypesof(/datum/job)
|
||||
if(!all_jobs.len)
|
||||
world << "\red \b Error setting up jobs, no job datums found"
|
||||
return 0
|
||||
for(var/J in all_jobs)
|
||||
var/datum/job/job = new J()
|
||||
if(!job) continue
|
||||
if(!job.faction in faction) continue
|
||||
occupations += job
|
||||
|
||||
occupations = list()
|
||||
var/list/all_jobs = subtypesof(/datum/job)
|
||||
if(!all_jobs.len)
|
||||
world << "\red \b Error setting up jobs, no job datums found"
|
||||
return 0
|
||||
for(var/J in all_jobs)
|
||||
var/datum/job/job = new J()
|
||||
if(!job) continue
|
||||
if(!job.faction in faction) continue
|
||||
occupations += job
|
||||
|
||||
return 1
|
||||
|
||||
|
||||
@@ -102,19 +102,6 @@
|
||||
..()
|
||||
return QDEL_HINT_HARDDEL_NOW
|
||||
|
||||
/obj/effect/landmark/nations
|
||||
name = "nations"
|
||||
icon = 'icons/mob/screen1.dmi'
|
||||
icon_state = "x"
|
||||
anchored = 1.0
|
||||
|
||||
/obj/effect/landmark/nations/New()
|
||||
..()
|
||||
tag = "nations*[name]"
|
||||
invisibility = 101
|
||||
|
||||
return 1
|
||||
|
||||
/obj/effect/landmark/start
|
||||
name = "start"
|
||||
icon = 'icons/mob/screen1.dmi'
|
||||
|
||||
@@ -156,7 +156,7 @@
|
||||
desc = "A flag proudly proclaiming the superior heritage of Unathi."
|
||||
icon_state = "unathiflag"
|
||||
|
||||
//Nation Flags (Able to spawn outside Nations gamemode)
|
||||
//Department Flags
|
||||
|
||||
/obj/item/flag/cargo
|
||||
name = "Cargonia flag"
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
max_w_class = 2
|
||||
storage_slots = 30
|
||||
can_hold = list() // any
|
||||
cant_hold = list("/obj/item/weapon/disk/nuclear","/obj/item/flag/nation")
|
||||
cant_hold = list("/obj/item/weapon/disk/nuclear")
|
||||
|
||||
/obj/item/weapon/storage/bag/trash/suicide_act(mob/user)
|
||||
user.visible_message("<span class='suicide'>[user] puts the [src.name] over their head and starts chomping at the insides! Disgusting!</span>")
|
||||
@@ -88,7 +88,7 @@
|
||||
storage_slots = 7
|
||||
display_contents_with_number = 0 //or else this will lead to stupid behavior.
|
||||
can_hold = list() // any
|
||||
cant_hold = list("/obj/item/weapon/disk/nuclear","/obj/item/flag/nation")
|
||||
cant_hold = list("/obj/item/weapon/disk/nuclear")
|
||||
var/head = 0
|
||||
|
||||
/obj/item/weapon/storage/bag/plasticbag/mob_can_equip(M as mob, slot)
|
||||
|
||||
@@ -318,9 +318,6 @@
|
||||
return
|
||||
|
||||
else
|
||||
if(!isemptylist(search_contents_for(/obj/item/flag/nation)))
|
||||
usr << "You get the feeling that you shouldn't cremate one of the items in the cremator."
|
||||
return
|
||||
for (var/mob/M in viewers(src))
|
||||
M.show_message("\red You hear a roar as the crematorium activates.", 1)
|
||||
|
||||
@@ -417,7 +414,7 @@
|
||||
usr << "\red Access denied."
|
||||
return
|
||||
|
||||
/hook/Login/proc/update_morgue(var/client/client, var/mob/L)
|
||||
/hook/Login/proc/update_morgue(var/client/client, var/mob/L)
|
||||
//Update morgues on login/logout
|
||||
if (L.stat == DEAD)
|
||||
var/obj/structure/morgue/Morgue = null
|
||||
@@ -440,8 +437,8 @@
|
||||
Morgue = B.loc
|
||||
if (Morgue)
|
||||
Morgue.update()
|
||||
|
||||
/hook/Logout/proc/update_morgue(var/client/client, var/mob/L)
|
||||
|
||||
/hook/Logout/proc/update_morgue(var/client/client, var/mob/L)
|
||||
//Update morgues on login/logout
|
||||
if (L.stat == DEAD)
|
||||
var/obj/structure/morgue/Morgue = null
|
||||
|
||||
@@ -190,8 +190,6 @@ var/list/mechtoys = list(
|
||||
return 1
|
||||
if(istype(A,/obj/item/weapon/disk/nuclear))
|
||||
return 1
|
||||
if(istype(A,/obj/item/flag/nation))
|
||||
return 1
|
||||
if(istype(A,/obj/machinery/nuclearbomb))
|
||||
return 1
|
||||
if(istype(A,/obj/item/device/radio/beacon))
|
||||
|
||||
@@ -477,22 +477,6 @@
|
||||
dat += "<tr><td><i>Head not found!</i></td></tr>"
|
||||
dat += "</table>"
|
||||
|
||||
if(ticker.mode.name == "nations")
|
||||
dat += "</table><br><table><tr><td><B>Flags(s)</B></td></tr>"
|
||||
for(var/obj/item/flag/nation/N in world)
|
||||
dat += "<tr><td>[N.name], "
|
||||
var/atom/flag_loc = N.loc
|
||||
while(!istype(flag_loc, /turf))
|
||||
if(istype(flag_loc, /mob))
|
||||
var/mob/M = flag_loc
|
||||
dat += "carried by <a href='?src=\ref[src];adminplayeropts=\ref[M]'>[M.real_name]</a> "
|
||||
if(istype(flag_loc, /obj))
|
||||
var/obj/O = flag_loc
|
||||
dat += "in \a [O.name] "
|
||||
flag_loc = flag_loc.loc
|
||||
dat += "in [flag_loc.loc] at ([flag_loc.x], [flag_loc.y], [flag_loc.z])</td></tr>"
|
||||
dat += "</table>"
|
||||
|
||||
if(istype(ticker.mode, /datum/game_mode/blob))
|
||||
var/datum/game_mode/blob/mode = ticker.mode
|
||||
dat += "<br><table cellspacing=5><tr><td><B>Blob</B></td><td></td><td></td></tr>"
|
||||
|
||||
@@ -119,7 +119,7 @@ Works together with spawning an observer, noted above.
|
||||
if(antagHUD)
|
||||
var/list/target_list = list()
|
||||
for(var/mob/living/target in oview(src, 14))
|
||||
if(target.mind && (target.mind.special_role || issilicon(target) || target.mind.nation))
|
||||
if(target.mind && (target.mind.special_role || issilicon(target)))
|
||||
target_list += target
|
||||
if(target_list.len)
|
||||
assess_targets(target_list, src)
|
||||
@@ -146,7 +146,6 @@ Works together with spawning an observer, noted above.
|
||||
var/client/C = U.client
|
||||
for(var/mob/living/carbon/human/target in target_list)
|
||||
C.images += target.hud_list[SPECIALROLE_HUD]
|
||||
C.images += target.hud_list[NATIONS_HUD] // ??? THE SNOWFLAKE IS KILLING ME
|
||||
for(var/mob/living/silicon/target in target_list)
|
||||
C.images += target.hud_list[SPECIALROLE_HUD]
|
||||
|
||||
@@ -172,10 +171,6 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
||||
set name = "Ghost"
|
||||
set desc = "Relinquish your life and enter the land of the dead."
|
||||
|
||||
if(ticker && ticker.mode.name == "nations")
|
||||
usr << "\blue Ghosting is disabled."
|
||||
return
|
||||
|
||||
var/mob/M = src
|
||||
|
||||
if(stat == DEAD)
|
||||
|
||||
@@ -36,7 +36,6 @@
|
||||
hud_list[IMPTRACK_HUD] = image('icons/mob/hud.dmi', src, "hudblank")
|
||||
hud_list[SPECIALROLE_HUD] = image('icons/mob/hud.dmi', src, "hudblank")
|
||||
hud_list[STATUS_HUD_OOC] = image('icons/mob/hud.dmi', src, "hudhealthy")
|
||||
hud_list[NATIONS_HUD] = image('icons/mob/hud.dmi', src, "hudblank")
|
||||
|
||||
..()
|
||||
|
||||
|
||||
@@ -1234,9 +1234,6 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
|
||||
if(see_override) //Override all
|
||||
see_invisible = see_override
|
||||
|
||||
if(ticker && ticker.mode.name == "nations")
|
||||
process_nations()
|
||||
|
||||
if(healths)
|
||||
if (analgesic)
|
||||
healths.icon_state = "health_health_numb"
|
||||
@@ -1820,34 +1817,8 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
|
||||
holder.icon_state = "hudshadowlingthrall"
|
||||
|
||||
hud_list[SPECIALROLE_HUD] = holder
|
||||
|
||||
if(hud_updateflag & 1 << NATIONS_HUD)
|
||||
var/image/holder = hud_list[NATIONS_HUD]
|
||||
holder.icon_state = "hudblank"
|
||||
|
||||
if(mind && mind.nation)
|
||||
switch(mind.nation.name)
|
||||
if("Atmosia")
|
||||
holder.icon_state = "hudatmosia"
|
||||
if("Brigston")
|
||||
holder.icon_state = "hudbrigston"
|
||||
if("Cargonia")
|
||||
holder.icon_state = "hudcargonia"
|
||||
if("People's Republic of Commandzakstan")
|
||||
holder.icon_state = "hudcommand"
|
||||
if("Medistan")
|
||||
holder.icon_state = "hudmedistan"
|
||||
if("Scientopia")
|
||||
holder.icon_state = "hudscientopia"
|
||||
|
||||
hud_list[NATIONS_HUD] = holder
|
||||
hud_updateflag = 0
|
||||
|
||||
/mob/living/carbon/human/proc/process_nations()
|
||||
var/client/C = client
|
||||
for(var/mob/living/carbon/human/H in view(src, 14))
|
||||
C.images += H.hud_list[NATIONS_HUD]
|
||||
|
||||
/mob/living/carbon/human/handle_silent()
|
||||
if(..())
|
||||
speech_problem_flag = 1
|
||||
|
||||
@@ -183,7 +183,6 @@ var/list/ai_verbs_default = list(
|
||||
hud_list[IMPCHEM_HUD] = image('icons/mob/hud.dmi', src, "hudblank")
|
||||
hud_list[IMPTRACK_HUD] = image('icons/mob/hud.dmi', src, "hudblank")
|
||||
hud_list[SPECIALROLE_HUD] = image('icons/mob/hud.dmi', src, "hudblank")
|
||||
hud_list[NATIONS_HUD] = image('icons/mob/hud.dmi', src, "hudblank")
|
||||
|
||||
ai_list += src
|
||||
..()
|
||||
|
||||
@@ -149,7 +149,6 @@ var/list/robot_verbs_default = list(
|
||||
hud_list[IMPCHEM_HUD] = image('icons/mob/hud.dmi', src, "hudblank")
|
||||
hud_list[IMPTRACK_HUD] = image('icons/mob/hud.dmi', src, "hudblank")
|
||||
hud_list[SPECIALROLE_HUD] = image('icons/mob/hud.dmi', src, "hudblank")
|
||||
hud_list[NATIONS_HUD] = image('icons/mob/hud.dmi', src, "hudblank")
|
||||
scanner.Grant(src)
|
||||
|
||||
/mob/living/silicon/robot/proc/init(var/alien=0)
|
||||
|
||||
@@ -86,7 +86,6 @@ PROBABILITY RAGINMAGES 0
|
||||
PROBABILITY BORER 0
|
||||
PROBABILITY XENOS 2
|
||||
PROBABILITY MUTINY 1
|
||||
PROBABILITY NATIONS 0
|
||||
PROBABILITY METEOR 0
|
||||
|
||||
## Hash out to disable random events during the round.
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 5.3 KiB |
@@ -351,10 +351,6 @@
|
||||
#include "code\game\gamemodes\mutiny\directives\tau_ceti_needs_women_directive.dm"
|
||||
#include "code\game\gamemodes\mutiny\directives\terminations_directive.dm"
|
||||
#include "code\game\gamemodes\mutiny\directives\vox_heist.dm"
|
||||
#include "code\game\gamemodes\nations\flag_pinpointer.dm"
|
||||
#include "code\game\gamemodes\nations\flagprocs.dm"
|
||||
#include "code\game\gamemodes\nations\nationdatums.dm"
|
||||
#include "code\game\gamemodes\nations\nations.dm"
|
||||
#include "code\game\gamemodes\nuclear\nuclear.dm"
|
||||
#include "code\game\gamemodes\nuclear\nuclearbomb.dm"
|
||||
#include "code\game\gamemodes\nuclear\pinpointer.dm"
|
||||
|
||||
Reference in New Issue
Block a user