diff --git a/code/__defines/machinery.dm b/code/__defines/machinery.dm index 1f65364e1a..cc77b8c3c5 100644 --- a/code/__defines/machinery.dm +++ b/code/__defines/machinery.dm @@ -50,6 +50,7 @@ var/global/defer_powernet_rebuild = 0 // True if net rebuild will be called #define NETWORK_SECURITY "Security" #define NETWORK_TELECOM "Tcomsat" #define NETWORK_THUNDER "Thunderdome" +#define NETWORK_COMMUNICATORS "Communicators" // Those networks can only be accessed by pre-existing terminals. AIs and new terminals can't use them. var/list/restricted_camera_networks = list(NETWORK_ERT,NETWORK_MERCENARY,"Secret") diff --git a/code/_helpers/game.dm b/code/_helpers/game.dm index 57ff4b7013..b10463b458 100644 --- a/code/_helpers/game.dm +++ b/code/_helpers/game.dm @@ -248,8 +248,11 @@ . |= M // Since we're already looping through mobs, why bother using |= ? This only slows things down. return . -/proc/get_mobs_and_objs_in_view_fast(var/turf/T, var/range, var/checkghosts = 1) - +//Uses dview to quickly return mobs and objects in view, +// then adds additional mobs or objects if they are in range 'smartly', +// based on their presence in lists of players or registered objects +// Type: 1-audio, 2-visual, 0-neither +/proc/get_mobs_and_objs_in_view_fast(var/turf/T, var/range, var/type = 1) var/list/mobs = list() var/list/objs = list() @@ -261,21 +264,30 @@ mobs += AM hearturfs += AM.locs[1] else if(isobj(AM)) - objs += AM + objs += AM hearturfs += AM.locs[1] - + //A list of every mob with a client for(var/mob/M in player_list) - if(checkghosts && M.stat == DEAD && M.is_preference_enabled(/datum/client_preference/ghost_ears)) - mobs |= M - continue if(M.loc && M.locs[1] in hearturfs) mobs |= M + else if(M.stat == DEAD) + switch(type) + if(1) //Audio messages use ghost_ears + if(M.is_preference_enabled(/datum/client_preference/ghost_ears)) + mobs |= M + if(2) //Visual messages use ghost_sight + if(M.is_preference_enabled(/datum/client_preference/ghost_sight)) + mobs |= M + + //For objects below the top level who still want to hear + for(var/obj/O in listening_objects) + if(O.loc && O.locs[1] in hearturfs) + objs |= O + return list("mobs" = mobs, "objs" = objs) - - #define SIGN(X) ((X<0)?-1:1) proc diff --git a/code/_helpers/global_lists.dm b/code/_helpers/global_lists.dm index 1a1eced63a..9a90a3676b 100644 --- a/code/_helpers/global_lists.dm +++ b/code/_helpers/global_lists.dm @@ -11,6 +11,7 @@ var/global/list/human_mob_list = list() //List of all human mobs and sub-type var/global/list/silicon_mob_list = list() //List of all silicon mobs, including clientless var/global/list/living_mob_list = list() //List of all alive mobs, including clientless. Excludes /mob/new_player var/global/list/dead_mob_list = list() //List of all dead mobs, including clientless. Excludes /mob/new_player +var/global/list/listening_objects = list() //List of all objects which care about receiving messages (communicators, radios, etc) var/global/list/cable_list = list() //Index for all cables, so that powernets don't have to look through the entire world all the time var/global/list/chemical_reactions_list //list of all /datum/chemical_reaction datums. Used during chemical reactions diff --git a/code/_helpers/unsorted.dm b/code/_helpers/unsorted.dm index 0858ebc1a4..1e14d39183 100644 --- a/code/_helpers/unsorted.dm +++ b/code/_helpers/unsorted.dm @@ -1257,7 +1257,7 @@ var/list/WALLITEMS = list( arglist = list2params(arglist) return "[content]" -/proc/get_random_colour(var/simple, var/lower, var/upper) +/proc/get_random_colour(var/simple, var/lower=0, var/upper=255) var/colour if(simple) colour = pick(list("FF0000","FF7F00","FFFF00","00FF00","0000FF","4B0082","8F00FF")) diff --git a/code/_onclick/hud/hud.dm b/code/_onclick/hud/hud.dm index 66d453ac36..7b9cf82cc5 100644 --- a/code/_onclick/hud/hud.dm +++ b/code/_onclick/hud/hud.dm @@ -6,12 +6,14 @@ var/datum/global_hud/global_hud = new() var/list/global_huds = list( global_hud.druggy, global_hud.blurry, + global_hud.whitense, global_hud.vimpaired, global_hud.darkMask, global_hud.nvg, global_hud.thermal, global_hud.meson, - global_hud.science) + global_hud.science + ) /datum/hud/var/obj/screen/grab_intent /datum/hud/var/obj/screen/hurt_intent @@ -21,6 +23,7 @@ var/list/global_huds = list( /datum/global_hud var/obj/screen/druggy var/obj/screen/blurry + var/obj/screen/whitense var/list/vimpaired var/list/darkMask var/obj/screen/nvg @@ -53,6 +56,14 @@ var/list/global_huds = list( blurry.layer = 17 blurry.mouse_opacity = 0 + //static overlay effect for cameras and the like + whitense = new /obj/screen() + whitense.screen_loc = ui_entire_screen + whitense.icon = 'icons/effects/static.dmi' + whitense.icon_state = "1 light" + whitense.layer = 17 + whitense.mouse_opacity = 0 + nvg = setup_overlay("nvg_hud") thermal = setup_overlay("thermal_hud") meson = setup_overlay("meson_hud") diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm deleted file mode 100644 index 8c81c98db6..0000000000 --- a/code/datums/supplypacks.dm +++ /dev/null @@ -1,2140 +0,0 @@ -//SUPPLY PACKS -//NOTE: only secure crate types use the access var (and are lockable) -//NOTE: hidden packs only show up when the computer has been hacked. -//ANOTER NOTE: Contraband is obtainable through modified supplycomp circuitboards. -//BIG NOTE: Don't add living things to crates, that's bad, it will break the shuttle. -//NEW NOTE: Do NOT set the price of any crates below 7 points. Doing so allows infinite points. - -var/list/all_supply_groups = list("Operations","Security","Hospitality","Engineering","Atmospherics","Medical","Reagents","Reagent Cartridges","Science","Hydroponics", "Supply", "Miscellaneous") - -/datum/supply_packs - var/name = null - var/list/contains = list() - var/manifest = "" - var/amount = null - var/cost = null - var/containertype = null - var/containername = null - var/access = null - var/hidden = 0 - var/contraband = 0 - var/group = "Operations" - -/datum/supply_packs/New() - manifest += "" - -/datum/supply_packs/specialops - name = "Special Ops supplies" - contains = list( - /obj/item/weapon/storage/box/emps, - /obj/item/weapon/grenade/smokebomb = 3, - /obj/item/weapon/pen/reagent/paralysis, - /obj/item/weapon/grenade/chem_grenade/incendiary - ) - cost = 20 - containertype = /obj/structure/closet/crate - containername = "Special Ops crate" - group = "Security" - hidden = 1 - -/datum/supply_packs/food - name = "Kitchen supply crate" - contains = list( - /obj/item/weapon/reagent_containers/food/condiment/flour = 6, - /obj/item/weapon/reagent_containers/food/drinks/milk = 3, - /obj/item/weapon/reagent_containers/food/drinks/soymilk = 2, - /obj/item/weapon/storage/fancy/egg_box = 2, - /obj/item/weapon/reagent_containers/food/snacks/tofu = 4, - /obj/item/weapon/reagent_containers/food/snacks/meat = 4 - ) - cost = 10 - containertype = /obj/structure/closet/crate/freezer - containername = "Food crate" - group = "Supply" - -/datum/supply_packs/monkey - name = "Monkey crate" - contains = list (/obj/item/weapon/storage/box/monkeycubes) - cost = 20 - containertype = /obj/structure/closet/crate/freezer - containername = "Monkey crate" - group = "Hydroponics" - -/datum/supply_packs/farwa - name = "Farwa crate" - contains = list (/obj/item/weapon/storage/box/monkeycubes/farwacubes) - cost = 30 - containertype = /obj/structure/closet/crate/freezer - containername = "Farwa crate" - group = "Hydroponics" - -/datum/supply_packs/skrell - name = "Neaera crate" - contains = list (/obj/item/weapon/storage/box/monkeycubes/neaeracubes) - cost = 30 - containertype = /obj/structure/closet/crate/freezer - containername = "Neaera crate" - group = "Hydroponics" - -/datum/supply_packs/stok - name = "Stok crate" - contains = list (/obj/item/weapon/storage/box/monkeycubes/stokcubes) - cost = 30 - containertype = /obj/structure/closet/crate/freezer - containername = "Stok crate" - group = "Hydroponics" - -/datum/supply_packs/beanbagammo - name = "Beanbag shells" - contains = list(/obj/item/weapon/storage/box/beanbags = 3) - cost = 30 - containertype = /obj/structure/closet/crate - containername = "Beanbag shells" - group = "Security" - -/datum/supply_packs/toner - name = "Toner cartridges" - contains = list(/obj/item/device/toner = 6) - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Toner cartridges" - group = "Supply" - -/datum/supply_packs/party - name = "Party equipment" - contains = list( - /obj/item/weapon/storage/box/drinkingglasses, - /obj/item/weapon/reagent_containers/food/drinks/shaker, - /obj/item/weapon/reagent_containers/food/drinks/flask/barflask, - /obj/item/weapon/reagent_containers/food/drinks/bottle/patron, - /obj/item/weapon/reagent_containers/food/drinks/bottle/goldschlager, - /obj/item/weapon/reagent_containers/food/drinks/bottle/specialwhiskey, - /obj/item/weapon/storage/fancy/cigarettes/dromedaryco, - /obj/item/weapon/lipstick/random, - /obj/item/weapon/reagent_containers/food/drinks/bottle/small/ale = 2, - /obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer = 4, - /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass = 4 - ) - cost = 20 - containertype = /obj/structure/closet/crate - containername = "Party equipment" - group = "Hospitality" - -/datum/supply_packs/lasertag - name = "Lasertag equipment" - contains = list( - /obj/item/weapon/gun/energy/lasertag/red, - /obj/item/clothing/suit/redtag, - /obj/item/weapon/gun/energy/lasertag/blue, - /obj/item/clothing/suit/bluetag - ) - containertype = /obj/structure/closet - containername = "Lasertag Closet" - group = "Hospitality" - cost = 20 - -/datum/supply_packs/internals - name = "Internals crate" - contains = list( - /obj/item/clothing/mask/gas = 3, - /obj/item/weapon/tank/air = 3 - ) - cost = 10 - containertype = /obj/structure/closet/crate/internals - containername = "Internals crate" - group = "Atmospherics" - -/datum/supply_packs/evacuation - name = "Emergency equipment" - contains = list( - /obj/item/weapon/storage/toolbox/emergency = 2, - /obj/item/clothing/suit/storage/hazardvest = 2, - /obj/item/clothing/suit/storage/vest = 2, - /obj/item/weapon/tank/emergency_oxygen/engi = 4, - /obj/item/clothing/suit/space/emergency = 4, - /obj/item/clothing/head/helmet/space/emergency = 4, - /obj/item/clothing/mask/gas = 4 - ) - cost = 45 - containertype = /obj/structure/closet/crate/internals - containername = "Emergency crate" - group = "Atmospherics" - - -/datum/supply_packs/inflatable - name = "Inflatable barriers" - contains = list(/obj/item/weapon/storage/briefcase/inflatable = 3) - cost = 20 - containertype = /obj/structure/closet/crate - containername = "Inflatable Barrier Crate" - group = "Atmospherics" - -/datum/supply_packs/janitor - name = "Janitorial supplies" - contains = list( - /obj/item/weapon/reagent_containers/glass/bucket, - /obj/item/weapon/mop, - /obj/item/clothing/under/rank/janitor, - /obj/item/weapon/cartridge/janitor, - /obj/item/clothing/gloves/black, - /obj/item/clothing/head/soft/purple, - /obj/item/weapon/storage/belt/janitor, - /obj/item/clothing/shoes/galoshes, - /obj/item/weapon/caution = 4, - /obj/item/weapon/storage/bag/trash, - /obj/item/device/lightreplacer, - /obj/item/weapon/reagent_containers/spray/cleaner, - /obj/item/weapon/reagent_containers/glass/rag, - /obj/item/weapon/grenade/chem_grenade/cleaner = 3, - /obj/structure/mopbucket - ) - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Janitorial supplies" - group = "Supply" - -/datum/supply_packs/lightbulbs - name = "Replacement lights" - contains = list(/obj/item/weapon/storage/box/lights/mixed = 3) - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Replacement lights" - group = "Engineering" - -/datum/supply_packs/wizard - name = "Wizard costume" - contains = list( - /obj/item/weapon/staff, - /obj/item/clothing/suit/wizrobe/fake, - /obj/item/clothing/shoes/sandal, - /obj/item/clothing/head/wizard/fake - ) - cost = 20 - containertype = /obj/structure/closet/crate - containername = "Wizard costume crate" - group = "Miscellaneous" - -/datum/supply_packs/foam_weapons - name = "Foam Weapon Crate" - contains = list( - /obj/item/weapon/material/sword/foam = 2, - /obj/item/weapon/material/twohanded/baseballbat/foam = 2, - /obj/item/weapon/material/twohanded/spear/foam = 2, - /obj/item/weapon/material/twohanded/fireaxe/foam = 2 - ) - cost = 80 - containertype = /obj/structure/closet/crate - containername = "foam weapon crate" - group = "Miscellaneous" - -/datum/supply_packs/mule - name = "Mulebot Crate" - contains = list() - cost = 20 - containertype = /obj/structure/largecrate/animal/mulebot - containername = "Mulebot Crate" - group = "Operations" - -/datum/supply_packs/cargotrain - name = "Cargo Train Tug" - contains = list(/obj/vehicle/train/cargo/engine) - cost = 45 - containertype = /obj/structure/largecrate - containername = "Cargo Train Tug Crate" - group = "Operations" - -/datum/supply_packs/cargotrailer - name = "Cargo Train Trolley" - contains = list(/obj/vehicle/train/cargo/trolley) - cost = 15 - containertype = /obj/structure/largecrate - containername = "Cargo Train Trolley Crate" - group = "Operations" - -/datum/supply_packs/lisa - name = "Corgi Crate" - contains = list() - cost = 50 - containertype = /obj/structure/largecrate/animal/corgi - containername = "Corgi Crate" - group = "Hydroponics" - -/datum/supply_packs/hydroponics - name = "Hydroponics Supply Crate" - contains = list( - /obj/item/weapon/reagent_containers/spray/plantbgone = 4, - /obj/item/weapon/reagent_containers/glass/bottle/ammonia = 2, - /obj/item/weapon/material/hatchet, - /obj/item/weapon/material/minihoe, - /obj/item/device/analyzer/plant_analyzer, - /obj/item/clothing/gloves/botanic_leather, - /obj/item/clothing/suit/apron, - /obj/item/weapon/material/minihoe, - /obj/item/weapon/storage/box/botanydisk - ) - cost = 15 - containertype = /obj/structure/closet/crate/hydroponics - containername = "Hydroponics crate" - access = access_hydroponics - group = "Hydroponics" - -/datum/supply_packs/cow - name = "Cow crate" - cost = 30 - containertype = /obj/structure/largecrate/animal/cow - containername = "Cow crate" - access = access_hydroponics - group = "Hydroponics" - -/datum/supply_packs/goat - name = "Goat crate" - cost = 25 - containertype = /obj/structure/largecrate/animal/goat - containername = "Goat crate" - access = access_hydroponics - group = "Hydroponics" - -/datum/supply_packs/chicken - name = "Chicken crate" - cost = 20 - containertype = /obj/structure/largecrate/animal/chick - containername = "Chicken crate" - access = access_hydroponics - group = "Hydroponics" - -/datum/supply_packs/seeds - name = "Seeds crate" - contains = list( - /obj/item/seeds/chiliseed, - /obj/item/seeds/berryseed, - /obj/item/seeds/cornseed, - /obj/item/seeds/eggplantseed, - /obj/item/seeds/tomatoseed, - /obj/item/seeds/appleseed, - /obj/item/seeds/soyaseed, - /obj/item/seeds/wheatseed, - /obj/item/seeds/carrotseed, - /obj/item/seeds/harebell, - /obj/item/seeds/lemonseed, - /obj/item/seeds/orangeseed, - /obj/item/seeds/grassseed, - /obj/item/seeds/sunflowerseed, - /obj/item/seeds/chantermycelium, - /obj/item/seeds/potatoseed, - /obj/item/seeds/sugarcaneseed - ) - cost = 10 - containertype = /obj/structure/closet/crate/hydroponics - containername = "Seeds crate" - access = access_hydroponics - group = "Hydroponics" - -/datum/supply_packs/weedcontrol - name = "Weed control crate" - contains = list( - /obj/item/weapon/material/hatchet = 2, - /obj/item/weapon/reagent_containers/spray/plantbgone = 4, - /obj/item/clothing/mask/gas = 2, - /obj/item/weapon/grenade/chem_grenade/antiweed = 2 - ) - cost = 25 - containertype = /obj/structure/closet/crate/hydroponics - containername = "Weed control crate" - access = access_hydroponics - group = "Hydroponics" - -/datum/supply_packs/exoticseeds - name = "Exotic seeds crate" - contains = list( - /obj/item/seeds/replicapod = 2, - /obj/item/seeds/libertymycelium, - /obj/item/seeds/reishimycelium, - /obj/item/seeds/random = 6, - /obj/item/seeds/kudzuseed - ) - cost = 15 - containertype = /obj/structure/closet/crate/hydroponics - containername = "Exotic Seeds crate" - access = access_hydroponics - group = "Hydroponics" - -/datum/supply_packs/medical - name = "Medical crate" - contains = list( - /obj/item/weapon/storage/firstaid/regular, - /obj/item/weapon/storage/firstaid/fire, - /obj/item/weapon/storage/firstaid/toxin, - /obj/item/weapon/storage/firstaid/o2, - /obj/item/weapon/storage/firstaid/adv, - /obj/item/weapon/reagent_containers/glass/bottle/antitoxin, - /obj/item/weapon/reagent_containers/glass/bottle/inaprovaline, - /obj/item/weapon/reagent_containers/glass/bottle/stoxin, - /obj/item/weapon/storage/box/syringes, - /obj/item/weapon/storage/box/autoinjectors - ) - cost = 10 - containertype = /obj/structure/closet/crate/medical - containername = "Medical crate" - group = "Medical" - -/datum/supply_packs/bloodpack - name = "BloodPack crate" - contains = list(/obj/item/weapon/storage/box/bloodpacks = 3) - cost = 10 - containertype = /obj/structure/closet/crate/medical - containername = "BloodPack crate" - group = "Medical" - -/datum/supply_packs/bodybag - name = "Body bag crate" - contains = list(/obj/item/weapon/storage/box/bodybags = 3) - cost = 10 - containertype = /obj/structure/closet/crate/medical - containername = "Body bag crate" - group = "Medical" - -/datum/supply_packs/cryobag - name = "Stasis bag crate" - contains = list(/obj/item/bodybag/cryobag = 3) - cost = 50 - containertype = /obj/structure/closet/crate/medical - containername = "Stasis bag crate" - group = "Medical" - -/datum/supply_packs/virus - name = "Virus sample crate" - contains = list(/obj/item/weapon/virusdish/random = 4) - cost = 25 - containertype = "/obj/structure/closet/crate/secure" - containername = "Virus sample crate" - access = access_cmo - group = "Science" - -/datum/supply_packs/metal50 - name = "50 metal sheets" - contains = list(/obj/item/stack/material/steel) - amount = 50 - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Metal sheets crate" - group = "Engineering" - -/datum/supply_packs/glass50 - name = "50 glass sheets" - contains = list(/obj/item/stack/material/glass) - amount = 50 - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Glass sheets crate" - group = "Engineering" - -/datum/supply_packs/wood50 - name = "50 wooden planks" - contains = list(/obj/item/stack/material/wood) - amount = 50 - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Wooden planks crate" - group = "Engineering" - -/datum/supply_packs/plastic50 - name = "50 plastic sheets" - contains = list(/obj/item/stack/material/plastic) - amount = 50 - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Plastic sheets crate" - group = "Engineering" - -/datum/supply_packs/smescoil - name = "Superconducting Magnetic Coil" - contains = list(/obj/item/weapon/smes_coil) - cost = 75 - containertype = /obj/structure/closet/crate - containername = "Superconducting Magnetic Coil crate" - group = "Engineering" - -/datum/supply_packs/electrical - name = "Electrical maintenance crate" - contains = list( - /obj/item/weapon/storage/toolbox/electrical = 2, - /obj/item/clothing/gloves/yellow = 2, - /obj/item/weapon/cell = 2, - /obj/item/weapon/cell/high = 2 - ) - cost = 15 - containertype = /obj/structure/closet/crate - containername = "Electrical maintenance crate" - group = "Engineering" - -/datum/supply_packs/mechanical - name = "Mechanical maintenance crate" - contains = list( - /obj/item/weapon/storage/belt/utility/full = 3, - /obj/item/clothing/suit/storage/hazardvest = 3, - /obj/item/clothing/head/welding = 2, - /obj/item/clothing/head/hardhat - ) - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Mechanical maintenance crate" - group = "Engineering" - -/datum/supply_packs/watertank - name = "Water tank crate" - contains = list(/obj/structure/reagent_dispensers/watertank) - cost = 8 - containertype = /obj/structure/largecrate - containername = "water tank crate" - group = "Hydroponics" - -/datum/supply_packs/fueltank - name = "Fuel tank crate" - contains = list(/obj/structure/reagent_dispensers/fueltank) - cost = 8 - containertype = /obj/structure/largecrate - containername = "fuel tank crate" - group = "Engineering" - -/datum/supply_packs/coolanttank - name = "Coolant tank crate" - contains = list(/obj/structure/reagent_dispensers/coolanttank) - cost = 16 - containertype = /obj/structure/largecrate - containername = "coolant tank crate" - group = "Science" - -/datum/supply_packs/solar - name = "Solar Pack crate" - contains = list( - /obj/item/solar_assembly = 21, - /obj/item/weapon/circuitboard/solar_control, - /obj/item/weapon/tracker_electronics, - /obj/item/weapon/paper/solar - ) - cost = 20 - containertype = /obj/structure/closet/crate - containername = "Solar pack crate" - group = "Engineering" - -/datum/supply_packs/engine - name = "Emitter crate" - contains = list(/obj/machinery/power/emitter = 2) - cost = 10 - containertype = /obj/structure/closet/crate/secure - containername = "Emitter crate" - access = access_ce - group = "Engineering" - -/datum/supply_packs/engine/field_gen - name = "Field Generator crate" - contains = list(/obj/machinery/field_generator = 2) - containertype = /obj/structure/closet/crate/secure - containername = "Field Generator crate" - access = access_ce - group = "Engineering" - -/datum/supply_packs/engine/sing_gen - name = "Singularity Generator crate" - contains = list(/obj/machinery/the_singularitygen) - containertype = /obj/structure/closet/crate/secure - containername = "Singularity Generator crate" - access = access_ce - group = "Engineering" - -/datum/supply_packs/engine/collector - name = "Collector crate" - contains = list(/obj/machinery/power/rad_collector = 3) - containername = "Collector crate" - group = "Engineering" - -/datum/supply_packs/engine/PA - name = "Particle Accelerator crate" - cost = 40 - contains = list( - /obj/structure/particle_accelerator/fuel_chamber, - /obj/machinery/particle_accelerator/control_box, - /obj/structure/particle_accelerator/particle_emitter/center, - /obj/structure/particle_accelerator/particle_emitter/left, - /obj/structure/particle_accelerator/particle_emitter/right, - /obj/structure/particle_accelerator/power_box, - /obj/structure/particle_accelerator/end_cap - ) - containertype = /obj/structure/closet/crate/secure - containername = "Particle Accelerator crate" - access = access_ce - group = "Engineering" - -/datum/supply_packs/mecha_ripley - name = "Circuit Crate (\"Ripley\" APLU)" - contains = list( - /obj/item/weapon/book/manual/ripley_build_and_repair, - /obj/item/weapon/circuitboard/mecha/ripley/main, - /obj/item/weapon/circuitboard/mecha/ripley/peripherals - ) - cost = 30 - containertype = /obj/structure/closet/crate/secure - containername = "APLU \"Ripley\" Circuit Crate" - access = access_robotics - group = "Science" - -/datum/supply_packs/mecha_odysseus - name = "Circuit Crate (\"Odysseus\")" - contains = list( - /obj/item/weapon/circuitboard/mecha/odysseus/peripherals, - /obj/item/weapon/circuitboard/mecha/odysseus/main - ) - cost = 25 - containertype = /obj/structure/closet/crate/secure - containername = "\"Odysseus\" Circuit Crate" - access = access_robotics - group = "Science" - -/datum/supply_packs/hoverpod - name = "Hoverpod Shipment" - contains = list() - cost = 80 - containertype = /obj/structure/largecrate/hoverpod - containername = "Hoverpod Crate" - group = "Operations" - -/datum/supply_packs/robotics - name = "Robotics assembly crate" - contains = list( - /obj/item/device/assembly/prox_sensor = 3, - /obj/item/weapon/storage/toolbox/electrical, - /obj/item/device/flash = 4, - /obj/item/weapon/cell/high = 2 - ) - cost = 10 - containertype = /obj/structure/closet/crate/secure/gear - containername = "Robotics assembly" - access = access_robotics - group = "Engineering" - -/datum/supply_packs/robolimbs_basic - name = "Basic robolimb blueprints" - contains = list( - /obj/item/weapon/disk/limb/morpheus, - /obj/item/weapon/disk/limb/xion - ) - cost = 15 - containertype = /obj/structure/closet/crate/secure/gear - containername = "Robolimb blueprints (basic)" - access = access_robotics - group = "Engineering" - -/datum/supply_packs/robolimbs_adv - name = "All robolimb blueprints" - contains = list( - /obj/item/weapon/disk/limb/bishop, - /obj/item/weapon/disk/limb/hesphiastos, - /obj/item/weapon/disk/limb/morpheus, - /obj/item/weapon/disk/limb/veymed, - /obj/item/weapon/disk/limb/wardtakahashi, - /obj/item/weapon/disk/limb/xion, - /obj/item/weapon/disk/limb/zenghu, - ) - cost = 40 - containertype = /obj/structure/closet/crate/secure/gear - containername = "Robolimb blueprints (adv)" - access = access_robotics - group = "Engineering" - -/datum/supply_packs/phoron - name = "Phoron assembly crate" - contains = list( - /obj/item/weapon/tank/phoron = 3, - /obj/item/device/assembly/igniter = 3, - /obj/item/device/assembly/prox_sensor = 3, - /obj/item/device/assembly/timer = 3 - ) - cost = 10 - containertype = /obj/structure/closet/crate/secure/phoron - containername = "Phoron assembly crate" - access = access_tox_storage - group = "Science" - -/datum/supply_packs/weapons - name = "Weapons crate" - contains = list( - /obj/item/weapon/melee/baton = 2, - /obj/item/weapon/gun/energy/gun = 2, - /obj/item/weapon/gun/energy/taser = 2, - /obj/item/weapon/gun/projectile/colt/detective = 2, - /obj/item/weapon/storage/box/flashbangs = 2 - ) - cost = 40 - containertype = /obj/structure/closet/crate/secure/weapon - containername = "Weapons crate" - access = access_security - group = "Security" - -/datum/supply_packs/flareguns - name = "Flare guns crate" - contains = list( - /obj/item/weapon/gun/projectile/sec/flash, - /obj/item/ammo_magazine/c45m/flash, - /obj/item/weapon/gun/projectile/shotgun/doublebarrel/flare, - /obj/item/weapon/storage/box/flashshells - ) - cost = 25 - containertype = /obj/structure/closet/crate/secure/weapon - containername = "Flare gun crate" - access = access_security - group = "Security" - -/datum/supply_packs/eweapons - name = "Experimental weapons crate" - contains = list( - /obj/item/weapon/gun/energy/xray = 2, - /obj/item/weapon/shield/energy = 2) - cost = 125 - containertype = /obj/structure/closet/crate/secure/weapon - containername = "Experimental weapons crate" - access = access_armory - group = "Security" - -/datum/supply_packs/randomised/armor - num_contained = 5 - contains = list( - /obj/item/clothing/suit/storage/vest, - /obj/item/clothing/suit/storage/vest/officer, - /obj/item/clothing/suit/storage/vest/warden, - /obj/item/clothing/suit/storage/vest/hos, - /obj/item/clothing/suit/storage/vest/pcrc, - /obj/item/clothing/suit/storage/vest/detective, - /obj/item/clothing/suit/storage/vest/heavy, - /obj/item/clothing/suit/storage/vest/heavy/officer, - /obj/item/clothing/suit/storage/vest/heavy/warden, - /obj/item/clothing/suit/storage/vest/heavy/hos, - /obj/item/clothing/suit/storage/vest/heavy/pcrc - ) - - name = "Armor crate" - cost = 40 - containertype = /obj/structure/closet/crate/secure - containername = "Armor crate" - access = access_security - group = "Security" - -/datum/supply_packs/riot_gear - name = "Riot gear crate" - contains = list( - /obj/item/weapon/melee/baton = 3, - /obj/item/weapon/shield/riot = 3, - /obj/item/weapon/handcuffs = 3, - /obj/item/weapon/storage/box/flashbangs, - /obj/item/weapon/storage/box/beanbags, - /obj/item/weapon/storage/box/handcuffs - ) - cost = 40 - containertype = /obj/structure/closet/crate/secure - containername = "riot gear crate" - access = access_armory - group = "Security" - -/datum/supply_packs/riot_armor - name = "Riot armor set crate" - contains = list( - /obj/item/clothing/head/helmet/riot, - /obj/item/clothing/suit/armor/riot, - /obj/item/clothing/gloves/arm_guard/riot, - /obj/item/clothing/shoes/leg_guard/riot - ) - cost = 30 - containertype = /obj/structure/closet/crate/secure - containername = "riot armor set crate" - access = access_armory - group = "Security" - -/datum/supply_packs/ablative_armor - name = "Ablative armor set crate" - contains = list( - /obj/item/clothing/head/helmet/laserproof, - /obj/item/clothing/suit/armor/laserproof, - /obj/item/clothing/gloves/arm_guard/laserproof, - /obj/item/clothing/shoes/leg_guard/laserproof - ) - cost = 40 - containertype = /obj/structure/closet/crate/secure - containername = "ablative armor set crate" - access = access_armory - group = "Security" - -/datum/supply_packs/bullet_resistant_armor - name = "Bullet resistant armor set crate" - contains = list( - /obj/item/clothing/head/helmet/bulletproof, - /obj/item/clothing/suit/armor/bulletproof, - /obj/item/clothing/gloves/arm_guard/bulletproof, - /obj/item/clothing/shoes/leg_guard/bulletproof - ) - cost = 35 - containertype = /obj/structure/closet/crate/secure - containername = "bullet resistant armor set crate" - access = access_armory - group = "Security" - -/datum/supply_packs/combat_armor - name = "Combat armor set crate" - contains = list( - /obj/item/clothing/head/helmet/combat, - /obj/item/clothing/suit/armor/combat, - /obj/item/clothing/gloves/arm_guard/combat, - /obj/item/clothing/shoes/leg_guard/combat - ) - cost = 40 - containertype = /obj/structure/closet/crate/secure - containername = "combat armor set crate" - access = access_armory - group = "Security" - -/datum/supply_packs/tactical - name = "Tactical suits" - containertype = /obj/structure/closet/crate/secure - containername = "Tactical Suit Locker" - cost = 60 - group = "Security" - access = access_armory - contains = list( - /obj/item/clothing/under/tactical, - /obj/item/clothing/suit/armor/tactical, - /obj/item/clothing/head/helmet/tactical, - /obj/item/clothing/mask/balaclava/tactical, - /obj/item/clothing/glasses/sunglasses/sechud/tactical, - /obj/item/weapon/storage/belt/security/tactical, - /obj/item/clothing/shoes/jackboots, - /obj/item/clothing/gloves/black, - /obj/item/clothing/under/tactical, - /obj/item/clothing/suit/armor/tactical, - /obj/item/clothing/head/helmet/tactical, - /obj/item/clothing/mask/balaclava/tactical, - /obj/item/clothing/glasses/sunglasses/sechud/tactical, - /obj/item/weapon/storage/belt/security/tactical, - /obj/item/clothing/shoes/jackboots, - /obj/item/clothing/gloves/black - ) - -/datum/supply_packs/energyweapons - name = "Energy weapons crate" - contains = list(/obj/item/weapon/gun/energy/laser = 3) - cost = 50 - containertype = /obj/structure/closet/crate/secure - containername = "energy weapons crate" - access = access_armory - group = "Security" - -/datum/supply_packs/shotgun - name = "Shotgun crate" - contains = list( - /obj/item/weapon/storage/box/shotgunammo, - /obj/item/weapon/storage/box/shotgunshells, - /obj/item/weapon/gun/projectile/shotgun/pump/combat = 2 - ) - cost = 65 - containertype = /obj/structure/closet/crate/secure - containername = "Shotgun crate" - access = access_armory - group = "Security" - -/datum/supply_packs/erifle - name = "Energy marksman crate" - contains = list(/obj/item/weapon/gun/energy/sniperrifle = 2) - cost = 90 - containertype = /obj/structure/closet/crate/secure - containername = "Energy marksman crate" - access = access_armory - group = "Security" - -/datum/supply_packs/shotgunammo - name = "Ballistic ammunition crate" - contains = list( - /obj/item/weapon/storage/box/shotgunammo = 2, - /obj/item/weapon/storage/box/shotgunshells = 2 - ) - cost = 60 - containertype = /obj/structure/closet/crate/secure - containername = "ballistic ammunition crate" - access = access_armory - group = "Security" - -/datum/supply_packs/ionweapons - name = "Electromagnetic weapons crate" - contains = list( - /obj/item/weapon/gun/energy/ionrifle = 2, - /obj/item/weapon/storage/box/emps - ) - cost = 50 - containertype = /obj/structure/closet/crate/secure - containername = "electromagnetic weapons crate" - access = access_armory - group = "Security" - -/datum/supply_packs/randomised/automatic - name = "Automatic weapon crate" - num_contained = 2 - contains = list( - /obj/item/weapon/gun/projectile/automatic/wt550, - /obj/item/weapon/gun/projectile/automatic/z8 - ) - cost = 90 - containertype = /obj/structure/closet/crate/secure - containername = "Automatic weapon crate" - access = access_armory - group = "Security" - -/datum/supply_packs/randomised/autoammo - name = "Automatic weapon ammunition crate" - num_contained = 6 - contains = list( - /obj/item/ammo_magazine/mc9mmt, - /obj/item/ammo_magazine/mc9mmt/rubber, - /obj/item/ammo_magazine/a556 - ) - cost = 20 - containertype = /obj/structure/closet/crate/secure - containername = "Automatic weapon ammunition crate" - access = access_armory - group = "Security" - -/datum/supply_packs/energy_guns - name = "energy guns crate" - contains = list(/obj/item/weapon/gun/energy/gun = 2) - cost = 50 - containertype = /obj/structure/closet/crate/secure - containername = "energy guns crate" - access = access_armory - group = "Security" - -/datum/supply_packs/securitybarriers - name = "Security barrier crate" - contains = list(/obj/machinery/deployable/barrier = 4) - cost = 20 - containertype = /obj/structure/closet/crate/secure/gear - containername = "Security barrier crate" - group = "Security" - -/datum/supply_packs/securityshieldgen - name = "Wall shield Generators" - contains = list(/obj/machinery/shieldwallgen = 4) - cost = 20 - containertype = /obj/structure/closet/crate/secure - containername = "wall shield generators crate" - access = access_teleporter - group = "Security" - -/datum/supply_packs/randomised - var/num_contained = 4 //number of items picked to be contained in a randomised crate - contains = list( - /obj/item/clothing/head/collectable/chef, - /obj/item/clothing/head/collectable/paper, - /obj/item/clothing/head/collectable/tophat, - /obj/item/clothing/head/collectable/captain, - /obj/item/clothing/head/collectable/beret, - /obj/item/clothing/head/collectable/welding, - /obj/item/clothing/head/collectable/flatcap, - /obj/item/clothing/head/collectable/pirate, - /obj/item/clothing/head/collectable/kitty, - /obj/item/clothing/head/collectable/rabbitears, - /obj/item/clothing/head/collectable/wizard, - /obj/item/clothing/head/collectable/hardhat, - /obj/item/clothing/head/collectable/HoS, - /obj/item/clothing/head/collectable/thunderdome, - /obj/item/clothing/head/collectable/swat, - /obj/item/clothing/head/collectable/slime, - /obj/item/clothing/head/collectable/police, - /obj/item/clothing/head/collectable/slime, - /obj/item/clothing/head/collectable/xenom, - /obj/item/clothing/head/collectable/petehat - ) - name = "Collectable hat crate!" - cost = 200 - containertype = /obj/structure/closet/crate - containername = "Collectable hats crate! Brought to you by Bass.inc!" - group = "Miscellaneous" - -/datum/supply_packs/randomised/New() - manifest += "Contains any [num_contained] of:" - ..() - -/datum/supply_packs/artscrafts - name = "Arts and Crafts supplies" - contains = list( - /obj/item/weapon/storage/fancy/crayons, - /obj/item/device/camera, - /obj/item/device/camera_film = 2, - /obj/item/weapon/storage/photo_album, - /obj/item/weapon/packageWrap, - /obj/item/weapon/reagent_containers/glass/paint/red, - /obj/item/weapon/reagent_containers/glass/paint/green, - /obj/item/weapon/reagent_containers/glass/paint/blue, - /obj/item/weapon/reagent_containers/glass/paint/yellow, - /obj/item/weapon/reagent_containers/glass/paint/purple, - /obj/item/weapon/reagent_containers/glass/paint/black, - /obj/item/weapon/reagent_containers/glass/paint/white, - /obj/item/weapon/contraband/poster, - /obj/item/weapon/wrapping_paper = 3 - ) - cost = 10 - containertype = "/obj/structure/closet/crate" - containername = "Arts and Crafts crate" - group = "Operations" - - -/datum/supply_packs/randomised/contraband - num_contained = 5 - contains = list( - /obj/item/seeds/bloodtomatoseed, - /obj/item/weapon/storage/pill_bottle/zoom, - /obj/item/weapon/storage/pill_bottle/happy, - /obj/item/weapon/reagent_containers/food/drinks/bottle/pwine - ) - - name = "Contraband crate" - cost = 30 - containertype = /obj/structure/closet/crate - containername = "Unlabeled crate" - contraband = 1 - group = "Operations" - -/datum/supply_packs/boxes - name = "Empty boxes" - contains = list(/obj/item/weapon/storage/box = 10) - cost = 10 - containertype = "/obj/structure/closet/crate" - containername = "Empty box crate" - group = "Supply" - -/datum/supply_packs/surgery - name = "Surgery crate" - contains = list( - /obj/item/weapon/cautery, - /obj/item/weapon/surgicaldrill, - /obj/item/clothing/mask/breath/medical, - /obj/item/weapon/tank/anesthetic, - /obj/item/weapon/FixOVein, - /obj/item/weapon/hemostat, - /obj/item/weapon/scalpel, - /obj/item/weapon/bonegel, - /obj/item/weapon/retractor, - /obj/item/weapon/bonesetter, - /obj/item/weapon/circular_saw - ) - cost = 25 - containertype = "/obj/structure/closet/crate/secure" - containername = "Surgery crate" - access = access_medical - group = "Medical" - -/datum/supply_packs/sterile - name = "Sterile equipment crate" - contains = list( - /obj/item/clothing/under/rank/medical/green = 2, - /obj/item/clothing/head/surgery/green = 2, - /obj/item/weapon/storage/box/masks, - /obj/item/weapon/storage/box/gloves, - /obj/item/weapon/storage/belt/medical = 3 - ) - cost = 15 - containertype = "/obj/structure/closet/crate" - containername = "Sterile equipment crate" - group = "Medical" - -/datum/supply_packs/randomised/pizza - num_contained = 5 - contains = list( - /obj/item/pizzabox/margherita, - /obj/item/pizzabox/mushroom, - /obj/item/pizzabox/meat, - /obj/item/pizzabox/vegetable - ) - name = "Surprise pack of five pizzas" - cost = 15 - containertype = /obj/structure/closet/crate/freezer - containername = "Pizza crate" - group = "Hospitality" - -/datum/supply_packs/randomised/costume - num_contained = 3 - contains = list( - /obj/item/clothing/suit/pirate, - /obj/item/clothing/suit/judgerobe, - /obj/item/clothing/suit/wcoat, - /obj/item/clothing/suit/hastur, - /obj/item/clothing/suit/holidaypriest, - /obj/item/clothing/suit/nun, - /obj/item/clothing/suit/imperium_monk, - /obj/item/clothing/suit/ianshirt, - /obj/item/clothing/under/gimmick/rank/captain/suit, - /obj/item/clothing/under/gimmick/rank/head_of_personnel/suit, - /obj/item/clothing/under/lawyer/purpsuit, - /obj/item/clothing/under/rank/mailman, - /obj/item/clothing/under/dress/dress_saloon, - /obj/item/clothing/suit/suspenders, - /obj/item/clothing/suit/storage/toggle/labcoat/mad, - /obj/item/clothing/suit/bio_suit/plaguedoctorsuit, - /obj/item/clothing/under/schoolgirl, - /obj/item/clothing/under/owl, - /obj/item/clothing/under/waiter, - /obj/item/clothing/under/gladiator, - /obj/item/clothing/under/soviet, - /obj/item/clothing/under/scratch, - /obj/item/clothing/under/wedding/bride_white, - /obj/item/clothing/suit/chef, - /obj/item/clothing/suit/apron/overalls, - /obj/item/clothing/under/redcoat, - /obj/item/clothing/under/kilt - ) - name = "Costumes crate" - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Actor Costumes" - group = "Miscellaneous" - -/datum/supply_packs/formal_wear - contains = list( - /obj/item/clothing/head/bowler, - /obj/item/clothing/head/that, - /obj/item/clothing/suit/storage/toggle/internalaffairs, - /obj/item/clothing/suit/storage/toggle/lawyer/bluejacket, - /obj/item/clothing/suit/storage/toggle/lawyer/purpjacket, - /obj/item/clothing/under/suit_jacket, - /obj/item/clothing/under/suit_jacket/female, - /obj/item/clothing/under/suit_jacket/really_black, - /obj/item/clothing/under/suit_jacket/red, - /obj/item/clothing/under/lawyer/bluesuit, - /obj/item/clothing/under/lawyer/purpsuit, - /obj/item/clothing/shoes/black = 2, - /obj/item/clothing/shoes/leather, - /obj/item/clothing/suit/wcoat - ) - name = "Formalwear closet" - cost = 30 - containertype = /obj/structure/closet - containername = "Formalwear for the best occasions." - group = "Miscellaneous" - -/datum/supply_packs/randomised/card_packs - num_contained = 5 - contains = list( - /obj/item/weapon/pack/cardemon, - /obj/item/weapon/pack/spaceball, - /obj/item/weapon/deck/holder - ) - name = "Trading Card Crate" - cost = 10 - containertype = /obj/structure/closet/crate - containername = "cards crate" - group = "Miscellaneous" - -/datum/supply_packs/shield_gen - contains = list(/obj/item/weapon/circuitboard/shield_gen) - name = "Bubble shield generator circuitry" - cost = 50 - containertype = /obj/structure/closet/crate/secure - containername = "bubble shield generator circuitry crate" - group = "Engineering" - access = access_ce - -/datum/supply_packs/shield_gen_ex - contains = list(/obj/item/weapon/circuitboard/shield_gen_ex) - name = "Hull shield generator circuitry" - cost = 50 - containertype = /obj/structure/closet/crate/secure - containername = "hull shield generator circuitry crate" - group = "Engineering" - access = access_ce - -/datum/supply_packs/shield_cap - contains = list(/obj/item/weapon/circuitboard/shield_cap) - name = "Bubble shield capacitor circuitry" - cost = 50 - containertype = /obj/structure/closet/crate/secure - containername = "shield capacitor circuitry crate" - group = "Engineering" - access = access_ce - -/datum/supply_packs/smbig - name = "Supermatter Core" - contains = list(/obj/machinery/power/supermatter) - cost = 150 - containertype = /obj/structure/closet/crate/secure/phoron - containername = "Supermatter crate (CAUTION)" - group = "Engineering" - access = access_ce - -/datum/supply_packs/eftpos - contains = list(/obj/item/device/eftpos) - name = "EFTPOS scanner" - cost = 10 - containertype = /obj/structure/closet/crate - containername = "EFTPOS crate" - group = "Miscellaneous" - -/datum/supply_packs/teg - contains = list(/obj/machinery/power/generator) - name = "Mark I Thermoelectric Generator" - cost = 75 - containertype = /obj/structure/closet/crate/secure/large - containername = "Mk1 TEG crate" - group = "Engineering" - access = access_engine - -/datum/supply_packs/circulator - contains = list(/obj/machinery/atmospherics/binary/circulator) - name = "Binary atmospheric circulator" - cost = 60 - containertype = /obj/structure/closet/crate/secure/large - containername = "Atmospheric circulator crate" - group = "Engineering" - access = access_engine - -/datum/supply_packs/air_dispenser - contains = list(/obj/machinery/pipedispenser/orderable) - name = "Pipe Dispenser" - cost = 35 - containertype = /obj/structure/closet/crate/secure/large - containername = "Pipe Dispenser Crate" - group = "Engineering" - access = access_atmospherics - -/datum/supply_packs/disposals_dispenser - contains = list(/obj/machinery/pipedispenser/disposal/orderable) - name = "Disposals Pipe Dispenser" - cost = 35 - containertype = /obj/structure/closet/crate/secure/large - containername = "Disposal Dispenser Crate" - group = "Engineering" - access = access_atmospherics - -/datum/supply_packs/bee_keeper - name = "Beekeeping crate" - contains = list( - /obj/item/beehive_assembly, - /obj/item/bee_smoker, - /obj/item/honey_frame = 5, - /obj/item/bee_pack - ) - cost = 40 - containertype = /obj/structure/closet/crate/hydroponics - containername = "Beekeeping crate" - access = access_hydroponics - group = "Hydroponics" - -/datum/supply_packs/cardboard_sheets - contains = list(/obj/item/stack/material/cardboard) - name = "50 cardboard sheets" - amount = 50 - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Cardboard sheets crate" - group = "Miscellaneous" - -/datum/supply_packs/bureaucracy - contains = list( - /obj/item/weapon/clipboard = 2, - /obj/item/weapon/pen/red, - /obj/item/weapon/pen/blue, - /obj/item/weapon/pen/blue, - /obj/item/device/camera_film, - /obj/item/weapon/folder/blue, - /obj/item/weapon/folder/red, - /obj/item/weapon/folder/yellow, - /obj/item/weapon/hand_labeler, - /obj/item/weapon/tape_roll, - /obj/structure/filingcabinet/chestdrawer{anchored = 0}, - /obj/item/weapon/paper_bin - ) - name = "Office supplies" - cost = 15 - containertype = /obj/structure/closet/crate - containername = "Office supplies crate" - group = "Supply" - -/datum/supply_packs/radsuit - contains = list( - /obj/item/clothing/suit/radiation = 3, - /obj/item/clothing/head/radiation = 3 - ) - name = "Radiation suits package" - cost = 20 - containertype = /obj/structure/closet/radiation - containername = "Radiation suit locker" - group = "Engineering" - -/datum/supply_packs/carpet - name = "Imported carpet" - containertype = /obj/structure/closet/crate - containername = "Imported carpet crate" - cost = 15 - group = "Miscellaneous" - contains = list( - /obj/item/stack/tile/carpet, - /obj/item/stack/tile/carpet/blue - ) - amount = 50 - -/datum/supply_packs/linoleum - name = "Linoleum" - containertype = /obj/structure/closet/crate - containername = "Linoleum crate" - cost = 15 - group = "Miscellaneous" - contains = list(/obj/item/stack/tile/linoleum) - amount = 50 - -/datum/supply_packs/hydrotray - name = "Empty hydroponics tray" - cost = 30 - containertype = /obj/structure/closet/crate/hydroponics - containername = "Hydroponics tray crate" - group = "Hydroponics" - contains = list(/obj/machinery/portable_atmospherics/hydroponics{anchored = 0}) - access = access_hydroponics - -/datum/supply_packs/canister_empty - name = "Empty gas canister" - cost = 7 - containername = "Empty gas canister crate" - containertype = /obj/structure/largecrate - contains = list(/obj/machinery/portable_atmospherics/canister) - group = "Atmospherics" - -/datum/supply_packs/canister_air - name = "Air canister" - cost = 10 - containername = "Air canister crate" - containertype = /obj/structure/largecrate - group = "Atmospherics" - contains = list(/obj/machinery/portable_atmospherics/canister/air) - -/datum/supply_packs/canister_oxygen - name = "Oxygen canister" - cost = 15 - containername = "Oxygen canister crate" - containertype = /obj/structure/largecrate - group = "Atmospherics" - contains = list(/obj/machinery/portable_atmospherics/canister/oxygen) - -/datum/supply_packs/canister_nitrogen - name = "Nitrogen canister" - cost = 10 - containername = "Nitrogen canister crate" - containertype = /obj/structure/largecrate - group = "Atmospherics" - contains = list(/obj/machinery/portable_atmospherics/canister/nitrogen) - -/datum/supply_packs/canister_phoron - name = "Phoron gas canister" - cost = 60 - containername = "Phoron gas canister crate" - containertype = /obj/structure/closet/crate/secure/large - access = access_atmospherics - group = "Atmospherics" - contains = list(/obj/machinery/portable_atmospherics/canister/phoron) - -/datum/supply_packs/canister_sleeping_agent - name = "N2O gas canister" - cost = 40 - containername = "N2O gas canister crate" - containertype = /obj/structure/closet/crate/secure/large - access = access_atmospherics - group = "Atmospherics" - contains = list(/obj/machinery/portable_atmospherics/canister/sleeping_agent) - -/datum/supply_packs/canister_carbon_dioxide - name = "Carbon dioxide gas canister" - cost = 40 - containername = "CO2 canister crate" - containertype = /obj/structure/closet/crate/secure/large - access = access_atmospherics - group = "Atmospherics" - contains = list(/obj/machinery/portable_atmospherics/canister/carbon_dioxide) - -/datum/supply_packs/pacman_parts - name = "P.A.C.M.A.N. portable generator parts" - cost = 45 - containername = "P.A.C.M.A.N. Portable Generator Construction Kit" - containertype = /obj/structure/closet/crate/secure - group = "Engineering" - access = access_tech_storage - contains = list( - /obj/item/weapon/stock_parts/micro_laser, - /obj/item/weapon/stock_parts/capacitor, - /obj/item/weapon/stock_parts/matter_bin, - /obj/item/weapon/circuitboard/pacman - ) - -/datum/supply_packs/super_pacman_parts - name = "Super P.A.C.M.A.N. portable generator parts" - cost = 55 - containername = "Super P.A.C.M.A.N. portable generator construction kit" - containertype = /obj/structure/closet/crate/secure - group = "Engineering" - access = access_tech_storage - contains = list( - /obj/item/weapon/stock_parts/micro_laser, - /obj/item/weapon/stock_parts/capacitor, - /obj/item/weapon/stock_parts/matter_bin, - /obj/item/weapon/circuitboard/pacman/super - ) - -/datum/supply_packs/witch - name = "Witch costume" - containername = "Witch costume" - containertype = /obj/structure/closet - cost = 20 - contains = list( - /obj/item/clothing/suit/wizrobe/marisa/fake, - /obj/item/clothing/shoes/sandal, - /obj/item/clothing/head/wizard/marisa/fake, - /obj/item/weapon/staff/broom - ) - group = "Miscellaneous" - -/datum/supply_packs/randomised/costume_hats - name = "Costume hats" - containername = "Actor hats crate" - containertype = /obj/structure/closet - cost = 10 - num_contained = 3 - contains = list( - /obj/item/clothing/head/redcoat, - /obj/item/clothing/head/mailman, - /obj/item/clothing/head/plaguedoctorhat, - /obj/item/clothing/head/pirate, - /obj/item/clothing/head/hasturhood, - /obj/item/clothing/head/powdered_wig, - /obj/item/clothing/head/hairflower, - /obj/item/clothing/head/hairflower/yellow, - /obj/item/clothing/head/hairflower/blue, - /obj/item/clothing/head/hairflower/pink, - /obj/item/clothing/mask/gas/owl_mask, - /obj/item/clothing/mask/gas/monkeymask, - /obj/item/clothing/head/helmet/gladiator, - /obj/item/clothing/head/ushanka - ) - group = "Miscellaneous" - -/datum/supply_packs/spare_pda - name = "Spare PDAs" - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Spare PDA crate" - group = "Supply" - contains = list(/obj/item/device/pda = 3) - -/datum/supply_packs/randomised/dresses - name = "Womens formal dress locker" - containername = "Pretty dress locker" - containertype = /obj/structure/closet - cost = 15 - num_contained = 3 - contains = list( - /obj/item/clothing/under/wedding/bride_orange, - /obj/item/clothing/under/wedding/bride_purple, - /obj/item/clothing/under/wedding/bride_blue, - /obj/item/clothing/under/wedding/bride_red, - /obj/item/clothing/under/wedding/bride_white, - /obj/item/clothing/under/sundress, - /obj/item/clothing/under/dress/dress_green, - /obj/item/clothing/under/dress/dress_pink, - /obj/item/clothing/under/dress/dress_orange, - /obj/item/clothing/under/dress/dress_yellow, - /obj/item/clothing/under/dress/dress_saloon - ) - group = "Miscellaneous" - -/datum/supply_packs/painters - name = "Station Painting Supplies" - cost = 10 - containername = "station painting supplies crate" - containertype = /obj/structure/closet/crate - group = "Engineering" - contains = list( - /obj/item/device/pipe_painter = 2, - /obj/item/device/floor_painter = 2, - /obj/item/device/closet_painter = 2 - ) - -/datum/supply_packs/randomised/exosuit_mod - num_contained = 1 - contains = list( - /obj/item/device/kit/paint/ripley, - /obj/item/device/kit/paint/ripley/death, - /obj/item/device/kit/paint/ripley/flames_red, - /obj/item/device/kit/paint/ripley/flames_blue - ) - name = "Random APLU modkit" - cost = 200 - containertype = /obj/structure/closet/crate - containername = "heavy crate" - group = "Miscellaneous" - -/datum/supply_packs/randomised/exosuit_mod/durand - contains = list( - /obj/item/device/kit/paint/durand, - /obj/item/device/kit/paint/durand/seraph, - /obj/item/device/kit/paint/durand/phazon - ) - name = "Random Durand exosuit modkit" - -/datum/supply_packs/randomised/exosuit_mod/gygax - contains = list( - /obj/item/device/kit/paint/gygax, - /obj/item/device/kit/paint/gygax/darkgygax, - /obj/item/device/kit/paint/gygax/recitence - ) - name = "Random Gygax exosuit modkit" - -/datum/supply_packs/engineeringvoidsuits - name = "Engineering voidsuits" - contains = list( - /obj/item/clothing/suit/space/void/engineering = 2, - /obj/item/clothing/head/helmet/space/void/engineering = 2, - /obj/item/clothing/mask/breath = 2, - /obj/item/clothing/shoes/magboots = 2, - /obj/item/weapon/tank/oxygen = 2 - ) - cost = 40 - containertype = "/obj/structure/closet/crate/secure" - containername = "Engineering voidsuit crate" - access = access_engine_equip - group = "Engineering" - -/datum/supply_packs/atmosvoidsuits - name = "Atmospheric voidsuits" - contains = list( - /obj/item/clothing/suit/space/void/atmos = 2, - /obj/item/clothing/head/helmet/space/void/atmos = 2, - /obj/item/clothing/mask/breath = 2, - /obj/item/clothing/shoes/magboots = 2, - /obj/item/weapon/tank/oxygen = 2, - ) - cost = 45 - containertype = "/obj/structure/closet/crate/secure" - containername = "Atmospheric voidsuit crate" - access = access_atmospherics - group = "Atmospherics" - -/datum/supply_packs/miningvoidsuits - name = "Mining voidsuits" - contains = list( - /obj/item/clothing/suit/space/void/mining = 2, - /obj/item/clothing/head/helmet/space/void/mining = 2, - /obj/item/clothing/mask/breath = 2, - /obj/item/weapon/tank/oxygen = 2 - ) - cost = 35 - containertype = "/obj/structure/closet/crate/secure" - containername = "Mining voidsuit crate" - access = access_mining - group = "Supply" - -/datum/supply_packs/randomised/webbing - name = "Webbing crate" - num_contained = 4 - contains = list( - /obj/item/clothing/accessory/storage/black_vest, - /obj/item/clothing/accessory/storage/brown_vest, - /obj/item/clothing/accessory/storage/white_vest, - /obj/item/clothing/accessory/storage/black_drop_pouches, - /obj/item/clothing/accessory/storage/brown_drop_pouches, - /obj/item/clothing/accessory/storage/white_drop_pouches, - /obj/item/clothing/accessory/storage/webbing - ) - cost = 15 - containertype = "/obj/structure/closet/crate" - containername = "Webbing crate" - group = "Operations" - -/datum/supply_packs/securityvoidsuits - name = "Security voidsuits" - contains = list( - /obj/item/clothing/suit/space/void/security = 2, - /obj/item/clothing/head/helmet/space/void/security = 2, - /obj/item/clothing/mask/breath = 2, - /obj/item/clothing/shoes/magboots = 2, - /obj/item/weapon/tank/oxygen = 2 - ) - cost = 55 - containertype = "/obj/structure/closet/crate/secure" - containername = "Security voidsuit crate" - access = access_security - group = "Security" - -/datum/supply_packs/randomised/holster - name = "Holster crate" - num_contained = 4 - contains = list( - /obj/item/clothing/accessory/holster, - /obj/item/clothing/accessory/holster/armpit, - /obj/item/clothing/accessory/holster/waist, - /obj/item/clothing/accessory/holster/hip - ) - cost = 15 - containertype = "/obj/structure/closet/crate/secure" - containername = "Holster crate" - access = access_security - group = "Security" - -/datum/supply_packs/medicalvoidsuits - name = "Medical voidsuits" - contains = list( - /obj/item/clothing/suit/space/void/medical = 2, - /obj/item/clothing/head/helmet/space/void/medical = 2, - /obj/item/clothing/mask/breath = 2, - /obj/item/clothing/shoes/magboots = 2, - /obj/item/weapon/tank/oxygen = 2 - ) - cost = 40 - containertype = "/obj/structure/closet/crate/secure" - containername = "Medical voidsuit crate" - access = access_medical_equip - group = "Medical" - -/datum/supply_packs/securityextragear - name = "Security surplus equipment" - contains = list( - /obj/item/weapon/storage/belt/security = 3, - /obj/item/clothing/glasses/sunglasses/sechud = 3, - /obj/item/device/radio/headset/headset_sec/alt = 3, - /obj/item/clothing/suit/storage/hooded/wintercoat/security = 3 - ) - cost = 25 - containertype = "/obj/structure/closet/crate/secure" - containername = "Security surplus equipment" - access = access_security - group = "Security" - -/datum/supply_packs/detectivegear - name = "Forensic investigation equipment" - contains = list( - /obj/item/weapon/storage/box/evidence = 2, - /obj/item/clothing/suit/storage/vest/detective, - /obj/item/weapon/cartridge/detective, - /obj/item/device/radio/headset/headset_sec, - /obj/item/taperoll/police, - /obj/item/clothing/glasses/sunglasses, - /obj/item/device/camera, - /obj/item/weapon/folder/red, - /obj/item/weapon/folder/blue, - /obj/item/weapon/storage/belt/detective, - /obj/item/clothing/gloves/black, - /obj/item/device/taperecorder, - /obj/item/device/mass_spectrometer, - /obj/item/device/camera_film = 2, - /obj/item/weapon/storage/photo_album, - /obj/item/device/reagent_scanner, - /obj/item/device/flashlight/maglight, - /obj/item/weapon/storage/briefcase/crimekit - ) - cost = 40 - containertype = "/obj/structure/closet/crate/secure" - containername = "Forensic equipment" - access = access_forensics_lockers - group = "Security" - -/datum/supply_packs/detectiveclothes - name = "Investigation apparel" - contains = list( - /obj/item/clothing/under/det/black = 2, - /obj/item/clothing/under/det/grey = 2, - /obj/item/clothing/head/det/grey = 2, - /obj/item/clothing/under/det = 2, - /obj/item/clothing/head/det = 2, - /obj/item/clothing/suit/storage/det_trench, - /obj/item/clothing/suit/storage/det_trench/grey, - /obj/item/clothing/suit/storage/forensics/red, - /obj/item/clothing/suit/storage/forensics/blue, - /obj/item/clothing/under/det/corporate = 2, - /obj/item/clothing/accessory/badge/holo/detective = 2, - /obj/item/clothing/gloves/black = 2 - ) - cost = 20 - containertype = "/obj/structure/closet/crate/secure" - containername = "Investigation clothing" - access = access_forensics_lockers - group = "Security" - -/datum/supply_packs/officergear - name = "Officer equipment" - contains = list( - /obj/item/clothing/suit/storage/vest/officer, - /obj/item/clothing/head/helmet, - /obj/item/weapon/cartridge/security, - /obj/item/clothing/accessory/badge/holo, - /obj/item/clothing/accessory/badge/holo/cord, - /obj/item/device/radio/headset/headset_sec, - /obj/item/weapon/storage/belt/security, - /obj/item/device/flash, - /obj/item/weapon/reagent_containers/spray/pepper, - /obj/item/weapon/grenade/flashbang, - /obj/item/weapon/melee/baton/loaded, - /obj/item/clothing/glasses/sunglasses/sechud, - /obj/item/taperoll/police, - /obj/item/clothing/gloves/black, - /obj/item/device/hailer, - /obj/item/device/flashlight/flare, - /obj/item/clothing/accessory/storage/black_vest, - /obj/item/clothing/head/soft/sec/corp, - /obj/item/clothing/under/rank/security/corp, - /obj/item/weapon/gun/energy/taser, - /obj/item/device/flashlight/maglight - ) - cost = 30 - containertype = "/obj/structure/closet/crate/secure" - containername = "Officer equipment" - access = access_brig - group = "Security" - -/datum/supply_packs/wardengear - name = "Warden equipment" - contains = list( - /obj/item/clothing/suit/storage/vest/warden, - /obj/item/clothing/under/rank/warden, - /obj/item/clothing/under/rank/warden/corp, - /obj/item/clothing/suit/armor/vest/warden, - /obj/item/clothing/suit/armor/vest/warden/alt, - /obj/item/clothing/head/helmet/warden, - /obj/item/weapon/cartridge/security, - /obj/item/device/radio/headset/headset_sec, - /obj/item/clothing/glasses/sunglasses/sechud, - /obj/item/taperoll/police, - /obj/item/device/hailer, - /obj/item/clothing/accessory/badge/holo/warden, - /obj/item/weapon/storage/box/flashbangs, - /obj/item/weapon/storage/belt/security, - /obj/item/weapon/reagent_containers/spray/pepper, - /obj/item/weapon/melee/baton/loaded, - /obj/item/weapon/storage/box/holobadge, - /obj/item/clothing/head/beret/sec/corporate/warden, - /obj/item/device/flashlight/maglight - ) - cost = 45 - containertype = "/obj/structure/closet/crate/secure" - containername = "Warden equipment" - access = access_armory - group = "Security" - -/datum/supply_packs/headofsecgear - name = "Head of security equipment" - contains = list( - /obj/item/clothing/head/helmet/HoS, - /obj/item/clothing/suit/storage/vest/hos, - /obj/item/clothing/under/rank/head_of_security/corp, - /obj/item/clothing/suit/armor/hos, - /obj/item/clothing/head/helmet/HoS/dermal, - /obj/item/weapon/cartridge/hos, - /obj/item/device/radio/headset/heads/hos, - /obj/item/clothing/glasses/sunglasses/sechud, - /obj/item/weapon/storage/belt/security, - /obj/item/device/flash, - /obj/item/device/hailer, - /obj/item/clothing/accessory/badge/holo/hos, - /obj/item/clothing/accessory/holster/waist, - /obj/item/weapon/melee/telebaton, - /obj/item/weapon/shield/riot/tele, - /obj/item/clothing/head/beret/sec/corporate/hos, - /obj/item/device/flashlight/maglight - ) - cost = 65 - containertype = "/obj/structure/closet/crate/secure" - containername = "Head of security equipment" - access = access_hos - group = "Security" - -/datum/supply_packs/securityclothing - name = "Security uniform crate" - contains = list( - /obj/item/weapon/storage/backpack/satchel/sec = 2, - /obj/item/weapon/storage/backpack/security = 2, - /obj/item/clothing/accessory/armband = 4, - /obj/item/clothing/under/rank/security = 4, - /obj/item/clothing/under/rank/security2 = 4, - /obj/item/clothing/under/rank/warden, - /obj/item/clothing/under/rank/head_of_security, - /obj/item/clothing/suit/armor/hos/jensen, - /obj/item/clothing/head/soft/sec = 4, - /obj/item/clothing/gloves/black = 4, - /obj/item/weapon/storage/box/holobadge - ) - cost = 20 - containertype = "/obj/structure/closet/crate/secure" - containername = "Security uniform crate" - access = access_security - group = "Security" - -/datum/supply_packs/navybluesecurityclothing - name = "Navy blue security uniform crate" - contains = list( - /obj/item/weapon/storage/backpack/satchel/sec = 2, - /obj/item/weapon/storage/backpack/security = 2, - /obj/item/clothing/under/rank/security/navyblue = 4, - /obj/item/clothing/suit/security/navyofficer = 4, - /obj/item/clothing/under/rank/warden/navyblue, - /obj/item/clothing/suit/security/navywarden, - /obj/item/clothing/under/rank/head_of_security/navyblue, - /obj/item/clothing/suit/security/navyhos, - /obj/item/clothing/head/beret/sec/navy/officer = 4, - /obj/item/clothing/head/beret/sec/navy/warden, - /obj/item/clothing/head/beret/sec/navy/hos, - /obj/item/clothing/gloves/black = 4, - /obj/item/weapon/storage/box/holobadge - ) - cost = 20 - containertype = "/obj/structure/closet/crate/secure" - containername = "Navy blue security uniform crate" - access = access_security - group = "Security" - -/datum/supply_packs/corporatesecurityclothing - name = "Corporate security uniform crate" - contains = list( - /obj/item/weapon/storage/backpack/satchel/sec = 2, - /obj/item/weapon/storage/backpack/security = 2, - /obj/item/clothing/under/rank/security/corp = 4, - /obj/item/clothing/head/soft/sec/corp = 4, - /obj/item/clothing/under/rank/warden/corp, - /obj/item/clothing/under/rank/head_of_security/corp, - /obj/item/clothing/head/beret/sec = 4, - /obj/item/clothing/head/beret/sec/corporate/warden, - /obj/item/clothing/head/beret/sec/corporate/hos, - /obj/item/clothing/under/det/corporate = 2, - /obj/item/clothing/gloves/black = 4, - /obj/item/weapon/storage/box/holobadge - ) - cost = 20 - containertype = "/obj/structure/closet/crate/secure" - containername = "Corporate security uniform crate" - access = access_security - group = "Security" - -/datum/supply_packs/securitybiosuit - name = "Security biohazard gear" - contains = list( - /obj/item/clothing/head/bio_hood/security, - /obj/item/clothing/under/rank/security, - /obj/item/clothing/suit/bio_suit/security, - /obj/item/clothing/shoes/white, - /obj/item/clothing/mask/gas, - /obj/item/weapon/tank/oxygen, - /obj/item/clothing/gloves/latex - ) - cost = 35 - containertype = "/obj/structure/closet/crate/secure" - containername = "Security biohazard gear" - access = access_security - group = "Security" - -/datum/supply_packs/bolt_rifles_competitive - name = "Competitive shooting crate" - contains = list( - /obj/item/device/assembly/timer, - /obj/item/weapon/gun/projectile/shotgun/pump/rifle/practice = 2, - /obj/item/ammo_magazine/clip/a762/practice = 4, - /obj/item/target = 2, - /obj/item/target/alien = 2, - /obj/item/target/syndicate = 2 - ) - cost = 40 - containertype = /obj/structure/closet/crate/secure/weapon - containername = "Weapons crate" - access = access_security - group = "Security" - -/datum/supply_packs/bolt_rifles_mosin - name = "Surplus militia rifles" - contains = list( - /obj/item/weapon/gun/projectile/shotgun/pump/rifle/mosin = 3, - /obj/item/ammo_magazine/clip/a762 = 6 - ) - cost = 50 - hidden = 1 - containertype = /obj/structure/closet/crate/secure/weapon - containername = "Weapons crate" - access = access_security - group = "Security" - -/datum/supply_packs/medicalextragear - name = "Medical surplus equipment" - contains = list( - /obj/item/weapon/storage/belt/medical = 3, - /obj/item/clothing/glasses/hud/health = 3, - /obj/item/device/radio/headset/headset_med/alt = 3, - /obj/item/clothing/suit/storage/hooded/wintercoat/medical = 3 - ) - cost = 15 - containertype = "/obj/structure/closet/crate/secure" - containername = "Medical surplus equipment" - access = access_medical - group = "Medical" - -/datum/supply_packs/cmogear - name = "Chief medical officer equipment" - contains = list( - /obj/item/weapon/storage/belt/medical, - /obj/item/device/radio/headset/heads/cmo, - /obj/item/clothing/under/rank/chief_medical_officer, - /obj/item/weapon/reagent_containers/hypospray, - /obj/item/clothing/accessory/stethoscope, - /obj/item/clothing/glasses/hud/health, - /obj/item/clothing/suit/storage/toggle/labcoat/cmo, - /obj/item/clothing/suit/storage/toggle/labcoat/cmoalt, - /obj/item/clothing/mask/surgical, - /obj/item/clothing/shoes/white, - /obj/item/weapon/cartridge/cmo, - /obj/item/clothing/gloves/latex, - /obj/item/device/healthanalyzer, - /obj/item/device/flashlight/pen, - /obj/item/weapon/reagent_containers/syringe - ) - cost = 60 - containertype = "/obj/structure/closet/crate/secure" - containername = "Chief medical officer equipment" - access = access_cmo - group = "Medical" - -/datum/supply_packs/doctorgear - name = "Medical Doctor equipment" - contains = list( - /obj/item/weapon/storage/belt/medical, - /obj/item/device/radio/headset/headset_med, - /obj/item/clothing/under/rank/medical, - /obj/item/clothing/accessory/stethoscope, - /obj/item/clothing/glasses/hud/health, - /obj/item/clothing/suit/storage/toggle/labcoat, - /obj/item/clothing/mask/surgical, - /obj/item/weapon/storage/firstaid/adv, - /obj/item/clothing/shoes/white, - /obj/item/weapon/cartridge/medical, - /obj/item/clothing/gloves/latex, - /obj/item/device/healthanalyzer, - /obj/item/device/flashlight/pen, - /obj/item/weapon/reagent_containers/syringe - ) - cost = 20 - containertype = "/obj/structure/closet/crate/secure" - containername = "Medical Doctor equipment" - access = access_medical_equip - group = "Medical" - -/datum/supply_packs/chemistgear - name = "Chemist equipment" - contains = list( - /obj/item/weapon/storage/box/beakers, - /obj/item/device/radio/headset/headset_med, - /obj/item/weapon/storage/box/autoinjectors, - /obj/item/clothing/under/rank/chemist, - /obj/item/clothing/glasses/science, - /obj/item/clothing/suit/storage/toggle/labcoat/chemist, - /obj/item/clothing/mask/surgical, - /obj/item/clothing/shoes/white, - /obj/item/weapon/cartridge/chemistry, - /obj/item/clothing/gloves/latex, - /obj/item/weapon/reagent_containers/dropper, - /obj/item/device/healthanalyzer, - /obj/item/weapon/storage/box/pillbottles, - /obj/item/weapon/reagent_containers/syringe - ) - cost = 15 - containertype = "/obj/structure/closet/crate/secure" - containername = "Chemist equipment" - access = access_chemistry - group = "Medical" - -/datum/supply_packs/paramedicgear - name = "Paramedic equipment" - contains = list( - /obj/item/weapon/storage/belt/medical/emt, - /obj/item/device/radio/headset/headset_med, - /obj/item/clothing/under/rank/medical/black, - /obj/item/clothing/accessory/armband/medgreen, - /obj/item/clothing/glasses/hud/health, - /obj/item/clothing/suit/storage/toggle/labcoat/emt, - /obj/item/clothing/under/rank/medical/paramedic, - /obj/item/clothing/suit/storage/toggle/fr_jacket, - /obj/item/clothing/mask/gas, - /obj/item/clothing/under/rank/medical/paramedic, - /obj/item/clothing/accessory/stethoscope, - /obj/item/weapon/storage/firstaid/adv, - /obj/item/clothing/shoes/jackboots, - /obj/item/clothing/gloves/latex, - /obj/item/device/healthanalyzer, - /obj/item/weapon/cartridge/medical, - /obj/item/device/flashlight/pen, - /obj/item/weapon/reagent_containers/syringe, - /obj/item/clothing/accessory/storage/white_vest - ) - cost = 20 - containertype = "/obj/structure/closet/crate/secure" - containername = "Paramedic equipment" - access = access_medical_equip - group = "Medical" - -/datum/supply_packs/psychiatristgear - name = "Psychiatrist equipment" - contains = list( - /obj/item/clothing/under/rank/psych, - /obj/item/device/radio/headset/headset_med, - /obj/item/clothing/under/rank/psych/turtleneck, - /obj/item/clothing/shoes/laceup, - /obj/item/clothing/suit/storage/toggle/labcoat, - /obj/item/clothing/shoes/white, - /obj/item/weapon/clipboard, - /obj/item/weapon/folder/white, - /obj/item/weapon/pen, - /obj/item/weapon/cartridge/medical - ) - cost = 15 - containertype = "/obj/structure/closet/crate/secure" - containername = "Psychiatrist equipment" - access = access_psychiatrist - group = "Medical" - -/datum/supply_packs/medicalscrubs - name = "Medical scrubs" - contains = list( - /obj/item/clothing/shoes/white = 3,, - /obj/item/clothing/under/rank/medical/blue = 3, - /obj/item/clothing/under/rank/medical/green = 3, - /obj/item/clothing/under/rank/medical/purple = 3, - /obj/item/clothing/under/rank/medical/black = 3, - /obj/item/clothing/head/surgery = 3, - /obj/item/clothing/head/surgery/purple = 3, - /obj/item/clothing/head/surgery/blue = 3, - /obj/item/clothing/head/surgery/green = 3, - /obj/item/clothing/head/surgery/black = 3, - /obj/item/weapon/storage/box/masks, - /obj/item/weapon/storage/box/gloves - ) - cost = 15 - containertype = "/obj/structure/closet/crate/secure" - containername = "Medical scrubs crate" - access = access_medical_equip - group = "Medical" - -/datum/supply_packs/autopsy - name = "Autopsy equipment" - contains = list( - /obj/item/weapon/folder/white, - /obj/item/device/camera, - /obj/item/device/camera_film = 2, - /obj/item/weapon/autopsy_scanner, - /obj/item/weapon/scalpel, - /obj/item/weapon/storage/box/masks, - /obj/item/weapon/storage/box/gloves, - /obj/item/weapon/pen - ) - cost = 20 - containertype = "/obj/structure/closet/crate/secure" - containername = "Autopsy equipment crate" - access = access_morgue - group = "Medical" - -/datum/supply_packs/medicaluniforms - name = "Medical uniforms" - contains = list( - /obj/item/clothing/shoes/white = 3, - /obj/item/clothing/under/rank/chief_medical_officer, - /obj/item/clothing/under/rank/geneticist, - /obj/item/clothing/under/rank/virologist, - /obj/item/clothing/under/rank/nursesuit, - /obj/item/clothing/under/rank/nurse, - /obj/item/clothing/under/rank/orderly, - /obj/item/clothing/under/rank/medical = 3, - /obj/item/clothing/under/rank/medical/paramedic = 3, - /obj/item/clothing/suit/storage/toggle/labcoat = 3, - /obj/item/clothing/suit/storage/toggle/labcoat/cmo, - /obj/item/clothing/suit/storage/toggle/labcoat/emt, - /obj/item/clothing/suit/storage/toggle/labcoat/cmoalt, - /obj/item/clothing/suit/storage/toggle/labcoat/genetics, - /obj/item/clothing/suit/storage/toggle/labcoat/virologist, - /obj/item/clothing/suit/storage/toggle/labcoat/chemist, - /obj/item/weapon/storage/box/masks, - /obj/item/weapon/storage/box/gloves - ) - cost = 15 - containertype = "/obj/structure/closet/crate/secure" - containername = "Medical uniform crate" - access = access_medical_equip - group = "Medical" - -/datum/supply_packs/medicalbiosuits - name = "Medical biohazard gear" - contains = list( - /obj/item/clothing/head/bio_hood = 3, - /obj/item/clothing/suit/bio_suit = 3, - /obj/item/clothing/head/bio_hood/virology = 2, - /obj/item/clothing/suit/bio_suit/cmo, - /obj/item/clothing/head/bio_hood/cmo, - /obj/item/clothing/mask/gas = 5, - /obj/item/weapon/tank/oxygen = 5, - /obj/item/weapon/storage/box/masks, - /obj/item/weapon/storage/box/gloves - ) - cost = 50 - containertype = "/obj/structure/closet/crate/secure" - containername = "Medical biohazard equipment" - access = access_medical_equip - group = "Medical" - -/datum/supply_packs/portablefreezers - name = "Portable freezers crate" - contains = list(/obj/item/weapon/storage/box/freezer = 7) - cost = 25 - containertype = "/obj/structure/closet/crate/secure" - containername = "Portable freezers" - access = access_medical_equip - group = "Medical" - -/datum/supply_packs/minergear - name = "Shaft miner equipment" - contains = list( - /obj/item/weapon/storage/backpack/industrial, - /obj/item/weapon/storage/backpack/satchel/eng, - /obj/item/clothing/suit/storage/hooded/wintercoat/miner, - /obj/item/device/radio/headset/headset_cargo, - /obj/item/clothing/under/rank/miner, - /obj/item/clothing/gloves/black, - /obj/item/clothing/shoes/black, - /obj/item/device/analyzer, - /obj/item/weapon/storage/bag/ore, - /obj/item/device/flashlight/lantern, - /obj/item/weapon/shovel, - /obj/item/weapon/pickaxe, - /obj/item/weapon/mining_scanner, - /obj/item/clothing/glasses/material, - /obj/item/clothing/glasses/meson - ) - cost = 15 - containertype = "/obj/structure/closet/crate/secure" - containername = "Shaft miner equipment" - access = access_mining - group = "Supply" - -/datum/supply_packs/chaplaingear - name = "Chaplain equipment" - contains = list( - /obj/item/clothing/under/rank/chaplain, - /obj/item/clothing/shoes/black, - /obj/item/clothing/suit/nun, - /obj/item/clothing/head/nun_hood, - /obj/item/clothing/suit/chaplain_hoodie, - /obj/item/clothing/head/chaplain_hood, - /obj/item/clothing/suit/holidaypriest, - /obj/item/clothing/under/wedding/bride_white, - /obj/item/weapon/storage/backpack/cultpack, - /obj/item/weapon/storage/fancy/candle_box = 3 - ) - cost = 10 - containertype = "/obj/structure/closet/crate" - containername = "Chaplain equipment crate" - group = "Miscellaneous" diff --git a/code/datums/supplypacks/atmospherics.dm b/code/datums/supplypacks/atmospherics.dm new file mode 100644 index 0000000000..3837bc4026 --- /dev/null +++ b/code/datums/supplypacks/atmospherics.dm @@ -0,0 +1,104 @@ +/* +* Here is where any supply packs related +* to being atmospherics tasks live. +*/ +/datum/supply_packs/atmos + group = "Atmospherics" + +/datum/supply_packs/atmos/internals + name = "Internals crate" + contains = list( + /obj/item/clothing/mask/gas = 3, + /obj/item/weapon/tank/air = 3 + ) + cost = 10 + containertype = /obj/structure/closet/crate/internals + containername = "Internals crate" + +/datum/supply_packs/atmos/evacuation + name = "Emergency equipment" + contains = list( + /obj/item/weapon/storage/toolbox/emergency = 2, + /obj/item/clothing/suit/storage/hazardvest = 2, + /obj/item/clothing/suit/storage/vest = 2, + /obj/item/weapon/tank/emergency_oxygen/engi = 4, + /obj/item/clothing/suit/space/emergency = 4, + /obj/item/clothing/head/helmet/space/emergency = 4, + /obj/item/clothing/mask/gas = 4 + ) + cost = 45 + containertype = /obj/structure/closet/crate/internals + containername = "Emergency crate" + +/datum/supply_packs/atmos/inflatable + name = "Inflatable barriers" + contains = list(/obj/item/weapon/storage/briefcase/inflatable = 3) + cost = 20 + containertype = /obj/structure/closet/crate + containername = "Inflatable Barrier Crate" + +/datum/supply_packs/atmos/canister_empty + name = "Empty gas canister" + cost = 7 + containername = "Empty gas canister crate" + containertype = /obj/structure/largecrate + contains = list(/obj/machinery/portable_atmospherics/canister) + +/datum/supply_packs/atmos/canister_air + name = "Air canister" + cost = 10 + containername = "Air canister crate" + containertype = /obj/structure/largecrate + contains = list(/obj/machinery/portable_atmospherics/canister/air) + +/datum/supply_packs/atmos/canister_oxygen + name = "Oxygen canister" + cost = 15 + containername = "Oxygen canister crate" + containertype = /obj/structure/largecrate + contains = list(/obj/machinery/portable_atmospherics/canister/oxygen) + +/datum/supply_packs/atmos/canister_nitrogen + name = "Nitrogen canister" + cost = 10 + containername = "Nitrogen canister crate" + containertype = /obj/structure/largecrate + contains = list(/obj/machinery/portable_atmospherics/canister/nitrogen) + +/datum/supply_packs/atmos/canister_phoron + name = "Phoron gas canister" + cost = 60 + containername = "Phoron gas canister crate" + containertype = /obj/structure/closet/crate/secure/large + access = access_atmospherics + contains = list(/obj/machinery/portable_atmospherics/canister/phoron) + +/datum/supply_packs/atmos/canister_sleeping_agent + name = "N2O gas canister" + cost = 40 + containername = "N2O gas canister crate" + containertype = /obj/structure/closet/crate/secure/large + access = access_atmospherics + contains = list(/obj/machinery/portable_atmospherics/canister/sleeping_agent) + +/datum/supply_packs/atmos/canister_carbon_dioxide + name = "Carbon dioxide gas canister" + cost = 40 + containername = "CO2 canister crate" + containertype = /obj/structure/closet/crate/secure/large + access = access_atmospherics + contains = list(/obj/machinery/portable_atmospherics/canister/carbon_dioxide) + +/datum/supply_packs/atmos/voidsuits + name = "Atmospheric voidsuits" + contains = list( + /obj/item/clothing/suit/space/void/atmos = 2, + /obj/item/clothing/head/helmet/space/void/atmos = 2, + /obj/item/clothing/mask/breath = 2, + /obj/item/clothing/shoes/magboots = 2, + /obj/item/weapon/tank/oxygen = 2, + ) + cost = 45 + containertype = "/obj/structure/closet/crate/secure" + containername = "Atmospheric voidsuit crate" + access = access_atmospherics \ No newline at end of file diff --git a/code/datums/supplypacks/contraband.dm b/code/datums/supplypacks/contraband.dm new file mode 100644 index 0000000000..ebddcc6e4c --- /dev/null +++ b/code/datums/supplypacks/contraband.dm @@ -0,0 +1,44 @@ +/* +* Here is where any supply packs that may or may not be legal +* and require modification of the supply controller live. +*/ + +/datum/supply_packs/randomised/contraband + num_contained = 5 + contains = list( + /obj/item/seeds/bloodtomatoseed, + /obj/item/weapon/storage/pill_bottle/zoom, + /obj/item/weapon/storage/pill_bottle/happy, + /obj/item/weapon/reagent_containers/food/drinks/bottle/pwine + ) + + name = "Contraband crate" + cost = 30 + containertype = /obj/structure/closet/crate + containername = "Unlabeled crate" + contraband = 1 + group = "Operations" + +/datum/supply_packs/security/specialops + name = "Special Ops supplies" + contains = list( + /obj/item/weapon/storage/box/emps, + /obj/item/weapon/grenade/smokebomb = 3, + /obj/item/weapon/pen/reagent/paralysis, + /obj/item/weapon/grenade/chem_grenade/incendiary + ) + cost = 20 + containertype = /obj/structure/closet/crate + containername = "Special Ops crate" + hidden = 1 + +/datum/supply_packs/security/bolt_rifles_mosin + name = "Surplus militia rifles" + contains = list( + /obj/item/weapon/gun/projectile/shotgun/pump/rifle/mosin = 3, + /obj/item/ammo_magazine/clip/a762 = 6 + ) + cost = 50 + hidden = 1 + containertype = /obj/structure/closet/crate/secure/weapon + containername = "Weapons crate" \ No newline at end of file diff --git a/code/datums/supplypacks/engineering.dm b/code/datums/supplypacks/engineering.dm new file mode 100644 index 0000000000..4f1a43cb41 --- /dev/null +++ b/code/datums/supplypacks/engineering.dm @@ -0,0 +1,303 @@ +/* +* Here is where any supply packs +* related to engineering tasks live. +*/ +/datum/supply_packs/eng + group = "Engineering" + +/datum/supply_packs/eng/lightbulbs + name = "Replacement lights" + contains = list(/obj/item/weapon/storage/box/lights/mixed = 3) + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Replacement lights" + +/datum/supply_packs/eng/metal50 + name = "50 metal sheets" + contains = list(/obj/item/stack/material/steel) + amount = 50 + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Metal sheets crate" + +/datum/supply_packs/eng/glass50 + name = "50 glass sheets" + contains = list(/obj/item/stack/material/glass) + amount = 50 + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Glass sheets crate" + +/datum/supply_packs/eng/wood50 + name = "50 wooden planks" + contains = list(/obj/item/stack/material/wood) + amount = 50 + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Wooden planks crate" + +/datum/supply_packs/eng/plastic50 + name = "50 plastic sheets" + contains = list(/obj/item/stack/material/plastic) + amount = 50 + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Plastic sheets crate" + +/datum/supply_packs/eng/smescoil + name = "Superconducting Magnetic Coil" + contains = list(/obj/item/weapon/smes_coil) + cost = 75 + containertype = /obj/structure/closet/crate + containername = "Superconducting Magnetic Coil crate" + +/datum/supply_packs/eng/electrical + name = "Electrical maintenance crate" + contains = list( + /obj/item/weapon/storage/toolbox/electrical = 2, + /obj/item/clothing/gloves/yellow = 2, + /obj/item/weapon/cell = 2, + /obj/item/weapon/cell/high = 2 + ) + cost = 15 + containertype = /obj/structure/closet/crate + containername = "Electrical maintenance crate" + +/datum/supply_packs/eng/mechanical + name = "Mechanical maintenance crate" + contains = list( + /obj/item/weapon/storage/belt/utility/full = 3, + /obj/item/clothing/suit/storage/hazardvest = 3, + /obj/item/clothing/head/welding = 2, + /obj/item/clothing/head/hardhat + ) + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Mechanical maintenance crate" + +/datum/supply_packs/eng/fueltank + name = "Fuel tank crate" + contains = list(/obj/structure/reagent_dispensers/fueltank) + cost = 8 + containertype = /obj/structure/largecrate + containername = "fuel tank crate" + +/datum/supply_packs/eng/solar + name = "Solar Pack crate" + contains = list( + /obj/item/solar_assembly = 21, + /obj/item/weapon/circuitboard/solar_control, + /obj/item/weapon/tracker_electronics, + /obj/item/weapon/paper/solar + ) + cost = 20 + containertype = /obj/structure/closet/crate + containername = "Solar pack crate" + +/datum/supply_packs/eng/engine + name = "Emitter crate" + contains = list(/obj/machinery/power/emitter = 2) + cost = 10 + containertype = /obj/structure/closet/crate/secure + containername = "Emitter crate" + access = access_ce + +/datum/supply_packs/engine/eng/field_gen + name = "Field Generator crate" + contains = list(/obj/machinery/field_generator = 2) + containertype = /obj/structure/closet/crate/secure + containername = "Field Generator crate" + access = access_ce + +/datum/supply_packs/eng/engine/sing_gen + name = "Singularity Generator crate" + contains = list(/obj/machinery/the_singularitygen) + containertype = /obj/structure/closet/crate/secure + containername = "Singularity Generator crate" + access = access_ce + +/datum/supply_packs/eng/engine/collector + name = "Collector crate" + contains = list(/obj/machinery/power/rad_collector = 3) + containername = "Collector crate" + +/datum/supply_packs/eng/engine/PA + name = "Particle Accelerator crate" + cost = 40 + contains = list( + /obj/structure/particle_accelerator/fuel_chamber, + /obj/machinery/particle_accelerator/control_box, + /obj/structure/particle_accelerator/particle_emitter/center, + /obj/structure/particle_accelerator/particle_emitter/left, + /obj/structure/particle_accelerator/particle_emitter/right, + /obj/structure/particle_accelerator/power_box, + /obj/structure/particle_accelerator/end_cap + ) + containertype = /obj/structure/closet/crate/secure + containername = "Particle Accelerator crate" + access = access_ce + +/datum/supply_packs/eng/robotics + name = "Robotics assembly crate" + contains = list( + /obj/item/device/assembly/prox_sensor = 3, + /obj/item/weapon/storage/toolbox/electrical, + /obj/item/device/flash = 4, + /obj/item/weapon/cell/high = 2 + ) + cost = 10 + containertype = /obj/structure/closet/crate/secure/gear + containername = "Robotics assembly" + access = access_robotics + +/datum/supply_packs/eng/robolimbs_basic + name = "Basic robolimb blueprints" + contains = list( + /obj/item/weapon/disk/limb/morpheus, + /obj/item/weapon/disk/limb/xion + ) + cost = 15 + containertype = /obj/structure/closet/crate/secure/gear + containername = "Robolimb blueprints (basic)" + access = access_robotics + +/datum/supply_packs/eng/robolimbs_adv + name = "All robolimb blueprints" + contains = list( + /obj/item/weapon/disk/limb/bishop, + /obj/item/weapon/disk/limb/hesphiastos, + /obj/item/weapon/disk/limb/morpheus, + /obj/item/weapon/disk/limb/veymed, + /obj/item/weapon/disk/limb/wardtakahashi, + /obj/item/weapon/disk/limb/xion, + /obj/item/weapon/disk/limb/zenghu, + ) + cost = 40 + containertype = /obj/structure/closet/crate/secure/gear + containername = "Robolimb blueprints (adv)" + access = access_robotics + +/datum/supply_packs/eng/shield_gen + contains = list(/obj/item/weapon/circuitboard/shield_gen) + name = "Bubble shield generator circuitry" + cost = 50 + containertype = /obj/structure/closet/crate/secure + containername = "bubble shield generator circuitry crate" + access = access_ce + +/datum/supply_packs/eng/shield_gen_ex + contains = list(/obj/item/weapon/circuitboard/shield_gen_ex) + name = "Hull shield generator circuitry" + cost = 50 + containertype = /obj/structure/closet/crate/secure + containername = "hull shield generator circuitry crate" + access = access_ce + +/datum/supply_packs/eng/shield_cap + contains = list(/obj/item/weapon/circuitboard/shield_cap) + name = "Bubble shield capacitor circuitry" + cost = 50 + containertype = /obj/structure/closet/crate/secure + containername = "shield capacitor circuitry crate" + access = access_ce + +/datum/supply_packs/eng/smbig + name = "Supermatter Core" + contains = list(/obj/machinery/power/supermatter) + cost = 150 + containertype = /obj/structure/closet/crate/secure/phoron + containername = "Supermatter crate (CAUTION)" + access = access_ce + +/datum/supply_packs/eng/teg + contains = list(/obj/machinery/power/generator) + name = "Mark I Thermoelectric Generator" + cost = 75 + containertype = /obj/structure/closet/crate/secure/large + containername = "Mk1 TEG crate" + access = access_engine + +/datum/supply_packs/eng/circulator + contains = list(/obj/machinery/atmospherics/binary/circulator) + name = "Binary atmospheric circulator" + cost = 60 + containertype = /obj/structure/closet/crate/secure/large + containername = "Atmospheric circulator crate" + access = access_engine + +/datum/supply_packs/eng/air_dispenser + contains = list(/obj/machinery/pipedispenser/orderable) + name = "Pipe Dispenser" + cost = 35 + containertype = /obj/structure/closet/crate/secure/large + containername = "Pipe Dispenser Crate" + access = access_atmospherics + +/datum/supply_packs/eng/disposals_dispenser + contains = list(/obj/machinery/pipedispenser/disposal/orderable) + name = "Disposals Pipe Dispenser" + cost = 35 + containertype = /obj/structure/closet/crate/secure/large + containername = "Disposal Dispenser Crate" + access = access_atmospherics + +/datum/supply_packs/eng/radsuit + contains = list( + /obj/item/clothing/suit/radiation = 3, + /obj/item/clothing/head/radiation = 3 + ) + name = "Radiation suits package" + cost = 20 + containertype = /obj/structure/closet/radiation + containername = "Radiation suit locker" + +/datum/supply_packs/eng/pacman_parts + name = "P.A.C.M.A.N. portable generator parts" + cost = 45 + containername = "P.A.C.M.A.N. Portable Generator Construction Kit" + containertype = /obj/structure/closet/crate/secure + access = access_tech_storage + contains = list( + /obj/item/weapon/stock_parts/micro_laser, + /obj/item/weapon/stock_parts/capacitor, + /obj/item/weapon/stock_parts/matter_bin, + /obj/item/weapon/circuitboard/pacman + ) + +/datum/supply_packs/eng/super_pacman_parts + name = "Super P.A.C.M.A.N. portable generator parts" + cost = 55 + containername = "Super P.A.C.M.A.N. portable generator construction kit" + containertype = /obj/structure/closet/crate/secure + access = access_tech_storage + contains = list( + /obj/item/weapon/stock_parts/micro_laser, + /obj/item/weapon/stock_parts/capacitor, + /obj/item/weapon/stock_parts/matter_bin, + /obj/item/weapon/circuitboard/pacman/super + ) + +/datum/supply_packs/eng/painters + name = "Station Painting Supplies" + cost = 10 + containername = "station painting supplies crate" + containertype = /obj/structure/closet/crate + contains = list( + /obj/item/device/pipe_painter = 2, + /obj/item/device/floor_painter = 2, + /obj/item/device/closet_painter = 2 + ) + +/datum/supply_packs/eng/voidsuits + name = "Engineering voidsuits" + contains = list( + /obj/item/clothing/suit/space/void/engineering = 2, + /obj/item/clothing/head/helmet/space/void/engineering = 2, + /obj/item/clothing/mask/breath = 2, + /obj/item/clothing/shoes/magboots = 2, + /obj/item/weapon/tank/oxygen = 2 + ) + cost = 40 + containertype = "/obj/structure/closet/crate/secure" + containername = "Engineering voidsuit crate" + access = access_engine_equip \ No newline at end of file diff --git a/code/datums/supplypacks/hospitality.dm b/code/datums/supplypacks/hospitality.dm new file mode 100644 index 0000000000..c35fb6025f --- /dev/null +++ b/code/datums/supplypacks/hospitality.dm @@ -0,0 +1,72 @@ +/* +* Here is where any supply packs related +* to being hospitable tasks live +*/ +/datum/supply_packs/hospitality + group = "Hospitality" + +/datum/supply_packs/hospitality/party + name = "Party equipment" + contains = list( + /obj/item/weapon/storage/box/mixedglasses = 2, + /obj/item/weapon/storage/box/glasses/square, + /obj/item/weapon/reagent_containers/food/drinks/shaker, + /obj/item/weapon/reagent_containers/food/drinks/flask/barflask, + /obj/item/weapon/reagent_containers/food/drinks/bottle/patron, + /obj/item/weapon/reagent_containers/food/drinks/bottle/goldschlager, + /obj/item/weapon/reagent_containers/food/drinks/bottle/specialwhiskey, + /obj/item/weapon/storage/fancy/cigarettes/dromedaryco, + /obj/item/weapon/lipstick/random, + /obj/item/weapon/reagent_containers/food/drinks/bottle/small/ale = 2, + /obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer = 4, + ) + cost = 20 + containertype = /obj/structure/closet/crate + containername = "Party equipment" + +/datum/supply_packs/hospitality/barsupplies + name = "Bar supplies" + contains = list( + /obj/item/weapon/storage/box/glasses/cocktail, + /obj/item/weapon/storage/box/glasses/rocks, + /obj/item/weapon/storage/box/glasses/square, + /obj/item/weapon/storage/box/glasses/pint, + /obj/item/weapon/storage/box/glasses/wine, + /obj/item/weapon/storage/box/glasses/shake, + /obj/item/weapon/storage/box/glasses/shot, + /obj/item/weapon/storage/box/glasses/mug, + /obj/item/weapon/reagent_containers/food/drinks/shaker, + /obj/item/weapon/storage/box/glass_extras/straws, + /obj/item/weapon/storage/box/glass_extras/sticks + ) + cost = 10 + containertype = /obj/structure/closet/crate + containername = "crate of bar supplies" + +/datum/supply_packs/hospitality/lasertag + name = "Lasertag equipment" + contains = list( + /obj/item/weapon/gun/energy/lasertag/red, + /obj/item/clothing/suit/redtag, + /obj/item/weapon/gun/energy/lasertag/blue, + /obj/item/clothing/suit/bluetag + ) + containertype = /obj/structure/closet + containername = "Lasertag Closet" + cost = 20 + +/datum/supply_packs/randomised/hospitality/ + group = "Hospitality" + +/datum/supply_packs/randomised/hospitality/pizza + num_contained = 5 + contains = list( + /obj/item/pizzabox/margherita, + /obj/item/pizzabox/mushroom, + /obj/item/pizzabox/meat, + /obj/item/pizzabox/vegetable + ) + name = "Surprise pack of five pizzas" + cost = 15 + containertype = /obj/structure/closet/crate/freezer + containername = "Pizza crate" \ No newline at end of file diff --git a/code/datums/supplypacks/hydroponics.dm b/code/datums/supplypacks/hydroponics.dm new file mode 100644 index 0000000000..11053ee4cd --- /dev/null +++ b/code/datums/supplypacks/hydroponics.dm @@ -0,0 +1,161 @@ +/* +* Here is where any supply packs +* related to hydroponics tasks live. +*/ +/datum/supply_packs/hydro + group = "Hydroponics" + +/datum/supply_packs/hydro/monkey + name = "Monkey crate" + contains = list (/obj/item/weapon/storage/box/monkeycubes) + cost = 20 + containertype = /obj/structure/closet/crate/freezer + containername = "Monkey crate" + +/datum/supply_packs/hydro/farwa + name = "Farwa crate" + contains = list (/obj/item/weapon/storage/box/monkeycubes/farwacubes) + cost = 30 + containertype = /obj/structure/closet/crate/freezer + containername = "Farwa crate" + +/datum/supply_packs/hydro/neara + name = "Neaera crate" + contains = list (/obj/item/weapon/storage/box/monkeycubes/neaeracubes) + cost = 30 + containertype = /obj/structure/closet/crate/freezer + containername = "Neaera crate" + +/datum/supply_packs/hydro/stok + name = "Stok crate" + contains = list (/obj/item/weapon/storage/box/monkeycubes/stokcubes) + cost = 30 + containertype = /obj/structure/closet/crate/freezer + containername = "Stok crate" + +/datum/supply_packs/hydro/lisa + name = "Corgi Crate" + contains = list() + cost = 50 + containertype = /obj/structure/largecrate/animal/corgi + containername = "Corgi Crate" + +/datum/supply_packs/hydro/hydroponics + name = "Hydroponics Supply Crate" + contains = list( + /obj/item/weapon/reagent_containers/spray/plantbgone = 4, + /obj/item/weapon/reagent_containers/glass/bottle/ammonia = 2, + /obj/item/weapon/material/hatchet, + /obj/item/weapon/material/minihoe, + /obj/item/device/analyzer/plant_analyzer, + /obj/item/clothing/gloves/botanic_leather, + /obj/item/clothing/suit/apron, + /obj/item/weapon/material/minihoe, + /obj/item/weapon/storage/box/botanydisk + ) + cost = 15 + containertype = /obj/structure/closet/crate/hydroponics + containername = "Hydroponics crate" + access = access_hydroponics + +/datum/supply_packs/hydro/cow + name = "Cow crate" + cost = 30 + containertype = /obj/structure/largecrate/animal/cow + containername = "Cow crate" + access = access_hydroponics + +/datum/supply_packs/hydro/goat + name = "Goat crate" + cost = 25 + containertype = /obj/structure/largecrate/animal/goat + containername = "Goat crate" + access = access_hydroponics + +/datum/supply_packs/hydro/chicken + name = "Chicken crate" + cost = 20 + containertype = /obj/structure/largecrate/animal/chick + containername = "Chicken crate" + access = access_hydroponics + +/datum/supply_packs/hydro/seeds + name = "Seeds crate" + contains = list( + /obj/item/seeds/chiliseed, + /obj/item/seeds/berryseed, + /obj/item/seeds/cornseed, + /obj/item/seeds/eggplantseed, + /obj/item/seeds/tomatoseed, + /obj/item/seeds/appleseed, + /obj/item/seeds/soyaseed, + /obj/item/seeds/wheatseed, + /obj/item/seeds/carrotseed, + /obj/item/seeds/harebell, + /obj/item/seeds/lemonseed, + /obj/item/seeds/orangeseed, + /obj/item/seeds/grassseed, + /obj/item/seeds/sunflowerseed, + /obj/item/seeds/chantermycelium, + /obj/item/seeds/potatoseed, + /obj/item/seeds/sugarcaneseed + ) + cost = 10 + containertype = /obj/structure/closet/crate/hydroponics + containername = "Seeds crate" + access = access_hydroponics + +/datum/supply_packs/hydro/weedcontrol + name = "Weed control crate" + contains = list( + /obj/item/weapon/material/hatchet = 2, + /obj/item/weapon/reagent_containers/spray/plantbgone = 4, + /obj/item/clothing/mask/gas = 2, + /obj/item/weapon/grenade/chem_grenade/antiweed = 2 + ) + cost = 25 + containertype = /obj/structure/closet/crate/hydroponics + containername = "Weed control crate" + access = access_hydroponics + +/datum/supply_packs/hydro/exoticseeds + name = "Exotic seeds crate" + contains = list( + /obj/item/seeds/replicapod = 2, + /obj/item/seeds/libertymycelium, + /obj/item/seeds/reishimycelium, + /obj/item/seeds/random = 6, + /obj/item/seeds/kudzuseed + ) + cost = 15 + containertype = /obj/structure/closet/crate/hydroponics + containername = "Exotic Seeds crate" + access = access_hydroponics + +/datum/supply_packs/hydro/watertank + name = "Water tank crate" + contains = list(/obj/structure/reagent_dispensers/watertank) + cost = 8 + containertype = /obj/structure/largecrate + containername = "water tank crate" + +/datum/supply_packs/hydro/bee_keeper + name = "Beekeeping crate" + contains = list( + /obj/item/beehive_assembly, + /obj/item/bee_smoker, + /obj/item/honey_frame = 5, + /obj/item/bee_pack + ) + cost = 40 + containertype = /obj/structure/closet/crate/hydroponics + containername = "Beekeeping crate" + access = access_hydroponics + +/datum/supply_packs/hydro/tray + name = "Empty hydroponics tray" + cost = 30 + containertype = /obj/structure/closet/crate/hydroponics + containername = "Hydroponics tray crate" + contains = list(/obj/machinery/portable_atmospherics/hydroponics{anchored = 0}) + access = access_hydroponics \ No newline at end of file diff --git a/code/datums/supplypacks/medical.dm b/code/datums/supplypacks/medical.dm new file mode 100644 index 0000000000..ef67cb1a95 --- /dev/null +++ b/code/datums/supplypacks/medical.dm @@ -0,0 +1,313 @@ +/* +* Here is where any supply packs +* related to medical tasks live. +*/ +/datum/supply_packs/med + group = "Medical" + +/datum/supply_packs/med/medical + name = "Medical crate" + contains = list( + /obj/item/weapon/storage/firstaid/regular, + /obj/item/weapon/storage/firstaid/fire, + /obj/item/weapon/storage/firstaid/toxin, + /obj/item/weapon/storage/firstaid/o2, + /obj/item/weapon/storage/firstaid/adv, + /obj/item/weapon/reagent_containers/glass/bottle/antitoxin, + /obj/item/weapon/reagent_containers/glass/bottle/inaprovaline, + /obj/item/weapon/reagent_containers/glass/bottle/stoxin, + /obj/item/weapon/storage/box/syringes, + /obj/item/weapon/storage/box/autoinjectors + ) + cost = 10 + containertype = /obj/structure/closet/crate/medical + containername = "Medical crate" + +/datum/supply_packs/med/bloodpack + name = "BloodPack crate" + contains = list(/obj/item/weapon/storage/box/bloodpacks = 3) + cost = 10 + containertype = /obj/structure/closet/crate/medical + containername = "BloodPack crate" + +/datum/supply_packs/med/bodybag + name = "Body bag crate" + contains = list(/obj/item/weapon/storage/box/bodybags = 3) + cost = 10 + containertype = /obj/structure/closet/crate/medical + containername = "Body bag crate" + +/datum/supply_packs/med/cryobag + name = "Stasis bag crate" + contains = list(/obj/item/bodybag/cryobag = 3) + cost = 50 + containertype = /obj/structure/closet/crate/medical + containername = "Stasis bag crate" + +/datum/supply_packs/med/surgery + name = "Surgery crate" + contains = list( + /obj/item/weapon/cautery, + /obj/item/weapon/surgicaldrill, + /obj/item/clothing/mask/breath/medical, + /obj/item/weapon/tank/anesthetic, + /obj/item/weapon/FixOVein, + /obj/item/weapon/hemostat, + /obj/item/weapon/scalpel, + /obj/item/weapon/bonegel, + /obj/item/weapon/retractor, + /obj/item/weapon/bonesetter, + /obj/item/weapon/circular_saw + ) + cost = 25 + containertype = "/obj/structure/closet/crate/secure" + containername = "Surgery crate" + access = access_medical + +/datum/supply_packs/med/sterile + name = "Sterile equipment crate" + contains = list( + /obj/item/clothing/under/rank/medical/green = 2, + /obj/item/clothing/head/surgery/green = 2, + /obj/item/weapon/storage/box/masks, + /obj/item/weapon/storage/box/gloves, + /obj/item/weapon/storage/belt/medical = 3 + ) + cost = 15 + containertype = "/obj/structure/closet/crate" + containername = "Sterile equipment crate" + +/datum/supply_packs/med/voidsuits + name = "Medical voidsuits" + contains = list( + /obj/item/clothing/suit/space/void/medical = 2, + /obj/item/clothing/head/helmet/space/void/medical = 2, + /obj/item/clothing/mask/breath = 2, + /obj/item/clothing/shoes/magboots = 2, + /obj/item/weapon/tank/oxygen = 2 + ) + cost = 40 + containertype = "/obj/structure/closet/crate/secure" + containername = "Medical voidsuit crate" + access = access_medical_equip + +/datum/supply_packs/med/extragear + name = "Medical surplus equipment" + contains = list( + /obj/item/weapon/storage/belt/medical = 3, + /obj/item/clothing/glasses/hud/health = 3, + /obj/item/device/radio/headset/headset_med/alt = 3, + /obj/item/clothing/suit/storage/hooded/wintercoat/medical = 3 + ) + cost = 15 + containertype = "/obj/structure/closet/crate/secure" + containername = "Medical surplus equipment" + access = access_medical + +/datum/supply_packs/med/cmogear + name = "Chief medical officer equipment" + contains = list( + /obj/item/weapon/storage/belt/medical, + /obj/item/device/radio/headset/heads/cmo, + /obj/item/clothing/under/rank/chief_medical_officer, + /obj/item/weapon/reagent_containers/hypospray, + /obj/item/clothing/accessory/stethoscope, + /obj/item/clothing/glasses/hud/health, + /obj/item/clothing/suit/storage/toggle/labcoat/cmo, + /obj/item/clothing/suit/storage/toggle/labcoat/cmoalt, + /obj/item/clothing/mask/surgical, + /obj/item/clothing/shoes/white, + /obj/item/weapon/cartridge/cmo, + /obj/item/clothing/gloves/latex, + /obj/item/device/healthanalyzer, + /obj/item/device/flashlight/pen, + /obj/item/weapon/reagent_containers/syringe + ) + cost = 60 + containertype = "/obj/structure/closet/crate/secure" + containername = "Chief medical officer equipment" + access = access_cmo + +/datum/supply_packs/med/doctorgear + name = "Medical Doctor equipment" + contains = list( + /obj/item/weapon/storage/belt/medical, + /obj/item/device/radio/headset/headset_med, + /obj/item/clothing/under/rank/medical, + /obj/item/clothing/accessory/stethoscope, + /obj/item/clothing/glasses/hud/health, + /obj/item/clothing/suit/storage/toggle/labcoat, + /obj/item/clothing/mask/surgical, + /obj/item/weapon/storage/firstaid/adv, + /obj/item/clothing/shoes/white, + /obj/item/weapon/cartridge/medical, + /obj/item/clothing/gloves/latex, + /obj/item/device/healthanalyzer, + /obj/item/device/flashlight/pen, + /obj/item/weapon/reagent_containers/syringe + ) + cost = 20 + containertype = "/obj/structure/closet/crate/secure" + containername = "Medical Doctor equipment" + access = access_medical_equip + +/datum/supply_packs/med/chemistgear + name = "Chemist equipment" + contains = list( + /obj/item/weapon/storage/box/beakers, + /obj/item/device/radio/headset/headset_med, + /obj/item/weapon/storage/box/autoinjectors, + /obj/item/clothing/under/rank/chemist, + /obj/item/clothing/glasses/science, + /obj/item/clothing/suit/storage/toggle/labcoat/chemist, + /obj/item/clothing/mask/surgical, + /obj/item/clothing/shoes/white, + /obj/item/weapon/cartridge/chemistry, + /obj/item/clothing/gloves/latex, + /obj/item/weapon/reagent_containers/dropper, + /obj/item/device/healthanalyzer, + /obj/item/weapon/storage/box/pillbottles, + /obj/item/weapon/reagent_containers/syringe + ) + cost = 15 + containertype = "/obj/structure/closet/crate/secure" + containername = "Chemist equipment" + access = access_chemistry + +/datum/supply_packs/med/paramedicgear + name = "Paramedic equipment" + contains = list( + /obj/item/weapon/storage/belt/medical/emt, + /obj/item/device/radio/headset/headset_med, + /obj/item/clothing/under/rank/medical/black, + /obj/item/clothing/accessory/armband/medgreen, + /obj/item/clothing/glasses/hud/health, + /obj/item/clothing/suit/storage/toggle/labcoat/emt, + /obj/item/clothing/under/rank/medical/paramedic, + /obj/item/clothing/suit/storage/toggle/fr_jacket, + /obj/item/clothing/mask/gas, + /obj/item/clothing/under/rank/medical/paramedic, + /obj/item/clothing/accessory/stethoscope, + /obj/item/weapon/storage/firstaid/adv, + /obj/item/clothing/shoes/jackboots, + /obj/item/clothing/gloves/latex, + /obj/item/device/healthanalyzer, + /obj/item/weapon/cartridge/medical, + /obj/item/device/flashlight/pen, + /obj/item/weapon/reagent_containers/syringe, + /obj/item/clothing/accessory/storage/white_vest + ) + cost = 20 + containertype = "/obj/structure/closet/crate/secure" + containername = "Paramedic equipment" + access = access_medical_equip + +/datum/supply_packs/med/psychiatristgear + name = "Psychiatrist equipment" + contains = list( + /obj/item/clothing/under/rank/psych, + /obj/item/device/radio/headset/headset_med, + /obj/item/clothing/under/rank/psych/turtleneck, + /obj/item/clothing/shoes/laceup, + /obj/item/clothing/suit/storage/toggle/labcoat, + /obj/item/clothing/shoes/white, + /obj/item/weapon/clipboard, + /obj/item/weapon/folder/white, + /obj/item/weapon/pen, + /obj/item/weapon/cartridge/medical + ) + cost = 15 + containertype = "/obj/structure/closet/crate/secure" + containername = "Psychiatrist equipment" + access = access_psychiatrist + +/datum/supply_packs/med/medicalscrubs + name = "Medical scrubs" + contains = list( + /obj/item/clothing/shoes/white = 3,, + /obj/item/clothing/under/rank/medical/blue = 3, + /obj/item/clothing/under/rank/medical/green = 3, + /obj/item/clothing/under/rank/medical/purple = 3, + /obj/item/clothing/under/rank/medical/black = 3, + /obj/item/clothing/head/surgery = 3, + /obj/item/clothing/head/surgery/purple = 3, + /obj/item/clothing/head/surgery/blue = 3, + /obj/item/clothing/head/surgery/green = 3, + /obj/item/clothing/head/surgery/black = 3, + /obj/item/weapon/storage/box/masks, + /obj/item/weapon/storage/box/gloves + ) + cost = 15 + containertype = "/obj/structure/closet/crate/secure" + containername = "Medical scrubs crate" + access = access_medical_equip + +/datum/supply_packs/med/autopsy + name = "Autopsy equipment" + contains = list( + /obj/item/weapon/folder/white, + /obj/item/device/camera, + /obj/item/device/camera_film = 2, + /obj/item/weapon/autopsy_scanner, + /obj/item/weapon/scalpel, + /obj/item/weapon/storage/box/masks, + /obj/item/weapon/storage/box/gloves, + /obj/item/weapon/pen + ) + cost = 20 + containertype = "/obj/structure/closet/crate/secure" + containername = "Autopsy equipment crate" + access = access_morgue + +/datum/supply_packs/med/medicaluniforms + name = "Medical uniforms" + contains = list( + /obj/item/clothing/shoes/white = 3, + /obj/item/clothing/under/rank/chief_medical_officer, + /obj/item/clothing/under/rank/geneticist, + /obj/item/clothing/under/rank/virologist, + /obj/item/clothing/under/rank/nursesuit, + /obj/item/clothing/under/rank/nurse, + /obj/item/clothing/under/rank/orderly, + /obj/item/clothing/under/rank/medical = 3, + /obj/item/clothing/under/rank/medical/paramedic = 3, + /obj/item/clothing/suit/storage/toggle/labcoat = 3, + /obj/item/clothing/suit/storage/toggle/labcoat/cmo, + /obj/item/clothing/suit/storage/toggle/labcoat/emt, + /obj/item/clothing/suit/storage/toggle/labcoat/cmoalt, + /obj/item/clothing/suit/storage/toggle/labcoat/genetics, + /obj/item/clothing/suit/storage/toggle/labcoat/virologist, + /obj/item/clothing/suit/storage/toggle/labcoat/chemist, + /obj/item/weapon/storage/box/masks, + /obj/item/weapon/storage/box/gloves + ) + cost = 15 + containertype = "/obj/structure/closet/crate/secure" + containername = "Medical uniform crate" + access = access_medical_equip + +/datum/supply_packs/med/medicalbiosuits + name = "Medical biohazard gear" + contains = list( + /obj/item/clothing/head/bio_hood = 3, + /obj/item/clothing/suit/bio_suit = 3, + /obj/item/clothing/head/bio_hood/virology = 2, + /obj/item/clothing/suit/bio_suit/cmo, + /obj/item/clothing/head/bio_hood/cmo, + /obj/item/clothing/mask/gas = 5, + /obj/item/weapon/tank/oxygen = 5, + /obj/item/weapon/storage/box/masks, + /obj/item/weapon/storage/box/gloves + ) + cost = 50 + containertype = "/obj/structure/closet/crate/secure" + containername = "Medical biohazard equipment" + access = access_medical_equip + +/datum/supply_packs/med/portablefreezers + name = "Portable freezers crate" + contains = list(/obj/item/weapon/storage/box/freezer = 7) + cost = 25 + containertype = "/obj/structure/closet/crate/secure" + containername = "Portable freezers" + access = access_medical_equip \ No newline at end of file diff --git a/code/datums/supplypacks/misc.dm b/code/datums/supplypacks/misc.dm new file mode 100644 index 0000000000..a64a6e44e7 --- /dev/null +++ b/code/datums/supplypacks/misc.dm @@ -0,0 +1,268 @@ +/* +* Here is where any supply packs +* that don't belong elsewhere live. +*/ +/datum/supply_packs/misc + group = "Miscellaneous" + +/datum/supply_packs/randomised/misc + group = "Miscellaneous" + +/datum/supply_packs/misc/wizard + name = "Wizard costume" + contains = list( + /obj/item/weapon/staff, + /obj/item/clothing/suit/wizrobe/fake, + /obj/item/clothing/shoes/sandal, + /obj/item/clothing/head/wizard/fake + ) + cost = 20 + containertype = /obj/structure/closet/crate + containername = "Wizard costume crate" + +/datum/supply_packs/misc/foam_weapons + name = "Foam Weapon Crate" + contains = list( + /obj/item/weapon/material/sword/foam = 2, + /obj/item/weapon/material/twohanded/baseballbat/foam = 2, + /obj/item/weapon/material/twohanded/spear/foam = 2, + /obj/item/weapon/material/twohanded/fireaxe/foam = 2 + ) + cost = 80 + containertype = /obj/structure/closet/crate + containername = "foam weapon crate" + +/datum/supply_packs/randomised/misc/hats + num_contained = 4 + contains = list( + /obj/item/clothing/head/collectable/chef, + /obj/item/clothing/head/collectable/paper, + /obj/item/clothing/head/collectable/tophat, + /obj/item/clothing/head/collectable/captain, + /obj/item/clothing/head/collectable/beret, + /obj/item/clothing/head/collectable/welding, + /obj/item/clothing/head/collectable/flatcap, + /obj/item/clothing/head/collectable/pirate, + /obj/item/clothing/head/collectable/kitty, + /obj/item/clothing/head/collectable/rabbitears, + /obj/item/clothing/head/collectable/wizard, + /obj/item/clothing/head/collectable/hardhat, + /obj/item/clothing/head/collectable/HoS, + /obj/item/clothing/head/collectable/thunderdome, + /obj/item/clothing/head/collectable/swat, + /obj/item/clothing/head/collectable/slime, + /obj/item/clothing/head/collectable/police, + /obj/item/clothing/head/collectable/slime, + /obj/item/clothing/head/collectable/xenom, + /obj/item/clothing/head/collectable/petehat + ) + name = "Collectable hat crate!" + cost = 200 + containertype = /obj/structure/closet/crate + containername = "Collectable hats crate! Brought to you by Bass.inc!" + +/datum/supply_packs/randomised/misc/costume + num_contained = 3 + contains = list( + /obj/item/clothing/suit/pirate, + /obj/item/clothing/suit/judgerobe, + /obj/item/clothing/suit/wcoat, + /obj/item/clothing/suit/hastur, + /obj/item/clothing/suit/holidaypriest, + /obj/item/clothing/suit/nun, + /obj/item/clothing/suit/imperium_monk, + /obj/item/clothing/suit/ianshirt, + /obj/item/clothing/under/gimmick/rank/captain/suit, + /obj/item/clothing/under/gimmick/rank/head_of_personnel/suit, + /obj/item/clothing/under/lawyer/purpsuit, + /obj/item/clothing/under/rank/mailman, + /obj/item/clothing/under/dress/dress_saloon, + /obj/item/clothing/suit/suspenders, + /obj/item/clothing/suit/storage/toggle/labcoat/mad, + /obj/item/clothing/suit/bio_suit/plaguedoctorsuit, + /obj/item/clothing/under/schoolgirl, + /obj/item/clothing/under/owl, + /obj/item/clothing/under/waiter, + /obj/item/clothing/under/gladiator, + /obj/item/clothing/under/soviet, + /obj/item/clothing/under/scratch, + /obj/item/clothing/under/wedding/bride_white, + /obj/item/clothing/suit/chef, + /obj/item/clothing/suit/apron/overalls, + /obj/item/clothing/under/redcoat, + /obj/item/clothing/under/kilt + ) + name = "Costumes crate" + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Actor Costumes" + +/datum/supply_packs/misc/formal_wear + contains = list( + /obj/item/clothing/head/bowler, + /obj/item/clothing/head/that, + /obj/item/clothing/suit/storage/toggle/internalaffairs, + /obj/item/clothing/suit/storage/toggle/lawyer/bluejacket, + /obj/item/clothing/suit/storage/toggle/lawyer/purpjacket, + /obj/item/clothing/under/suit_jacket, + /obj/item/clothing/under/suit_jacket/female, + /obj/item/clothing/under/suit_jacket/really_black, + /obj/item/clothing/under/suit_jacket/red, + /obj/item/clothing/under/lawyer/bluesuit, + /obj/item/clothing/under/lawyer/purpsuit, + /obj/item/clothing/shoes/black = 2, + /obj/item/clothing/shoes/leather, + /obj/item/clothing/suit/wcoat + ) + name = "Formalwear closet" + cost = 30 + containertype = /obj/structure/closet + containername = "Formalwear for the best occasions." + +/datum/supply_packs/randomised/misc/card_packs + num_contained = 5 + contains = list( + /obj/item/weapon/pack/cardemon, + /obj/item/weapon/pack/spaceball, + /obj/item/weapon/deck/holder + ) + name = "Trading Card Crate" + cost = 10 + containertype = /obj/structure/closet/crate + containername = "cards crate" + +/datum/supply_packs/misc/eftpos + contains = list(/obj/item/device/eftpos) + name = "EFTPOS scanner" + cost = 10 + containertype = /obj/structure/closet/crate + containername = "EFTPOS crate" + +/datum/supply_packs/misc/cardboard_sheets + contains = list(/obj/item/stack/material/cardboard) + name = "50 cardboard sheets" + amount = 50 + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Cardboard sheets crate" + +/datum/supply_packs/misc/carpet + name = "Imported carpet" + containertype = /obj/structure/closet/crate + containername = "Imported carpet crate" + cost = 15 + contains = list( + /obj/item/stack/tile/carpet, + /obj/item/stack/tile/carpet/blue + ) + amount = 50 + +/datum/supply_packs/misc/linoleum + name = "Linoleum" + containertype = /obj/structure/closet/crate + containername = "Linoleum crate" + cost = 15 + contains = list(/obj/item/stack/tile/linoleum) + amount = 50 + +/datum/supply_packs/misc/witch + name = "Witch costume" + containername = "Witch costume" + containertype = /obj/structure/closet + cost = 20 + contains = list( + /obj/item/clothing/suit/wizrobe/marisa/fake, + /obj/item/clothing/shoes/sandal, + /obj/item/clothing/head/wizard/marisa/fake, + /obj/item/weapon/staff/broom + ) + +/datum/supply_packs/randomised/misc/costume_hats + name = "Costume hats" + containername = "Actor hats crate" + containertype = /obj/structure/closet + cost = 10 + num_contained = 3 + contains = list( + /obj/item/clothing/head/redcoat, + /obj/item/clothing/head/mailman, + /obj/item/clothing/head/plaguedoctorhat, + /obj/item/clothing/head/pirate, + /obj/item/clothing/head/hasturhood, + /obj/item/clothing/head/powdered_wig, + /obj/item/clothing/head/hairflower, + /obj/item/clothing/head/hairflower/yellow, + /obj/item/clothing/head/hairflower/blue, + /obj/item/clothing/head/hairflower/pink, + /obj/item/clothing/mask/gas/owl_mask, + /obj/item/clothing/mask/gas/monkeymask, + /obj/item/clothing/head/helmet/gladiator, + /obj/item/clothing/head/ushanka + ) + +/datum/supply_packs/randomised/misc/dresses + name = "Womens formal dress locker" + containername = "Pretty dress locker" + containertype = /obj/structure/closet + cost = 15 + num_contained = 3 + contains = list( + /obj/item/clothing/under/wedding/bride_orange, + /obj/item/clothing/under/wedding/bride_purple, + /obj/item/clothing/under/wedding/bride_blue, + /obj/item/clothing/under/wedding/bride_red, + /obj/item/clothing/under/wedding/bride_white, + /obj/item/clothing/under/sundress, + /obj/item/clothing/under/dress/dress_green, + /obj/item/clothing/under/dress/dress_pink, + /obj/item/clothing/under/dress/dress_orange, + /obj/item/clothing/under/dress/dress_yellow, + /obj/item/clothing/under/dress/dress_saloon + ) + +/datum/supply_packs/randomised/misc/exosuit_mod + num_contained = 1 + contains = list( + /obj/item/device/kit/paint/ripley, + /obj/item/device/kit/paint/ripley/death, + /obj/item/device/kit/paint/ripley/flames_red, + /obj/item/device/kit/paint/ripley/flames_blue + ) + name = "Random APLU modkit" + cost = 200 + containertype = /obj/structure/closet/crate + containername = "heavy crate" + +/datum/supply_packs/randomised/misc/exosuit_mod/durand + contains = list( + /obj/item/device/kit/paint/durand, + /obj/item/device/kit/paint/durand/seraph, + /obj/item/device/kit/paint/durand/phazon + ) + name = "Random Durand exosuit modkit" + +/datum/supply_packs/randomised/misc/exosuit_mod/gygax + contains = list( + /obj/item/device/kit/paint/gygax, + /obj/item/device/kit/paint/gygax/darkgygax, + /obj/item/device/kit/paint/gygax/recitence + ) + name = "Random Gygax exosuit modkit" + +/datum/supply_packs/misc/chaplaingear + name = "Chaplain equipment" + contains = list( + /obj/item/clothing/under/rank/chaplain, + /obj/item/clothing/shoes/black, + /obj/item/clothing/suit/nun, + /obj/item/clothing/head/nun_hood, + /obj/item/clothing/suit/chaplain_hoodie, + /obj/item/clothing/head/chaplain_hood, + /obj/item/clothing/suit/holidaypriest, + /obj/item/clothing/under/wedding/bride_white, + /obj/item/weapon/storage/backpack/cultpack, + /obj/item/weapon/storage/fancy/candle_box = 3 + ) + cost = 10 + containertype = "/obj/structure/closet/crate" + containername = "Chaplain equipment crate" \ No newline at end of file diff --git a/code/datums/supplypacks/operations.dm b/code/datums/supplypacks/operations.dm new file mode 100644 index 0000000000..f64b21353e --- /dev/null +++ b/code/datums/supplypacks/operations.dm @@ -0,0 +1,75 @@ +/* +* Here is where any supply packs +* related to operations live. +*/ +/datum/supply_packs/ops + group = "Operations" + +/datum/supply_packs/ops/mule + name = "Mulebot Crate" + contains = list() + cost = 20 + containertype = /obj/structure/largecrate/animal/mulebot + containername = "Mulebot Crate" + +/datum/supply_packs/ops/cargotrain + name = "Cargo Train Tug" + contains = list(/obj/vehicle/train/cargo/engine) + cost = 45 + containertype = /obj/structure/largecrate + containername = "Cargo Train Tug Crate" + +/datum/supply_packs/ops/cargotrailer + name = "Cargo Train Trolley" + contains = list(/obj/vehicle/train/cargo/trolley) + cost = 15 + containertype = /obj/structure/largecrate + containername = "Cargo Train Trolley Crate" + +/datum/supply_packs/ops/hoverpod + name = "Hoverpod Shipment" + contains = list() + cost = 80 + containertype = /obj/structure/largecrate/hoverpod + containername = "Hoverpod Crate" + +/datum/supply_packs/ops/artscrafts + name = "Arts and Crafts supplies" + contains = list( + /obj/item/weapon/storage/fancy/crayons, + /obj/item/device/camera, + /obj/item/device/camera_film = 2, + /obj/item/weapon/storage/photo_album, + /obj/item/weapon/packageWrap, + /obj/item/weapon/reagent_containers/glass/paint/red, + /obj/item/weapon/reagent_containers/glass/paint/green, + /obj/item/weapon/reagent_containers/glass/paint/blue, + /obj/item/weapon/reagent_containers/glass/paint/yellow, + /obj/item/weapon/reagent_containers/glass/paint/purple, + /obj/item/weapon/reagent_containers/glass/paint/black, + /obj/item/weapon/reagent_containers/glass/paint/white, + /obj/item/weapon/contraband/poster, + /obj/item/weapon/wrapping_paper = 3 + ) + cost = 10 + containertype = "/obj/structure/closet/crate" + containername = "Arts and Crafts crate" + +/datum/supply_packs/randomised/ops + group = "Operations" + +/datum/supply_packs/randomised/ops/webbing + name = "Webbing crate" + num_contained = 4 + contains = list( + /obj/item/clothing/accessory/storage/black_vest, + /obj/item/clothing/accessory/storage/brown_vest, + /obj/item/clothing/accessory/storage/white_vest, + /obj/item/clothing/accessory/storage/black_drop_pouches, + /obj/item/clothing/accessory/storage/brown_drop_pouches, + /obj/item/clothing/accessory/storage/white_drop_pouches, + /obj/item/clothing/accessory/storage/webbing + ) + cost = 15 + containertype = "/obj/structure/closet/crate" + containername = "Webbing crate" \ No newline at end of file diff --git a/code/datums/supplypacks/science.dm b/code/datums/supplypacks/science.dm new file mode 100644 index 0000000000..0aa159fdd0 --- /dev/null +++ b/code/datums/supplypacks/science.dm @@ -0,0 +1,57 @@ +/* +* Here is where any supply packs +* related to security tasks live +*/ +/datum/supply_packs/sci + group = "Science" + +/datum/supply_packs/sci/virus + name = "Virus sample crate" + contains = list(/obj/item/weapon/virusdish/random = 4) + cost = 25 + containertype = "/obj/structure/closet/crate/secure" + containername = "Virus sample crate" + access = access_cmo + +/datum/supply_packs/sci/coolanttank + name = "Coolant tank crate" + contains = list(/obj/structure/reagent_dispensers/coolanttank) + cost = 16 + containertype = /obj/structure/largecrate + containername = "coolant tank crate" + +/datum/supply_packs/sci/mecha_ripley + name = "Circuit Crate (\"Ripley\" APLU)" + contains = list( + /obj/item/weapon/book/manual/ripley_build_and_repair, + /obj/item/weapon/circuitboard/mecha/ripley/main, + /obj/item/weapon/circuitboard/mecha/ripley/peripherals + ) + cost = 30 + containertype = /obj/structure/closet/crate/secure + containername = "APLU \"Ripley\" Circuit Crate" + access = access_robotics + +/datum/supply_packs/sci/mecha_odysseus + name = "Circuit Crate (\"Odysseus\")" + contains = list( + /obj/item/weapon/circuitboard/mecha/odysseus/peripherals, + /obj/item/weapon/circuitboard/mecha/odysseus/main + ) + cost = 25 + containertype = /obj/structure/closet/crate/secure + containername = "\"Odysseus\" Circuit Crate" + access = access_robotics + +/datum/supply_packs/sci/phoron + name = "Phoron assembly crate" + contains = list( + /obj/item/weapon/tank/phoron = 3, + /obj/item/device/assembly/igniter = 3, + /obj/item/device/assembly/prox_sensor = 3, + /obj/item/device/assembly/timer = 3 + ) + cost = 10 + containertype = /obj/structure/closet/crate/secure/phoron + containername = "Phoron assembly crate" + access = access_tox_storage \ No newline at end of file diff --git a/code/datums/supplypacks/science_vr.dm b/code/datums/supplypacks/science_vr.dm new file mode 100644 index 0000000000..9983d30501 --- /dev/null +++ b/code/datums/supplypacks/science_vr.dm @@ -0,0 +1,28 @@ +/datum/supply_packs/sci/some_robolimbs + name = "Basic Robolimb Blueprints" + contains = list( + /obj/item/weapon/disk/limb/morpheus, + /obj/item/weapon/disk/limb/xion, + /obj/item/weapon/disk/limb/talon + ) + cost = 15 + containertype = /obj/structure/closet/crate/secure + containername = "Basic Robolimb Blueprint Crate" + access = access_robotics + +/datum/supply_packs/sci/all_robolimbs + name = "Advanced Robolimb Blueprints" + contains = list( + /obj/item/weapon/disk/limb/bishop, + /obj/item/weapon/disk/limb/hesphiastos, + /obj/item/weapon/disk/limb/morpheus, + /obj/item/weapon/disk/limb/veymed, + /obj/item/weapon/disk/limb/wardtakahashi, + /obj/item/weapon/disk/limb/xion, + /obj/item/weapon/disk/limb/zenghu, + /obj/item/weapon/disk/limb/talon + ) + cost = 40 + containertype = /obj/structure/closet/crate/secure + containername = "Advanced Robolimb Blueprint Crate" + access = access_robotics \ No newline at end of file diff --git a/code/datums/supplypacks/security.dm b/code/datums/supplypacks/security.dm new file mode 100644 index 0000000000..cc73015121 --- /dev/null +++ b/code/datums/supplypacks/security.dm @@ -0,0 +1,526 @@ +/* +* Here is where any supply packs +* related to security tasks live +*/ +/datum/supply_packs/security + group = "Security" + access = access_security + +/datum/supply_packs/security/beanbagammo + name = "Beanbag shells" + contains = list(/obj/item/weapon/storage/box/beanbags = 3) + cost = 30 + containertype = /obj/structure/closet/crate + containername = "Beanbag shells" + access = null + +/datum/supply_packs/security/weapons + name = "Weapons crate" + contains = list( + /obj/item/weapon/melee/baton = 2, + /obj/item/weapon/gun/energy/gun = 2, + /obj/item/weapon/gun/energy/taser = 2, + /obj/item/weapon/gun/projectile/colt/detective = 2, + /obj/item/weapon/storage/box/flashbangs = 2 + ) + cost = 40 + containertype = /obj/structure/closet/crate/secure/weapon + containername = "Weapons crate" + +/datum/supply_packs/security/flareguns + name = "Flare guns crate" + contains = list( + /obj/item/weapon/gun/projectile/sec/flash, + /obj/item/ammo_magazine/c45m/flash, + /obj/item/weapon/gun/projectile/shotgun/doublebarrel/flare, + /obj/item/weapon/storage/box/flashshells + ) + cost = 25 + containertype = /obj/structure/closet/crate/secure/weapon + containername = "Flare gun crate" + +/datum/supply_packs/security/eweapons + name = "Experimental weapons crate" + contains = list( + /obj/item/weapon/gun/energy/xray = 2, + /obj/item/weapon/shield/energy = 2) + cost = 125 + containertype = /obj/structure/closet/crate/secure/weapon + containername = "Experimental weapons crate" + access = access_armory + +/datum/supply_packs/randomised/security + group = "Security" + access = access_security + +/datum/supply_packs/randomised/security/armor + num_contained = 5 + contains = list( + /obj/item/clothing/suit/storage/vest, + /obj/item/clothing/suit/storage/vest/officer, + /obj/item/clothing/suit/storage/vest/warden, + /obj/item/clothing/suit/storage/vest/hos, + /obj/item/clothing/suit/storage/vest/pcrc, + /obj/item/clothing/suit/storage/vest/detective, + /obj/item/clothing/suit/storage/vest/heavy, + /obj/item/clothing/suit/storage/vest/heavy/officer, + /obj/item/clothing/suit/storage/vest/heavy/warden, + /obj/item/clothing/suit/storage/vest/heavy/hos, + /obj/item/clothing/suit/storage/vest/heavy/pcrc + ) + + name = "Armor crate" + cost = 40 + containertype = /obj/structure/closet/crate/secure + containername = "Armor crate" + +/datum/supply_packs/security/riot_gear + name = "Riot gear crate" + contains = list( + /obj/item/weapon/melee/baton = 3, + /obj/item/weapon/shield/riot = 3, + /obj/item/weapon/handcuffs = 3, + /obj/item/weapon/storage/box/flashbangs, + /obj/item/weapon/storage/box/beanbags, + /obj/item/weapon/storage/box/handcuffs + ) + cost = 40 + containertype = /obj/structure/closet/crate/secure + containername = "riot gear crate" + access = access_armory + +/datum/supply_packs/security/riot_armor + name = "Riot armor set crate" + contains = list( + /obj/item/clothing/head/helmet/riot, + /obj/item/clothing/suit/armor/riot, + /obj/item/clothing/gloves/arm_guard/riot, + /obj/item/clothing/shoes/leg_guard/riot + ) + cost = 30 + containertype = /obj/structure/closet/crate/secure + containername = "riot armor set crate" + access = access_armory + +/datum/supply_packs/security/ablative_armor + name = "Ablative armor set crate" + contains = list( + /obj/item/clothing/head/helmet/laserproof, + /obj/item/clothing/suit/armor/laserproof, + /obj/item/clothing/gloves/arm_guard/laserproof, + /obj/item/clothing/shoes/leg_guard/laserproof + ) + cost = 40 + containertype = /obj/structure/closet/crate/secure + containername = "ablative armor set crate" + access = access_armory + +/datum/supply_packs/security/bullet_resistant_armor + name = "Bullet resistant armor set crate" + contains = list( + /obj/item/clothing/head/helmet/bulletproof, + /obj/item/clothing/suit/armor/bulletproof, + /obj/item/clothing/gloves/arm_guard/bulletproof, + /obj/item/clothing/shoes/leg_guard/bulletproof + ) + cost = 35 + containertype = /obj/structure/closet/crate/secure + containername = "bullet resistant armor set crate" + access = access_armory + +/datum/supply_packs/security/combat_armor + name = "Combat armor set crate" + contains = list( + /obj/item/clothing/head/helmet/combat, + /obj/item/clothing/suit/armor/combat, + /obj/item/clothing/gloves/arm_guard/combat, + /obj/item/clothing/shoes/leg_guard/combat + ) + cost = 40 + containertype = /obj/structure/closet/crate/secure + containername = "combat armor set crate" + access = access_armory + +/datum/supply_packs/security/tactical + name = "Tactical suits" + containertype = /obj/structure/closet/crate/secure + containername = "Tactical Suit Locker" + cost = 60 + access = access_armory + contains = list( + /obj/item/clothing/under/tactical, + /obj/item/clothing/suit/armor/tactical, + /obj/item/clothing/head/helmet/tactical, + /obj/item/clothing/mask/balaclava/tactical, + /obj/item/clothing/glasses/sunglasses/sechud/tactical, + /obj/item/weapon/storage/belt/security/tactical, + /obj/item/clothing/shoes/jackboots, + /obj/item/clothing/gloves/black, + /obj/item/clothing/under/tactical, + /obj/item/clothing/suit/armor/tactical, + /obj/item/clothing/head/helmet/tactical, + /obj/item/clothing/mask/balaclava/tactical, + /obj/item/clothing/glasses/sunglasses/sechud/tactical, + /obj/item/weapon/storage/belt/security/tactical, + /obj/item/clothing/shoes/jackboots, + /obj/item/clothing/gloves/black + ) + +/datum/supply_packs/security/energyweapons + name = "Energy weapons crate" + contains = list(/obj/item/weapon/gun/energy/laser = 3) + cost = 50 + containertype = /obj/structure/closet/crate/secure + containername = "energy weapons crate" + access = access_armory + +/datum/supply_packs/security/shotgun + name = "Shotgun crate" + contains = list( + /obj/item/weapon/storage/box/shotgunammo, + /obj/item/weapon/storage/box/shotgunshells, + /obj/item/weapon/gun/projectile/shotgun/pump/combat = 2 + ) + cost = 65 + containertype = /obj/structure/closet/crate/secure + containername = "Shotgun crate" + access = access_armory + +/datum/supply_packs/security/erifle + name = "Energy marksman crate" + contains = list(/obj/item/weapon/gun/energy/sniperrifle = 2) + cost = 90 + containertype = /obj/structure/closet/crate/secure + containername = "Energy marksman crate" + access = access_armory + +/datum/supply_packs/security/shotgunammo + name = "Ballistic ammunition crate" + contains = list( + /obj/item/weapon/storage/box/shotgunammo = 2, + /obj/item/weapon/storage/box/shotgunshells = 2 + ) + cost = 60 + containertype = /obj/structure/closet/crate/secure + containername = "ballistic ammunition crate" + access = access_armory + +/datum/supply_packs/security/ionweapons + name = "Electromagnetic weapons crate" + contains = list( + /obj/item/weapon/gun/energy/ionrifle = 2, + /obj/item/weapon/storage/box/emps + ) + cost = 50 + containertype = /obj/structure/closet/crate/secure + containername = "electromagnetic weapons crate" + access = access_armory + +/datum/supply_packs/randomised/security/automatic + name = "Automatic weapon crate" + num_contained = 2 + contains = list( + /obj/item/weapon/gun/projectile/automatic/wt550, + /obj/item/weapon/gun/projectile/automatic/z8 + ) + cost = 90 + containertype = /obj/structure/closet/crate/secure + containername = "Automatic weapon crate" + access = access_armory + +/datum/supply_packs/randomised/security/autoammo + name = "Automatic weapon ammunition crate" + num_contained = 6 + contains = list( + /obj/item/ammo_magazine/mc9mmt, + /obj/item/ammo_magazine/mc9mmt/rubber, + /obj/item/ammo_magazine/a556 + ) + cost = 20 + containertype = /obj/structure/closet/crate/secure + containername = "Automatic weapon ammunition crate" + access = access_armory + +/datum/supply_packs/security/energy_guns + name = "energy guns crate" + contains = list(/obj/item/weapon/gun/energy/gun = 2) + cost = 50 + containertype = /obj/structure/closet/crate/secure + containername = "energy guns crate" + access = access_armory + +/datum/supply_packs/security/securitybarriers + name = "Security barrier crate" + contains = list(/obj/machinery/deployable/barrier = 4) + cost = 20 + containertype = /obj/structure/closet/crate/secure/gear + containername = "Security barrier crate" + access = null + +/datum/supply_packs/security/securityshieldgen + name = "Wall shield Generators" + contains = list(/obj/machinery/shieldwallgen = 4) + cost = 20 + containertype = /obj/structure/closet/crate/secure + containername = "wall shield generators crate" + access = access_teleporter + +/datum/supply_packs/security/voidsuits + name = "Security voidsuits" + contains = list( + /obj/item/clothing/suit/space/void/security = 2, + /obj/item/clothing/head/helmet/space/void/security = 2, + /obj/item/clothing/mask/breath = 2, + /obj/item/clothing/shoes/magboots = 2, + /obj/item/weapon/tank/oxygen = 2 + ) + cost = 55 + containertype = "/obj/structure/closet/crate/secure" + containername = "Security voidsuit crate" + +/datum/supply_packs/randomised/security/holster + name = "Holster crate" + num_contained = 4 + contains = list( + /obj/item/clothing/accessory/holster, + /obj/item/clothing/accessory/holster/armpit, + /obj/item/clothing/accessory/holster/waist, + /obj/item/clothing/accessory/holster/hip + ) + cost = 15 + containertype = "/obj/structure/closet/crate/secure" + containername = "Holster crate" + +/datum/supply_packs/security/extragear + name = "Security surplus equipment" + contains = list( + /obj/item/weapon/storage/belt/security = 3, + /obj/item/clothing/glasses/sunglasses/sechud = 3, + /obj/item/device/radio/headset/headset_sec/alt = 3, + /obj/item/clothing/suit/storage/hooded/wintercoat/security = 3 + ) + cost = 25 + containertype = "/obj/structure/closet/crate/secure" + containername = "Security surplus equipment" + access = null + +/datum/supply_packs/security/detectivegear + name = "Forensic investigation equipment" + contains = list( + /obj/item/weapon/storage/box/evidence = 2, + /obj/item/clothing/suit/storage/vest/detective, + /obj/item/weapon/cartridge/detective, + /obj/item/device/radio/headset/headset_sec, + /obj/item/taperoll/police, + /obj/item/clothing/glasses/sunglasses, + /obj/item/device/camera, + /obj/item/weapon/folder/red, + /obj/item/weapon/folder/blue, + /obj/item/weapon/storage/belt/detective, + /obj/item/clothing/gloves/black, + /obj/item/device/taperecorder, + /obj/item/device/mass_spectrometer, + /obj/item/device/camera_film = 2, + /obj/item/weapon/storage/photo_album, + /obj/item/device/reagent_scanner, + /obj/item/device/flashlight/maglight, + /obj/item/weapon/storage/briefcase/crimekit + ) + cost = 40 + containertype = "/obj/structure/closet/crate/secure" + containername = "Forensic equipment" + access = access_forensics_lockers + +/datum/supply_packs/security/detectiveclothes + name = "Investigation apparel" + contains = list( + /obj/item/clothing/under/det/black = 2, + /obj/item/clothing/under/det/grey = 2, + /obj/item/clothing/head/det/grey = 2, + /obj/item/clothing/under/det = 2, + /obj/item/clothing/head/det = 2, + /obj/item/clothing/suit/storage/det_trench, + /obj/item/clothing/suit/storage/det_trench/grey, + /obj/item/clothing/suit/storage/forensics/red, + /obj/item/clothing/suit/storage/forensics/blue, + /obj/item/clothing/under/det/corporate = 2, + /obj/item/clothing/accessory/badge/holo/detective = 2, + /obj/item/clothing/gloves/black = 2 + ) + cost = 20 + containertype = "/obj/structure/closet/crate/secure" + containername = "Investigation clothing" + access = access_forensics_lockers + +/datum/supply_packs/security/officergear + name = "Officer equipment" + contains = list( + /obj/item/clothing/suit/storage/vest/officer, + /obj/item/clothing/head/helmet, + /obj/item/weapon/cartridge/security, + /obj/item/clothing/accessory/badge/holo, + /obj/item/clothing/accessory/badge/holo/cord, + /obj/item/device/radio/headset/headset_sec, + /obj/item/weapon/storage/belt/security, + /obj/item/device/flash, + /obj/item/weapon/reagent_containers/spray/pepper, + /obj/item/weapon/grenade/flashbang, + /obj/item/weapon/melee/baton/loaded, + /obj/item/clothing/glasses/sunglasses/sechud, + /obj/item/taperoll/police, + /obj/item/clothing/gloves/black, + /obj/item/device/hailer, + /obj/item/device/flashlight/flare, + /obj/item/clothing/accessory/storage/black_vest, + /obj/item/clothing/head/soft/sec/corp, + /obj/item/clothing/under/rank/security/corp, + /obj/item/weapon/gun/energy/taser, + /obj/item/device/flashlight/maglight + ) + cost = 30 + containertype = "/obj/structure/closet/crate/secure" + containername = "Officer equipment" + access = access_brig + +/datum/supply_packs/security/wardengear + name = "Warden equipment" + contains = list( + /obj/item/clothing/suit/storage/vest/warden, + /obj/item/clothing/under/rank/warden, + /obj/item/clothing/under/rank/warden/corp, + /obj/item/clothing/suit/armor/vest/warden, + /obj/item/clothing/suit/armor/vest/warden/alt, + /obj/item/clothing/head/helmet/warden, + /obj/item/weapon/cartridge/security, + /obj/item/device/radio/headset/headset_sec, + /obj/item/clothing/glasses/sunglasses/sechud, + /obj/item/taperoll/police, + /obj/item/device/hailer, + /obj/item/clothing/accessory/badge/holo/warden, + /obj/item/weapon/storage/box/flashbangs, + /obj/item/weapon/storage/belt/security, + /obj/item/weapon/reagent_containers/spray/pepper, + /obj/item/weapon/melee/baton/loaded, + /obj/item/weapon/storage/box/holobadge, + /obj/item/clothing/head/beret/sec/corporate/warden, + /obj/item/device/flashlight/maglight + ) + cost = 45 + containertype = "/obj/structure/closet/crate/secure" + containername = "Warden equipment" + access = access_armory + +/datum/supply_packs/security/headofsecgear + name = "Head of security equipment" + contains = list( + /obj/item/clothing/head/helmet/HoS, + /obj/item/clothing/suit/storage/vest/hos, + /obj/item/clothing/under/rank/head_of_security/corp, + /obj/item/clothing/suit/armor/hos, + /obj/item/clothing/head/helmet/HoS/dermal, + /obj/item/weapon/cartridge/hos, + /obj/item/device/radio/headset/heads/hos, + /obj/item/clothing/glasses/sunglasses/sechud, + /obj/item/weapon/storage/belt/security, + /obj/item/device/flash, + /obj/item/device/hailer, + /obj/item/clothing/accessory/badge/holo/hos, + /obj/item/clothing/accessory/holster/waist, + /obj/item/weapon/melee/telebaton, + /obj/item/weapon/shield/riot/tele, + /obj/item/clothing/head/beret/sec/corporate/hos, + /obj/item/device/flashlight/maglight + ) + cost = 65 + containertype = "/obj/structure/closet/crate/secure" + containername = "Head of security equipment" + access = access_hos + +/datum/supply_packs/security/securityclothing + name = "Security uniform crate" + contains = list( + /obj/item/weapon/storage/backpack/satchel/sec = 2, + /obj/item/weapon/storage/backpack/security = 2, + /obj/item/clothing/accessory/armband = 4, + /obj/item/clothing/under/rank/security = 4, + /obj/item/clothing/under/rank/security2 = 4, + /obj/item/clothing/under/rank/warden, + /obj/item/clothing/under/rank/head_of_security, + /obj/item/clothing/suit/armor/hos/jensen, + /obj/item/clothing/head/soft/sec = 4, + /obj/item/clothing/gloves/black = 4, + /obj/item/weapon/storage/box/holobadge + ) + cost = 20 + containertype = "/obj/structure/closet/crate/secure" + containername = "Security uniform crate" + +/datum/supply_packs/security/navybluesecurityclothing + name = "Navy blue security uniform crate" + contains = list( + /obj/item/weapon/storage/backpack/satchel/sec = 2, + /obj/item/weapon/storage/backpack/security = 2, + /obj/item/clothing/under/rank/security/navyblue = 4, + /obj/item/clothing/suit/security/navyofficer = 4, + /obj/item/clothing/under/rank/warden/navyblue, + /obj/item/clothing/suit/security/navywarden, + /obj/item/clothing/under/rank/head_of_security/navyblue, + /obj/item/clothing/suit/security/navyhos, + /obj/item/clothing/head/beret/sec/navy/officer = 4, + /obj/item/clothing/head/beret/sec/navy/warden, + /obj/item/clothing/head/beret/sec/navy/hos, + /obj/item/clothing/gloves/black = 4, + /obj/item/weapon/storage/box/holobadge + ) + cost = 20 + containertype = "/obj/structure/closet/crate/secure" + containername = "Navy blue security uniform crate" + +/datum/supply_packs/security/corporatesecurityclothing + name = "Corporate security uniform crate" + contains = list( + /obj/item/weapon/storage/backpack/satchel/sec = 2, + /obj/item/weapon/storage/backpack/security = 2, + /obj/item/clothing/under/rank/security/corp = 4, + /obj/item/clothing/head/soft/sec/corp = 4, + /obj/item/clothing/under/rank/warden/corp, + /obj/item/clothing/under/rank/head_of_security/corp, + /obj/item/clothing/head/beret/sec = 4, + /obj/item/clothing/head/beret/sec/corporate/warden, + /obj/item/clothing/head/beret/sec/corporate/hos, + /obj/item/clothing/under/det/corporate = 2, + /obj/item/clothing/gloves/black = 4, + /obj/item/weapon/storage/box/holobadge + ) + cost = 20 + containertype = "/obj/structure/closet/crate/secure" + containername = "Corporate security uniform crate" + +/datum/supply_packs/security/biosuit + name = "Security biohazard gear" + contains = list( + /obj/item/clothing/head/bio_hood/security, + /obj/item/clothing/under/rank/security, + /obj/item/clothing/suit/bio_suit/security, + /obj/item/clothing/shoes/white, + /obj/item/clothing/mask/gas, + /obj/item/weapon/tank/oxygen, + /obj/item/clothing/gloves/latex + ) + cost = 35 + containertype = "/obj/structure/closet/crate/secure" + containername = "Security biohazard gear" + +/datum/supply_packs/security/bolt_rifles_competitive + name = "Competitive shooting crate" + contains = list( + /obj/item/device/assembly/timer, + /obj/item/weapon/gun/projectile/shotgun/pump/rifle/practice = 2, + /obj/item/ammo_magazine/clip/a762/practice = 4, + /obj/item/target = 2, + /obj/item/target/alien = 2, + /obj/item/target/syndicate = 2 + ) + cost = 40 + containertype = /obj/structure/closet/crate/secure/weapon + containername = "Weapons crate" \ No newline at end of file diff --git a/code/datums/supplypacks/supply.dm b/code/datums/supplypacks/supply.dm new file mode 100644 index 0000000000..a8c207e293 --- /dev/null +++ b/code/datums/supplypacks/supply.dm @@ -0,0 +1,123 @@ +/* +* Here is where any supply packs +* related to civilian tasks live +*/ +/datum/supply_packs/supply + group = "Supply" + + +/datum/supply_packs/supply/food + name = "Kitchen supply crate" + contains = list( + /obj/item/weapon/reagent_containers/food/condiment/flour = 6, + /obj/item/weapon/reagent_containers/food/drinks/milk = 3, + /obj/item/weapon/reagent_containers/food/drinks/soymilk = 2, + /obj/item/weapon/storage/fancy/egg_box = 2, + /obj/item/weapon/reagent_containers/food/snacks/tofu = 4, + /obj/item/weapon/reagent_containers/food/snacks/meat = 4 + ) + cost = 10 + containertype = /obj/structure/closet/crate/freezer + containername = "Food crate" + +/datum/supply_packs/supply/toner + name = "Toner cartridges" + contains = list(/obj/item/device/toner = 6) + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Toner cartridges" + +/datum/supply_packs/supply/janitor + name = "Janitorial supplies" + contains = list( + /obj/item/weapon/reagent_containers/glass/bucket, + /obj/item/weapon/mop, + /obj/item/clothing/under/rank/janitor, + /obj/item/weapon/cartridge/janitor, + /obj/item/clothing/gloves/black, + /obj/item/clothing/head/soft/purple, + /obj/item/weapon/storage/belt/janitor, + /obj/item/clothing/shoes/galoshes, + /obj/item/weapon/caution = 4, + /obj/item/weapon/storage/bag/trash, + /obj/item/device/lightreplacer, + /obj/item/weapon/reagent_containers/spray/cleaner, + /obj/item/weapon/reagent_containers/glass/rag, + /obj/item/weapon/grenade/chem_grenade/cleaner = 3, + /obj/structure/mopbucket + ) + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Janitorial supplies" + +/datum/supply_packs/supply/boxes + name = "Empty boxes" + contains = list(/obj/item/weapon/storage/box = 10) + cost = 10 + containertype = "/obj/structure/closet/crate" + containername = "Empty box crate" + +/datum/supply_packs/supply/bureaucracy + contains = list( + /obj/item/weapon/clipboard = 2, + /obj/item/weapon/pen/red, + /obj/item/weapon/pen/blue, + /obj/item/weapon/pen/blue, + /obj/item/device/camera_film, + /obj/item/weapon/folder/blue, + /obj/item/weapon/folder/red, + /obj/item/weapon/folder/yellow, + /obj/item/weapon/hand_labeler, + /obj/item/weapon/tape_roll, + /obj/structure/filingcabinet/chestdrawer{anchored = 0}, + /obj/item/weapon/paper_bin + ) + name = "Office supplies" + cost = 15 + containertype = /obj/structure/closet/crate + containername = "Office supplies crate" + + +/datum/supply_packs/supply/spare_pda + name = "Spare PDAs" + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Spare PDA crate" + contains = list(/obj/item/device/pda = 3) + +/datum/supply_packs/supply/voidsuits + name = "Mining voidsuits" + contains = list( + /obj/item/clothing/suit/space/void/mining = 2, + /obj/item/clothing/head/helmet/space/void/mining = 2, + /obj/item/clothing/mask/breath = 2, + /obj/item/weapon/tank/oxygen = 2 + ) + cost = 35 + containertype = "/obj/structure/closet/crate/secure" + containername = "Mining voidsuit crate" + access = access_mining + +/datum/supply_packs/supply/minergear + name = "Shaft miner equipment" + contains = list( + /obj/item/weapon/storage/backpack/industrial, + /obj/item/weapon/storage/backpack/satchel/eng, + /obj/item/clothing/suit/storage/hooded/wintercoat/miner, + /obj/item/device/radio/headset/headset_cargo, + /obj/item/clothing/under/rank/miner, + /obj/item/clothing/gloves/black, + /obj/item/clothing/shoes/black, + /obj/item/device/analyzer, + /obj/item/weapon/storage/bag/ore, + /obj/item/device/flashlight/lantern, + /obj/item/weapon/shovel, + /obj/item/weapon/pickaxe, + /obj/item/weapon/mining_scanner, + /obj/item/clothing/glasses/material, + /obj/item/clothing/glasses/meson + ) + cost = 15 + containertype = "/obj/structure/closet/crate/secure" + containername = "Shaft miner equipment" + access = access_mining \ No newline at end of file diff --git a/code/datums/supplypacks/supplypacks.dm b/code/datums/supplypacks/supplypacks.dm new file mode 100644 index 0000000000..a320c42905 --- /dev/null +++ b/code/datums/supplypacks/supplypacks.dm @@ -0,0 +1,37 @@ +//SUPPLY PACKS +//NOTE: only secure crate types use the access var (and are lockable) +//NOTE: hidden packs only show up when the computer has been hacked. +//ANOTER NOTE: Contraband is obtainable through modified supplycomp circuitboards. +//BIG NOTE: Don't add living things to crates, that's bad, it will break the shuttle. +//NEW NOTE: Do NOT set the price of any crates below 7 points. Doing so allows infinite points. + +var/list/all_supply_groups = list("Operations","Security","Hospitality","Engineering","Atmospherics","Medical","Reagents","Reagent Cartridges","Science","Hydroponics", "Supply", "Miscellaneous") + +/datum/supply_packs + var/name = null + var/list/contains = list() + var/manifest = "" + var/amount = null + var/cost = null + var/containertype = null + var/containername = null + var/access = null + var/hidden = 0 + var/contraband = 0 + var/group = "Operations" + +/datum/supply_packs/New() + manifest += "" + +/datum/supply_packs/randomised + var/num_contained //number of items picked to be contained in a randomised crate + +/datum/supply_packs/randomised/New() + manifest += "Contains any [num_contained] of:" + ..() \ No newline at end of file diff --git a/code/datums/supplypacks_vr.dm b/code/datums/supplypacks_vr.dm deleted file mode 100644 index 3d9f9b87fa..0000000000 --- a/code/datums/supplypacks_vr.dm +++ /dev/null @@ -1,20 +0,0 @@ -/datum/supply_packs/robolimbs_basic - name = "Basic robolimb blueprints" - contains = list( - /obj/item/weapon/disk/limb/morpheus, - /obj/item/weapon/disk/limb/xion, - /obj/item/weapon/disk/limb/talon - ) - -/datum/supply_packs/robolimbs_adv - name = "All robolimb blueprints" - contains = list( - /obj/item/weapon/disk/limb/bishop, - /obj/item/weapon/disk/limb/hesphiastos, - /obj/item/weapon/disk/limb/morpheus, - /obj/item/weapon/disk/limb/veymed, - /obj/item/weapon/disk/limb/wardtakahashi, - /obj/item/weapon/disk/limb/xion, - /obj/item/weapon/disk/limb/zenghu, - /obj/item/weapon/disk/limb/talon - ) \ No newline at end of file diff --git a/code/datums/underwear/bottom.dm b/code/datums/underwear/bottom.dm index 7f91a18608..64d90f62b4 100644 --- a/code/datums/underwear/bottom.dm +++ b/code/datums/underwear/bottom.dm @@ -53,4 +53,8 @@ /datum/category_item/underwear/bottom/thong name = "Thong" icon_state = "thong" - has_color = TRUE \ No newline at end of file + has_color = TRUE + +/datum/category_item/underwear/bottom/fishnet_lower + name = "Fishnets" + icon_state = "fishnet_lower" \ No newline at end of file diff --git a/code/datums/underwear/top.dm b/code/datums/underwear/top.dm index 8640e77da9..044f10e7cb 100644 --- a/code/datums/underwear/top.dm +++ b/code/datums/underwear/top.dm @@ -40,4 +40,16 @@ /datum/category_item/underwear/top/halterneck_bra name = "Halterneck bra" icon_state = "halterneck_bra" - has_color = TRUE \ No newline at end of file + has_color = TRUE + +/datum/category_item/underwear/top/fishnet_base + name = "Fishnet top" + icon_state = "fishnet_body" + +/datum/category_item/underwear/top/fishnet_sleeves + name = "Fishnet with sleeves" + icon_state = "fishnet_sleeves" + +/datum/category_item/underwear/top/fishnet_gloves + name = "Fishnet with gloves" + icon_state = "fishnet_gloves" \ No newline at end of file diff --git a/code/datums/vending/stored_item.dm b/code/datums/vending/stored_item.dm new file mode 100644 index 0000000000..4fed107d77 --- /dev/null +++ b/code/datums/vending/stored_item.dm @@ -0,0 +1,58 @@ +/* +* Datum that holds the instances and information about the items stored. Currently used in SmartFridges and Vending Machines. +*/ +/datum/stored_item + var/item_name = "name" //Name of the item(s) displayed + var/item_path = null + var/amount = 0 + var/list/instances //What items are actually stored + var/stored //The thing holding it is + +/datum/stored_item/New(var/stored, var/path, var/name = null, var/amount = 0) + src.item_path = path + + if(!name) + var/atom/tmp = path + src.item_name = initial(tmp.name) + else + src.item_name = name + + src.amount = amount + src.stored = stored + + ..() + +/datum/stored_item/Destroy() + stored = null + if(instances) + for(var/product in instances) + qdel(product) + instances.Cut() + . = ..() + +/datum/stored_item/proc/get_amount() + return instances ? instances.len : amount + +/datum/stored_item/proc/get_product(var/product_location) + if(!get_amount() || !product_location) + return + init_products() + + var/atom/movable/product = instances[instances.len] // Remove the last added product + instances -= product + product.forceMove(product_location) + +/datum/stored_item/proc/add_product(var/atom/movable/product) + if(product.type != item_path) + return 0 + init_products() + product.forceMove(stored) + instances += product + +/datum/stored_item/proc/init_products() + if(instances) + return + instances = list() + for(var/i = 1 to amount) + var/new_product = new item_path(stored) + instances += new_product \ No newline at end of file diff --git a/code/datums/vending/vending.dm b/code/datums/vending/vending.dm new file mode 100644 index 0000000000..329c8c1959 --- /dev/null +++ b/code/datums/vending/vending.dm @@ -0,0 +1,13 @@ +/** + * Datum used to hold further information about a product in a vending machine + */ +/datum/stored_item/vending_product + var/price = 0 // Price to buy one + var/display_color = null // Display color for vending machine listing + var/category = CAT_NORMAL // CAT_HIDDEN for contraband, CAT_COIN for premium + +/datum/stored_item/vending_product/New(var/stored, var/path, var/name = null, var/amount = 1, var/price = 0, var/color = null, var/category = CAT_NORMAL) + ..(stored, path, name, amount) + src.price = price + src.display_color = color + src.category = category \ No newline at end of file diff --git a/code/game/jobs/job/civilian.dm b/code/game/jobs/job/civilian.dm index f4c3ca9e1b..c02048450b 100644 --- a/code/game/jobs/job/civilian.dm +++ b/code/game/jobs/job/civilian.dm @@ -9,6 +9,7 @@ spawn_positions = 2 supervisors = "the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/civilian access = list(access_hydroponics, access_bar, access_kitchen) minimal_access = list(access_bar) alt_titles = list("Barista") @@ -38,6 +39,7 @@ spawn_positions = 2 supervisors = "the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/civilian access = list(access_hydroponics, access_bar, access_kitchen) minimal_access = list(access_kitchen) alt_titles = list("Cook") @@ -65,6 +67,7 @@ spawn_positions = 1 supervisors = "the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/civilian access = list(access_hydroponics, access_bar, access_kitchen) minimal_access = list(access_hydroponics) alt_titles = list("Hydroponicist") @@ -98,6 +101,7 @@ spawn_positions = 1 supervisors = "the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/cargo/head economic_modifier = 5 access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station) minimal_access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station) @@ -128,6 +132,7 @@ spawn_positions = 2 supervisors = "the quartermaster and the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/cargo access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station) minimal_access = list(access_maint_tunnels, access_cargo, access_cargo_bot, access_mailsorting) @@ -153,6 +158,7 @@ spawn_positions = 3 supervisors = "the quartermaster and the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/cargo economic_modifier = 5 access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station) minimal_access = list(access_mining, access_mining_station, access_mailsorting) @@ -192,6 +198,7 @@ spawn_positions = 2 supervisors = "the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/civilian access = list(access_janitor, access_maint_tunnels) minimal_access = list(access_janitor, access_maint_tunnels) alt_titles = list("Custodian") @@ -218,6 +225,7 @@ spawn_positions = 1 supervisors = "the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/civilian access = list(access_library, access_maint_tunnels) minimal_access = list(access_library) alt_titles = list("Journalist") @@ -244,6 +252,7 @@ spawn_positions = 2 supervisors = "company officials and Corporate Regulations" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/civilian economic_modifier = 7 access = list(access_lawyer, access_sec_doors, access_maint_tunnels, access_heads) minimal_access = list(access_lawyer, access_sec_doors, access_heads) diff --git a/code/game/jobs/job/civilian_chaplain.dm b/code/game/jobs/job/civilian_chaplain.dm index 61cba70023..9ce0e2b811 100644 --- a/code/game/jobs/job/civilian_chaplain.dm +++ b/code/game/jobs/job/civilian_chaplain.dm @@ -9,6 +9,7 @@ spawn_positions = 1 supervisors = "the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/civilian access = list(access_morgue, access_chapel_office, access_crematorium, access_maint_tunnels) minimal_access = list(access_morgue, access_chapel_office, access_crematorium) alt_titles = list("Counselor") diff --git a/code/game/jobs/job/engineering.dm b/code/game/jobs/job/engineering.dm index 707bab0899..6940cd57c9 100644 --- a/code/game/jobs/job/engineering.dm +++ b/code/game/jobs/job/engineering.dm @@ -9,7 +9,7 @@ spawn_positions = 1 supervisors = "the captain" selection_color = "#7F6E2C" - idtype = /obj/item/weapon/card/id/silver + idtype = /obj/item/weapon/card/id/engineering/head req_admin_notify = 1 economic_modifier = 10 @@ -59,6 +59,7 @@ spawn_positions = 5 supervisors = "the chief engineer" selection_color = "#5B4D20" + idtype = /obj/item/weapon/card/id/engineering economic_modifier = 5 access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction, access_atmospherics) minimal_access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction) @@ -96,6 +97,7 @@ spawn_positions = 2 supervisors = "the chief engineer" selection_color = "#5B4D20" + idtype = /obj/item/weapon/card/id/engineering economic_modifier = 5 access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction, access_atmospherics, access_external_airlocks) minimal_access = list(access_eva, access_engine, access_atmospherics, access_maint_tunnels, access_emergency_storage, access_construction, access_external_airlocks) diff --git a/code/game/jobs/job/medical.dm b/code/game/jobs/job/medical.dm index eeb0c8072a..32fd340755 100644 --- a/code/game/jobs/job/medical.dm +++ b/code/game/jobs/job/medical.dm @@ -9,7 +9,7 @@ spawn_positions = 1 supervisors = "the captain" selection_color = "#026865" - idtype = /obj/item/weapon/card/id/silver + idtype = /obj/item/weapon/card/id/medical/head req_admin_notify = 1 economic_modifier = 10 access = list(access_medical, access_medical_equip, access_morgue, access_genetics, access_heads, @@ -48,6 +48,7 @@ spawn_positions = 3 supervisors = "the chief medical officer" selection_color = "#013D3B" + idtype = /obj/item/weapon/card/id/medical economic_modifier = 7 access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics, access_eva) minimal_access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_virology, access_eva) @@ -109,6 +110,7 @@ spawn_positions = 2 supervisors = "the chief medical officer" selection_color = "#013D3B" + idtype = /obj/item/weapon/card/id/medical economic_modifier = 5 access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics) minimal_access = list(access_medical, access_medical_equip, access_chemistry) @@ -170,6 +172,7 @@ economic_modifier = 5 supervisors = "the chief medical officer" selection_color = "#013D3B" + idtype = /obj/item/weapon/card/id/medical access = list(access_medical, access_medical_equip, access_morgue, access_psychiatrist) minimal_access = list(access_medical, access_medical_equip, access_psychiatrist) alt_titles = list("Psychologist") @@ -202,6 +205,7 @@ spawn_positions = 2 supervisors = "the chief medical officer" selection_color = "#013D3B" + idtype = /obj/item/weapon/card/id/medical economic_modifier = 4 access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_virology, access_eva, access_maint_tunnels, access_external_airlocks, access_psychiatrist) minimal_access = list(access_medical, access_medical_equip, access_morgue, access_eva, access_maint_tunnels, access_external_airlocks) diff --git a/code/game/jobs/job/science.dm b/code/game/jobs/job/science.dm index 99482457cc..7055aa7cb3 100644 --- a/code/game/jobs/job/science.dm +++ b/code/game/jobs/job/science.dm @@ -9,7 +9,7 @@ spawn_positions = 1 supervisors = "the captain" selection_color = "#AD6BAD" - idtype = /obj/item/weapon/card/id/silver + idtype = /obj/item/weapon/card/id/science/head req_admin_notify = 1 economic_modifier = 15 access = list(access_rd, access_heads, access_tox, access_genetics, access_morgue, @@ -51,6 +51,7 @@ spawn_positions = 3 supervisors = "the research director" selection_color = "#633D63" + idtype = /obj/item/weapon/card/id/science economic_modifier = 7 access = list(access_robotics, access_tox, access_tox_storage, access_research, access_xenobiology, access_xenoarch) minimal_access = list(access_tox, access_tox_storage, access_research, access_xenoarch) @@ -81,6 +82,7 @@ spawn_positions = 2 supervisors = "the research director" selection_color = "#633D63" + idtype = /obj/item/weapon/card/id/science economic_modifier = 7 access = list(access_robotics, access_tox, access_tox_storage, access_research, access_xenobiology, access_hydroponics) minimal_access = list(access_research, access_xenobiology, access_hydroponics, access_tox_storage) @@ -111,6 +113,7 @@ spawn_positions = 2 supervisors = "research director" selection_color = "#633D63" + idtype = /obj/item/weapon/card/id/science economic_modifier = 5 access = list(access_robotics, access_tox, access_tox_storage, access_tech_storage, access_morgue, access_research) //As a job that handles so many corpses, it makes sense for them to have morgue access. minimal_access = list(access_robotics, access_tech_storage, access_morgue, access_research) //As a job that handles so many corpses, it makes sense for them to have morgue access. diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm index 6320a475ce..04adecc322 100644 --- a/code/game/jobs/job/security.dm +++ b/code/game/jobs/job/security.dm @@ -9,7 +9,7 @@ spawn_positions = 1 supervisors = "the captain" selection_color = "#8E2929" - idtype = /obj/item/weapon/card/id/silver + idtype = /obj/item/weapon/card/id/security/head req_admin_notify = 1 economic_modifier = 10 access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory, @@ -56,6 +56,7 @@ spawn_positions = 1 supervisors = "the head of security" selection_color = "#601C1C" + idtype = /obj/item/weapon/card/id/security economic_modifier = 5 access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory, access_maint_tunnels, access_morgue, access_external_airlocks) minimal_access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory, access_maint_tunnels, access_external_airlocks) @@ -93,6 +94,7 @@ spawn_positions = 2 supervisors = "the head of security" selection_color = "#601C1C" + idtype = /obj/item/weapon/card/id/security alt_titles = list("Forensic Technician","Investigator") access = list(access_security, access_sec_doors, access_forensics_lockers, access_morgue, access_maint_tunnels, access_eva, access_external_airlocks) minimal_access = list(access_security, access_sec_doors, access_forensics_lockers, access_morgue, access_maint_tunnels, access_eva, access_external_airlocks) @@ -135,6 +137,7 @@ spawn_positions = 4 supervisors = "the head of security" selection_color = "#601C1C" + idtype = /obj/item/weapon/card/id/security alt_titles = list("Junior Officer") economic_modifier = 4 access = list(access_security, access_eva, access_sec_doors, access_brig, access_maint_tunnels, access_morgue, access_external_airlocks) diff --git a/code/game/machinery/autolathe_datums.dm b/code/game/machinery/autolathe_datums.dm index e88af6b521..fe495a67be 100644 --- a/code/game/machinery/autolathe_datums.dm +++ b/code/game/machinery/autolathe_datums.dm @@ -38,13 +38,33 @@ /datum/autolathe/recipe/drinkingglass name = "drinking glass" - path = /obj/item/weapon/reagent_containers/food/drinks/drinkingglass + path = /obj/item/weapon/reagent_containers/food/drinks/glass2/square category = "General" + New() + ..() + var/obj/O = path + name = initial(O.name) // generic recipes yay -/datum/autolathe/recipe/shotglass/ - name = "shot glass" - path = /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass - category = "General" +/datum/autolathe/recipe/drinkingglass/rocks + path = /obj/item/weapon/reagent_containers/food/drinks/glass2/rocks + +/datum/autolathe/recipe/drinkingglass/shake + path = /obj/item/weapon/reagent_containers/food/drinks/glass2/shake + +/datum/autolathe/recipe/drinkingglass/cocktail + path = /obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail + +/datum/autolathe/recipe/drinkingglass/shot + path = /obj/item/weapon/reagent_containers/food/drinks/glass2/shot + +/datum/autolathe/recipe/drinkingglass/pint + path = /obj/item/weapon/reagent_containers/food/drinks/glass2/pint + +/datum/autolathe/recipe/drinkingglass/mug + path = /obj/item/weapon/reagent_containers/food/drinks/glass2/mug + +/datum/autolathe/recipe/drinkingglass/wine + path = /obj/item/weapon/reagent_containers/food/drinks/glass2/wine /datum/autolathe/recipe/flashlight name = "flashlight" diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm index 291b985294..7c46651419 100644 --- a/code/game/machinery/camera/camera.dm +++ b/code/game/machinery/camera/camera.dm @@ -35,10 +35,13 @@ var/affected_by_emp_until = 0 + var/client_huds = list() + /obj/machinery/camera/New() wires = new(src) assembly = new(src) assembly.state = 4 + client_huds |= global_hud.whitense /* // Use this to look for cameras that have the same c_tag. for(var/obj/machinery/camera/C in cameranet.cameras) diff --git a/code/game/machinery/camera/presets.dm b/code/game/machinery/camera/presets.dm index ea730a4a9f..c9350bd3d1 100644 --- a/code/game/machinery/camera/presets.dm +++ b/code/game/machinery/camera/presets.dm @@ -17,7 +17,8 @@ var/global/list/station_networks = list( NETWORK_RESEARCH_OUTPOST, NETWORK_ROBOTS, NETWORK_PRISON, - NETWORK_SECURITY + NETWORK_SECURITY, + NETWORK_COMMUNICATORS ) var/global/list/engineering_networks = list( NETWORK_ENGINE, diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 51af8837a8..6873cbf005 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -87,6 +87,7 @@ name = "External Airlock" icon = 'icons/obj/doors/Doorext.dmi' assembly_type = /obj/structure/door_assembly/door_assembly_ext + opacity = 0 /obj/machinery/door/airlock/glass name = "Glass Airlock" diff --git a/code/game/machinery/kitchen/smartfridge.dm b/code/game/machinery/kitchen/smartfridge.dm index a483232526..ae48142b4d 100644 --- a/code/game/machinery/kitchen/smartfridge.dm +++ b/code/game/machinery/kitchen/smartfridge.dm @@ -1,63 +1,3 @@ -/* -* Datum that holds the instances and information about the items in the smartfridge. -*/ -/datum/data/stored_item - var/item_name = "name" //Name of the item(s) displayed - var/item_path = null - var/amount = 0 - var/list/instances //What items are actually stored - var/fridge //The attatched fridge - -/datum/data/stored_item/New(var/fridge, var/path, var/name = null, var/amount = 0) - ..() - - src.item_path = path - - if(!name) - var/atom/tmp = path - src.item_name = initial(tmp.name) - else - src.item_name = name - - src.amount = amount - src.fridge = fridge - -/datum/data/stored_item/Destroy() - fridge = null - if(instances) - for(var/product in instances) - qdel(product) - instances.Cut() - . = ..() - -/datum/data/stored_item/proc/get_amount() - return instances ? instances.len : amount - -/datum/data/stored_item/proc/get_product(var/product_location) - if(!get_amount() || !product_location) - return - init_products() - - var/atom/movable/product = instances[instances.len] // Remove the last added product - instances -= product - product.forceMove(product_location) - -/datum/data/stored_item/proc/add_product(var/atom/movable/product) - if(product.type != item_path) - return 0 - init_products() - product.forceMove(fridge) - instances += product - -/datum/data/stored_item/proc/init_products() - if(instances) - return - instances = list() - for(var/i = 1 to amount) - var/new_product = new item_path(fridge) - instances += new_product - - /* SmartFridge. Much todo */ /obj/machinery/smartfridge @@ -76,7 +16,7 @@ var/icon_off = "smartfridge-off" var/icon_panel = "smartfridge-panel" var/list/item_records = list() - var/datum/data/stored_item/currently_vending = null //What we're putting out of the machine. + var/datum/stored_item/currently_vending = null //What we're putting out of the machine. var/seconds_electrified = 0; var/shoot_inventory = 0 var/locked = 0 @@ -96,6 +36,8 @@ /obj/machinery/smartfridge/Destroy() qdel(wires) + for(var/A in item_records) //Get rid of item records. + qdel(A) wires = null return ..() @@ -129,7 +71,7 @@ /obj/machinery/smartfridge/secure/extract/New() ..() - var/datum/data/stored_item/I = new(src, /obj/item/xenoproduct/slime/core) + var/datum/stored_item/I = new(src, /obj/item/xenoproduct/slime/core) item_records.Add(I) for(var/i=1 to 5) var/obj/item/xenoproduct/slime/core/C = new(src) @@ -220,23 +162,29 @@ icon_state = icon_off else icon_state = icon_on - if(contents.len) + var/hasItems + for(var/datum/stored_item/I in item_records) + if(I.get_amount()) + hasItems = 1 + break + if(hasItems) overlays += "drying_rack_filled" if(!not_working) overlays += "drying_rack_drying" /obj/machinery/smartfridge/drying_rack/proc/dry() - for(var/datum/data/stored_item/I in item_records) + for(var/datum/stored_item/I in item_records) for(var/obj/item/weapon/reagent_containers/food/snacks/S in I.instances) if(S.dry) continue if(S.dried_type == S.type) S.dry = 1 S.name = "dried [S.name]" S.color = "#AAAAAA" - I.get_product(loc) + I.instances -= S + S.forceMove(get_turf(src)) else var/D = S.dried_type - new D(loc) + new D(get_turf(src)) qdel(S) return return @@ -286,46 +234,22 @@ if(accept_check(O)) user.remove_from_mob(O) - var/hasRecord = FALSE //Check to see if this passes or not. - for(var/datum/data/stored_item/I in item_records) - if(istype(O, I.item_path)) - stock(O, I) - qdel(O) - return - if(!hasRecord) - var/datum/data/stored_item/item = new/datum/data/stored_item(src, O.type) - stock(O, item) - item_records.Add(item) - + stock(O) user.visible_message("[user] has added \the [O] to \the [src].", "You add \the [O] to \the [src].") - nanomanager.update_uis(src) else if(istype(O, /obj/item/weapon/storage/bag)) var/obj/item/weapon/storage/bag/P = O var/plants_loaded = 0 for(var/obj/G in P.contents) if(accept_check(G)) - plants_loaded++ - var/hasRecord = FALSE //Check to see if this passes or not. - for(var/datum/data/stored_item/I in item_records) - if(istype(G, I.item_path)) - if(G.name == I.item_name) - stock(G, I) - hasRecord = TRUE - if(!hasRecord) - var/datum/data/stored_item/item = new/datum/data/stored_item(src, G.type, G.name) - stock(G, item) - item_records.Add(item) - + stock(G) + plants_loaded = 1 if(plants_loaded) - user.visible_message("[user] loads \the [src] with \the [P].", "You load \the [src] with \the [P].") if(P.contents.len > 0) user << "Some items are refused." - nanomanager.update_uis(src) - else user << "\The [src] smartly refuses [O]." return 1 @@ -337,11 +261,20 @@ user << "You short out the product lock on [src]." return 1 -/obj/machinery/smartfridge/proc/stock(obj/item/O, var/datum/data/stored_item/I) - I.add_product(O) +/obj/machinery/smartfridge/proc/stock(obj/item/O) + var/hasRecord = FALSE //Check to see if this passes or not. + for(var/datum/stored_item/I in item_records) + if((O.type == I.item_path) && (O.name == I.item_name)) + I.add_product(O) + hasRecord = TRUE + break + if(!hasRecord) + var/datum/stored_item/item = new/datum/stored_item(src, O.type, O.name) + item.add_product(O) + item_records.Add(item) nanomanager.update_uis(src) -/obj/machinery/smartfridge/proc/vend(datum/data/stored_item/I) +/obj/machinery/smartfridge/proc/vend(datum/stored_item/I) I.get_product(get_turf(src)) nanomanager.update_uis(src) @@ -370,7 +303,7 @@ var/list/items[0] for (var/i=1 to length(item_records)) - var/datum/data/stored_item/I = item_records[i] + var/datum/stored_item/I = item_records[i] var/count = I.get_amount() if(count > 0) items.Add(list(list("display_name" = html_encode(capitalize(I.item_name)), "vend" = i, "quantity" = count))) @@ -400,7 +333,7 @@ if(href_list["vend"]) var/index = text2num(href_list["vend"]) var/amount = text2num(href_list["amount"]) - var/datum/data/stored_item/I = item_records[index] + var/datum/stored_item/I = item_records[index] var/count = I.get_amount() // Sanity check, there are probably ways to press the button when it shouldn't be possible. @@ -419,8 +352,8 @@ if(!target) return 0 - for(var/datum/data/stored_item/I in src.item_records) - throw_item = I.get_product(loc) + for(var/datum/stored_item/I in item_records) + throw_item = I.get_product(get_turf(src)) if (!throw_item) continue break diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index f086a3e1dd..0f3ff025b9 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -1,69 +1,3 @@ -/** - * Datum used to hold information about a product in a vending machine - */ -/datum/data/vending_product - var/product_name = "generic" // Display name for the product - var/product_path = null - var/amount = 0 // The original amount held in the vending machine - var/list/instances - var/price = 0 // Price to buy one - var/display_color = null // Display color for vending machine listing - var/category = CAT_NORMAL // CAT_HIDDEN for contraband, CAT_COIN for premium - var/vending_machine // The vending machine we belong to - -/datum/data/vending_product/New(var/vending_machine, var/path, var/name = null, var/amount = 1, var/price = 0, var/color = null, var/category = CAT_NORMAL) - ..() - - src.product_path = path - - if(!name) - var/atom/tmp = path - src.product_name = initial(tmp.name) - else - src.product_name = name - - src.amount = amount - src.price = price - src.display_color = color - src.category = category - src.vending_machine = vending_machine - -/datum/data/vending_product/Destroy() - vending_machine = null - if(instances) - for(var/product in instances) - qdel(product) - instances.Cut() - . = ..() - -/datum/data/vending_product/proc/get_amount() - return instances ? instances.len : amount - -/datum/data/vending_product/proc/add_product(var/atom/movable/product) - if(product.type != product_path) - return 0 - init_products() - product.forceMove(vending_machine) - instances += product - -/datum/data/vending_product/proc/get_product(var/product_location) - if(!get_amount() || !product_location) - return - init_products() - - var/atom/movable/product = instances[instances.len] // Remove the last added product - instances -= product - product.forceMove(product_location) - return product - -/datum/data/vending_product/proc/init_products() - if(instances) - return - instances = list() - for(var/i = 1 to amount) - var/new_product = new product_path(vending_machine) - instances += new_product - /** * A vending machine */ @@ -89,7 +23,7 @@ var/vend_ready = 1 //Are we ready to vend?? Is it time?? var/vend_delay = 10 //How long does it take to vend? var/categories = CAT_NORMAL // Bitmask of cats we're currently showing - var/datum/data/vending_product/currently_vending = null // What we're requesting payment for right now + var/datum/stored_item/vending_product/currently_vending = null // What we're requesting payment for right now var/status_message = "" // Status screen messages like "insufficient funds", displayed in NanoUI var/status_error = 0 // Set to 1 if status_message is an error @@ -169,7 +103,7 @@ var/category = current_list[2] for(var/entry in current_list[1]) - var/datum/data/vending_product/product = new/datum/data/vending_product(src, entry) + var/datum/stored_item/vending_product/product = new/datum/stored_item/vending_product(src, entry) product.price = (entry in src.prices) ? src.prices[entry] : 0 product.amount = (current_list[1][entry]) ? current_list[1][entry] : 1 @@ -182,7 +116,7 @@ wires = null qdel(coin) coin = null - for(var/datum/data/vending_product/R in product_records) + for(var/datum/stored_item/vending_product/R in product_records) qdel(R) product_records = null return ..() @@ -276,10 +210,9 @@ return else - for(var/datum/data/vending_product/R in product_records) - if(istype(W, R.product_path)) + for(var/datum/stored_item/vending_product/R in product_records) + if(istype(W, R.item_path) && (W.name == R.item_name)) stock(W, R, user) - qdel(W) return ..() @@ -374,7 +307,7 @@ // create entry in the purchaser's account log var/datum/transaction/T = new() T.target_name = "[vendor_account.owner_name] (via [src.name])" - T.purpose = "Purchase of [currently_vending.product_name]" + T.purpose = "Purchase of [currently_vending.item_name]" if(currently_vending.price > 0) T.amount = "([currently_vending.price])" else @@ -400,7 +333,7 @@ var/datum/transaction/T = new() T.target_name = target - T.purpose = "Purchase of [currently_vending.product_name]" + T.purpose = "Purchase of [currently_vending.item_name]" T.amount = "[currently_vending.price]" T.source_terminal = src.name T.date = current_date_string @@ -432,7 +365,7 @@ var/list/data = list() if(currently_vending) data["mode"] = 1 - data["product"] = currently_vending.product_name + data["product"] = currently_vending.item_name data["price"] = currently_vending.price data["message_err"] = 0 data["message"] = src.status_message @@ -442,14 +375,14 @@ var/list/listed_products = list() for(var/key = 1 to src.product_records.len) - var/datum/data/vending_product/I = src.product_records[key] + var/datum/stored_item/vending_product/I = src.product_records[key] if(!(I.category & src.categories)) continue listed_products.Add(list(list( "key" = key, - "name" = I.product_name, + "name" = I.item_name, "price" = I.price, "color" = I.display_color, "amount" = I.get_amount()))) @@ -497,7 +430,7 @@ return var/key = text2num(href_list["vend"]) - var/datum/data/vending_product/R = product_records[key] + var/datum/stored_item/vending_product/R = product_records[key] // This should not happen unless the request from NanoUI was bad if(!(R.category & src.categories)) @@ -526,7 +459,7 @@ src.add_fingerprint(usr) nanomanager.update_uis(src) -/obj/machinery/vending/proc/vend(datum/data/vending_product/R, mob/user) +/obj/machinery/vending/proc/vend(datum/stored_item/vending_product/R, mob/user) if((!allowed(usr)) && !emagged && scan_id) //For SECURE VENDING MACHINES YEAH usr << "Access denied." //Unless emagged of course flick(src.icon_deny,src) @@ -581,7 +514,7 @@ * Checks if item is vendable in this machine should be performed before * calling. W is the item being inserted, R is the associated vending_product entry. */ -/obj/machinery/vending/proc/stock(obj/item/weapon/W, var/datum/data/vending_product/R, var/mob/user) +/obj/machinery/vending/proc/stock(obj/item/weapon/W, var/datum/stored_item/vending_product/R, var/mob/user) if(!user.unEquip(W)) return @@ -635,7 +568,7 @@ //Oh no we're malfunctioning! Dump out some product and break. /obj/machinery/vending/proc/malfunction() - for(var/datum/data/vending_product/R in src.product_records) + for(var/datum/stored_item/vending_product/R in src.product_records) while(R.get_amount()>0) R.get_product(loc) break @@ -651,7 +584,7 @@ if(!target) return 0 - for(var/datum/data/vending_product/R in src.product_records) + for(var/datum/stored_item/vending_product/R in src.product_records) throw_item = R.get_product(loc) if (!throw_item) continue @@ -697,37 +630,45 @@ desc = "A technological marvel, supposedly able to mix just the mixture you'd like to drink the moment you ask for one." icon_state = "boozeomat" icon_deny = "boozeomat-deny" - products = list(/obj/item/weapon/reagent_containers/food/drinks/bottle/gin = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/tequilla = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/vodka = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/vermouth = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/rum = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/wine = 5, + products = list(/obj/item/weapon/reagent_containers/food/drinks/glass2/square = 10, + /obj/item/weapon/reagent_containers/food/drinks/glass2/rocks = 10, + /obj/item/weapon/reagent_containers/food/drinks/glass2/shake = 10, + /obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail = 10, + /obj/item/weapon/reagent_containers/food/drinks/glass2/shot = 10, + /obj/item/weapon/reagent_containers/food/drinks/glass2/pint = 10, + /obj/item/weapon/reagent_containers/food/drinks/glass2/mug = 10, + /obj/item/weapon/reagent_containers/food/drinks/glass2/wine = 10, + /obj/item/weapon/reagent_containers/food/drinks/bottle/gin = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/bluecuracao = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/cognac = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/grenadine = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/kahlua = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer = 15, + /obj/item/weapon/reagent_containers/food/drinks/bottle/melonliquor = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/rum = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/specialwhiskey = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/tequilla = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/vermouth = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/vodka = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/wine = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/small/ale = 15, + /obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer = 15, /obj/item/weapon/reagent_containers/food/drinks/bottle/orangejuice = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/tomatojuice = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/limejuice = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/cream = 5, - /obj/item/weapon/reagent_containers/food/drinks/cans/tonic = 15, /obj/item/weapon/reagent_containers/food/drinks/bottle/cola = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/space_up = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/space_mountain_wind = 5, /obj/item/weapon/reagent_containers/food/drinks/cans/sodawater = 15, + /obj/item/weapon/reagent_containers/food/drinks/cans/tonic = 15, /obj/item/weapon/reagent_containers/food/drinks/flask/barflask = 5, /obj/item/weapon/reagent_containers/food/drinks/flask/vacuumflask = 5, - /obj/item/weapon/reagent_containers/food/drinks/drinkingglass = 30, - /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass = 30, /obj/item/weapon/reagent_containers/food/drinks/ice = 10, - /obj/item/weapon/reagent_containers/food/drinks/bottle/melonliquor = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/bluecuracao = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/grenadine = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/specialwhiskey = 5, - /obj/item/weapon/reagent_containers/food/drinks/tea = 15) + /obj/item/weapon/reagent_containers/food/drinks/tea = 15, + /obj/item/weapon/glass_extra/stick = 30, + /obj/item/weapon/glass_extra/straw = 30) contraband = list() vend_delay = 15 idle_power_usage = 211 //refrigerator - believe it or not, this is actually the average power consumption of a refrigerated vending machine according to NRCan. @@ -790,6 +731,30 @@ /obj/item/weapon/reagent_containers/food/drinks/cans/iced_tea = 1,/obj/item/weapon/reagent_containers/food/drinks/cans/grape_juice = 1) idle_power_usage = 211 //refrigerator - believe it or not, this is actually the average power consumption of a refrigerated vending machine according to NRCan. +/obj/machinery/vending/fitness + name = "SweatMAX" + desc = "Fueled by your inner inadequacy!" + icon_state = "fitness" + products = list(/obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton = 8, + /obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton/chocolate = 8, + /obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask/proteinshake = 8, + /obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask = 8, + /obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar = 8, + /obj/item/weapon/reagent_containers/food/snacks/liquidfood = 8, + /obj/item/weapon/reagent_containers/pill/diet = 8, + /obj/item/weapon/towel/random = 8) + + prices = list(/obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton = 3, + /obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton/chocolate = 3, + /obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask/proteinshake = 20, + /obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask = 5, + /obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar = 5, + /obj/item/weapon/reagent_containers/food/snacks/liquidfood = 5, + /obj/item/weapon/reagent_containers/pill/diet = 25, + /obj/item/weapon/towel/random = 40) + + contraband = list(/obj/item/weapon/reagent_containers/syringe/steroid = 4) + //This one's from bay12 /obj/machinery/vending/cart name = "PTech" @@ -930,7 +895,7 @@ for(var/entry in current_list[1]) var/obj/item/seeds/S = new entry(src) var/name = S.name - var/datum/data/vending_product/product = new/datum/data/vending_product(src, entry, name) + var/datum/stored_item/vending_product/product = new/datum/stored_item/vending_product(src, entry, name) product.price = (entry in src.prices) ? src.prices[entry] : 0 product.amount = (current_list[1][entry]) ? current_list[1][entry] : 1 @@ -959,7 +924,11 @@ /obj/item/weapon/material/kitchen/utensil/knife = 6, /obj/item/weapon/material/kitchen/utensil/spoon = 6, /obj/item/weapon/material/knife = 3, - /obj/item/weapon/reagent_containers/food/drinks/drinkingglass = 8, + /obj/item/weapon/material/kitchen/rollingpin = 2, + /obj/item/weapon/reagent_containers/food/drinks/glass2/square = 8, + /obj/item/weapon/reagent_containers/food/drinks/glass2/shake = 8, + /obj/item/weapon/glass_extra/stick = 15, + /obj/item/weapon/glass_extra/straw = 15, /obj/item/clothing/suit/chef/classic = 2, /obj/item/weapon/storage/toolbox/lunchbox = 3, /obj/item/weapon/storage/toolbox/lunchbox/heart = 3, @@ -971,16 +940,15 @@ /obj/item/weapon/storage/toolbox/lunchbox/syndicate = 3) - contraband = list(/obj/item/weapon/material/kitchen/rollingpin = 2, - /obj/item/weapon/material/knife/butch = 2) + contraband = list(/obj/item/weapon/material/knife/butch = 2) /obj/machinery/vending/sovietsoda name = "BODA" desc = "An old sweet water vending machine,how did this end up here?" icon_state = "sovietsoda" product_ads = "For Tsar and Country.;Have you fulfilled your nutrition quota today?;Very nice!;We are simple people, for this is all we eat.;If there is a person, there is a problem. If there is no person, then there is no problem." - products = list(/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/soda = 30) - contraband = list(/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/cola = 20) + products = list(/obj/item/weapon/reagent_containers/food/drinks/bottle/space_up = 30) // TODO Russian soda can + contraband = list(/obj/item/weapon/reagent_containers/food/drinks/bottle/cola = 20) // TODO Russian cola can idle_power_usage = 211 //refrigerator - believe it or not, this is actually the average power consumption of a refrigerated vending machine according to NRCan. /obj/machinery/vending/tool @@ -1046,25 +1014,3 @@ /obj/item/weapon/scalpel = 2,/obj/item/weapon/circular_saw = 2,/obj/item/weapon/tank/anesthetic = 2,/obj/item/clothing/mask/breath/medical = 5, /obj/item/weapon/screwdriver = 5,/obj/item/weapon/crowbar = 5) //everything after the power cell had no amounts, I improvised. -Sayu - -/obj/machinery/vending/fitness - name = "SweatMAX" - desc = "Fueled by your inner inadequacy!" - icon_state = "fitness" - products = list(/obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton = 8, - /obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton/chocolate = 8, - /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake = 8, - /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask = 8, - /obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar = 8, - /obj/item/weapon/reagent_containers/food/snacks/liquidfood = 8, - /obj/item/weapon/reagent_containers/pill/diet = 8) - - prices = list(/obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton = 3, - /obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton/chocolate = 3, - /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake = 20, - /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask = 5, - /obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar = 5, - /obj/item/weapon/reagent_containers/food/snacks/liquidfood = 5, - /obj/item/weapon/reagent_containers/pill/diet = 25) - - contraband = list(/obj/item/weapon/reagent_containers/syringe/steroid = 4) diff --git a/code/game/mecha/mech_prosthetics.dm b/code/game/mecha/mech_prosthetics.dm index e24a520396..588fd402f3 100644 --- a/code/game/mecha/mech_prosthetics.dm +++ b/code/game/mecha/mech_prosthetics.dm @@ -183,9 +183,9 @@ if(materials[S.material.name] + amnt <= res_max_amount) if(S && S.amount >= 1) var/count = 0 - overlays += "pros-load-metal" + overlays += "fab-load-metal" spawn(10) - overlays -= "pros-load-metal" + overlays -= "fab-load-metal" while(materials[S.material.name] + amnt <= res_max_amount && S.amount >= 1) materials[S.material.name] += amnt S.use(1) diff --git a/code/game/objects/items/devices/communicator/communicator.dm b/code/game/objects/items/devices/communicator/communicator.dm index d20fe089d6..97e856e27a 100644 --- a/code/game/objects/items/devices/communicator/communicator.dm +++ b/code/game/objects/items/devices/communicator/communicator.dm @@ -17,6 +17,10 @@ var/global/list/obj/item/device/communicator/all_communicators = list() origin_tech = list(TECH_ENGINEERING = 2, TECH_MAGNET = 2, TECH_BLUESPACE = 2, TECH_DATA = 2) matter = list(DEFAULT_WALL_MATERIAL = 30,"glass" = 10) + var/video_range = 4 + var/obj/machinery/camera/communicator/video_source // Their camera + var/obj/machinery/camera/communicator/camera // Our camera + var/list/voice_mobs = list() var/list/voice_requests = list() var/list/voice_invites = list() @@ -61,6 +65,9 @@ var/global/list/obj/item/device/communicator/all_communicators = list() all_communicators = sortAtom(all_communicators) node = get_exonet_node() processing_objects |= src + camera = new(src) + camera.name = "[src] #[rand(100,999)]" + camera.c_tag = camera.name //This is a pretty terrible way of doing this. spawn(5 SECONDS) //Wait for our mob to finish spawning. if(ismob(loc)) @@ -72,6 +79,14 @@ var/global/list/obj/item/device/communicator/all_communicators = list() register_device(S.loc) initialize_exonet(S.loc) +// Proc: examine() +// Parameters: user - the user doing the examining +// Description: Allows the user to click a link when examining to look at video if one is going. +/obj/item/device/communicator/examine(mob/user) + . = ..(user, 1) + if(. && video_source) + user << "It looks like it's on a video call: \[view\]" + // Proc: initialize_exonet() // Parameters: 1 (user - the person the communicator belongs to) // Description: Sets up the exonet datum, gives the device an address, and then gets a node reference. Afterwards, populates the device @@ -255,27 +270,27 @@ var/global/list/obj/item/device/communicator/all_communicators = list() //Now for ghosts who we pretend have communicators. for(var/mob/observer/dead/O in known_devices) if(O.client && O.client.prefs.communicator_visibility == 1 && O.exonet) - communicators[++communicators.len] = list("name" = sanitize("[O.client.prefs.real_name]'s communicator"), "address" = O.exonet.address) + communicators[++communicators.len] = list("name" = sanitize("[O.client.prefs.real_name]'s communicator"), "address" = O.exonet.address, "ref" = "\ref[O]") //Lists all the other communicators that we invited. for(var/obj/item/device/communicator/comm in voice_invites) if(comm.exonet) - invites[++invites.len] = list("name" = sanitize(comm.name), "address" = comm.exonet.address) + invites[++invites.len] = list("name" = sanitize(comm.name), "address" = comm.exonet.address, "ref" = "\ref[comm]") //Ghosts we invited. for(var/mob/observer/dead/O in voice_invites) if(O.exonet && O.client) - invites[++invites.len] = list("name" = sanitize("[O.client.prefs.real_name]'s communicator"), "address" = O.exonet.address) + invites[++invites.len] = list("name" = sanitize("[O.client.prefs.real_name]'s communicator"), "address" = O.exonet.address, "ref" = "\ref[O]") //Communicators that want to talk to us. for(var/obj/item/device/communicator/comm in voice_requests) if(comm.exonet) - requests[++requests.len] = list("name" = sanitize(comm.name), "address" = comm.exonet.address) + requests[++requests.len] = list("name" = sanitize(comm.name), "address" = comm.exonet.address, "ref" = "\ref[comm]") //Ghosts that want to talk to us. for(var/mob/observer/dead/O in voice_requests) if(O.exonet && O.client) - requests[++requests.len] = list("name" = sanitize("[O.client.prefs.real_name]'s communicator"), "address" = O.exonet.address) + requests[++requests.len] = list("name" = sanitize("[O.client.prefs.real_name]'s communicator"), "address" = O.exonet.address, "ref" = "\ref[O]") //Now for all the voice mobs inside the communicator. for(var/mob/living/voice/voice in contents) @@ -283,12 +298,12 @@ var/global/list/obj/item/device/communicator/all_communicators = list() //Finally, all the communicators linked to this one. for(var/obj/item/device/communicator/comm in communicating) - connected_communicators[++connected_communicators.len] = list("name" = sanitize(comm.name), "true_name" = sanitize(comm.name)) + connected_communicators[++connected_communicators.len] = list("name" = sanitize(comm.name), "true_name" = sanitize(comm.name), "ref" = "\ref[comm]") //Devices that have been messaged or recieved messages from. for(var/obj/item/device/communicator/comm in im_contacts) if(comm.exonet) - im_contacts_ui[++im_contacts_ui.len] = list("name" = sanitize(comm.name), "address" = comm.exonet.address) + im_contacts_ui[++im_contacts_ui.len] = list("name" = sanitize(comm.name), "address" = comm.exonet.address, "ref" = "\ref[comm]") //Actual messages. for(var/I in im_list) @@ -311,6 +326,7 @@ var/global/list/obj/item/device/communicator/all_communicators = list() data["requestsReceived"] = requests data["voice_mobs"] = voices data["communicating"] = connected_communicators + data["video_comm"] = video_source ? "\ref[video_source.loc]" : null data["imContacts"] = im_contacts_ui data["imList"] = im_list_ui data["time"] = worldtime2text() @@ -323,7 +339,7 @@ var/global/list/obj/item/device/communicator/all_communicators = list() if(!ui) // the ui does not exist, so we'll create a new() one // for a list of parameters and their descriptions see the code docs in \code\modules\nano\nanoui.dm - ui = new(user, src, ui_key, "communicator.tmpl", "Communicator", 450, 700) + ui = new(user, src, ui_key, "communicator.tmpl", "Communicator", 475, 700) // when the ui is first opened this is the data it will use ui.set_initial_data(data) // open the new ui window @@ -342,9 +358,20 @@ var/global/list/obj/item/device/communicator/all_communicators = list() if(new_name) owner = new_name name = "[owner]'s [initial(name)]" + if(camera) + camera.name = name + camera.c_tag = name if(href_list["toggle_visibility"]) - network_visibility = !network_visibility + switch(network_visibility) + if(1) //Visible, becoming invisbile + network_visibility = 0 + if(camera) + camera.remove_network(NETWORK_COMMUNICATORS) + if(0) //Invisible, becoming visible + network_visibility = 1 + if(camera) + camera.add_network(NETWORK_COMMUNICATORS) if(href_list["toggle_ringer"]) ringer = !ringer @@ -369,6 +396,12 @@ var/global/list/obj/item/device/communicator/all_communicators = list() var/their_address = href_list["dial"] exonet.send_message(their_address, "voice") + if(href_list["decline"]) + var/ref_to_remove = href_list["decline"] + var/atom/decline = locate(ref_to_remove) + if(decline) + del_request(decline) + if(href_list["message"]) if(!get_connection_to_tcomms()) usr << "Error: Cannot connect to Exonet node." @@ -383,10 +416,24 @@ var/global/list/obj/item/device/communicator/all_communicators = list() var/name_to_disconnect = href_list["disconnect"] for(var/mob/living/voice/V in contents) if(name_to_disconnect == V.name) - close_connection(usr, V, "[usr] hung up.") + close_connection(usr, V, "[usr] hung up") for(var/obj/item/device/communicator/comm in communicating) if(name_to_disconnect == comm.name) - close_connection(usr, comm, "[usr] hung up.") + close_connection(usr, comm, "[usr] hung up") + + if(href_list["startvideo"]) + var/ref_to_video = href_list["startvideo"] + var/obj/item/device/communicator/comm = locate(ref_to_video) + if(comm) + connect_video(usr, comm) + + if(href_list["endvideo"]) + if(video_source) + end_video() + + if(href_list["watchvideo"]) + if(video_source) + watch_video(usr,video_source.loc) if(href_list["copy"]) target_address = href_list["copy"] @@ -396,9 +443,9 @@ var/global/list/obj/item/device/communicator/all_communicators = list() if(href_list["hang_up"]) for(var/mob/living/voice/V in contents) - close_connection(usr, V, "[usr] hung up.") + close_connection(usr, V, "[usr] hung up") for(var/obj/item/device/communicator/comm in communicating) - close_connection(usr, comm, "[usr] hung up.") + close_connection(usr, comm, "[usr] hung up") if(href_list["switch_tab"]) selected_tab = href_list["switch_tab"] @@ -473,6 +520,28 @@ var/global/list/obj/item/device/communicator/all_communicators = list() owner = user.name name = "[owner]'s [initial(name)]" + if(camera) + camera.name = name + camera.c_tag = name + +// Proc: add_communicating() +// Parameters: 1 (comm - the communicator to add to communicating) +// Description: Used when this communicator gets a new communicator to relay say/me messages to +/obj/item/device/communicator/proc/add_communicating(obj/item/device/communicator/comm) + if(!comm || !istype(comm)) return + + communicating |= comm + listening_objects |= src + update_icon() + +// Proc: del_communicating() +// Parameters: 1 (comm - the communicator to remove from communicating) +// Description: Used when this communicator is being asked to stop relaying say/me messages to another +/obj/item/device/communicator/proc/del_communicating(obj/item/device/communicator/comm) + if(!comm || !istype(comm)) return + + communicating.Remove(comm) + update_icon() // Proc: open_connection() // Parameters: 2 (user - the person who initiated the connecting being opened, candidate - the communicator or observer that will connect to the device) @@ -507,8 +576,8 @@ var/global/list/obj/item/device/communicator/all_communicators = list() comm.visible_message("\icon[src] Connection to [src] at [exonet.address] established.") sleep(20) - communicating |= comm - comm.communicating |= src + src.add_communicating(comm) + comm.add_communicating(src) // Proc: open_connection_to_ghost() // Parameters: 2 (user - the person who initiated this, candidate - the ghost that will be turned into a voice mob) @@ -530,6 +599,7 @@ var/global/list/obj/item/device/communicator/all_communicators = list() new_voice.mind = candidate.mind //Transfer the mind, if any. new_voice.ckey = candidate.ckey //Finally, bring the client over. voice_mobs.Add(new_voice) + listening_objects |= src var/obj/screen/blackness = new() //Makes a black screen, so the candidate can't see what's going on before actually 'connecting' to the communicator. blackness.screen_loc = ui_entire_screen @@ -580,15 +650,22 @@ var/global/list/obj/item/device/communicator/all_communicators = list() visible_message("\icon[src] [reason].") voice_mobs.Remove(voice) qdel(voice) + update_icon() for(var/obj/item/device/communicator/comm in communicating) //Now we handle real communicators. if(target && comm != target) continue + src.del_communicating(comm) + comm.del_communicating(src) comm.visible_message("\icon[src] [reason].") visible_message("\icon[src] [reason].") - comm.communicating.Remove(src) - communicating.Remove(comm) - update_icon() + if(comm.camera && video_source == comm.camera) //We hung up on the person on video + end_video() + if(camera && comm.video_source == camera) //We hung up on them while they were watching us + comm.end_video() + + if(voice_mobs.len == 0 && communicating.len == 0) + listening_objects.Remove(src) // Proc: request() // Parameters: 1 (candidate - the ghost or communicator wanting to call the device) @@ -625,6 +702,29 @@ var/global/list/obj/item/device/communicator/all_communicators = list() if(L) L << "\icon[src] Communications request from [who]." +// Proc: del_request() +// Parameters: 1 (candidate - the ghost or communicator to be declined) +// Description: Declines a request and cleans up both ends +/obj/item/device/communicator/proc/del_request(var/atom/candidate) + if(!(candidate in voice_requests)) + return + + if(isobserver(candidate)) + candidate << "Your communicator call request was declined." + else if(istype(candidate, /obj/item/device/communicator)) + var/obj/item/device/communicator/comm = candidate + comm.voice_invites -= src + + voice_requests -= candidate + + //Search for holder of our device. + var/mob/living/us = null + if(loc && isliving(loc)) + us = loc + + if(us) + us << "\icon[src] Declined request." + // Proc: request_im() // Parameters: 3 (candidate - the communicator wanting to message the device, origin_address - the address of the sender, text - the message) // Description: Response to a communicator trying to message the device. @@ -675,6 +775,9 @@ var/global/list/obj/item/device/communicator/all_communicators = list() voice_invites.Cut() all_communicators -= src processing_objects -= src + listening_objects.Remove(src) + qdel(camera) + camera = null if(exonet) exonet.remove_address() exonet = null @@ -684,7 +787,11 @@ var/global/list/obj/item/device/communicator/all_communicators = list() // Parameters: None // Description: Self explanatory /obj/item/device/communicator/update_icon() - if(voice_mobs.len > 0) + if(video_source) + icon_state = "communicator-video" + return + + if(voice_mobs.len || communicating.len) icon_state = "communicator-active" return @@ -700,10 +807,18 @@ var/global/list/obj/item/device/communicator/all_communicators = list() /obj/item/device/communicator/see_emote(mob/living/M, text) var/rendered = "\icon[src] [text]" for(var/obj/item/device/communicator/comm in communicating) - for(var/mob/mob in viewers(get_turf(comm))) //We can't use visible_message(), or else we will get an infinite loop if two communicators hear each other. - mob.show_message(rendered) - for(var/mob/living/voice/V in comm.contents) - V.show_message(rendered) + var/turf/T = get_turf(comm) + if(!T) return + var/list/in_range = get_mobs_and_objs_in_view_fast(T,world.view,0) //Range of 3 since it's a tiny video display + var/list/mobs_to_relay = in_range["mobs"] + + for(var/mob/mob in mobs_to_relay) //We can't use visible_message(), or else we will get an infinite loop if two communicators hear each other. + var/dst = get_dist(get_turf(mob),get_turf(comm)) + if(dst <= video_range) + mob.show_message(rendered) + else + mob << "You can barely see some movement on \the [src]'s display." + ..() // Proc: hear_talk() @@ -712,9 +827,12 @@ var/global/list/obj/item/device/communicator/all_communicators = list() // Description: Relays the speech to all linked communicators. /obj/item/device/communicator/hear_talk(mob/living/M, text, verb, datum/language/speaking) for(var/obj/item/device/communicator/comm in communicating) - var/list/mobs_to_relay = list() - mobs_to_relay |= viewers(get_turf(comm)) - mobs_to_relay |= comm.contents //Needed so ghost-callers can see speech. + + var/turf/T = get_turf(comm) + if(!T) return + var/list/in_range = get_mobs_and_objs_in_view_fast(T,world.view,0) + var/list/mobs_to_relay = in_range["mobs"] + for(var/mob/mob in mobs_to_relay) //Can whoever is hearing us understand? if(!mob.say_understands(M, speaking)) @@ -736,7 +854,12 @@ var/global/list/obj/item/device/communicator/all_communicators = list() /obj/item/device/communicator/show_message(msg, type, alt, alt_type) var/rendered = "\icon[src] [msg]" for(var/obj/item/device/communicator/comm in communicating) - for(var/mob/mob in hearers(get_turf(comm))) //Ditto for audible messages. + var/turf/T = get_turf(comm) + if(!T) return + var/list/in_range = get_mobs_and_objs_in_view_fast(T,world.view,0) + var/list/mobs_to_relay = in_range["mobs"] + + for(var/mob/mob in mobs_to_relay) mob.show_message(rendered) ..() @@ -792,7 +915,71 @@ var/global/list/obj/item/device/communicator/all_communicators = list() src << "A communications request has been sent to [chosen_communicator]. Now you need to wait until someone answers." -/obj/item/device/communicator/integrated //For synths who have no hands. +// Proc: connect_video() +// Parameters: user - the mob doing the viewing of video, comm - the communicator at the far end +// Description: Sets up a videocall and puts the first view into it using watch_video, and updates the icon +/obj/item/device/communicator/proc/connect_video(mob/user,obj/item/device/communicator/comm) + if((!user) || (!comm) || user.stat) return //KO or dead, or already in a video + + if(video_source) //Already in a video + user << "You are already connected to a video call!" + + if(user.blinded) //User is blinded + user << "You cannot see well enough to do that!" + + if(!(src in comm.communicating) || !comm.camera) //You called someone with a broken communicator or one that's fake or yourself or something + user << "\icon[src]ERROR: Video failed. Either bandwidth is too low, or the other communicator is malfunctioning." + + user << "\icon[src] Attempting to start video over existing call." + sleep(30) + user << "\icon[src] Please wait..." + + video_source = comm.camera + comm.visible_message("\icon[src] New video connection from [comm].") + watch_video(user) + update_icon() + +// Proc: watch_video() +// Parameters: user - the mob doing the viewing of video +// Description: Moves a mob's eye to the far end for the duration of viewing the far end +/obj/item/device/communicator/proc/watch_video(mob/user) + if(!Adjacent(user) || !video_source) return + user.set_machine(video_source) + user.reset_view(video_source) + user << "Now viewing video session. To leave camera view: OOC -> Cancel Camera View" + spawn(0) + while(user.machine == video_source && Adjacent(user)) + var/turf/T = get_turf(video_source) + if(!T || !is_on_same_plane_or_station(T.z, user.z) || !video_source.can_use()) + user << "The screen bursts into static, then goes black." + video_cleanup(user) + return + sleep(10) + + video_cleanup(user) + +// Proc: video_cleanup() +// Parameters: user - the mob who doesn't want to see video anymore +// Description: Cleans up mob's client when they stop watching a video +/obj/item/device/communicator/proc/video_cleanup(mob/user) + if(!user) return + + user.reset_view(null) + user.unset_machine() + +// Proc: end_video() +// Parameters: reason - the text reason to print for why it ended +// Description: Ends the video call by clearing video_source +/obj/item/device/communicator/proc/end_video(var/reason) + video_source = null + + . = "\icon[src] [reason ? reason : "Video session ended"]." + + visible_message(.) + update_icon() + +//For synths who have no hands. +/obj/item/device/communicator/integrated name = "integrated communicator" desc = "A circuit used for long-range communications, able to be integrated into a system." @@ -822,4 +1009,13 @@ var/global/list/obj/item/device/communicator/all_communicators = list() usr << "You can't do that because you are dead!" return - src.attack_self(usr) \ No newline at end of file + src.attack_self(usr) + +// A camera preset for spawning in the communicator +/obj/machinery/camera/communicator + network = list(NETWORK_COMMUNICATORS) + +/obj/machinery/camera/communicator/New() + ..() + client_huds |= global_hud.whitense + client_huds |= global_hud.darkMask \ No newline at end of file diff --git a/code/game/objects/items/devices/suit_cooling.dm b/code/game/objects/items/devices/suit_cooling.dm index c8b66fe38f..550ea04380 100644 --- a/code/game/objects/items/devices/suit_cooling.dm +++ b/code/game/objects/items/devices/suit_cooling.dm @@ -66,7 +66,7 @@ if (ishuman(loc)) var/mob/living/carbon/human/H = loc if(istype(H.loc, /obj/mecha)) - var/obj/mecha/M = loc + var/obj/mecha/M = H.loc return M.return_temperature() else if(istype(H.loc, /obj/machinery/atmospherics/unary/cryo_cell)) return H.loc:air_contents.temperature diff --git a/code/game/objects/items/weapons/RSF.dm b/code/game/objects/items/weapons/RSF.dm index b96d53c2a8..6384508c04 100644 --- a/code/game/objects/items/weapons/RSF.dm +++ b/code/game/objects/items/weapons/RSF.dm @@ -82,7 +82,7 @@ RSF product = new /obj/item/clothing/mask/smokable/cigarette() used_energy = 10 if(2) - product = new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass() + product = new /obj/item/weapon/reagent_containers/food/drinks/glass2() used_energy = 50 if(3) product = new /obj/item/weapon/paper() diff --git a/code/game/objects/items/weapons/cards_ids.dm b/code/game/objects/items/weapons/cards_ids.dm index 8883fd06ab..3898b48d47 100644 --- a/code/game/objects/items/weapons/cards_ids.dm +++ b/code/game/objects/items/weapons/cards_ids.dm @@ -15,7 +15,8 @@ name = "card" desc = "Does card things." icon = 'icons/obj/card.dmi' - w_class = 1.0 + w_class = 1 + slot_flags = SLOT_EARS var/associated_account_number = 0 var/list/files = list( ) @@ -117,6 +118,9 @@ var/icon/front var/icon/side + var/primary_color = rgb(0,0,0) // Obtained by eyedroppering the stripe in the middle of the card + var/secondary_color = rgb(0,0,0) // Likewise for the oval in the top-left corner + //alt titles are handled a bit weirdly in order to unobtrusively integrate into existing ID system var/assignment = null //can be alt title or the actual job var/rank = null //actual job @@ -262,3 +266,88 @@ /obj/item/weapon/card/id/centcom/ERT/New() ..() access |= get_all_station_access() + +// Department-flavor IDs +/obj/item/weapon/card/id/medical + name = "identification card" + desc = "A card issued to station medical staff." + icon_state = "med" + primary_color = rgb(189,237,237) + secondary_color = rgb(223,255,255) + +/obj/item/weapon/card/id/medical/head + name = "identification card" + desc = "A card which represents care and compassion." + icon_state = "medGold" + primary_color = rgb(189,237,237) + secondary_color = rgb(255,223,127) + +/obj/item/weapon/card/id/security + name = "identification card" + desc = "A card issued to station security staff." + icon_state = "sec" + primary_color = rgb(189,47,0) + secondary_color = rgb(223,127,95) + +/obj/item/weapon/card/id/security/head + name = "identification card" + desc = "A card which represents honor and protection." + icon_state = "secGold" + primary_color = rgb(189,47,0) + secondary_color = rgb(255,223,127) + +/obj/item/weapon/card/id/engineering + name = "identification card" + desc = "A card issued to station engineering staff." + icon_state = "eng" + primary_color = rgb(189,94,0) + secondary_color = rgb(223,159,95) + +/obj/item/weapon/card/id/engineering/head + name = "identification card" + desc = "A card which represents creativity and ingenuity." + icon_state = "engGold" + primary_color = rgb(189,94,0) + secondary_color = rgb(255,223,127) + +/obj/item/weapon/card/id/science + name = "identification card" + desc = "A card issued to station science staff." + icon_state = "sci" + primary_color = rgb(142,47,142) + secondary_color = rgb(191,127,191) + +/obj/item/weapon/card/id/science/head + name = "identification card" + desc = "A card which represents knowledge and reasoning." + icon_state = "sciGold" + primary_color = rgb(142,47,142) + secondary_color = rgb(255,223,127) + +/obj/item/weapon/card/id/cargo + name = "identification card" + desc = "A card issued to station cargo staff." + icon_state = "cargo" + primary_color = rgb(142,94,0) + secondary_color = rgb(191,159,95) + +/obj/item/weapon/card/id/cargo/head + name = "identification card" + desc = "A card which represents service and planning." + icon_state = "cargoGold" + primary_color = rgb(142,94,0) + secondary_color = rgb(255,223,127) + +/obj/item/weapon/card/id/civilian + name = "identification card" + desc = "A card issued to station civilian staff." + icon_state = "civ" + primary_color = rgb(0,94,142) + secondary_color = rgb(95,159,191) + +/obj/item/weapon/card/id/civilian/head //This is not the HoP. There's no position that uses this right now. + name = "identification card" + desc = "A card which represents common sense and responsibility." + icon_state = "civGold" + primary_color = rgb(0,94,142) + secondary_color = rgb(255,223,127) \ No newline at end of file diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm index 9f6992d404..a1b6e17b5a 100644 --- a/code/game/objects/items/weapons/storage/boxes.dm +++ b/code/game/objects/items/weapons/storage/boxes.dm @@ -312,15 +312,6 @@ for(var/i = 1 to 7) new /obj/item/clothing/glasses/regular(src) -/obj/item/weapon/storage/box/drinkingglasses - name = "box of drinking glasses" - desc = "It has a picture of drinking glasses on it." - -/obj/item/weapon/storage/box/drinkingglasses/New() - ..() - for(var/i = 1 to 7) - new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src) - /obj/item/weapon/storage/box/cdeathalarm_kit name = "death alarm kit" desc = "Box of stuff used to implant death alarms." @@ -570,4 +561,4 @@ /obj/item/weapon/storage/box/ambrosiadeus/New() ..() for(var/i = 1 to 7) - new /obj/item/seeds/ambrosiadeusseed(src) \ No newline at end of file + new /obj/item/seeds/ambrosiadeusseed(src) diff --git a/code/game/objects/items/weapons/storage/wallets.dm b/code/game/objects/items/weapons/storage/wallets.dm index 81cee4552a..9cbda62db7 100644 --- a/code/game/objects/items/weapons/storage/wallets.dm +++ b/code/game/objects/items/weapons/storage/wallets.dm @@ -2,7 +2,8 @@ name = "wallet" desc = "It can hold a few small and personal things." storage_slots = 10 - icon_state = "wallet" + icon = 'icons/obj/wallet.dmi' + icon_state = "wallet-orange" w_class = 2 can_hold = list( /obj/item/weapon/spacecash, @@ -27,7 +28,6 @@ var/obj/item/weapon/card/id/front_id = null - /obj/item/weapon/storage/wallet/remove_from_storage(obj/item/W as obj, atom/new_location) . = ..(W, new_location) if(.) @@ -45,23 +45,14 @@ update_icon() /obj/item/weapon/storage/wallet/update_icon() - + overlays.Cut() if(front_id) - switch(front_id.icon_state) - if("id") - icon_state = "walletid" - return - if("silver") - icon_state = "walletid_silver" - return - if("gold") - icon_state = "walletid_gold" - return - if("centcom") - icon_state = "walletid_centcom" - return - icon_state = "wallet" - + var/tiny_state = "id-generic" + if("id-"+front_id.icon_state in icon_states(icon)) + tiny_state = "id-"+front_id.icon_state + var/image/tiny_image = new/image(icon, icon_state = tiny_state) + tiny_image.appearance_flags = RESET_COLOR + overlays += tiny_image /obj/item/weapon/storage/wallet/GetID() return front_id @@ -73,7 +64,6 @@ else return ..() - /obj/item/weapon/storage/wallet/random/New() ..() var/amount = rand(50, 100) + rand(50, 100) // Triangular distribution from 100 to 200 @@ -85,4 +75,40 @@ while(amount >= i) amount -= i SC.adjust_worth(i, 0) - SC.update_icon() \ No newline at end of file + SC.update_icon() + +/obj/item/weapon/storage/wallet/poly + name = "polychromic wallet" + desc = "You can recolor it! Fancy! The future is NOW!" + icon_state = "wallet-white" + +/obj/item/weapon/storage/wallet/poly/New() + ..() + verbs |= /obj/item/weapon/storage/wallet/poly/proc/change_color + color = "#"+get_random_colour() + update_icon() + +/obj/item/weapon/storage/wallet/poly/proc/change_color() + set name = "Change Wallet Color" + set category = "Object" + set desc = "Change the color of the wallet." + set src in usr + + if(usr.stat || usr.restrained() || usr.incapacitated()) + return + + var/new_color = input(usr, "Pick a new color", "Wallet Color", color) as color|null + + if(new_color && (new_color != color)) + color = new_color + +/obj/item/weapon/storage/wallet/poly/emp_act() + var/original_state = icon_state + icon_state = "wallet-emp" + update_icon() + + spawn(200) + if(src) + icon_state = original_state + update_icon() + \ No newline at end of file diff --git a/code/game/objects/items/weapons/towels.dm b/code/game/objects/items/weapons/towels.dm index 94c266142e..d51cc8d1d0 100644 --- a/code/game/objects/items/weapons/towels.dm +++ b/code/game/objects/items/weapons/towels.dm @@ -12,3 +12,7 @@ /obj/item/weapon/towel/attack_self(mob/living/user as mob) user.visible_message(text("[] uses [] to towel themselves off.", user, src)) playsound(user, 'sound/weapons/towelwipe.ogg', 25, 1) + +/obj/item/weapon/towel/random/New() + ..() + color = "#"+get_random_colour() \ No newline at end of file diff --git a/code/game/verbs/ooc.dm b/code/game/verbs/ooc.dm index fd1a6a6801..ffa2e07804 100644 --- a/code/game/verbs/ooc.dm +++ b/code/game/verbs/ooc.dm @@ -109,7 +109,13 @@ log_ooc("(LOCAL) [mob.name]/[key] : [msg]") var/mob/source = mob.get_looc_source() - var/list/heard = get_mobs_or_objects_in_view(7, get_turf(source), 1, 0) + var/turf/T = get_turf(source) + if(!T) return + var/list/in_range = get_mobs_and_objs_in_view_fast(T,world.view,0) + var/list/m_viewers = in_range["mobs"] + + var/list/receivers = list() // Clients, not mobs. + var/list/r_receivers = list() var/display_name = key if(holder && holder.fakekey) @@ -117,34 +123,33 @@ if(mob.stat != DEAD) display_name = mob.name - for(var/client/target in clients) - if(target.is_preference_enabled(/datum/client_preference/show_looc)) - var/prefix = "" - var/admin_stuff = "" - var/send = 0 + // Everyone in normal viewing range of the LOOC + for(var/mob/viewer in m_viewers) + if(viewer.client && viewer.client.is_preference_enabled(/datum/client_preference/show_looc)) + receivers |= viewer.client + else if(istype(viewer,/mob/observer/eye)) // For AI eyes and the like + var/mob/observer/eye/E = viewer + if(E.owner && E.owner.client) + receivers |= E.owner.client - if(target in admins) - admin_stuff += "/([key])" - if(target != src) - admin_stuff += "([admin_jump_link(mob, target.holder)])" + // Admins with RLOOC displayed who weren't already in + for(var/client/admin in admins) + if(!(admin in receivers) && admin.is_preference_enabled(/datum/client_preference/holder/show_rlooc)) + r_receivers |= admin - if(target.mob in heard) - send = 1 - if(isAI(target.mob)) - prefix = "(Core) " + // Send a message + for(var/client/target in receivers) + var/admin_stuff = "" + + if(target in admins) + admin_stuff += "/([key])" - else if(isAI(target.mob)) // Special case - var/mob/living/silicon/ai/A = target.mob - if(A.eyeobj in hearers(7, source)) - send = 1 - prefix = "(Eye) " + target << "" + create_text_tag("looc", "LOOC:", target) + " [display_name][admin_stuff]: [msg]" - if(!send && (target in admins) && target.is_preference_enabled(/datum/client_preference/holder/show_rlooc)) - send = 1 - prefix = "(R)" - - if(send) - target << "" + create_text_tag("looc", "LOOC:", target) + " [prefix][display_name][admin_stuff]: [msg]" + for(var/client/target in r_receivers) + var/admin_stuff = "/([key])([admin_jump_link(mob, target.holder)])" + + target << "" + create_text_tag("looc", "LOOC:", target) + " (R)[display_name][admin_stuff]: [msg]" /mob/proc/get_looc_source() return src diff --git a/code/modules/client/preference_setup/antagonism/01_basic.dm b/code/modules/client/preference_setup/antagonism/01_basic.dm index eefc531da1..5b0be7bb71 100644 --- a/code/modules/client/preference_setup/antagonism/01_basic.dm +++ b/code/modules/client/preference_setup/antagonism/01_basic.dm @@ -15,6 +15,10 @@ var/global/list/uplink_locations = list("PDA", "Headset", "None") /datum/category_item/player_setup_item/antagonism/basic/sanitize_character() pref.uplinklocation = sanitize_inlist(pref.uplinklocation, uplink_locations, initial(pref.uplinklocation)) +// Moved from /datum/preferences/proc/copy_to() +/datum/category_item/player_setup_item/antagonism/basic/copy_to_mob(var/mob/living/carbon/human/character) + character.exploit_record = pref.exploit_record + /datum/category_item/player_setup_item/antagonism/basic/content(var/mob/user) . +="Uplink Type : [pref.uplinklocation]" . +="
" diff --git a/code/modules/client/preference_setup/general/01_basic.dm b/code/modules/client/preference_setup/general/01_basic.dm index 6a0c0705ae..da1cab4ecc 100644 --- a/code/modules/client/preference_setup/general/01_basic.dm +++ b/code/modules/client/preference_setup/general/01_basic.dm @@ -40,6 +40,25 @@ datum/preferences/proc/set_biological_gender(var/gender) pref.spawnpoint = sanitize_inlist(pref.spawnpoint, spawntypes, initial(pref.spawnpoint)) pref.be_random_name = sanitize_integer(pref.be_random_name, 0, 1, initial(pref.be_random_name)) +// Moved from /datum/preferences/proc/copy_to() +/datum/category_item/player_setup_item/general/basic/copy_to_mob(var/mob/living/carbon/human/character) + if(config.humans_need_surnames) + var/firstspace = findtext(pref.real_name, " ") + var/name_length = length(pref.real_name) + if(!firstspace) //we need a surname + pref.real_name += " [pick(last_names)]" + else if(firstspace == name_length) + pref.real_name += "[pick(last_names)]" + + character.real_name = pref.real_name + character.name = character.real_name + if(character.dna) + character.dna.real_name = character.real_name + + character.gender = pref.biological_gender + character.identifying_gender = pref.identifying_gender + character.age = pref.age + /datum/category_item/player_setup_item/general/basic/content() . = list() . += "Name: " diff --git a/code/modules/client/preference_setup/general/03_body.dm b/code/modules/client/preference_setup/general/03_body.dm index a092b859b3..8bd528cb5d 100644 --- a/code/modules/client/preference_setup/general/03_body.dm +++ b/code/modules/client/preference_setup/general/03_body.dm @@ -76,6 +76,53 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O if(!pref.organ_data) pref.organ_data = list() if(!pref.rlimb_data) pref.rlimb_data = list() +// Moved from /datum/preferences/proc/copy_to() +/datum/category_item/player_setup_item/general/body/copy_to_mob(var/mob/living/carbon/human/character) + // Copy basic values + character.r_eyes = pref.r_eyes + character.g_eyes = pref.g_eyes + character.b_eyes = pref.b_eyes + character.h_style = pref.h_style + character.r_hair = pref.r_hair + character.g_hair = pref.g_hair + character.b_hair = pref.b_hair + character.f_style = pref.f_style + character.r_facial = pref.r_facial + character.g_facial = pref.g_facial + character.b_facial = pref.b_facial + character.r_skin = pref.r_skin + character.g_skin = pref.g_skin + character.b_skin = pref.b_skin + character.s_tone = pref.s_tone + character.h_style = pref.h_style + character.f_style = pref.f_style + character.b_type = pref.b_type + + // Destroy/cyborgize organs and limbs. + for(var/name in list(BP_HEAD, BP_L_HAND, BP_R_HAND, BP_L_ARM, BP_R_ARM, BP_L_FOOT, BP_R_FOOT, BP_L_LEG, BP_R_LEG, BP_GROIN, BP_TORSO)) + var/status = pref.organ_data[name] + var/obj/item/organ/external/O = character.organs_by_name[name] + if(O) + if(status == "amputated") + O.remove_rejuv() + else if(status == "cyborg") + if(pref.rlimb_data[name]) + O.robotize(pref.rlimb_data[name]) + else + O.robotize() + + for(var/name in list(O_HEART,O_EYES,O_BRAIN)) + var/status = pref.organ_data[name] + if(!status) + continue + var/obj/item/organ/I = character.internal_organs_by_name[name] + if(I) + if(status == "assisted") + I.mechassist() + else if(status == "mechanical") + I.robotize() + return + /datum/category_item/player_setup_item/general/body/content(var/mob/user) . = list() if(!pref.preview_icon) diff --git a/code/modules/client/preference_setup/general/04_equipment.dm b/code/modules/client/preference_setup/general/04_equipment.dm index c455cef524..537f2632e7 100644 --- a/code/modules/client/preference_setup/general/04_equipment.dm +++ b/code/modules/client/preference_setup/general/04_equipment.dm @@ -18,6 +18,30 @@ S["backbag"] << pref.backbag S["pdachoice"] << pref.pdachoice +// Moved from /datum/preferences/proc/copy_to() +/datum/category_item/player_setup_item/general/equipment/copy_to_mob(var/mob/living/carbon/human/character) + character.all_underwear.Cut() + character.all_underwear_metadata.Cut() + + for(var/underwear_category_name in pref.all_underwear) + var/datum/category_group/underwear/underwear_category = global_underwear.categories_by_name[underwear_category_name] + if(underwear_category) + var/underwear_item_name = pref.all_underwear[underwear_category_name] + character.all_underwear[underwear_category_name] = underwear_category.items_by_name[underwear_item_name] + if(pref.all_underwear_metadata[underwear_category_name]) + character.all_underwear_metadata[underwear_category_name] = pref.all_underwear_metadata[underwear_category_name] + else + pref.all_underwear -= underwear_category_name + + // TODO - Looks like this is duplicating the work of sanitize_character() if so, remove + if(pref.backbag > 4 || pref.backbag < 1) + pref.backbag = 1 //Same as above + character.backbag = pref.backbag + + if(pref.pdachoice > 3 || pref.pdachoice < 1) + pref.pdachoice = 1 + character.pdachoice = pref.pdachoice + /datum/category_item/player_setup_item/general/equipment/sanitize_character() if(!islist(pref.gear)) pref.gear = list() diff --git a/code/modules/client/preference_setup/general/05_background.dm b/code/modules/client/preference_setup/general/05_background.dm index 5708d3c757..e3076629a8 100644 --- a/code/modules/client/preference_setup/general/05_background.dm +++ b/code/modules/client/preference_setup/general/05_background.dm @@ -30,6 +30,16 @@ pref.nanotrasen_relation = sanitize_inlist(pref.nanotrasen_relation, COMPANY_ALIGNMENTS, initial(pref.nanotrasen_relation)) +// Moved from /datum/preferences/proc/copy_to() +/datum/category_item/player_setup_item/general/background/copy_to_mob(var/mob/living/carbon/human/character) + character.med_record = pref.med_record + character.sec_record = pref.sec_record + character.gen_record = pref.gen_record + character.home_system = pref.home_system + character.citizenship = pref.citizenship + character.personal_faction = pref.faction + character.religion = pref.religion + /datum/category_item/player_setup_item/general/background/content(var/mob/user) . += "Background Information
" . += "[company_name] Relation: [pref.nanotrasen_relation]
" diff --git a/code/modules/client/preference_setup/general/06_flavor.dm b/code/modules/client/preference_setup/general/06_flavor.dm index b312bb95e9..94525ee06f 100644 --- a/code/modules/client/preference_setup/general/06_flavor.dm +++ b/code/modules/client/preference_setup/general/06_flavor.dm @@ -36,6 +36,18 @@ /datum/category_item/player_setup_item/general/flavor/sanitize_character() return +// Moved from /datum/preferences/proc/copy_to() +/datum/category_item/player_setup_item/general/flavor/copy_to_mob(var/mob/living/carbon/human/character) + character.flavor_texts["general"] = pref.flavor_texts["general"] + character.flavor_texts["head"] = pref.flavor_texts["head"] + character.flavor_texts["face"] = pref.flavor_texts["face"] + character.flavor_texts["eyes"] = pref.flavor_texts["eyes"] + character.flavor_texts["torso"] = pref.flavor_texts["torso"] + character.flavor_texts["arms"] = pref.flavor_texts["arms"] + character.flavor_texts["hands"] = pref.flavor_texts["hands"] + character.flavor_texts["legs"] = pref.flavor_texts["legs"] + character.flavor_texts["feet"] = pref.flavor_texts["feet"] + /datum/category_item/player_setup_item/general/flavor/content(var/mob/user) . += "Flavor:
" . += "Set Flavor Text
" diff --git a/code/modules/client/preference_setup/loadout/loadout_accessories.dm b/code/modules/client/preference_setup/loadout/loadout_accessories.dm index a90373d219..4a79d5c26b 100644 --- a/code/modules/client/preference_setup/loadout/loadout_accessories.dm +++ b/code/modules/client/preference_setup/loadout/loadout_accessories.dm @@ -29,9 +29,13 @@ path = /obj/item/clothing/accessory/armband/science /datum/gear/accessory/wallet - display_name = "wallet" + display_name = "wallet, orange" path = /obj/item/weapon/storage/wallet/random +/datum/gear/accessory/wallet_poly + display_name = "wallet, polychromic" + path = /obj/item/weapon/storage/wallet/poly + /datum/gear/accessory/holster display_name = "holster, armpit" path = /obj/item/clothing/accessory/holster/armpit @@ -172,32 +176,32 @@ /datum/gear/accessory/brown_vest display_name = "webbing, engineering" path = /obj/item/clothing/accessory/storage/brown_vest - allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer") + allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor") /datum/gear/accessory/black_vest display_name = "webbing, security" path = /obj/item/clothing/accessory/storage/black_vest - allowed_roles = list("Security Officer","Head of Security","Warden") + allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor") /datum/gear/accessory/white_vest display_name = "webbing, medical" path = /obj/item/clothing/accessory/storage/white_vest - allowed_roles = list("Paramedic","Chief Medical Officer","Medical Doctor") + allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor") /datum/gear/accessory/brown_drop_pouches display_name = "drop pouches, engineering" path = /obj/item/clothing/accessory/storage/brown_drop_pouches - allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer") + allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor") /datum/gear/accessory/black_drop_pouches display_name = "drop pouches, security" path = /obj/item/clothing/accessory/storage/black_drop_pouches - allowed_roles = list("Security Officer","Head of Security","Warden") + allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor") /datum/gear/accessory/white_drop_pouches display_name = "drop pouches, medical" path = /obj/item/clothing/accessory/storage/white_drop_pouches - allowed_roles = list("Paramedic","Chief Medical Officer","Medical Doctor") + allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor") /datum/gear/accessory/webbing display_name = "webbing, simple" diff --git a/code/modules/client/preference_setup/loadout/loadout_smoking.dm b/code/modules/client/preference_setup/loadout/loadout_smoking.dm index f54279066d..2599cf1f35 100644 --- a/code/modules/client/preference_setup/loadout/loadout_smoking.dm +++ b/code/modules/client/preference_setup/loadout/loadout_smoking.dm @@ -17,3 +17,19 @@ /datum/gear/ashtray display_name = "ashtray, plastic" path = /obj/item/weapon/material/ashtray/plastic + +/datum/gear/cigar + display_name = "cigar" + path = /obj/item/clothing/mask/smokable/cigarette/cigar + +/datum/gear/cigarettes + display_name = "cigarette selection" + path = /obj/item/weapon/storage/fancy/cigarettes + +/datum/gear/cigarettes/New() + ..() + var/list/cigarettes = list() + for(var/cigarette in (typesof(/obj/item/weapon/storage/fancy/cigarettes) - typesof(/obj/item/weapon/storage/fancy/cigarettes/killthroat))) + var/obj/item/weapon/storage/fancy/cigarettes/cigarette_brand = cigarette + cigarettes[initial(cigarette_brand.name)] = cigarette_brand + gear_tweaks += new/datum/gear_tweak/path(sortAssoc(cigarettes)) \ No newline at end of file diff --git a/code/modules/client/preference_setup/preference_setup.dm b/code/modules/client/preference_setup/preference_setup.dm index 7028894fda..6344d538e7 100644 --- a/code/modules/client/preference_setup/preference_setup.dm +++ b/code/modules/client/preference_setup/preference_setup.dm @@ -72,6 +72,10 @@ for(var/datum/category_group/player_setup_category/PS in categories) PS.save_preferences(S) +/datum/category_collection/player_setup_collection/proc/copy_to_mob(var/mob/living/carbon/human/C) + for(var/datum/category_group/player_setup_category/PS in categories) + PS.copy_to_mob(C) + /datum/category_collection/player_setup_collection/proc/header() var/dat = "" for(var/datum/category_group/player_setup_category/PS in categories) @@ -143,6 +147,10 @@ for(var/datum/category_item/player_setup_item/PI in items) PI.save_preferences(S) +/datum/category_group/player_setup_category/proc/copy_to_mob(var/mob/living/carbon/human/C) + for(var/datum/category_item/player_setup_item/PI in items) + PI.copy_to_mob(C) + /datum/category_group/player_setup_category/proc/content(var/mob/user) . = "
" var/current = 0 @@ -201,6 +209,12 @@ /datum/category_item/player_setup_item/proc/save_preferences(var/savefile/S) return +/* +* Called when the item is asked to apply its per character settings to a new mob. +*/ +/datum/category_item/player_setup_item/proc/copy_to_mob(var/mob/living/carbon/human/C) + return + /datum/category_item/player_setup_item/proc/content() return diff --git a/code/modules/client/preference_setup/skills/skills.dm b/code/modules/client/preference_setup/skills/skills.dm index 7255e25bc4..ab5a6c17e1 100644 --- a/code/modules/client/preference_setup/skills/skills.dm +++ b/code/modules/client/preference_setup/skills/skills.dm @@ -18,6 +18,11 @@ if(!pref.skills.len) pref.ZeroSkills() if(pref.used_skillpoints < 0) pref.used_skillpoints = 0 +// Moved from /datum/preferences/proc/copy_to() +/datum/category_item/player_setup_item/skills/copy_to_mob(var/mob/living/carbon/human/character) + character.skills = pref.skills + character.used_skillpoints = pref.used_skillpoints + /datum/category_item/player_setup_item/skills/content() . = list() . += "Select your Skills
" diff --git a/code/modules/client/preference_setup/vore/01_ears.dm b/code/modules/client/preference_setup/vore/01_ears.dm index 6b783c1918..694aacd7a2 100644 --- a/code/modules/client/preference_setup/vore/01_ears.dm +++ b/code/modules/client/preference_setup/vore/01_ears.dm @@ -1,15 +1,3 @@ -// Super Global Stuff -/datum/category_collection/player_setup_collection/proc/copy_to_mob(var/mob/living/carbon/human/C) - for(var/datum/category_group/player_setup_category/PS in categories) - PS.copy_to_mob(C) - -/datum/category_group/player_setup_category/proc/copy_to_mob(var/mob/living/carbon/human/C) - for(var/datum/category_item/player_setup_item/PI in items) - PI.copy_to_mob(C) - -/datum/category_item/player_setup_item/proc/copy_to_mob(var/mob/living/carbon/human/C) - return - // Global stuff that will put us on the map /datum/category_group/player_setup_category/vore name = "VORE" diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index c26bde7fa0..6600b78c83 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -254,123 +254,14 @@ datum/preferences // Sanitizing rather than saving as someone might still be editing when copy_to occurs. player_setup.sanitize_setup() - // VOREStation Edit - Start - player_setup.copy_to_mob(character) - // VOREStation Edit - End - + // This needs to happen before anything else becuase it sets some variables. character.set_species(species) - + // Special Case: This references variables owned by two different datums, so do it here. if(be_random_name) real_name = random_name(identifying_gender,species) - if(config.humans_need_surnames) - var/firstspace = findtext(real_name, " ") - var/name_length = length(real_name) - if(!firstspace) //we need a surname - real_name += " [pick(last_names)]" - else if(firstspace == name_length) - real_name += "[pick(last_names)]" - - character.real_name = real_name - character.name = character.real_name - if(character.dna) - character.dna.real_name = character.real_name - - character.flavor_texts["general"] = flavor_texts["general"] - character.flavor_texts["head"] = flavor_texts["head"] - character.flavor_texts["face"] = flavor_texts["face"] - character.flavor_texts["eyes"] = flavor_texts["eyes"] - character.flavor_texts["torso"] = flavor_texts["torso"] - character.flavor_texts["arms"] = flavor_texts["arms"] - character.flavor_texts["hands"] = flavor_texts["hands"] - character.flavor_texts["legs"] = flavor_texts["legs"] - character.flavor_texts["feet"] = flavor_texts["feet"] - - character.med_record = med_record - character.sec_record = sec_record - character.gen_record = gen_record - character.exploit_record = exploit_record - - character.gender = biological_gender - character.identifying_gender = identifying_gender - character.age = age - character.b_type = b_type - - character.r_eyes = r_eyes - character.g_eyes = g_eyes - character.b_eyes = b_eyes - - character.h_style = h_style - character.r_hair = r_hair - character.g_hair = g_hair - character.b_hair = b_hair - - character.f_style = f_style - character.r_facial = r_facial - character.g_facial = g_facial - character.b_facial = b_facial - - character.r_skin = r_skin - character.g_skin = g_skin - character.b_skin = b_skin - - character.s_tone = s_tone - - character.h_style = h_style - character.f_style = f_style - - character.home_system = home_system - character.citizenship = citizenship - character.personal_faction = faction - character.religion = religion - - character.skills = skills - character.used_skillpoints = used_skillpoints - - // Destroy/cyborgize organs and limbs. - for(var/name in list(BP_HEAD, BP_L_HAND, BP_R_HAND, BP_L_ARM, BP_R_ARM, BP_L_FOOT, BP_R_FOOT, BP_L_LEG, BP_R_LEG, BP_GROIN, BP_TORSO)) - var/status = organ_data[name] - var/obj/item/organ/external/O = character.organs_by_name[name] - if(O) - if(status == "amputated") - O.remove_rejuv() - else if(status == "cyborg") - if(rlimb_data[name]) - O.robotize(rlimb_data[name]) - else - O.robotize() - - for(var/name in list(O_HEART,O_EYES,O_BRAIN)) - var/status = organ_data[name] - if(!status) - continue - var/obj/item/organ/I = character.internal_organs_by_name[name] - if(I) - if(status == "assisted") - I.mechassist() - else if(status == "mechanical") - I.robotize() - - character.all_underwear.Cut() - character.all_underwear_metadata.Cut() - - for(var/underwear_category_name in all_underwear) - var/datum/category_group/underwear/underwear_category = global_underwear.categories_by_name[underwear_category_name] - if(underwear_category) - var/underwear_item_name = all_underwear[underwear_category_name] - character.all_underwear[underwear_category_name] = underwear_category.items_by_name[underwear_item_name] - if(all_underwear_metadata[underwear_category_name]) - character.all_underwear_metadata[underwear_category_name] = all_underwear_metadata[underwear_category_name] - else - all_underwear -= underwear_category_name - - if(backbag > 4 || backbag < 1) - backbag = 1 //Same as above - character.backbag = backbag - - if(pdachoice > 3 || pdachoice < 1) - pdachoice = 1 - character.pdachoice = pdachoice + // Ask the preferences datums to apply their own settings to the new mob + player_setup.copy_to_mob(character) if(icon_updates) character.force_update_limbs() diff --git a/code/modules/events/infestation.dm b/code/modules/events/infestation.dm index e7afa00109..16f2b78521 100644 --- a/code/modules/events/infestation.dm +++ b/code/modules/events/infestation.dm @@ -6,7 +6,7 @@ #define LOC_VAULT 5 #define LOC_CONSTR 6 #define LOC_TECH 7 -#define LOC_TACTICAL 8 +#define LOC_GARDEN 8 #define VERM_MICE 0 #define VERM_LIZARDS 1 @@ -50,9 +50,9 @@ if(LOC_TECH) spawn_area_type = /area/storage/tech locstring = "technical storage" - if(LOC_TACTICAL) - spawn_area_type = /area/security/tactical - locstring = "tactical equipment storage" + if(LOC_GARDEN) + spawn_area_type = /area/hydroponics/garden + locstring = "the public garden" for(var/areapath in typesof(spawn_area_type)) var/area/A = locate(areapath) @@ -102,7 +102,7 @@ #undef LOC_HYDRO #undef LOC_VAULT #undef LOC_TECH -#undef LOC_TACTICAL +#undef LOC_GARDEN #undef VERM_MICE #undef VERM_LIZARDS diff --git a/code/modules/mob/emote.dm b/code/modules/mob/emote.dm index 7fb8052909..15b9992375 100644 --- a/code/modules/mob/emote.dm +++ b/code/modules/mob/emote.dm @@ -1,7 +1,7 @@ // All mobs should have custom emote, really.. //m_type == 1 --> visual. //m_type == 2 --> audible -/mob/proc/custom_emote(var/m_type=1,var/message = null) +/mob/proc/custom_emote(var/m_type=1,var/message = null,var/range=world.view) if(stat || !use_me && usr == src) src << "You are unable to emote." return @@ -23,42 +23,23 @@ if (message) log_emote("[name]/[key] : [message]") - //Hearing gasp and such every five seconds is not good emotes were not global for a reason. + // Hearing gasp and such every five seconds is not good emotes were not global for a reason. // Maybe some people are okay with that. - for(var/mob/M in player_list) - if (!M.client) - continue //skip monkeys and leavers - if (istype(M, /mob/new_player)) - continue - if(findtext(message," snores.")) //Because we have so many sleeping people. - break - if(M.stat == DEAD && M.is_preference_enabled(/datum/client_preference/ghost_sight) && !(M in viewers(src,null))) - M.show_message(message, m_type) + var/turf/T = get_turf(src) + if(!T) return + var/list/in_range = get_mobs_and_objs_in_view_fast(T,range,2) + var/list/m_viewers = in_range["mobs"] + var/list/o_viewers = in_range["objs"] - if (m_type & 1) - var/list/see = get_mobs_or_objects_in_view(world.view,src) | viewers(get_turf(src), null) - for(var/I in see) - if(isobj(I)) - spawn(0) - if(I) //It's possible that it could be deleted in the meantime. - var/obj/O = I - O.see_emote(src, message, 1) - else if(ismob(I)) - var/mob/M = I - M.show_message(message, 1) - - else if (m_type & 2) - var/list/hear = get_mobs_or_objects_in_view(world.view,src) - for(var/I in hear) - if(isobj(I)) - spawn(0) - if(I) //It's possible that it could be deleted in the meantime. - var/obj/O = I - O.see_emote(src, message, 2) - else if(ismob(I)) - var/mob/M = I - M.show_message(message, 2) + for(var/mob/M in m_viewers) + spawn(0) // It's possible that it could be deleted in the meantime, or that it runtimes. + if(M) + M.show_message(message, m_type) + for(var/obj/O in o_viewers) + spawn(0) + if(O) + O.see_emote(src, message, m_type) /mob/proc/emote_dead(var/message) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index d61ab57048..b669647ec9 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -1050,7 +1050,11 @@ if(copytext(hud.icon_state,1,4) == "hud") //ugly, but icon comparison is worse, I believe client.images.Remove(hud) - client.screen.Remove(global_hud.blurry, global_hud.druggy, global_hud.vimpaired, global_hud.darkMask, global_hud.nvg, global_hud.thermal, global_hud.meson, global_hud.science) + client.screen.Remove(global_hud.blurry, global_hud.druggy, global_hud.vimpaired, global_hud.darkMask, global_hud.nvg, global_hud.thermal, global_hud.meson, global_hud.science, global_hud.whitense) + + if(istype(client.eye,/obj/machinery/camera)) + var/obj/machinery/camera/cam = client.eye + client.screen |= cam.client_huds if(damageoverlay.overlays) damageoverlay.overlays = list() diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index c4dcfbd3f1..6269bd4634 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -5,11 +5,4 @@ destroy_surroundings = 1 a_intent = I_HURT hostile = 1 - - -/mob/living/simple_animal/hostile/Life() - - . = ..() - if(!.) - walk(src, 0) - return 0 \ No newline at end of file + \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index 389f905b38..a9d0e7b925 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -118,6 +118,8 @@ living_mob_list += src stat = CONSCIOUS density = 1 + else + walk(src, 0) return 0 diff --git a/code/modules/mob/living/voice/voice.dm b/code/modules/mob/living/voice/voice.dm index e4eac0f439..a27b0ffc94 100644 --- a/code/modules/mob/living/voice/voice.dm +++ b/code/modules/mob/living/voice/voice.dm @@ -42,12 +42,9 @@ // Parameters: None // Description: Adds a static overlay to the client's screen. /mob/living/voice/Login() - var/obj/screen/static_effect = new() //Since what the player sees is essentially a video feed, from a vast distance away, the view isn't going to be perfect. - static_effect.screen_loc = ui_entire_screen - static_effect.icon = 'icons/effects/static.dmi' - static_effect.icon_state = "1 light" - static_effect.mouse_opacity = 0 //So the static doesn't get in the way of clicking. - client.screen.Add(static_effect) + ..() + client.screen |= global_hud.whitense + client.screen |= global_hud.darkMask // Proc: Destroy() // Parameters: None @@ -110,7 +107,7 @@ // Proc: say() // Parameters: 4 (generic say() arguments) // Description: Adds a speech bubble to the communicator device, then calls ..() to do the real work. -/mob/living/voice/say(var/message, var/datum/language/speaking = null, var/verb="says", var/alt_name="") +/mob/living/voice/say(var/message, var/datum/language/speaking = null, var/verb="says", var/alt_name="", var/whispering=0) //Speech bubbles. if(comm) var/speech_bubble_test = say_test(message) @@ -122,4 +119,8 @@ M << speech_bubble src << speech_bubble - ..(message, speaking, verb, alt_name) //mob/living/say() can do the actual talking. \ No newline at end of file + ..(message, speaking, verb, alt_name, whispering) //mob/living/say() can do the actual talking. + +/mob/living/voice/custom_emote(var/m_type=1,var/message = null,var/range=world.view) + if(!comm) return + ..(m_type,message,comm.video_range) diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index e197939d1b..606c389ffa 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -508,9 +508,14 @@ /mob/new_player/is_ready() return ready && ..() +// Prevents lobby players from seeing say, even with ghostears /mob/new_player/hear_say(var/message, var/verb = "says", var/datum/language/language = null, var/alt_name = "",var/italics = 0, var/mob/speaker = null) return +// Prevents lobby players from seeing emotes, even with ghosteyes +/mob/new_player/show_message(msg, type, alt, alt_type) + return + /mob/new_player/hear_radio() return diff --git a/code/modules/organs/organ_external.dm b/code/modules/organs/organ_external.dm index e177649e4a..a1a31fad7c 100644 --- a/code/modules/organs/organ_external.dm +++ b/code/modules/organs/organ_external.dm @@ -1105,7 +1105,6 @@ Note that amputating the affected organ does in fact remove the infection from t W.loc = owner /obj/item/organ/external/removed(var/mob/living/user, var/ignore_children = 0) - if(!owner) return var/is_robotic = robotic >= ORGAN_ROBOT @@ -1161,6 +1160,8 @@ Note that amputating the affected organ does in fact remove the infection from t qdel(spark_system) qdel(src) + victim.update_body() + /obj/item/organ/external/proc/disfigure(var/type = "brute") if (disfigured) return @@ -1246,216 +1247,3 @@ Note that amputating the affected organ does in fact remove the infection from t if(6 to INFINITY) flavor_text += "a ton of [wound]\s" return english_list(flavor_text) - -/**************************************************** - ORGAN DEFINES -****************************************************/ - -/obj/item/organ/external/chest - name = "upper body" - organ_tag = BP_TORSO - icon_name = "torso" - max_damage = 100 - min_broken_damage = 35 - w_class = 5 - body_part = UPPER_TORSO - vital = 1 - amputation_point = "spine" - joint = "neck" - dislocated = -1 - gendered_icon = 1 - cannot_amputate = 1 - parent_organ = null - encased = "ribcage" - organ_rel_size = 70 - base_miss_chance = 10 - -/obj/item/organ/external/chest/robotize() - if(..()) - // Give them a new cell. - owner.internal_organs_by_name["cell"] = new /obj/item/organ/internal/cell(owner,1) - -/obj/item/organ/external/groin - name = "lower body" - organ_tag = BP_GROIN - icon_name = "groin" - max_damage = 100 - min_broken_damage = 35 - w_class = 5 - body_part = LOWER_TORSO - vital = 1 - parent_organ = BP_TORSO - amputation_point = "lumbar" - joint = "hip" - dislocated = -1 - gendered_icon = 1 - organ_rel_size = 30 - -/obj/item/organ/external/arm - organ_tag = "l_arm" - name = "left arm" - icon_name = "l_arm" - max_damage = 50 - min_broken_damage = 30 - w_class = 3 - body_part = ARM_LEFT - parent_organ = BP_TORSO - joint = "left elbow" - amputation_point = "left shoulder" - can_grasp = 1 - -/obj/item/organ/external/arm/right - organ_tag = "r_arm" - name = "right arm" - icon_name = "r_arm" - body_part = ARM_RIGHT - joint = "right elbow" - amputation_point = "right shoulder" - -/obj/item/organ/external/leg - organ_tag = "l_leg" - name = "left leg" - icon_name = "l_leg" - max_damage = 50 - min_broken_damage = 30 - w_class = 3 - body_part = LEG_LEFT - icon_position = LEFT - parent_organ = BP_GROIN - joint = "left knee" - amputation_point = "left hip" - can_stand = 1 - -/obj/item/organ/external/leg/right - organ_tag = "r_leg" - name = "right leg" - icon_name = "r_leg" - body_part = LEG_RIGHT - icon_position = RIGHT - joint = "right knee" - amputation_point = "right hip" - -/obj/item/organ/external/foot - organ_tag = "l_foot" - name = "left foot" - icon_name = "l_foot" - min_broken_damage = 15 - w_class = 2 - body_part = FOOT_LEFT - icon_position = LEFT - parent_organ = "l_leg" - joint = "left ankle" - amputation_point = "left ankle" - can_stand = 1 - organ_rel_size = 10 - base_miss_chance = 50 - -/obj/item/organ/external/foot/removed() - if(owner) owner.u_equip(owner.shoes) - ..() - -/obj/item/organ/external/foot/right - organ_tag = "r_foot" - name = "right foot" - icon_name = "r_foot" - body_part = FOOT_RIGHT - icon_position = RIGHT - parent_organ = "r_leg" - joint = "right ankle" - amputation_point = "right ankle" - -/obj/item/organ/external/hand - organ_tag = "l_hand" - name = "left hand" - icon_name = "l_hand" - min_broken_damage = 15 - w_class = 2 - body_part = HAND_LEFT - parent_organ = "l_arm" - joint = "left wrist" - amputation_point = "left wrist" - can_grasp = 1 - organ_rel_size = 10 - base_miss_chance = 50 - -/obj/item/organ/external/hand/removed() - owner.u_equip(owner.gloves) - ..() - -/obj/item/organ/external/hand/right - organ_tag = "r_hand" - name = "right hand" - icon_name = "r_hand" - body_part = HAND_RIGHT - parent_organ = "r_arm" - joint = "right wrist" - amputation_point = "right wrist" - -/obj/item/organ/external/head - organ_tag = BP_HEAD - icon_name = "head" - name = "head" - max_damage = 75 - min_broken_damage = 35 - w_class = 3 - body_part = HEAD - vital = 1 - parent_organ = BP_TORSO - joint = "jaw" - amputation_point = "neck" - gendered_icon = 1 - encased = "skull" - base_miss_chance = 40 - - var/eye_icon = "eyes_s" - -// These organs are important for robotizing at chargen. -/obj/item/organ/external/head/robotize(var/company, var/skip_prosthetics, var/keep_organs) - return ..(company, skip_prosthetics, 1) - -/obj/item/organ/external/head/removed() - if(owner) - name = "[owner.real_name]'s head" - owner.u_equip(owner.glasses) - owner.u_equip(owner.head) - owner.u_equip(owner.l_ear) - owner.u_equip(owner.r_ear) - owner.u_equip(owner.wear_mask) - spawn(1) - owner.update_hair() - ..() - -/obj/item/organ/external/head/take_damage(brute, burn, sharp, edge, used_weapon = null, list/forbidden_limbs = list()) - ..(brute, burn, sharp, edge, used_weapon, forbidden_limbs) - if (!disfigured) - if (brute_dam > 40) - if (prob(50)) - disfigure("brute") - if (burn_dam > 40) - disfigure("burn") - -/obj/item/organ/external/head/skrell - eye_icon = "skrell_eyes_s" - -/obj/item/organ/external/head/seromi - eye_icon = "eyes_seromi" - -/obj/item/organ/external/head/no_eyes - eye_icon = "blank_eyes" - -/obj/item/organ/external/head/no_eyes/diona - max_damage = 50 - min_broken_damage = 25 - cannot_break = 1 - amputation_point = "branch" - joint = "structural ligament" - dislocated = -1 - vital = 0 - -/obj/item/organ/external/head/no_eyes/diona/removed() - var/mob/living/carbon/human/H = owner - ..() - if(!istype(H) || !H.organs || !H.organs.len) - H.death() - if(prob(50) && spawn_diona_nymph(get_turf(src))) - qdel(src) \ No newline at end of file diff --git a/code/modules/organs/organ_icon.dm b/code/modules/organs/organ_icon.dm index 439de74939..ec563bda53 100644 --- a/code/modules/organs/organ_icon.dm +++ b/code/modules/organs/organ_icon.dm @@ -43,10 +43,6 @@ var/global/list/limb_icon_cache = list() var/obj/item/organ/internal/eyes/eyes = owner.internal_organs_by_name[O_EYES] if(eyes) eyes.update_colour() -/obj/item/organ/external/head/removed() - get_icon() - ..() - /obj/item/organ/external/head/get_icon() ..() diff --git a/code/modules/organs/subtypes/diona.dm b/code/modules/organs/subtypes/diona.dm index 344ba2f05a..ab5c436758 100644 --- a/code/modules/organs/subtypes/diona.dm +++ b/code/modules/organs/subtypes/diona.dm @@ -198,3 +198,12 @@ /obj/item/organ/internal/diona/node/removed() return + +/obj/item/organ/external/head/no_eyes/diona + max_damage = 50 + min_broken_damage = 25 + cannot_break = 1 + amputation_point = "branch" + joint = "structural ligament" + dislocated = -1 + vital = 0 \ No newline at end of file diff --git a/code/modules/organs/subtypes/standard.dm b/code/modules/organs/subtypes/standard.dm index ffc337824d..36fc7ba677 100644 --- a/code/modules/organs/subtypes/standard.dm +++ b/code/modules/organs/subtypes/standard.dm @@ -18,6 +18,13 @@ cannot_amputate = 1 parent_organ = null encased = "ribcage" + organ_rel_size = 70 + base_miss_chance = 10 + +/obj/item/organ/external/chest/robotize() + if(..()) + // Give them a new cell. + owner.internal_organs_by_name["cell"] = new /obj/item/organ/internal/cell(owner,1) /obj/item/organ/external/groin name = "lower body" @@ -33,6 +40,7 @@ joint = "hip" dislocated = -1 gendered_icon = 1 + organ_rel_size = 30 /obj/item/organ/external/arm organ_tag = "l_arm" @@ -93,7 +101,8 @@ can_stand = 1 /obj/item/organ/external/foot/removed() - if(owner) owner.u_equip(owner.shoes) + if(owner) + owner.drop_from_inventory(owner.shoes) ..() /obj/item/organ/external/foot/right @@ -118,9 +127,12 @@ joint = "left wrist" amputation_point = "left wrist" can_grasp = 1 + organ_rel_size = 10 + base_miss_chance = 50 /obj/item/organ/external/hand/removed() - owner.u_equip(owner.gloves) + if(owner) + owner.drop_from_inventory(owner.gloves) ..() /obj/item/organ/external/hand/right @@ -147,18 +159,24 @@ gendered_icon = 1 cannot_gib = 1 encased = "skull" + base_miss_chance = 40 var/can_intake_reagents = 1 + var/eye_icon = "eyes_s" + +/obj/item/organ/external/head/robotize(var/company, var/skip_prosthetics, var/keep_organs) + return ..(company, skip_prosthetics, 1) /obj/item/organ/external/head/removed() if(owner) name = "[owner.real_name]'s head" - owner.u_equip(owner.glasses) - owner.u_equip(owner.head) - owner.u_equip(owner.l_ear) - owner.u_equip(owner.r_ear) - owner.u_equip(owner.wear_mask) + owner.drop_from_inventory(owner.glasses) + owner.drop_from_inventory(owner.head) + owner.drop_from_inventory(owner.l_ear) + owner.drop_from_inventory(owner.r_ear) + owner.drop_from_inventory(owner.wear_mask) spawn(1) owner.update_hair() + get_icon() ..() /obj/item/organ/external/head/take_damage(brute, burn, sharp, edge, used_weapon = null, list/forbidden_limbs = list()) @@ -169,3 +187,12 @@ disfigure("brute") if (burn_dam > 40) disfigure("burn") + +/obj/item/organ/external/head/skrell + eye_icon = "skrell_eyes_s" + +/obj/item/organ/external/head/seromi + eye_icon = "eyes_seromi" + +/obj/item/organ/external/head/no_eyes + eye_icon = "blank_eyes" diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index e4bbbec5f6..a423e4ced4 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -606,7 +606,6 @@ obj/structure/cable/proc/cableColor(var/colorC) /obj/item/stack/cable_coil/transfer_to(obj/item/stack/cable_coil/S) if(!istype(S)) - world << 1 return ..() diff --git a/code/modules/projectiles/guns/projectile/pistol.dm b/code/modules/projectiles/guns/projectile/pistol.dm index 9caf66af4b..15471da2a2 100644 --- a/code/modules/projectiles/guns/projectile/pistol.dm +++ b/code/modules/projectiles/guns/projectile/pistol.dm @@ -124,6 +124,13 @@ magazine_type = /obj/item/ammo_magazine/a50 allowed_magazines = list(/obj/item/ammo_magazine/a50) +/obj/item/weapon/gun/projectile/deagle/update_icon() + ..() + if(ammo_magazine) + icon_state = "[initial(icon_state)]" + else + icon_state = "[initial(icon_state)]-e" + /obj/item/weapon/gun/projectile/deagle/gold desc = "A gold plated gun folded over a million times by superior martian gunsmiths. Uses .50 AE rounds." icon_state = "deagleg" diff --git a/code/modules/reagents/Chemistry-Machinery.dm b/code/modules/reagents/Chemistry-Machinery.dm index b58f1384da..5c4dc8c169 100644 --- a/code/modules/reagents/Chemistry-Machinery.dm +++ b/code/modules/reagents/Chemistry-Machinery.dm @@ -349,7 +349,7 @@ return if (istype(O,/obj/item/weapon/reagent_containers/glass) || \ - istype(O,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass) || \ + istype(O,/obj/item/weapon/reagent_containers/food/drinks/glass2) || \ istype(O,/obj/item/weapon/reagent_containers/food/drinks/shaker)) if (beaker) diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm index e7317b32e8..64cbd4a32c 100644 --- a/code/modules/reagents/Chemistry-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents.dm @@ -26,17 +26,19 @@ var/overdose = 0 var/scannable = 0 // Shows up on health analyzers. var/affects_dead = 0 - var/glass_icon_state = null - var/glass_name = null - var/glass_desc = null - var/glass_center_of_mass = null var/cup_icon_state = null var/cup_name = null var/cup_desc = null var/cup_center_of_mass = null + var/color = "#000000" var/color_weight = 1 + var/glass_icon = DRINK_ICON_DEFAULT + var/glass_name = "something" + var/glass_desc = "It's a glass of... what, exactly?" + var/list/glass_special = null // null equivalent to list() + /datum/reagent/proc/remove_self(var/amount) // Shortcut holder.remove_reagent(id, amount) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm index 20225508c6..842814bca2 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm @@ -6,8 +6,7 @@ metabolism = REM * 5 color = "#C80000" - glass_icon_state = "glass_red" - glass_name = "glass of tomato juice" + glass_name = "tomato juice" glass_desc = "Are you sure this is tomato juice?" /datum/reagent/blood/initialize_data(var/newdata) @@ -91,8 +90,7 @@ color = "#0064C877" metabolism = REM * 10 - glass_icon_state = "glass_clear" - glass_name = "glass of water" + glass_name = "water" glass_desc = "The father of all refreshments." /datum/reagent/water/touch_turf(var/turf/simulated/T) @@ -154,8 +152,7 @@ reagent_state = LIQUID color = "#660000" - glass_icon_state = "dr_gibb_glass" - glass_name = "glass of welder fuel" + glass_name = "welder fuel" glass_desc = "Unless you are an industrial tool, this is probably not safe for consumption." /datum/reagent/fuel/touch_turf(var/turf/T) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm index 4c3e461a27..89837746c3 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm @@ -66,8 +66,7 @@ var/targ_temp = 310 var/halluci = 0 - glass_icon_state = "glass_clear" - glass_name = "glass of ethanol" + glass_name = "ethanol" glass_desc = "A well-known alcohol with a variety of applications." /datum/reagent/ethanol/touch_mob(var/mob/living/L, var/amount) @@ -368,9 +367,10 @@ description = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." reagent_state = SOLID color = "#FFFFFF" - glass_icon_state = "iceglass" - glass_name = "glass of sugar" + + glass_name = "sugar" glass_desc = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." + glass_icon = DRINK_ICON_NOISY /datum/reagent/sugar/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.nutrition += removed * 3 diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm index 469c34a1c1..55a50bc925 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm @@ -383,8 +383,7 @@ description = "The raw essence of a banana." color = "#C3AF00" - glass_icon_state = "banana" - glass_name = "glass of banana juice" + glass_name = "banana juice" glass_desc = "The raw essence of a banana. HONK!" /datum/reagent/drink/juice/berry @@ -393,8 +392,7 @@ description = "A delicious blend of several different kinds of berries." color = "#990066" - glass_icon_state = "berryjuice" - glass_name = "glass of berry juice" + glass_name = "berry juice" glass_desc = "Berry juice. Or maybe it's jam. Who cares?" /datum/reagent/drink/juice/carrot @@ -403,8 +401,7 @@ description = "It is just like a carrot but without crunching." color = "#FF8C00" // rgb: 255, 140, 0 - glass_icon_state = "carrotjuice" - glass_name = "glass of carrot juice" + glass_name = "carrot juice" glass_desc = "It is just like a carrot but without crunching." /datum/reagent/drink/juice/carrot/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) @@ -417,8 +414,7 @@ description = "It's grrrrrape!" color = "#863333" - glass_icon_state = "grapejuice" - glass_name = "glass of grape juice" + glass_name = "grape juice" glass_desc = "It's grrrrrape!" /datum/reagent/juice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) @@ -448,8 +444,7 @@ description = "This juice is VERY sour." color = "#AFAF00" - glass_icon_state = "lemonjuice" - glass_name = "glass of lemon juice" + glass_name = "lemon juice" glass_desc = "Sour..." /datum/reagent/drink/juice/lime @@ -458,8 +453,7 @@ description = "The sweet-sour juice of limes." color = "#365E30" - glass_icon_state = "glass_green" - glass_name = "glass of lime juice" + glass_name = "lime juice" glass_desc = "A glass of sweet-sour lime juice" /datum/reagent/drink/juice/lime/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) @@ -474,8 +468,7 @@ description = "Both delicious AND rich in Vitamin C, what more do you need?" color = "#E78108" - glass_icon_state = "glass_orange" - glass_name = "glass of orange juice" + glass_name = "orange juice" glass_desc = "Vitamins! Yay!" /datum/reagent/drink/orangejuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) @@ -491,8 +484,7 @@ color = "#863353" strength = 5 - glass_icon_state = "poisonberryjuice" - glass_name = "glass of poison berry juice" + glass_name = "poison berry juice" glass_desc = "A glass of deadly juice." /datum/reagent/drink/juice/potato @@ -502,8 +494,7 @@ nutrition = 2 color = "#302000" - glass_icon_state = "glass_brown" - glass_name = "glass of potato juice" + glass_name = "potato juice" glass_desc = "Juice from a potato. Bleh." /datum/reagent/drink/juice/tomato @@ -512,8 +503,7 @@ description = "Tomatoes made into juice. What a waste of big, juicy tomatoes, huh?" color = "#731008" - glass_icon_state = "glass_red" - glass_name = "glass of tomato juice" + glass_name = "tomato juice" glass_desc = "Are you sure this is tomato juice?" /datum/reagent/drink/juice/tomato/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) @@ -528,8 +518,7 @@ description = "Delicious juice made from watermelon." color = "#B83333" - glass_icon_state = "glass_red" - glass_name = "glass of watermelon juice" + glass_name = "watermelon juice" glass_desc = "Delicious juice made from watermelon." // Everything else @@ -540,8 +529,7 @@ description = "An opaque white liquid produced by the mammary glands of mammals." color = "#DFDFDF" - glass_icon_state = "glass_white" - glass_name = "glass of milk" + glass_name = "milk" glass_desc = "White and nutritious goodness!" cup_icon_state = "cup_cream" @@ -554,14 +542,14 @@ description = "A delicious mixture of perfectly healthy mix and terrible chocolate." color = "#74533b" - glass_icon_state = "glass_brown" - glass_name = "glass of chocolate milk" - glass_desc = "Delciously fattening!" - cup_icon_state = "cup_brown" cup_name = "cup of chocolate milk" cup_desc = "Deliciously fattening!" + glass_name = "chocolate milk" + glass_desc = "Deliciously fattening!" + + /datum/reagent/drink/milk/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() if(alien == IS_DIONA) @@ -575,8 +563,7 @@ description = "The fatty, still liquid part of milk. Why don't you mix this with sum scotch, eh?" color = "#DFD7AF" - glass_icon_state = "glass_white" - glass_name = "glass of cream" + glass_name = "cream" glass_desc = "Ewwww..." cup_icon_state = "cup_cream" @@ -589,8 +576,7 @@ description = "An opaque white liquid made from soybeans." color = "#DFDFC7" - glass_icon_state = "glass_white" - glass_name = "glass of soy milk" + glass_name = "soy milk" glass_desc = "White and nutritious soy goodness!" cup_icon_state = "cup_cream" @@ -607,7 +593,6 @@ adj_sleepy = -3 adj_temp = 20 - glass_icon_state = "bigteacup" glass_name = "cup of tea" glass_desc = "Tasty black tea, it has antioxidants, it's good for you!" @@ -624,10 +609,9 @@ color = "#104038" // rgb: 16, 64, 56 adj_temp = -5 - glass_icon_state = "icedteaglass" - glass_name = "glass of iced tea" + glass_name = "iced tea" glass_desc = "No relation to a certain rap artist/ actor." - glass_center_of_mass = list("x"=15, "y"=10) + glass_special = list(DRINK_ICE) /datum/reagent/drink/coffee name = "Coffee" @@ -640,14 +624,14 @@ adj_temp = 25 overdose = 45 - glass_icon_state = "hot_coffee" - glass_name = "mug of coffee" - glass_desc = "Don't drop it, or you'll send scalding liquid and porcelain shards everywhere." - cup_icon_state = "cup_coffee" cup_name = "cup of coffee" cup_desc = "Don't drop it, or you'll send scalding liquid and porcelain shards everywhere." + glass_name = "cup of coffee" + glass_desc = "Don't drop it, or you'll send scalding liquid and glass shards everywhere." + + /datum/reagent/drink/coffee/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return @@ -680,21 +664,20 @@ color = "#102838" adj_temp = -5 - glass_icon_state = "icedcoffeeglass" - glass_name = "glass of iced coffee" + glass_name = "iced coffee" glass_desc = "A drink to perk you up and refresh you!" + glass_special = list(DRINK_ICE) /datum/reagent/drink/coffee/soy_latte name = "Soy Latte" id = "soy_latte" description = "A nice and tasty beverage while you are reading your hippie books." - color = "#664300" + color = "#C65905" adj_temp = 5 - glass_icon_state = "soy_latte" - glass_name = "glass of soy latte" glass_desc = "A nice and refreshing beverage while you are reading." - glass_center_of_mass = list("x"=15, "y"=9) + glass_name = "soy latte" + glass_desc = "A nice and refrshing beverage while you are reading." cup_icon_state = "cup_latte" cup_name = "cup of soy latte" @@ -708,13 +691,11 @@ name = "Cafe Latte" id = "cafe_latte" description = "A nice, strong and tasty beverage while you are reading." - color = "#664300" // rgb: 102, 67, 0 + color = "#C65905" adj_temp = 5 - glass_icon_state = "cafe_latte" - glass_name = "glass of cafe latte" + glass_name = "cafe latte" glass_desc = "A nice, strong and refreshing beverage while you are reading." - glass_center_of_mass = list("x"=15, "y"=9) cup_icon_state = "cup_latte" cup_name = "cup of cafe latte" @@ -733,8 +714,7 @@ nutrition = 2 adj_temp = 5 - glass_icon_state = "chocolateglass" - glass_name = "glass of hot chocolate" + glass_name = "hot chocolate" glass_desc = "Made with love! And cocoa beans." cup_icon_state = "cup_coco" @@ -750,9 +730,9 @@ adj_drowsy = -3 adj_temp = -5 - glass_icon_state = "glass_clear" - glass_name = "glass of soda water" + glass_name = "soda water" glass_desc = "Soda water. Why not make a scotch and soda?" + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/soda/grapesoda name = "Grape Soda" @@ -761,22 +741,22 @@ color = "#421C52" adj_drowsy = -3 - glass_icon_state = "gsodaglass" - glass_name = "glass of grape soda" + glass_name = "grape soda" glass_desc = "Looks like a delicious drink!" + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/soda/tonic name = "Tonic Water" id = "tonic" description = "It tastes strange but at least the quinine keeps the Space Malaria at bay." - color = "#664300" + color = "#619494" + adj_dizzy = -5 adj_drowsy = -3 adj_sleepy = -2 adj_temp = -5 - glass_icon_state = "glass_clear" - glass_name = "glass of tonic water" + glass_name = "tonic water" glass_desc = "Quinine tastes funny, but at least it'll keep that Space Malaria away." /datum/reagent/drink/soda/lemonade @@ -786,9 +766,9 @@ color = "#FFFF00" adj_temp = -5 - glass_icon_state = "lemonadeglass" - glass_name = "glass of lemonade" + glass_name = "lemonade" glass_desc = "Oh the nostalgia..." + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/soda/kiraspecial name = "Kira Special" @@ -797,10 +777,9 @@ color = "#CCCC99" adj_temp = -5 - glass_icon_state = "kiraspecial" - glass_name = "glass of Kira Special" + glass_name = "Kira Special" glass_desc = "Long live the guy who everyone had mistaken for a girl. Baka!" - glass_center_of_mass = list("x"=16, "y"=12) + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/soda/brownstar name = "Brown Star" @@ -809,8 +788,7 @@ color = "#9F3400" adj_temp = -2 - glass_icon_state = "brownstar" - glass_name = "glass of Brown Star" + glass_name = "Brown Star" glass_desc = "It's not what it sounds like..." /datum/reagent/drink/milkshake @@ -820,10 +798,8 @@ color = "#AEE5E4" adj_temp = -9 - glass_icon_state = "milkshake" - glass_name = "glass of milkshake" + glass_name = "milkshake" glass_desc = "Glorious brainfreezing mixture." - glass_center_of_mass = list("x"=16, "y"=7) /datum/reagent/milkshake/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -853,10 +829,8 @@ color = "#485000" adj_temp = -5 - glass_icon_state = "rewriter" - glass_name = "glass of Rewriter" + glass_name = "Rewriter" glass_desc = "The secret of the sanctuary of the Libarian..." - glass_center_of_mass = list("x"=16, "y"=9) /datum/reagent/drink/rewriter/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -870,10 +844,9 @@ adj_temp = -5 adj_sleepy = -2 - glass_icon_state = "nuka_colaglass" - glass_name = "glass of Nuka-Cola" + glass_name = "Nuka-Cola" glass_desc = "Don't cry, Don't raise your eye, It's only nuclear wasteland" - glass_center_of_mass = list("x"=16, "y"=6) + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/nuka_cola/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -889,10 +862,8 @@ description = "Made in the modern day with proper pomegranate substitute. Who uses real fruit, anyways?" color = "#FF004F" - glass_icon_state = "grenadineglass" - glass_name = "glass of grenadine syrup" + glass_name = "grenadine syrup" glass_desc = "Sweet and tangy, a bar syrup used to add color or flavor to drinks." - glass_center_of_mass = list("x"=17, "y"=6) /datum/reagent/drink/soda/space_cola name = "Space Cola" @@ -903,9 +874,9 @@ adj_drowsy = -3 adj_temp = -5 - glass_icon_state = "glass_brown" - glass_name = "glass of Space Cola" + glass_name = "Space Cola" glass_desc = "A glass of refreshing Space Cola" + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/soda/spacemountainwind name = "Mountain Wind" @@ -916,9 +887,9 @@ adj_sleepy = -1 adj_temp = -5 - glass_icon_state = "Space_mountain_wind_glass" - glass_name = "glass of Space Mountain Wind" + glass_name = "Space Mountain Wind" glass_desc = "Space Mountain Wind. As you know, there are no mountains in space, only wind." + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/soda/dr_gibb name = "Dr. Gibb" @@ -928,8 +899,7 @@ adj_drowsy = -6 adj_temp = -5 - glass_icon_state = "dr_gibb_glass" - glass_name = "glass of Dr. Gibb" + glass_name = "Dr. Gibb" glass_desc = "Dr. Gibb. Not as dangerous as the name might imply." /datum/reagent/drink/soda/space_up @@ -939,9 +909,9 @@ color = "#202800" adj_temp = -8 - glass_icon_state = "space-up_glass" - glass_name = "glass of Space-up" + glass_name = "Space-up" glass_desc = "Space-up. It helps keep your cool." + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/soda/lemon_lime name = "Lemon Lime" @@ -950,9 +920,9 @@ color = "#878F00" adj_temp = -8 - glass_icon_state = "lemonlime" - glass_name = "glass of lemon lime soda" + glass_name = "lemon lime soda" glass_desc = "A tangy substance made of 0.5% natural citrus!" + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/doctor_delight name = "The Doctor's Delight" @@ -962,10 +932,8 @@ color = "#FF8CFF" nutrition = 1 - glass_icon_state = "doctorsdelightglass" - glass_name = "glass of The Doctor's Delight" + glass_name = "The Doctor's Delight" glass_desc = "A healthy mixture of juices, guaranteed to keep you healthy until the next toolboxing takes place." - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/drink/doctor_delight/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -1018,17 +986,16 @@ color = "#619494" adj_temp = -5 - glass_icon_state = "iceglass" - glass_name = "glass of ice" + glass_name = "ice" glass_desc = "Generally, you're supposed to put something else in there too..." + glass_icon = DRINK_ICON_NOISY /datum/reagent/drink/nothing name = "Nothing" id = "nothing" description = "Absolutely nothing." - glass_icon_state = "nothing" - glass_name = "glass of nothing" + glass_name = "nothing" glass_desc = "Absolutely nothing." /* Alcohol */ @@ -1042,35 +1009,29 @@ color = "#33EE00" strength = 12 - glass_icon_state = "absintheglass" - glass_name = "glass of absinthe" + glass_name = "absinthe" glass_desc = "Wormwood, anise, oh my." - glass_center_of_mass = list("x"=16, "y"=5) /datum/reagent/ethanol/ale name = "Ale" id = "ale" description = "A dark alchoholic beverage made by malted barley and yeast." - color = "#664300" + color = "#4C3100" strength = 50 - glass_icon_state = "aleglass" - glass_name = "glass of ale" + glass_name = "ale" glass_desc = "A freezing pint of delicious ale" - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/beer name = "Beer" id = "beer" description = "An alcoholic beverage made from malted grains, hops, yeast, and water." - color = "#664300" + color = "#FFD300" strength = 50 nutriment_factor = 1 - glass_icon_state = "beerglass" - glass_name = "glass of beer" + glass_name = "beer" glass_desc = "A freezing pint of beer" - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/beer/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -1085,10 +1046,8 @@ color = "#0000CD" strength = 15 - glass_icon_state = "curacaoglass" - glass_name = "glass of blue curacao" + glass_name = "blue curacao" glass_desc = "Exotically blue, fruity drink, distilled from oranges." - glass_center_of_mass = list("x"=16, "y"=5) /datum/reagent/ethanol/cognac name = "Cognac" @@ -1097,22 +1056,18 @@ color = "#AB3C05" strength = 15 - glass_icon_state = "cognacglass" - glass_name = "glass of cognac" + glass_name = "cognac" glass_desc = "Damn, you feel like some kind of French aristocrat just by holding this." - glass_center_of_mass = list("x"=16, "y"=6) /datum/reagent/ethanol/deadrum name = "Deadrum" id = "deadrum" description = "Popular with the sailors. Not very popular with everyone else." - color = "#664300" + color = "#ECB633" strength = 50 - glass_icon_state = "rumglass" - glass_name = "glass of rum" + glass_name = "rum" glass_desc = "Now you want to Pray for a pirate suit, don't you?" - glass_center_of_mass = list("x"=16, "y"=12) /datum/reagent/ethanol/deadrum/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -1124,13 +1079,11 @@ name = "Gin" id = "gin" description = "It's gin. In space. I say, good sir." - color = "#664300" + color = "#0064C6" strength = 50 - glass_icon_state = "ginvodkaglass" - glass_name = "glass of gin" + glass_name = "gin" glass_desc = "A crystal clear glass of Griffeater gin." - glass_center_of_mass = list("x"=16, "y"=12) //Base type for alchoholic drinks containing coffee /datum/reagent/ethanol/coffee @@ -1168,13 +1121,11 @@ name = "Kahlua" id = "kahlua" description = "A widely known, Mexican coffee-flavoured liqueur. In production since 1936!" - color = "#664300" + color = "#4C3100" strength = 15 - glass_icon_state = "kahluaglass" - glass_name = "glass of RR coffee liquor" + glass_name = "RR coffee liquor" glass_desc = "DAMN, THIS THING LOOKS ROBUST" - glass_center_of_mass = list("x"=15, "y"=7) /datum/reagent/ethanol/melonliquor name = "Melon Liquor" @@ -1183,34 +1134,28 @@ color = "#138808" // rgb: 19, 136, 8 strength = 50 - glass_icon_state = "emeraldglass" - glass_name = "glass of melon liquor" + glass_name = "melon liquor" glass_desc = "A relatively sweet and fruity 46 proof liquor." - glass_center_of_mass = list("x"=16, "y"=5) /datum/reagent/ethanol/rum name = "Rum" id = "rum" description = "Yohoho and all that." - color = "#664300" + color = "#ECB633" strength = 15 - glass_icon_state = "rumglass" - glass_name = "glass of rum" + glass_name = "rum" glass_desc = "Now you want to Pray for a pirate suit, don't you?" - glass_center_of_mass = list("x"=16, "y"=12) /datum/reagent/ethanol/sake name = "Sake" id = "sake" description = "Anime's favorite drink." - color = "#664300" + color = "#DDDDDD" strength = 25 - glass_icon_state = "ginvodkaglass" - glass_name = "glass of sake" + glass_name = "sake" glass_desc = "A glass of sake." - glass_center_of_mass = list("x"=16, "y"=12) /datum/reagent/ethanol/tequila name = "Tequila" @@ -1219,10 +1164,8 @@ color = "#FFFF91" strength = 25 - glass_icon_state = "tequillaglass" - glass_name = "glass of Tequila" + glass_name = "Tequilla" glass_desc = "Now all that's missing is the weird colored shades!" - glass_center_of_mass = list("x"=16, "y"=12) /datum/reagent/ethanol/thirteenloko name = "Thirteen Loko" @@ -1232,8 +1175,7 @@ strength = 25 nutriment_factor = 1 - glass_icon_state = "thirteen_loko_glass" - glass_name = "glass of Thirteen Loko" + glass_name = "Thirteen Loko" glass_desc = "This is a glass of Thirteen Loko, it appears to be of the highest quality. The drink, not the glass." /datum/reagent/ethanol/thirteenloko/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) @@ -1252,10 +1194,8 @@ color = "#91FF91" // rgb: 145, 255, 145 strength = 15 - glass_icon_state = "vermouthglass" - glass_name = "glass of vermouth" + glass_name = "vermouth" glass_desc = "You wonder why you're even drinking this straight." - glass_center_of_mass = list("x"=16, "y"=12) /datum/reagent/ethanol/vodka name = "Vodka" @@ -1264,10 +1204,8 @@ color = "#0064C8" // rgb: 0, 100, 200 strength = 15 - glass_icon_state = "ginvodkaglass" - glass_name = "glass of vodka" + glass_name = "vodka" glass_desc = "The glass contain wodka. Xynta." - glass_center_of_mass = list("x"=16, "y"=12) /datum/reagent/ethanol/vodka/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -1277,13 +1215,11 @@ name = "Whiskey" id = "whiskey" description = "A superb and well-aged single-malt whiskey. Damn." - color = "#664300" + color = "#4C3100" strength = 25 - glass_icon_state = "whiskeyglass" - glass_name = "glass of whiskey" + glass_name = "whiskey" glass_desc = "The silky, smokey whiskey goodness inside the glass makes the drink look very classy." - glass_center_of_mass = list("x"=16, "y"=12) /datum/reagent/ethanol/wine name = "Wine" @@ -1292,10 +1228,8 @@ color = "#7E4043" // rgb: 126, 64, 67 strength = 15 - glass_icon_state = "wineglass" - glass_name = "glass of wine" + glass_name = "wine" glass_desc = "A very classy looking drink." - glass_center_of_mass = list("x"=15, "y"=7) // Cocktails @@ -1307,73 +1241,61 @@ color = "#365000" strength = 30 - glass_icon_state = "acidspitglass" - glass_name = "glass of Acid Spit" + glass_name = "Acid Spit" glass_desc = "A drink from the company archives. Made from live aliens." - glass_center_of_mass = list("x"=16, "y"=7) /datum/reagent/ethanol/alliescocktail name = "Allies Cocktail" id = "alliescocktail" description = "A drink made from your allies, not as sweet as when made from your enemies." - color = "#664300" + color = "#D8AC45" strength = 25 - glass_icon_state = "alliescocktail" - glass_name = "glass of Allies cocktail" + glass_name = "Allies cocktail" glass_desc = "A drink made from your allies." - glass_center_of_mass = list("x"=17, "y"=8) /datum/reagent/ethanol/aloe name = "Aloe" id = "aloe" description = "So very, very, very good." - color = "#664300" + color = "#B7EA75" strength = 15 - glass_icon_state = "aloe" - glass_name = "glass of Aloe" + glass_name = "Aloe" glass_desc = "Very, very, very good." - glass_center_of_mass = list("x"=17, "y"=8) /datum/reagent/ethanol/amasec name = "Amasec" id = "amasec" description = "Official drink of the Gun Club!" reagent_state = LIQUID - color = "#664300" + color = "#FF975D" strength = 25 - glass_icon_state = "amasecglass" - glass_name = "glass of Amasec" + glass_name = "Amasec" glass_desc = "Always handy before COMBAT!!!" - glass_center_of_mass = list("x"=16, "y"=9) /datum/reagent/ethanol/andalusia name = "Andalusia" id = "andalusia" description = "A nice, strangely named drink." - color = "#664300" + color = "#F4EA4A" strength = 15 - glass_icon_state = "andalusia" - glass_name = "glass of Andalusia" + glass_name = "Andalusia" glass_desc = "A nice, strange named drink." - glass_center_of_mass = list("x"=16, "y"=9) /datum/reagent/ethanol/antifreeze name = "Anti-freeze" id = "antifreeze" description = "Ultimate refreshment." - color = "#664300" + color = "#56DEEA" strength = 12 adj_temp = 20 targ_temp = 330 - glass_icon_state = "antifreeze" - glass_name = "glass of Anti-freeze" + glass_name = "Anti-freeze" glass_desc = "The ultimate refreshment." - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/atomicbomb name = "Atomic Bomb" @@ -1384,20 +1306,17 @@ strength = 10 druggy = 50 - glass_icon_state = "atomicbombglass" - glass_name = "glass of Atomic Bomb" + glass_name = "Atomic Bomb" glass_desc = "We cannot take legal responsibility for your actions after imbibing." - glass_center_of_mass = list("x"=15, "y"=7) /datum/reagent/ethanol/coffee/b52 name = "B-52" id = "b52" description = "Coffee, Irish Cream, and cognac. You will get bombed." - color = "#664300" + color = "#997650" strength = 12 - glass_icon_state = "b52glass" - glass_name = "glass of B-52" + glass_name = "B-52" glass_desc = "Kahlua, Irish cream, and congac. You will get bombed." /datum/reagent/ethanol/bahama_mama @@ -1407,10 +1326,8 @@ color = "#FF7F3B" strength = 25 - glass_icon_state = "bahama_mama" - glass_name = "glass of Bahama Mama" + glass_name = "Bahama Mama" glass_desc = "Tropical cocktail" - glass_center_of_mass = list("x"=16, "y"=5) /datum/reagent/ethanol/bananahonk name = "Banana Mama" @@ -1420,35 +1337,29 @@ color = "#FFFF91" strength = 12 - glass_icon_state = "bananahonkglass" - glass_name = "glass of Banana Honk" + glass_name = "Banana Honk" glass_desc = "A drink from Banana Heaven." - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/barefoot name = "Barefoot" id = "barefoot" description = "Barefoot and pregnant" - color = "#664300" + color = "#FFCDEA" strength = 30 - glass_icon_state = "b&p" - glass_name = "glass of Barefoot" + glass_name = "Barefoot" glass_desc = "Barefoot and pregnant" - glass_center_of_mass = list("x"=17, "y"=8) /datum/reagent/ethanol/beepsky_smash name = "Beepsky Smash" id = "beepskysmash" description = "Deny drinking this and prepare for THE LAW." reagent_state = LIQUID - color = "#664300" + color = "#404040" strength = 12 - glass_icon_state = "beepskysmashglass" glass_name = "Beepsky Smash" glass_desc = "Heavy, hot and strong. Just like the Iron fist of the LAW." - glass_center_of_mass = list("x"=18, "y"=10) /datum/reagent/ethanol/beepsky_smash/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -1462,8 +1373,7 @@ strength = 50 nutriment_factor = 2 - glass_icon_state = "glass_brown" - glass_name = "glass of bilk" + glass_name = "bilk" glass_desc = "A brew of milk and beer. For those alcoholics who fear osteoporosis." /datum/reagent/ethanol/black_russian @@ -1473,20 +1383,17 @@ color = "#360000" strength = 15 - glass_icon_state = "blackrussianglass" - glass_name = "glass of Black Russian" + glass_name = "Black Russian" glass_desc = "For the lactose-intolerant. Still as classy as a White Russian." - glass_center_of_mass = list("x"=16, "y"=9) /datum/reagent/ethanol/bloody_mary name = "Bloody Mary" id = "bloodymary" description = "A strange yet pleasurable mixture made of vodka, tomato and lime juice. Or at least you THINK the red stuff is tomato juice." - color = "#664300" + color = "#B40000" strength = 15 - glass_icon_state = "bloodymaryglass" - glass_name = "glass of Bloody Mary" + glass_name = "Bloody Mary" glass_desc = "Tomato juice, mixed with Vodka and a lil' bit of lime. Tastes like liquid murder." /datum/reagent/ethanol/booger @@ -1496,21 +1403,18 @@ color = "#8CFF8C" strength = 30 - glass_icon_state = "booger" - glass_name = "glass of Booger" + glass_name = "Booger" glass_desc = "Ewww..." /datum/reagent/ethanol/coffee/brave_bull name = "Brave Bull" id = "bravebull" description = "It's just as effective as Dutch-Courage!" - color = "#664300" + color = "#4C3100" strength = 15 - glass_icon_state = "bravebullglass" - glass_name = "glass of Brave Bull" + glass_name = "Brave Bull" glass_desc = "Tequilla and coffee liquor, brought together in a mouthwatering mixture. Drink up." - glass_center_of_mass = list("x"=15, "y"=8) /datum/reagent/ethanol/changelingsting name = "Changeling Sting" @@ -1519,21 +1423,18 @@ color = "#2E6671" strength = 10 - glass_icon_state = "changelingsting" - glass_name = "glass of Changeling Sting" + glass_name = "Changeling Sting" glass_desc = "A stingy drink." /datum/reagent/ethanol/martini name = "Classic Martini" id = "martini" description = "Vermouth with Gin. Not quite how 007 enjoyed it, but still delicious." - color = "#664300" + color = "#0064C8" strength = 25 - glass_icon_state = "martiniglass" - glass_name = "glass of classic martini" + glass_name = "classic martini" glass_desc = "Damn, the bartender even stirred it, not shook it." - glass_center_of_mass = list("x"=17, "y"=8) /datum/reagent/ethanol/cuba_libre name = "Cuba Libre" @@ -1542,10 +1443,8 @@ color = "#3E1B00" strength = 30 - glass_icon_state = "cubalibreglass" - glass_name = "glass of Cuba Libre" + glass_name = "Cuba Libre" glass_desc = "A classic mix of rum and cola." - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/demonsblood name = "Demons Blood" @@ -1554,10 +1453,8 @@ color = "#820000" strength = 15 - glass_icon_state = "demonsblood" - glass_name = "glass of Demons' Blood" + glass_name = "Demons' Blood" glass_desc = "Just looking at this thing makes the hair at the back of your neck stand up." - glass_center_of_mass = list("x"=16, "y"=2) /datum/reagent/ethanol/devilskiss name = "Devils Kiss" @@ -1566,10 +1463,8 @@ color = "#A68310" strength = 15 - glass_icon_state = "devilskiss" - glass_name = "glass of Devil's Kiss" + glass_name = "Devil's Kiss" glass_desc = "Creepy time!" - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/driestmartini name = "Driest Martini" @@ -1579,33 +1474,29 @@ color = "#2E6671" strength = 12 - glass_icon_state = "driestmartiniglass" - glass_name = "glass of Driest Martini" + glass_name = "Driest Martini" glass_desc = "Only for the experienced. You think you see sand floating in the glass." - glass_center_of_mass = list("x"=17, "y"=8) /datum/reagent/ethanol/ginfizz name = "Gin Fizz" id = "ginfizz" description = "Refreshingly lemony, deliciously dry." - color = "#664300" + color = "#FFFFAE" strength = 30 - glass_icon_state = "ginfizzglass" - glass_name = "glass of gin fizz" + glass_name = "gin fizz" glass_desc = "Refreshingly lemony, deliciously dry." - glass_center_of_mass = list("x"=16, "y"=7) /datum/reagent/ethanol/grog name = "Grog" id = "grog" description = "Watered-down rum, pirate approved!" reagent_state = LIQUID - color = "#664300" + color = "#FFBB00" strength = 100 - glass_icon_state = "grogglass" - glass_name = "glass of grog" + + glass_name = "grog" glass_desc = "A fine and cepa drink for Space." /datum/reagent/ethanol/erikasurprise @@ -1615,87 +1506,76 @@ color = "#2E6671" strength = 15 - glass_icon_state = "erikasurprise" - glass_name = "glass of Erika Surprise" + glass_name = "Erika Surprise" glass_desc = "The surprise is, it's green!" - glass_center_of_mass = list("x"=16, "y"=9) /datum/reagent/ethanol/gargle_blaster name = "Pan-Galactic Gargle Blaster" id = "gargleblaster" description = "Whoah, this stuff looks volatile!" reagent_state = LIQUID - color = "#664300" + color = "#7F00FF" strength = 10 - glass_icon_state = "gargleblasterglass" - glass_name = "glass of Pan-Galactic Gargle Blaster" + glass_name = "Pan-Galactic Gargle Blaster" glass_desc = "Does... does this mean that Arthur and Ford are on the station? Oh joy." - glass_center_of_mass = list("x"=17, "y"=6) /datum/reagent/ethanol/gintonic name = "Gin and Tonic" id = "gintonic" description = "An all time classic, mild cocktail." - color = "#664300" + color = "#0064C8" strength = 50 - glass_icon_state = "gintonicglass" - glass_name = "glass of gin and tonic" + glass_name = "gin and tonic" glass_desc = "A mild but still great cocktail. Drink up, like a true Englishman." - glass_center_of_mass = list("x"=16, "y"=7) /datum/reagent/ethanol/goldschlager name = "Goldschlager" id = "goldschlager" description = "100 proof cinnamon schnapps, made for alcoholic teen girls on spring break." - color = "#664300" + color = "#F4E46D" strength = 15 - glass_icon_state = "ginvodkaglass" - glass_name = "glass of Goldschlager" + glass_name = "Goldschlager" glass_desc = "100 proof that teen girls will drink anything with gold in it." - glass_center_of_mass = list("x"=16, "y"=12) /datum/reagent/ethanol/hippies_delight name = "Hippies' Delight" id = "hippiesdelight" description = "You just don't get it maaaan." reagent_state = LIQUID - color = "#664300" + color = "#FF88FF" strength = 15 druggy = 50 - glass_icon_state = "hippiesdelightglass" - glass_name = "glass of Hippie's Delight" + glass_name = "Hippie's Delight" glass_desc = "A drink enjoyed by people during the 1960's." - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/hooch name = "Hooch" id = "hooch" description = "Either someone's failure at cocktail making or attempt in alchohol production. In any case, do you really want to drink that?" - color = "#664300" + color = "#4C3100" strength = 25 toxicity = 2 - glass_icon_state = "glass_brown2" - glass_name = "glass of Hooch" + glass_name = "Hooch" glass_desc = "You've really hit rock bottom now... your liver packed its bags and left last night." /datum/reagent/ethanol/iced_beer name = "Iced Beer" id = "iced_beer" description = "A beer which is so cold the air around it freezes." - color = "#664300" + + color = "#FFD300" strength = 50 adj_temp = -20 targ_temp = 270 - glass_icon_state = "iced_beerglass" - glass_name = "glass of iced beer" + glass_name = "iced beer" glass_desc = "A beer so frosty, the air around it freezes." - glass_center_of_mass = list("x"=16, "y"=7) + glass_special = list(DRINK_ICE) /datum/reagent/ethanol/irishcarbomb name = "Irish Car Bomb" @@ -1704,81 +1584,68 @@ color = "#2E6671" strength = 15 - glass_icon_state = "irishcarbomb" - glass_name = "glass of Irish Car Bomb" + glass_name = "Irish Car Bomb" glass_desc = "An irish car bomb." - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/coffee/irishcoffee name = "Irish Coffee" id = "irishcoffee" description = "Coffee, and alcohol. More fun than a Mimosa to drink in the morning." - color = "#664300" + color = "#4C3100" strength = 15 - glass_icon_state = "irishcoffeeglass" - glass_name = "glass of Irish coffee" + glass_name = "Irish coffee" glass_desc = "Coffee and alcohol. More fun than a Mimosa to drink in the morning." - glass_center_of_mass = list("x"=15, "y"=10) /datum/reagent/ethanol/irish_cream name = "Irish Cream" id = "irishcream" description = "Whiskey-imbued cream, what else would you expect from the Irish." - color = "#664300" + color = "#DDDD9A3" strength = 25 - glass_icon_state = "irishcreamglass" - glass_name = "glass of Irish cream" + glass_name = "Irish cream" glass_desc = "It's cream, mixed with whiskey. What else would you expect from the Irish?" - glass_center_of_mass = list("x"=16, "y"=9) /datum/reagent/ethanol/longislandicedtea name = "Long Island Iced Tea" id = "longislandicedtea" description = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only." - color = "#664300" + color = "#895B1F" strength = 12 - glass_icon_state = "longislandicedteaglass" - glass_name = "glass of Long Island iced tea" + glass_name = "Long Island iced tea" glass_desc = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only." - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/manhattan name = "Manhattan" id = "manhattan" description = "The Detective's undercover drink of choice. He never could stomach gin..." - color = "#664300" + color = "#C13600" strength = 15 - glass_icon_state = "manhattanglass" - glass_name = "glass of Manhattan" + glass_name = "Manhattan" glass_desc = "The Detective's undercover drink of choice. He never could stomach gin..." - glass_center_of_mass = list("x"=17, "y"=8) /datum/reagent/ethanol/manhattan_proj name = "Manhattan Project" id = "manhattan_proj" description = "A scientist's drink of choice, for pondering ways to blow up the station." - color = "#664300" + color = "#C15D00" strength = 10 druggy = 30 - glass_icon_state = "proj_manhattanglass" - glass_name = "glass of Manhattan Project" + glass_name = "Manhattan Project" glass_desc = "A scienitst drink of choice, for thinking how to blow up the station." - glass_center_of_mass = list("x"=17, "y"=8) /datum/reagent/ethanol/manly_dorf name = "The Manly Dorf" id = "manlydorf" description = "Beer and Ale, brought together in a delicious mix. Intended for true men only." - color = "#664300" + color = "#4C3100" strength = 25 - glass_icon_state = "manlydorfglass" - glass_name = "glass of The Manly Dorf" + glass_name = "The Manly Dorf" glass_desc = "A manly concotion made from Ale and Beer. Intended for true men only." /datum/reagent/ethanol/margarita @@ -1788,34 +1655,29 @@ color = "#8CFF8C" strength = 15 - glass_icon_state = "margaritaglass" - glass_name = "glass of margarita" + glass_name = "margarita" glass_desc = "On the rocks with salt on the rim. Arriba~!" - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/mead name = "Mead" id = "mead" description = "A Viking's drink, though a cheap one." reagent_state = LIQUID - color = "#664300" + color = "#FFBB00" strength = 30 nutriment_factor = 1 - glass_icon_state = "meadglass" - glass_name = "glass of mead" + glass_name = "mead" glass_desc = "A Viking's beverage, though a cheap one." - glass_center_of_mass = list("x"=17, "y"=10) /datum/reagent/ethanol/moonshine name = "Moonshine" id = "moonshine" description = "You've really hit rock bottom now... your liver packed its bags and left last night." - color = "#664300" + color = "#0064C8" strength = 12 - glass_icon_state = "glass_clear" - glass_name = "glass of moonshine" + glass_name = "moonshine" glass_desc = "You've really hit rock bottom now... your liver packed its bags and left last night." /datum/reagent/ethanol/neurotoxin @@ -1826,10 +1688,10 @@ color = "#2E2E61" strength = 10 - glass_icon_state = "neurotoxinglass" - glass_name = "glass of Neurotoxin" + glass_name = "Neurotoxin" glass_desc = "A drink that is guaranteed to knock you silly." - glass_center_of_mass = list("x"=16, "y"=8) + glass_icon = DRINK_ICON_NOISY + glass_special = list("neuroright") /datum/reagent/ethanol/neurotoxin/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -1842,10 +1704,8 @@ color = "#585840" strength = 30 - glass_icon_state = "patronglass" - glass_name = "glass of Patron" + glass_name = "Patron" glass_desc = "Drinking patron in the bar, with all the subpar ladies." - glass_center_of_mass = list("x"=7, "y"=8) /datum/reagent/ethanol/pwine name = "Poison Wine" @@ -1856,10 +1716,8 @@ druggy = 50 halluci = 10 - glass_icon_state = "pwineglass" - glass_name = "glass of ???" + glass_name = "???" glass_desc = "A black ichor with an oily purple sheer on top. Are you sure you should drink this?" - glass_center_of_mass = list("x"=16, "y"=5) /datum/reagent/ethanol/pwine/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -1881,24 +1739,20 @@ color = "#C73C00" strength = 30 - glass_icon_state = "red_meadglass" - glass_name = "glass of red mead" + glass_name = "red mead" glass_desc = "A true Viking's beverage, though its color is strange." - glass_center_of_mass = list("x"=17, "y"=10) /datum/reagent/ethanol/sbiten name = "Sbiten" id = "sbiten" description = "A spicy Vodka! Might be a little hot for the little guys!" - color = "#664300" + color = "#FFA371" strength = 15 adj_temp = 50 targ_temp = 360 - glass_icon_state = "sbitenglass" - glass_name = "glass of Sbiten" + glass_name = "Sbiten" glass_desc = "A spicy mix of Vodka and Spice. Very hot." - glass_center_of_mass = list("x"=17, "y"=8) /datum/reagent/ethanol/screwdrivercocktail name = "Screwdriver" @@ -1907,23 +1761,19 @@ color = "#A68310" strength = 15 - glass_icon_state = "screwdriverglass" - glass_name = "glass of Screwdriver" + glass_name = "Screwdriver" glass_desc = "A simple, yet superb mixture of Vodka and orange juice. Just the thing for the tired engineer." - glass_center_of_mass = list("x"=15, "y"=10) /datum/reagent/ethanol/silencer name = "Silencer" id = "silencer" description = "A drink from Mime Heaven." nutriment_factor = 1 - color = "#664300" + color = "#FFFFFF" strength = 12 - glass_icon_state = "silencerglass" - glass_name = "glass of Silencer" + glass_name = "Silencer" glass_desc = "A drink from mime Heaven." - glass_center_of_mass = list("x"=16, "y"=9) /datum/reagent/ethanol/singulo name = "Singulo" @@ -1932,10 +1782,8 @@ color = "#2E6671" strength = 10 - glass_icon_state = "singulo" - glass_name = "glass of Singulo" + glass_name = "Singulo" glass_desc = "A blue-space beverage." - glass_center_of_mass = list("x"=17, "y"=4) /datum/reagent/ethanol/snowwhite name = "Snow White" @@ -1944,10 +1792,8 @@ color = "#FFFFFF" strength = 30 - glass_icon_state = "snowwhite" - glass_name = "glass of Snow White" + glass_name = "Snow White" glass_desc = "A cold refreshment." - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/suidream name = "Sui Dream" @@ -1956,10 +1802,8 @@ color = "#00A86B" strength = 100 - glass_icon_state = "sdreamglass" - glass_name = "glass of Sui Dream" + glass_name = "Sui Dream" glass_desc = "A froofy, fruity, and sweet mixed drink. Understanding the name only brings shame." - glass_center_of_mass = list("x"=16, "y"=5) /datum/reagent/ethanol/syndicatebomb name = "Syndicate Bomb" @@ -1968,10 +1812,8 @@ color = "#2E6671" strength = 10 - glass_icon_state = "syndicatebomb" - glass_name = "glass of Syndicate Bomb" + glass_name = "Syndicate Bomb" glass_desc = "Tastes like terrorism!" - glass_center_of_mass = list("x"=16, "y"=4) /datum/reagent/ethanol/tequilla_sunrise name = "Tequila Sunrise" @@ -1980,8 +1822,7 @@ color = "#FFE48C" strength = 25 - glass_icon_state = "tequillasunriseglass" - glass_name = "glass of Tequila Sunrise" + glass_name = "Tequilla Sunrise" glass_desc = "Oh great, now you feel nostalgic about sunrises back on Terra..." /datum/reagent/ethanol/threemileisland @@ -1992,36 +1833,32 @@ strength = 10 druggy = 50 - glass_icon_state = "threemileislandglass" - glass_name = "glass of Three Mile Island iced tea" + glass_name = "Three Mile Island iced tea" glass_desc = "A glass of this is sure to prevent a meltdown." - glass_center_of_mass = list("x"=16, "y"=2) /datum/reagent/ethanol/toxins_special name = "Toxins Special" id = "phoronspecial" description = "This thing is ON FIRE! CALL THE DAMN SHUTTLE!" reagent_state = LIQUID - color = "#664300" + color = "#7F00FF" strength = 10 adj_temp = 15 targ_temp = 330 - glass_icon_state = "toxinsspecialglass" - glass_name = "glass of Toxins Special" + glass_name = "Toxins Special" glass_desc = "Whoah, this thing is on FIRE" /datum/reagent/ethanol/vodkamartini name = "Vodka Martini" id = "vodkamartini" description = "Vodka with Gin. Not quite how 007 enjoyed it, but still delicious." - color = "#664300" + color = "#0064C8" strength = 12 - glass_icon_state = "martiniglass" - glass_name = "glass of vodka martini" + glass_name = "vodka martini" glass_desc ="A bastardisation of the classic martini. Still great." - glass_center_of_mass = list("x"=17, "y"=8) + /datum/reagent/ethanol/vodkatonic name = "Vodka and Tonic" @@ -2030,10 +1867,9 @@ color = "#0064C8" // rgb: 0, 100, 200 strength = 15 - glass_icon_state = "vodkatonicglass" - glass_name = "glass of vodka and tonic" + glass_name = "vodka and tonic" glass_desc = "For when a gin and tonic isn't Russian enough." - glass_center_of_mass = list("x"=16, "y"=7) + /datum/reagent/ethanol/white_russian name = "White Russian" @@ -2042,10 +1878,9 @@ color = "#A68340" strength = 15 - glass_icon_state = "whiterussianglass" - glass_name = "glass of White Russian" + glass_name = "White Russian" glass_desc = "A very nice looking drink. But that's just, like, your opinion, man." - glass_center_of_mass = list("x"=16, "y"=9) + /datum/reagent/ethanol/whiskey_cola name = "Whiskey Cola" @@ -2054,22 +1889,19 @@ color = "#3E1B00" strength = 25 - glass_icon_state = "whiskeycolaglass" - glass_name = "glass of whiskey cola" + glass_name = "whiskey cola" glass_desc = "An innocent-looking mixture of cola and Whiskey. Delicious." - glass_center_of_mass = list("x"=16, "y"=9) + /datum/reagent/ethanol/whiskeysoda name = "Whiskey Soda" id = "whiskeysoda" description = "For the more refined griffon." - color = "#664300" + color = "#EAB300" strength = 15 - glass_icon_state = "whiskeysodaglass2" - glass_name = "glass of whiskey soda" + glass_name = "whiskey soda" glass_desc = "Ultimate refreshment." - glass_center_of_mass = list("x"=16, "y"=9) /datum/reagent/ethanol/specialwhiskey // I have no idea what this is and where it comes from name = "Special Blend Whiskey" @@ -2078,7 +1910,5 @@ color = "#523600" strength = 7 - glass_icon_state = "whiskeyglass" - glass_name = "glass of special blend whiskey" - glass_desc = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything. The smell of it singes your nostrils." - glass_center_of_mass = list("x"=16, "y"=12) + glass_name = "special blend whiskey" + glass_desc = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything." diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm index c3cb7b4d2b..92d09d1e18 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm @@ -112,8 +112,7 @@ color = "#C8A5DC" affects_dead = 1 //This can even heal dead people. - glass_icon_state = "golden_cup" - glass_name = "golden cup" + glass_name = "liquid gold" glass_desc = "It's magic. We don't have to explain it." /datum/reagent/adminordrazine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) @@ -197,8 +196,7 @@ description = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality." color = "#E0E8EF" - glass_icon_state = "glass_clear" - glass_name = "glass of holy water" + glass_name = "holy water" glass_desc = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality." /datum/reagent/water/holywater/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm index bc0072511a..884ee830f0 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm @@ -331,13 +331,10 @@ id = "beer2" description = "An alcoholic beverage made from malted grains, hops, yeast, and water. The fermentation appears to be incomplete." //If the players manage to analyze this, they deserve to know something is wrong. reagent_state = LIQUID - color = "#664300" + color = "#FFD300" - glass_icon_state = "beerglass" - glass_name = "glass of beer" + glass_name = "beer" glass_desc = "A freezing pint of beer" - glass_center_of_mass = list("x"=16, "y"=8) - /* Drugs */ /datum/reagent/space_drugs diff --git a/code/modules/reagents/reagent_containers/drinkingglass/drinkingglass.dm b/code/modules/reagents/reagent_containers/drinkingglass/drinkingglass.dm new file mode 100644 index 0000000000..c367d8b09c --- /dev/null +++ b/code/modules/reagents/reagent_containers/drinkingglass/drinkingglass.dm @@ -0,0 +1,146 @@ +#define DRINK_ICON_FILE 'icons/pdrink.dmi' + +/var/const/DRINK_FIZZ = "fizz" +/var/const/DRINK_ICE = "ice" +/var/const/DRINK_ICON_DEFAULT = "" +/var/const/DRINK_ICON_NOISY = "_noise" + +/obj/item/weapon/reagent_containers/food/drinks/glass2 + name = "glass" // Name when empty + var/base_name = "glass" // Name to put in front of drinks, i.e. "[base_name] of [contents]" + desc = "A generic drinking glass." // Description when empty + icon = DRINK_ICON_FILE + var/base_icon = "square" // Base icon name + volume = 30 + + var/list/filling_states // List of percentages full that have icons + + var/list/extras = list() // List of extras. Two extras maximum + + var/rim_pos + + center_of_mass = list("x"=16, "y"=10) + + amount_per_transfer_from_this = 5 + possible_transfer_amounts = list(5,10,15,30) + flags = OPENCONTAINER + +/obj/item/weapon/reagent_containers/food/drinks/glass2/examine(mob/M as mob) + ..() + + for(var/I in extras) + if(istype(I, /obj/item/weapon/glass_extra)) + M << "There is \a [I] in \the [src]." + else if(istype(I, /obj/item/weapon/reagent_containers/food/snacks/fruit_slice)) + M << "There is \a [I] on the rim." + else + M << "There is \a [I] somewhere on the glass. Somehow." + + if(has_ice()) + M << "There is some ice floating in the drink." + + if(has_fizz()) + M << "It is fizzing slightly." + +/obj/item/weapon/reagent_containers/food/drinks/glass2/proc/has_ice() + if(reagents.reagent_list.len > 0) + var/datum/reagent/R = reagents.get_master_reagent() + if(!((R.id == "ice") || ("ice" in R.glass_special))) // if it's not a cup of ice, and it's not already supposed to have ice in, see if the bartender's put ice in it + if(reagents.has_reagent("ice", reagents.total_volume / 10)) // 10% ice by volume + return 1 + + return 0 + +/obj/item/weapon/reagent_containers/food/drinks/glass2/proc/has_fizz() + if(reagents.reagent_list.len > 0) + var/datum/reagent/R = reagents.get_master_reagent() + if(!("fizz" in R.glass_special)) + var/totalfizzy = 0 + for(var/datum/reagent/re in reagents.reagent_list) + if("fizz" in re.glass_special) + totalfizzy += re.volume + if(totalfizzy >= reagents.total_volume / 5) // 20% fizzy by volume + return 1 + return 0 + +/obj/item/weapon/reagent_containers/food/drinks/glass2/New() + ..() + icon_state = base_icon + +/obj/item/weapon/reagent_containers/food/drinks/glass2/on_reagent_change() + ..() + update_icon() + +/obj/item/weapon/reagent_containers/food/drinks/glass2/proc/can_add_extra(obj/item/weapon/glass_extra/GE) + if(!("[base_icon]_[GE.glass_addition]left" in icon_states(DRINK_ICON_FILE))) + return 0 + if(!("[base_icon]_[GE.glass_addition]right" in icon_states(DRINK_ICON_FILE))) + return 0 + + return 1 + +/obj/item/weapon/reagent_containers/food/drinks/glass2/update_icon() + underlays.Cut() + + if (reagents.reagent_list.len > 0) + var/datum/reagent/R = reagents.get_master_reagent() + name = "[base_name] of [R.glass_name ? R.glass_name : "something"]" + desc = R.glass_desc ? R.glass_desc : initial(desc) + + var/list/under_liquid = list() + var/list/over_liquid = list() + + var/amnt = 100 + var/percent = round((reagents.total_volume / volume) * 100) + for(var/k in filling_states) + if(percent <= k) + amnt = k + break + + if(has_ice()) + over_liquid |= "[base_icon][amnt]_ice" + + if(has_fizz()) + over_liquid |= "[base_icon][amnt]_fizz" + + for(var/S in R.glass_special) + if("[base_icon]_[S]" in icon_states(DRINK_ICON_FILE)) + under_liquid |= "[base_icon]_[S]" + else if("[base_icon][amnt]_[S]" in icon_states(DRINK_ICON_FILE)) + over_liquid |= "[base_icon][amnt]_[S]" + + for(var/k in under_liquid) + underlays += image(DRINK_ICON_FILE, src, k, -3) + + var/image/filling = image(DRINK_ICON_FILE, src, "[base_icon][amnt][R.glass_icon]", -2) + filling.color = reagents.get_color() + underlays += filling + + for(var/k in over_liquid) + underlays += image(DRINK_ICON_FILE, src, k, -1) + else + name = initial(name) + desc = initial(desc) + + var/side = "left" + for(var/item in extras) + if(istype(item, /obj/item/weapon/glass_extra)) + var/obj/item/weapon/glass_extra/GE = item + var/image/I = image(DRINK_ICON_FILE, src, "[base_icon]_[GE.glass_addition][side]") + if(GE.glass_color) + I.color = GE.glass_color + underlays += I + else if(istype(item, /obj/item/weapon/reagent_containers/food/snacks/fruit_slice)) + var/obj/FS = item + var/image/I = image(FS) + + var/fsy = rim_pos[1] - 20 + var/fsx = rim_pos[side == "left" ? 2 : 3] - 16 + + var/matrix/M = matrix() + M.Scale(0.5) + M.Translate(fsx, fsy) + I.transform = M + underlays += I + else continue + side = "right" diff --git a/code/modules/reagents/reagent_containers/drinkingglass/extras.dm b/code/modules/reagents/reagent_containers/drinkingglass/extras.dm new file mode 100644 index 0000000000..5a92b61c88 --- /dev/null +++ b/code/modules/reagents/reagent_containers/drinkingglass/extras.dm @@ -0,0 +1,72 @@ +/obj/item/weapon/reagent_containers/food/drinks/glass2/attackby(obj/item/I as obj, mob/user as mob) + if(extras.len >= 2) return ..() // max 2 extras, one on each side of the drink + + if(istype(I, /obj/item/weapon/glass_extra)) + var/obj/item/weapon/glass_extra/GE = I + if(can_add_extra(GE)) + extras += GE + user.remove_from_mob(GE) + GE.loc = src + user << "You add \the [GE] to \the [src]." + update_icon() + else + user << "There's no space to put \the [GE] on \the [src]!" + else if(istype(I, /obj/item/weapon/reagent_containers/food/snacks/fruit_slice)) + if(!rim_pos) + user << "There's no space to put \the [I] on \the [src]!" + return + var/obj/item/weapon/reagent_containers/food/snacks/fruit_slice/FS = I + extras += FS + user.remove_from_mob(FS) + FS.pixel_x = 0 // Reset its pixel offsets so the icons work! + FS.pixel_y = 0 + FS.loc = src + user << "You add \the [FS] to \the [src]." + update_icon() + else + return ..() + +/obj/item/weapon/reagent_containers/food/drinks/glass2/attack_hand(mob/user as mob) + if(src != user.get_inactive_hand()) + return ..() + + if(!extras.len) + user << "There's nothing on the glass to remove!" + return + + var/choice = input(user, "What would you like to remove from the glass?") as null|anything in extras + if(!choice || !(choice in extras)) + return + + if(user.put_in_active_hand(choice)) + user << "You remove \the [choice] from \the [src]." + extras -= choice + else + user << "Something went wrong, please try again." + + update_icon() + +/obj/item/weapon/glass_extra + name = "generic glass addition" + desc = "This goes on a glass." + var/glass_addition + var/glass_desc + var/glass_color + w_class = 1 + icon = DRINK_ICON_FILE + +/obj/item/weapon/glass_extra/stick + name = "stick" + desc = "This goes in a glass." + glass_addition = "stick" + glass_desc = "There is a stick in the glass." + icon_state = "stick" + +/obj/item/weapon/glass_extra/straw + name = "straw" + desc = "This goes in a glass." + glass_addition = "straw" + glass_desc = "There is a straw in the glass." + icon_state = "straw" + +#undef DRINK_ICON_FILE diff --git a/code/modules/reagents/reagent_containers/drinkingglass/glass_boxes.dm b/code/modules/reagents/reagent_containers/drinkingglass/glass_boxes.dm new file mode 100644 index 0000000000..d9c19321ca --- /dev/null +++ b/code/modules/reagents/reagent_containers/drinkingglass/glass_boxes.dm @@ -0,0 +1,75 @@ +/obj/item/weapon/storage/box/mixedglasses + name = "glassware box" + desc = "A box of assorted glassware" + can_hold = list(/obj/item/weapon/reagent_containers/food/drinks/glass2) + New() + ..() + new /obj/item/weapon/reagent_containers/food/drinks/glass2/square(src) + new /obj/item/weapon/reagent_containers/food/drinks/glass2/rocks(src) + new /obj/item/weapon/reagent_containers/food/drinks/glass2/shake(src) + new /obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail(src) + new /obj/item/weapon/reagent_containers/food/drinks/glass2/shot(src) + new /obj/item/weapon/reagent_containers/food/drinks/glass2/pint(src) + new /obj/item/weapon/reagent_containers/food/drinks/glass2/mug(src) + new /obj/item/weapon/reagent_containers/food/drinks/glass2/wine(src) + +/obj/item/weapon/storage/box/glasses + name = "box of glasses" + var/glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2 + can_hold = list(/obj/item/weapon/reagent_containers/food/drinks/glass2) + New() + ..() + + for(var/i = 1 to 7) + new glass_type(src) + +/obj/item/weapon/storage/box/glasses/square + name = "box of half-pint glasses" + glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/square + +/obj/item/weapon/storage/box/glasses/rocks + name = "box of rocks glasses" + glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/rocks + +/obj/item/weapon/storage/box/glasses/shake + name = "box of milkshake glasses" + glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/shake + +/obj/item/weapon/storage/box/glasses/cocktail + name = "box of cocktail glasses" + glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail + +/obj/item/weapon/storage/box/glasses/shot + name = "box of shot glasses" + glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/shot + +/obj/item/weapon/storage/box/glasses/pint + name = "box of pint glasses" + glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/pint + +/obj/item/weapon/storage/box/glasses/mug + name = "box of glass mugs" + glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/mug + +/obj/item/weapon/storage/box/glasses/wine + name = "box of wine glasses" + glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/wine + +/obj/item/weapon/storage/box/glass_extras + name = "box of cocktail garnishings" + var/extra_type = /obj/item/weapon/glass_extra + can_hold = list(/obj/item/weapon/glass_extra) + storage_slots = 14 + New() + ..() + + for(var/i = 1 to 14) + new extra_type(src) + +/obj/item/weapon/storage/box/glass_extras/straws + name = "box of straws" + extra_type = /obj/item/weapon/glass_extra/straw + +/obj/item/weapon/storage/box/glass_extras/sticks + name = "box of drink sticks" + extra_type = /obj/item/weapon/glass_extra/stick diff --git a/code/modules/reagents/reagent_containers/drinkingglass/glass_types.dm b/code/modules/reagents/reagent_containers/drinkingglass/glass_types.dm new file mode 100644 index 0000000000..feec8bf16e --- /dev/null +++ b/code/modules/reagents/reagent_containers/drinkingglass/glass_types.dm @@ -0,0 +1,72 @@ +/obj/item/weapon/reagent_containers/food/drinks/glass2/square + name = "half-pint glass" + base_name = "glass" + base_icon = "square" + desc = "Your standard drinking glass." + filling_states = list(20, 40, 60, 80, 100) + volume = 30 + possible_transfer_amounts = list(5,10,15,30) + rim_pos = list(23,13,20) // y, x0, x1 + +/obj/item/weapon/reagent_containers/food/drinks/glass2/rocks + name = "rocks glass" + base_name = "glass" + base_icon = "rocks" + filling_states = list(25, 50, 75, 100) + volume = 20 + possible_transfer_amounts = list(5,10,20) + rim_pos = list(21, 10, 23) + +/obj/item/weapon/reagent_containers/food/drinks/glass2/shake + name = "milkshake glass" + base_name = "glass" + base_icon = "shake" + filling_states = list(25, 50, 75, 100) + volume = 30 + possible_transfer_amounts = list(5,10,15,30) + rim_pos = list(25, 13, 21) + +/obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail + name = "cocktail glass" + base_name = "glass" + base_icon = "cocktail" + filling_states = list(33, 66, 100) + volume = 15 + possible_transfer_amounts = list(5,10,15) + rim_pos = list(22, 13, 21) + +/obj/item/weapon/reagent_containers/food/drinks/glass2/shot + name = "shot glass" + base_name = "shot" + base_icon = "shot" + filling_states = list(33, 66, 100) + volume = 5 + possible_transfer_amounts = list(1,2,5) + rim_pos = list(17, 13, 21) + +/obj/item/weapon/reagent_containers/food/drinks/glass2/pint + name = "pint glass" + base_name = "pint" + base_icon = "pint" + filling_states = list(16, 33, 50, 66, 83, 100) + volume = 60 + possible_transfer_amounts = list(5,10,15,30,60) + rim_pos = list(25, 12, 21) + +/obj/item/weapon/reagent_containers/food/drinks/glass2/mug + name = "glass mug" + base_name = "mug" + base_icon = "mug" + filling_states = list(25, 50, 75, 100) + volume = 40 + possible_transfer_amounts = list(5,10,20,40) + rim_pos = list(22, 12, 20) + +/obj/item/weapon/reagent_containers/food/drinks/glass2/wine + name = "wine glass" + base_name = "glass" + base_icon = "wine" + filling_states = list(20, 40, 60, 80, 100) + volume = 25 + possible_transfer_amounts = list(5, 10, 15, 25) + rim_pos = list(25, 12, 21) diff --git a/code/modules/reagents/reagent_containers/drinkingglass/shaker.dm b/code/modules/reagents/reagent_containers/drinkingglass/shaker.dm new file mode 100644 index 0000000000..b653f14c60 --- /dev/null +++ b/code/modules/reagents/reagent_containers/drinkingglass/shaker.dm @@ -0,0 +1,31 @@ +/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask + name = "fitness shaker" + base_name = "shaker" + desc = "Big enough to contain enough protein to get perfectly swole. Don't mind the bits." + icon_state = "fitness-cup_black" + base_icon = "fitness-cup" + volume = 100 + matter = list("plastic" = 2000) + filling_states = list(10,20,30,40,50,60,70,80,90,100) + possible_transfer_amounts = list(5, 10, 15, 25) + rim_pos = null // no fruit slices + var/lid_color = "black" + +/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask/New() + ..() + lid_color = pick("black", "red", "blue") + update_icon() + +/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask/update_icon() + ..() + icon_state = "[base_icon]_[lid_color]" + +/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask/proteinshake + name = "protein shake" + +/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask/proteinshake/New() + ..() + reagents.add_reagent("nutriment", 30) + reagents.add_reagent("iron", 10) + reagents.add_reagent("protein", 35) + reagents.add_reagent("water", 25) diff --git a/code/modules/reagents/reagent_containers/food/drinks.dm b/code/modules/reagents/reagent_containers/food/drinks.dm index dea0da4180..f2770d9823 100644 --- a/code/modules/reagents/reagent_containers/food/drinks.dm +++ b/code/modules/reagents/reagent_containers/food/drinks.dm @@ -11,7 +11,13 @@ volume = 50 /obj/item/weapon/reagent_containers/food/drinks/on_reagent_change() - return + if (reagents.reagent_list.len > 0) + var/datum/reagent/R = reagents.get_master_reagent() + if(R.price_tag) + price_tag = R.price_tag + else + price_tag = null + return /obj/item/weapon/reagent_containers/food/drinks/attack_self(mob/user as mob) if(!is_open_container()) @@ -96,13 +102,16 @@ volume = 150 flags = CONDUCT | OPENCONTAINER +/obj/item/weapon/reagent_containers/food/drinks/golden_cup/on_reagent_change() + ..() + ///////////////////////////////////////////////Drinks //Notes by Darem: Drinks are simply containers that start preloaded. Unlike condiments, the contents can be ingested directly // rather then having to add it to something else first. They should only contain liquids. They have a default container size of 50. // Formatting is the same as food. /obj/item/weapon/reagent_containers/food/drinks/milk - name = "Space Milk" + name = "milk carton" desc = "It's milk. White and nutritious goodness!" icon_state = "milk" item_state = "carton" @@ -113,7 +122,7 @@ reagents.add_reagent("milk", 50) /obj/item/weapon/reagent_containers/food/drinks/soymilk - name = "SoyMilk" + name = "soymilk carton" desc = "It's soy milk. White and nutritious goodness!" icon_state = "soymilk" item_state = "carton" @@ -123,7 +132,7 @@ reagents.add_reagent("soymilk", 50) /obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton - name = "Small Carton of Milk" + name = "small milk carton" volume = 30 icon_state = "mini-milk" /obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton/New() @@ -131,16 +140,16 @@ reagents.add_reagent("milk", 30) /obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton/chocolate - name = "Small Carton of Chocolate Milk" + name = "small chocolate milk carton" desc = "It's milk! This one is in delicious chocolate flavour." - + icon_state = "mini-milk_choco" /obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton/chocolate/New() ..() reagents.add_reagent("chocolate_milk", 30) /obj/item/weapon/reagent_containers/food/drinks/coffee - name = "Robust Coffee" + name = "\improper Robust Coffee" desc = "Careful, the beverage you're about to enjoy is extremely hot." icon_state = "coffee" center_of_mass = list("x"=15, "y"=10) @@ -149,7 +158,7 @@ reagents.add_reagent("coffee", 30) /obj/item/weapon/reagent_containers/food/drinks/tea - name = "Duke Purple Tea" + name = "cup of Duke Purple Tea" desc = "An insult to Duke Purple is an insult to the Space Queen! Any proper gentleman will fight you, if you sully this tea." icon_state = "teacup" item_state = "coffee" @@ -160,7 +169,7 @@ reagents.add_reagent("tea", 30) /obj/item/weapon/reagent_containers/food/drinks/ice - name = "Ice Cup" + name = "cup of ice" desc = "Careful, cold ice, do not chew." icon_state = "coffee" center_of_mass = list("x"=15, "y"=10) @@ -169,7 +178,7 @@ reagents.add_reagent("ice", 30) /obj/item/weapon/reagent_containers/food/drinks/h_chocolate - name = "Dutch Hot Coco" + name = "cup of Dutch hot coco" desc = "Made in Space South America." icon_state = "hot_coco" item_state = "coffee" @@ -189,7 +198,7 @@ reagents.add_reagent("dry_ramen", 30) /obj/item/weapon/reagent_containers/food/drinks/sillycup - name = "Paper Cup" + name = "paper cup" desc = "A paper water cup." icon_state = "water_cup_e" possible_transfer_amounts = null @@ -199,6 +208,7 @@ ..() /obj/item/weapon/reagent_containers/food/drinks/sillycup/on_reagent_change() + ..() if(reagents.total_volume) icon_state = "water_cup" else @@ -211,13 +221,16 @@ // icon states. /obj/item/weapon/reagent_containers/food/drinks/shaker - name = "Shaker" + name = "shaker" desc = "A metal shaker to mix drinks in." icon_state = "shaker" amount_per_transfer_from_this = 10 volume = 120 center_of_mass = list("x"=17, "y"=10) +/obj/item/weapon/reagent_containers/food/drinks/shaker/on_reagent_change() + ..() + /obj/item/weapon/reagent_containers/food/drinks/teapot name = "teapot" desc = "An elegant teapot. It simply oozes class." @@ -227,13 +240,19 @@ volume = 120 center_of_mass = list("x"=17, "y"=7) +/obj/item/weapon/reagent_containers/food/drinks/teapot/on_reagent_change() + ..() + /obj/item/weapon/reagent_containers/food/drinks/flask - name = "Captain's Flask" + name = "\improper Captain's flask" desc = "A metal flask belonging to the captain" icon_state = "flask" volume = 60 center_of_mass = list("x"=17, "y"=7) +/obj/item/weapon/reagent_containers/food/drinks/flask/on_reagent_change() + ..() + /obj/item/weapon/reagent_containers/food/drinks/flask/shiny name = "shiny flask" desc = "A shiny metal flask. It appears to have a Greek symbol inscribed on it." @@ -245,7 +264,7 @@ icon_state = "lithiumflask" /obj/item/weapon/reagent_containers/food/drinks/flask/detflask - name = "Detective's Flask" + name = "\improper Detective's flask" desc = "A metal flask with a leather band and golden badge belonging to the detective." icon_state = "detflask" volume = 60 @@ -271,3 +290,7 @@ icon_state = "britcup" volume = 30 center_of_mass = list("x"=15, "y"=13) + +/obj/item/weapon/reagent_containers/food/drinks/britcup/on_reagent_change() + ..() + diff --git a/code/modules/reagents/reagent_containers/food/drinks/cup.dm b/code/modules/reagents/reagent_containers/food/drinks/cup.dm new file mode 100644 index 0000000000..087d2dec5b --- /dev/null +++ b/code/modules/reagents/reagent_containers/food/drinks/cup.dm @@ -0,0 +1,39 @@ +/obj/item/weapon/reagent_containers/food/drinks/cup + name = "coffee cup" + desc = "The container of oriental luxuries." + icon_state = "cup_empty" + amount_per_transfer_from_this = 5 + volume = 30 + center_of_mass = list("x"=16, "y"=16) + +/obj/item/weapon/reagent_containers/food/drinks/cup/on_reagent_change() + ..() + if (reagents.reagent_list.len > 0) + var/datum/reagent/R = reagents.get_master_reagent() + + if(R.cup_icon_state) + icon_state = R.cup_icon_state + else + icon_state = "cup_brown" + + if(R.cup_name) + name = R.cup_name + else + name = "Cup of.. what?" + + if(R.cup_desc) + desc = R.cup_desc + else + desc = "You can't really tell what this is." + + if(R.cup_center_of_mass) + center_of_mass = R.cup_center_of_mass + else + center_of_mass = list("x"=16, "y"=16) + + else + icon_state = "cup_empty" + name = "coffee cup" + desc = "The container of oriental luxuries." + center_of_mass = list("x"=16, "y"=16) + return diff --git a/code/modules/research/mechfab_designs.dm b/code/modules/research/mechfab_designs.dm index 35f064321c..7ebdc5fbb6 100644 --- a/code/modules/research/mechfab_designs.dm +++ b/code/modules/research/mechfab_designs.dm @@ -11,7 +11,7 @@ id = "ripley_chassis" build_path = /obj/item/mecha_parts/chassis/ripley time = 10 - materials = list(DEFAULT_WALL_MATERIAL = 20000) + materials = list(DEFAULT_WALL_MATERIAL = 15000) /datum/design/item/mechfab/ripley/chassis/firefighter name = "Firefigher chassis" @@ -23,35 +23,35 @@ id = "ripley_torso" build_path = /obj/item/mecha_parts/part/ripley_torso time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 40000, "glass" = 15000) + materials = list(DEFAULT_WALL_MATERIAL = 30000, "glass" = 11250) /datum/design/item/mechfab/ripley/left_arm name = "Ripley left arm" id = "ripley_left_arm" build_path = /obj/item/mecha_parts/part/ripley_left_arm time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 25000) + materials = list(DEFAULT_WALL_MATERIAL = 18750) /datum/design/item/mechfab/ripley/right_arm name = "Ripley right arm" id = "ripley_right_arm" build_path = /obj/item/mecha_parts/part/ripley_right_arm time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 25000) + materials = list(DEFAULT_WALL_MATERIAL = 18750) /datum/design/item/mechfab/ripley/left_leg name = "Ripley left leg" id = "ripley_left_leg" build_path = /obj/item/mecha_parts/part/ripley_left_leg time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 30000) + materials = list(DEFAULT_WALL_MATERIAL = 22500) /datum/design/item/mechfab/ripley/right_leg name = "Ripley right leg" id = "ripley_right_leg" build_path = /obj/item/mecha_parts/part/ripley_right_leg time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 30000) + materials = list(DEFAULT_WALL_MATERIAL = 22500) /datum/design/item/mechfab/odysseus category = "Odysseus" @@ -61,49 +61,49 @@ id = "odysseus_chassis" build_path = /obj/item/mecha_parts/chassis/odysseus time = 10 - materials = list(DEFAULT_WALL_MATERIAL = 20000) + materials = list(DEFAULT_WALL_MATERIAL = 15000) /datum/design/item/mechfab/odysseus/torso name = "Odysseus torso" id = "odysseus_torso" build_path = /obj/item/mecha_parts/part/odysseus_torso time = 18 - materials = list(DEFAULT_WALL_MATERIAL = 25000) + materials = list(DEFAULT_WALL_MATERIAL = 18750) /datum/design/item/mechfab/odysseus/head name = "Odysseus head" id = "odysseus_head" build_path = /obj/item/mecha_parts/part/odysseus_head time = 10 - materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 1500, "glass" = 7500) /datum/design/item/mechfab/odysseus/left_arm name = "Odysseus left arm" id = "odysseus_left_arm" build_path = /obj/item/mecha_parts/part/odysseus_left_arm time = 12 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/mechfab/odysseus/right_arm name = "Odysseus right arm" id = "odysseus_right_arm" build_path = /obj/item/mecha_parts/part/odysseus_right_arm time = 12 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/mechfab/odysseus/left_leg name = "Odysseus left leg" id = "odysseus_left_leg" build_path = /obj/item/mecha_parts/part/odysseus_left_leg time = 13 - materials = list(DEFAULT_WALL_MATERIAL = 15000) + materials = list(DEFAULT_WALL_MATERIAL = 11250) /datum/design/item/mechfab/odysseus/right_leg name = "Odysseus right leg" id = "odysseus_right_leg" build_path = /obj/item/mecha_parts/part/odysseus_right_leg time = 13 - materials = list(DEFAULT_WALL_MATERIAL = 15000) + materials = list(DEFAULT_WALL_MATERIAL = 11250) /datum/design/item/mechfab/gygax category = "Gygax" @@ -113,56 +113,56 @@ id = "gygax_chassis" build_path = /obj/item/mecha_parts/chassis/gygax time = 10 - materials = list(DEFAULT_WALL_MATERIAL = 25000) + materials = list(DEFAULT_WALL_MATERIAL = 18750) /datum/design/item/mechfab/gygax/torso name = "Gygax torso" id = "gygax_torso" build_path = /obj/item/mecha_parts/part/gygax_torso time = 30 - materials = list(DEFAULT_WALL_MATERIAL = 50000, "glass" = 20000) + materials = list(DEFAULT_WALL_MATERIAL = 37500, "glass" = 15000) /datum/design/item/mechfab/gygax/head name = "Gygax head" id = "gygax_head" build_path = /obj/item/mecha_parts/part/gygax_head time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 20000, "glass" = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 15000, "glass" = 7500) /datum/design/item/mechfab/gygax/left_arm name = "Gygax left arm" id = "gygax_left_arm" build_path = /obj/item/mecha_parts/part/gygax_left_arm time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 30000) + materials = list(DEFAULT_WALL_MATERIAL = 22500) /datum/design/item/mechfab/gygax/right_arm name = "Gygax right arm" id = "gygax_right_arm" build_path = /obj/item/mecha_parts/part/gygax_right_arm time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 30000) + materials = list(DEFAULT_WALL_MATERIAL = 22500) /datum/design/item/mechfab/gygax/left_leg name = "Gygax left leg" id = "gygax_left_leg" build_path = /obj/item/mecha_parts/part/gygax_left_leg time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 35000) + materials = list(DEFAULT_WALL_MATERIAL = 26250) /datum/design/item/mechfab/gygax/right_leg name = "Gygax right leg" id = "gygax_right_leg" build_path = /obj/item/mecha_parts/part/gygax_right_leg time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 35000) + materials = list(DEFAULT_WALL_MATERIAL = 26250) /datum/design/item/mechfab/gygax/armour name = "Gygax armour plates" id = "gygax_armour" build_path = /obj/item/mecha_parts/part/gygax_armour time = 60 - materials = list(DEFAULT_WALL_MATERIAL = 50000, "diamond" = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 37500, "diamond" = 7500) /datum/design/item/mechfab/durand category = "Durand" @@ -172,75 +172,74 @@ id = "durand_chassis" build_path = /obj/item/mecha_parts/chassis/durand time = 10 - materials = list(DEFAULT_WALL_MATERIAL = 25000) + materials = list(DEFAULT_WALL_MATERIAL = 18750) /datum/design/item/mechfab/durand/torso name = "Durand torso" id = "durand_torso" build_path = /obj/item/mecha_parts/part/durand_torso time = 30 - materials = list(DEFAULT_WALL_MATERIAL = 55000, "glass" = 20000, "silver" = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 41250, "glass" = 15000, "silver" = 7500) /datum/design/item/mechfab/durand/head name = "Durand head" id = "durand_head" build_path = /obj/item/mecha_parts/part/durand_head time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 25000, "glass" = 10000, "silver" = 3000) + materials = list(DEFAULT_WALL_MATERIAL = 18750, "glass" = 7500, "silver" = 2250) /datum/design/item/mechfab/durand/left_arm name = "Durand left arm" id = "durand_left_arm" build_path = /obj/item/mecha_parts/part/durand_left_arm time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 35000, "silver" = 3000) + materials = list(DEFAULT_WALL_MATERIAL = 26250, "silver" = 2250) /datum/design/item/mechfab/durand/right_arm name = "Durand right arm" id = "durand_right_arm" build_path = /obj/item/mecha_parts/part/durand_right_arm time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 35000, "silver" = 3000) + materials = list(DEFAULT_WALL_MATERIAL = 26250, "silver" = 2250) /datum/design/item/mechfab/durand/left_leg name = "Durand left leg" id = "durand_left_leg" build_path = /obj/item/mecha_parts/part/durand_left_leg time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 40000, "silver" = 3000) + materials = list(DEFAULT_WALL_MATERIAL = 30000, "silver" = 2250) /datum/design/item/mechfab/durand/right_leg name = "Durand right leg" id = "durand_right_leg" build_path = /obj/item/mecha_parts/part/durand_right_leg time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 40000, "silver" = 3000) + materials = list(DEFAULT_WALL_MATERIAL = 30000, "silver" = 2250) /datum/design/item/mechfab/durand/armour name = "Durand armour plates" id = "durand_armour" build_path = /obj/item/mecha_parts/part/durand_armour time = 60 - materials = list(DEFAULT_WALL_MATERIAL = 50000, "uranium" = 10000) - -/datum/design/item/mecha_tracking - name = "Exosuit tracking beacon" - build_type = MECHFAB - time = 5 - materials = list(DEFAULT_WALL_MATERIAL = 500) - build_path = /obj/item/mecha_parts/mecha_tracking - category = "Misc" + materials = list(DEFAULT_WALL_MATERIAL = 37500, "uranium" = 7500) /datum/design/item/mecha build_type = MECHFAB category = "Exosuit Equipment" time = 10 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/mecha/AssembleDesignDesc() if(!desc) desc = "Allows for the construction of \a '[item_name]' exosuit module." +/datum/design/item/mecha/tracking + name = "Exosuit tracking beacon" + id = "mech_tracker" + time = 5 + materials = list(DEFAULT_WALL_MATERIAL = 375) + build_path = /obj/item/mecha_parts/mecha_tracking + /datum/design/item/mecha/hydraulic_clamp name = "Hydraulic clamp" id = "hydraulic_clamp" @@ -265,20 +264,20 @@ name = "Flare launcher" id = "mecha_flare_gun" build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flare - materials = list(DEFAULT_WALL_MATERIAL = 12500) + materials = list(DEFAULT_WALL_MATERIAL = 9375) /datum/design/item/mecha/sleeper name = "Sleeper" id = "mech_sleeper" build_path = /obj/item/mecha_parts/mecha_equipment/tool/sleeper - materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 3750, "glass" = 7500) /datum/design/item/mecha/syringe_gun name = "Syringe gun" id = "mech_syringe_gun" build_path = /obj/item/mecha_parts/mecha_equipment/tool/syringe_gun time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 3000, "glass" = 2000) + materials = list(DEFAULT_WALL_MATERIAL = 2250, "glass" = 1500) /* /datum/design/item/mecha/syringe_gun @@ -292,7 +291,7 @@ name = "Passenger compartment" id = "mech_passenger" build_path = /obj/item/mecha_parts/mecha_equipment/tool/passenger - materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 3750, "glass" = 3750) //obj/item/mecha_parts/mecha_equipment/repair_droid, //obj/item/mecha_parts/mecha_equipment/jetpack, //TODO MECHA JETPACK SPRITE MISSING @@ -352,7 +351,7 @@ desc = "A weapon that violates the Geneva Convention at 6 rounds per minute." id = "clusterbang_launcher" req_tech = list(TECH_COMBAT= 5, TECH_MATERIAL = 5, TECH_ILLEGAL = 3) - materials = list(DEFAULT_WALL_MATERIAL = 20000, "gold" = 6000, "uranium" = 6000) + materials = list(DEFAULT_WALL_MATERIAL = 15000, "gold" = 4500, "uranium" = 4500) build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang/clusterbang/limited // *** Nonweapon modules @@ -375,7 +374,7 @@ desc = "An exosuit-mounted rapid construction device." id = "mech_rcd" time = 120 - materials = list(DEFAULT_WALL_MATERIAL = 30000, "phoron" = 25000, "silver" = 20000, "gold" = 20000) + materials = list(DEFAULT_WALL_MATERIAL = 22500, "phoron" = 18750, "silver" = 15000, "gold" = 15000) req_tech = list(TECH_MATERIAL = 4, TECH_BLUESPACE = 3, TECH_MAGNET = 4, TECH_POWER = 4, TECH_ENGINEERING = 4) build_path = /obj/item/mecha_parts/mecha_equipment/tool/rcd @@ -391,7 +390,7 @@ desc = "Automated repair droid, exosuits' best companion. BEEP BOOP" id = "mech_repair_droid" req_tech = list(TECH_MAGNET = 3, TECH_DATA = 3, TECH_ENGINEERING = 3) - materials = list(DEFAULT_WALL_MATERIAL = 10000, "gold" = 1000, "silver" = 2000, "glass" = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "gold" = 750, "silver" = 1500, "glass" = 3750) build_path = /obj/item/mecha_parts/mecha_equipment/repair_droid /datum/design/item/mecha/phoron_generator @@ -399,13 +398,13 @@ id = "mech_phoron_generator" req_tech = list(TECH_PHORON = 2, TECH_POWER= 2, TECH_ENGINEERING = 2) build_path = /obj/item/mecha_parts/mecha_equipment/generator - materials = list(DEFAULT_WALL_MATERIAL = 10000, "silver" = 500, "glass" = 1000) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "silver" = 375, "glass" = 750) /datum/design/item/mecha/energy_relay name = "Energy relay" id = "mech_energy_relay" req_tech = list(TECH_MAGNET = 4, TECH_POWER = 3) - materials = list(DEFAULT_WALL_MATERIAL = 10000, "gold" = 2000, "silver" = 3000, "glass" = 2000) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "gold" = 1500, "silver" = 2250, "glass" = 1500) build_path = /obj/item/mecha_parts/mecha_equipment/tesla_energy_relay /datum/design/item/mecha/ccw_armor @@ -413,14 +412,14 @@ desc = "Exosuit close-combat armor booster." id = "mech_ccw_armor" req_tech = list(TECH_MATERIAL = 5, TECH_COMBAT = 4) - materials = list(DEFAULT_WALL_MATERIAL = 20000, "silver" = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 11250, "silver" = 3750) build_path = /obj/item/mecha_parts/mecha_equipment/anticcw_armor_booster /datum/design/item/mecha/proj_armor desc = "Exosuit projectile armor booster." id = "mech_proj_armor" req_tech = list(TECH_MATERIAL = 5, TECH_COMBAT = 5, TECH_ENGINEERING = 3) - materials = list(DEFAULT_WALL_MATERIAL = 20000, "gold" = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 15000, "gold" = 3750) build_path = /obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster /datum/design/item/mecha/diamond_drill @@ -428,7 +427,7 @@ desc = "A diamond version of the exosuit drill. It's harder, better, faster, stronger." id = "mech_diamond_drill" req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 3) - materials = list(DEFAULT_WALL_MATERIAL = 10000, "diamond" = 6500) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "diamond" = 4875) build_path = /obj/item/mecha_parts/mecha_equipment/tool/drill/diamonddrill /datum/design/item/mecha/generator_nuclear @@ -436,7 +435,7 @@ desc = "Exosuit-held nuclear reactor. Converts uranium and everyone's health to energy." id = "mech_generator_nuclear" req_tech = list(TECH_POWER= 3, TECH_ENGINEERING = 3, TECH_MATERIAL = 3) - materials = list(DEFAULT_WALL_MATERIAL = 10000, "silver" = 500, "glass" = 1000) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "silver" = 375, "glass" = 750) build_path = /obj/item/mecha_parts/mecha_equipment/generator/nuclear /datum/design/item/synthetic_flash @@ -444,6 +443,6 @@ id = "sflash" req_tech = list(TECH_MAGNET = 3, TECH_COMBAT = 2) build_type = MECHFAB - materials = list(DEFAULT_WALL_MATERIAL = 750, "glass" = 750) + materials = list(DEFAULT_WALL_MATERIAL = 562, "glass" = 562) build_path = /obj/item/device/flash/synthetic category = "Misc" \ No newline at end of file diff --git a/code/modules/research/prosfab_designs.dm b/code/modules/research/prosfab_designs.dm index 8c0670e706..9629bb31f1 100644 --- a/code/modules/research/prosfab_designs.dm +++ b/code/modules/research/prosfab_designs.dm @@ -49,7 +49,7 @@ //////////////////// Prosthetics //////////////////// /datum/design/item/prosfab/pros/torso time = 35 - materials = list(DEFAULT_WALL_MATERIAL = 60000, "glass" = 10000, "plasteel" = 2000) + materials = list(DEFAULT_WALL_MATERIAL = 45000, "glass" = 7500, "plasteel" = 1500) // req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 3, TECH_DATA = 3) //Saving the values just in case var/gender = MALE @@ -72,7 +72,7 @@ id = "pros_head" build_path = /obj/item/organ/external/head time = 30 - materials = list(DEFAULT_WALL_MATERIAL = 25000, "glass" = 5000, "plasteel" = 1000) + materials = list(DEFAULT_WALL_MATERIAL = 18750, "glass" = 3750, "plasteel" = 750) // req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 3, TECH_DATA = 3) //Saving the values just in case /datum/design/item/prosfab/pros/l_arm @@ -80,63 +80,63 @@ id = "pros_l_arm" build_path = /obj/item/organ/external/arm time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 18000) + materials = list(DEFAULT_WALL_MATERIAL = 13500) /datum/design/item/prosfab/pros/l_hand name = "Prosthetic left hand" id = "pros_l_hand" build_path = /obj/item/organ/external/hand time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/prosfab/pros/l_leg name = "Prosthetic left leg" id = "pros_l_leg" build_path = /obj/item/organ/external/leg time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 15000) + materials = list(DEFAULT_WALL_MATERIAL = 11250) /datum/design/item/prosfab/pros/l_foot name = "Prosthetic left foot" id = "pros_l_foot" build_path = /obj/item/organ/external/foot time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/prosfab/pros/r_arm name = "Prosthetic right arm" id = "pros_r_arm" build_path = /obj/item/organ/external/arm/right time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 18000) + materials = list(DEFAULT_WALL_MATERIAL = 13500) /datum/design/item/prosfab/pros/r_hand name = "Prosthetic right hand" id = "pros_r_hand" build_path = /obj/item/organ/external/hand/right time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/prosfab/pros/r_leg name = "Prosthetic right leg" id = "pros_r_leg" build_path = /obj/item/organ/external/leg/right time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 15000) + materials = list(DEFAULT_WALL_MATERIAL = 11250) /datum/design/item/prosfab/pros/r_foot name = "Prosthetic right foot" id = "pros_r_foot" build_path = /obj/item/organ/external/foot/right time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/prosfab/pros/cell name = "Prosthetic powercell" id = "pros_cell" build_path = /obj/item/organ/internal/cell time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 10000, "glass" = 4000, "plasteel" = 2000) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "glass" = 3000, "plasteel" = 1500) // req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 2) /datum/design/item/prosfab/pros/eyes @@ -144,63 +144,63 @@ id = "pros_eyes" build_path = /obj/item/organ/internal/eyes/robot time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 7500, "glass" = 7500) + materials = list(DEFAULT_WALL_MATERIAL = 5625, "glass" = 5625) // req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 2) //////////////////// Cyborg Parts //////////////////// /datum/design/item/prosfab/cyborg category = "Cyborg Parts" time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 3750) /datum/design/item/prosfab/cyborg/exoskeleton name = "Robot exoskeleton" id = "robot_exoskeleton" build_path = /obj/item/robot_parts/robot_suit time = 50 - materials = list(DEFAULT_WALL_MATERIAL = 50000) + materials = list(DEFAULT_WALL_MATERIAL = 37500) /datum/design/item/prosfab/cyborg/torso name = "Robot torso" id = "robot_torso" build_path = /obj/item/robot_parts/chest time = 35 - materials = list(DEFAULT_WALL_MATERIAL = 40000) + materials = list(DEFAULT_WALL_MATERIAL = 30000) /datum/design/item/prosfab/cyborg/head name = "Robot head" id = "robot_head" build_path = /obj/item/robot_parts/head time = 35 - materials = list(DEFAULT_WALL_MATERIAL = 25000) + materials = list(DEFAULT_WALL_MATERIAL = 18750) /datum/design/item/prosfab/cyborg/l_arm name = "Robot left arm" id = "robot_l_arm" build_path = /obj/item/robot_parts/l_arm time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 18000) + materials = list(DEFAULT_WALL_MATERIAL = 13500) /datum/design/item/prosfab/cyborg/r_arm name = "Robot right arm" id = "robot_r_arm" build_path = /obj/item/robot_parts/r_arm time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 18000) + materials = list(DEFAULT_WALL_MATERIAL = 13500) /datum/design/item/prosfab/cyborg/l_leg name = "Robot left leg" id = "robot_l_leg" build_path = /obj/item/robot_parts/l_leg time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 15000) + materials = list(DEFAULT_WALL_MATERIAL = 11250) /datum/design/item/prosfab/cyborg/r_leg name = "Robot right leg" id = "robot_r_leg" build_path = /obj/item/robot_parts/r_leg time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 15000) + materials = list(DEFAULT_WALL_MATERIAL = 11250) //////////////////// Cyborg Internals //////////////////// @@ -208,7 +208,7 @@ category = "Cyborg Internals" build_type = PROSFAB time = 12 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/prosfab/cyborg/component/binary_communication_device name = "Binary communication device" @@ -246,7 +246,7 @@ category = "Cyborg Modules" build_type = PROSFAB time = 12 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/prosfab/robot_upgrade/rename name = "Rename module" @@ -264,28 +264,28 @@ name = "Emergency restart module" desc = "Used to force a restart of a disabled-but-repaired robot, bringing it back online." id = "borg_restart_module" - materials = list(DEFAULT_WALL_MATERIAL = 60000, "glass" = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 45000, "glass" = 3750) build_path = /obj/item/borg/upgrade/restart /datum/design/item/prosfab/robot_upgrade/vtec name = "VTEC module" desc = "Used to kick in a robot's VTEC systems, increasing their speed." id = "borg_vtec_module" - materials = list(DEFAULT_WALL_MATERIAL = 80000, "glass" = 6000, "gold" = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 60000, "glass" = 4500, "gold" = 3750) build_path = /obj/item/borg/upgrade/vtec /datum/design/item/prosfab/robot_upgrade/tasercooler name = "Rapid taser cooling module" desc = "Used to cool a mounted taser, increasing the potential current in it and thus its recharge rate." id = "borg_taser_module" - materials = list(DEFAULT_WALL_MATERIAL = 80000, "glass" = 6000, "gold" = 2000, "diamond" = 500) + materials = list(DEFAULT_WALL_MATERIAL = 60000, "glass" = 4500, "gold" = 1500, "diamond" = 375) build_path = /obj/item/borg/upgrade/tasercooler /datum/design/item/prosfab/robot_upgrade/jetpack name = "Jetpack module" desc = "A carbon dioxide jetpack suitable for low-gravity mining operations." id = "borg_jetpack_module" - materials = list(DEFAULT_WALL_MATERIAL = 10000, "phoron" = 15000, "uranium" = 20000) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "phoron" = 11250, "uranium" = 15000) build_path = /obj/item/borg/upgrade/jetpack /datum/design/item/prosfab/robot_upgrade/syndicate @@ -293,5 +293,5 @@ desc = "Allows for the construction of lethal upgrades for cyborgs." id = "borg_syndicate_module" req_tech = list(TECH_COMBAT = 4, TECH_ILLEGAL = 3) - materials = list(DEFAULT_WALL_MATERIAL = 10000, "glass" = 15000, "diamond" = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "glass" = 11250, "diamond" = 7500) build_path = /obj/item/borg/upgrade/syndicate \ No newline at end of file diff --git a/code/modules/surgery/limb_reattach.dm b/code/modules/surgery/limb_reattach.dm index ee0dfecb4f..8e6e8da21f 100644 --- a/code/modules/surgery/limb_reattach.dm +++ b/code/modules/surgery/limb_reattach.dm @@ -40,7 +40,7 @@ end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/E = tool - user.visible_message("[user] has attached [target]'s [E.name] to the [E.amputation_point].>", \ + user.visible_message("[user] has attached [target]'s [E.name] to the [E.amputation_point].", \ "You have attached [target]'s [E.name] to the [E.amputation_point].") user.drop_from_inventory(E) E.replaced(target) diff --git a/code/modules/xenobio2/machinery/core_extractor.dm b/code/modules/xenobio2/machinery/core_extractor.dm index e01bc6f852..b50e42acd6 100644 --- a/code/modules/xenobio2/machinery/core_extractor.dm +++ b/code/modules/xenobio2/machinery/core_extractor.dm @@ -126,6 +126,7 @@ spawn(30) icon_state = "scanner_0old" qdel(occupant) + occupant = null //If qdel's being slow or acting up, let's make sure we can't make more cores from this one. inuse = 0 eject_contents() update_light_color() diff --git a/code/modules/xenobio2/machinery/gene_manipulators.dm b/code/modules/xenobio2/machinery/gene_manipulators.dm index f5d124a9f1..c8bd8d374c 100644 --- a/code/modules/xenobio2/machinery/gene_manipulators.dm +++ b/code/modules/xenobio2/machinery/gene_manipulators.dm @@ -99,6 +99,7 @@ /obj/machinery/xenobio/proc/finished_task() active = 0 + in_use = 0 if(failed_task) failed_task = 0 visible_message("\icon[src] [src] pings unhappily, flashing a red warning light.") @@ -332,7 +333,7 @@ ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open) if (!ui) - ui = new(user, src, ui_key, "xenobio_editor.tmpl", "Biological Genetic Bombarder UI", 470, 450) + ui = new(user, src, ui_key, "xenobio_editor.tmpl", "biological genetic bombarder UI", 470, 450) ui.set_initial_data(data) ui.open() ui.set_auto_update(1) @@ -375,21 +376,21 @@ /obj/machinery/xenobio/editor/proc/move_into_editor(var/mob/user,var/mob/living/victim) if(src.occupant) - user << "The biological genetic bombarder is full, empty it first!" + user << "The [src] is full, empty it first!" return if(in_use) - user << "The biological genetic bombarder is locked and running, wait for it to finish." + user << "The [src] is locked and running, wait for it to finish." return if(!(istype(victim, /mob/living/simple_animal/xeno/slime)) ) - user << "This is not a suitable subject for the biological genetic bombarder!" + user << "This is not a suitable subject for the [src]!" return - user.visible_message("[user] starts to put [victim] into the biological genetic bombarder!") + user.visible_message("[user] starts to put [victim] into the [src]!") src.add_fingerprint(user) if(do_after(user, 30) && victim.Adjacent(src) && user.Adjacent(src) && victim.Adjacent(user) && !occupant) - user.visible_message("[user] stuffs [victim] into the biological genetic bombarder!") + user.visible_message("[user] stuffs [victim] into the [src]!") if(victim.client) victim.client.perspective = EYE_PERSPECTIVE victim.client.eye = src diff --git a/code/modules/xenobio2/machinery/injector.dm b/code/modules/xenobio2/machinery/injector.dm index a3f88825c5..7b482d5c1d 100644 --- a/code/modules/xenobio2/machinery/injector.dm +++ b/code/modules/xenobio2/machinery/injector.dm @@ -67,19 +67,20 @@ src.occupant = victim /obj/machinery/xenobio2/manualinjector/proc/eject_contents() - for(var/obj/thing in (contents - component_parts - circuit - beaker)) - thing.forceMove(loc) + eject_xeno() + eject_beaker() + return + +/obj/machinery/xenobio2/manualinjector/proc/eject_xeno() if(occupant) occupant.forceMove(loc) occupant = null - return - + /obj/machinery/xenobio2/manualinjector/proc/eject_beaker() if(beaker) var/obj/item/weapon/reagent_containers/glass/beaker/B = beaker B.loc = loc beaker = null - return /obj/machinery/xenobio2/manualinjector/proc/inject_reagents() if(!occupant) diff --git a/code/modules/xenobio2/machinery/injector_computer.dm b/code/modules/xenobio2/machinery/injector_computer.dm index f65599e485..7bcccd55ca 100644 --- a/code/modules/xenobio2/machinery/injector_computer.dm +++ b/code/modules/xenobio2/machinery/injector_computer.dm @@ -99,7 +99,7 @@ injector.inject_reagents() active = 0 if(href_list["eject_occupant"]) - injector.eject_contents() + injector.eject_xeno() if(href_list["eject_beaker"]) injector.eject_beaker() diff --git a/code/modules/xenobio2/machinery/slime_replicator.dm b/code/modules/xenobio2/machinery/slime_replicator.dm index 3626304bfe..9faa4272b4 100644 --- a/code/modules/xenobio2/machinery/slime_replicator.dm +++ b/code/modules/xenobio2/machinery/slime_replicator.dm @@ -73,12 +73,14 @@ icon_state = "restruct_1" spawn(30) var/mob/living/simple_animal/xeno/slime/S = new(src) - S.traitdat = core.traits + S.traitdat = new() //New instance, so that if the core is deleted, the slime retains a trait datum. S.nameVar = core.nameVar S.name = "[S.nameVar] baby slime" + core.traits.copy_traits(S.traitdat) S.ProcessTraits() - qdel(core) spawn(30) + qdel(core) + core = null //If qdel's being a bit slow or acting up, let's just make sure we can't clone the core. inuse = 0 eject_slime() icon_state = "restruct_0" diff --git a/code/modules/xenobio2/mob/slime/slime procs.dm b/code/modules/xenobio2/mob/slime/slime procs.dm index adc8f4e5ba..f2ee6013b7 100644 --- a/code/modules/xenobio2/mob/slime/slime procs.dm +++ b/code/modules/xenobio2/mob/slime/slime procs.dm @@ -24,7 +24,23 @@ Slime specific procs go here. traitdat.traits[TRAIT_XENO_CANLEARN] = prob(68) traitdat.traits[TRAIT_XENO_SPEED] = round(rand(-10,10)) - +/mob/living/simple_animal/xeno/slime/RandomChemicals() + ..() + if(prob(40)) + var/hasMutToxin + for(var/R in traitdat.chems) + if(R == "mutationtoxin") + hasMutToxin = 1 + var/chemamount + if(hasMutToxin) + var/list/chemchoices = (xenoChemList - traitdat.chems) + + var/chemtype = pick(chemchoices) + chemamount = rand(1,5) + traitdat.chems[chemtype] = chemamount + else + chemamount = rand(1,5) + traitdat.chems["mutationtoxin"] = chemamount /mob/living/simple_animal/xeno/slime/proc/GrowUp() GenerateAdult() diff --git a/code/modules/xenobio2/mob/slime/slime.dm b/code/modules/xenobio2/mob/slime/slime.dm index b214b34630..65d4ad64d8 100644 --- a/code/modules/xenobio2/mob/slime/slime.dm +++ b/code/modules/xenobio2/mob/slime/slime.dm @@ -4,6 +4,7 @@ Slime definitions, Life and New live here. /mob/living/simple_animal/xeno/slime //Adult values are found here nameVar = "grey" //When mutated, nameVar might change. desc = "A shifting, mass of goo." + faction = "slime" speak_emote = list("garbles", "chirps", "blurbles") colored = 1 color = "#CACACA" @@ -68,6 +69,7 @@ Slime definitions, Life and New live here. "toxin" = list("toxic" = 0.5), "carpotoxin" = list("toxic" = 1, "mut" = 1.5), "phoron" = list("toxic" = 1.5, "mut" = 0.03), + "virusfood" = list("nutr" = 1.5, "mut" = 0.32), "cyanide" = list("toxic" = 3.5), "slimejelly" = list("nutr" = 0.5), "amutationtoxin" = list("toxic" = 0.1, "heal" = 1.5, "mut" = 3), diff --git a/code/modules/xenobio2/mob/xeno.dm b/code/modules/xenobio2/mob/xeno.dm index 7b1bf7dfac..e72f6a4f2b 100644 --- a/code/modules/xenobio2/mob/xeno.dm +++ b/code/modules/xenobio2/mob/xeno.dm @@ -8,6 +8,7 @@ Also includes Life and New /mob/living/simple_animal/xeno name = "Xeno" real_name = "Xeno" + faction = "xeno" //Needs to be set. desc = "Something's broken, yell at someone." melee_damage_lower = 0 melee_damage_upper = 0 @@ -46,33 +47,32 @@ Also includes Life and New //Life additions /mob/living/simple_animal/xeno/Life() - if(src.stat == DEAD) - return 0 - if(stasis) stasis-- if(stasis < 0) stasis = 0 return 0 + ..() - handle_reagents() - if((mut_level >= mut_max) && !(mutable & NOMUT)) - Mutate() - mut_level -= mut_max + if(!(stat == DEAD)) + handle_reagents() + if((mut_level >= mut_max) && !(mutable & NOMUT)) + Mutate() + mut_level -= mut_max - ProcessSpeechBuffer() + ProcessSpeechBuffer() - //Have to feed the xenos somehow. - if(nutrition < 0) - nutrition = 0 - if((nutrition > 0 ) && traitdat.traits[TRAIT_XENO_EATS]) - if(nutrition >= 300) - nutrition -= hunger_factor - else - if(traitdat.traits[TRAIT_XENO_EATS]) - health = starve_damage + //Have to feed the xenos somehow. + if(nutrition < 0) + nutrition = 0 + if((nutrition > 0 ) && traitdat.traits[TRAIT_XENO_EATS]) + if(nutrition >= 300) + nutrition -= hunger_factor + else + if(traitdat.traits[TRAIT_XENO_EATS]) + health = starve_damage - return 1 //Everything worked okay. + return 1 //Everything worked okay. /mob/living/simple_animal/xeno/New() @@ -94,4 +94,8 @@ Also includes Life and New if(!health) stat = DEAD - \ No newline at end of file + +/mob/living/simple_animal/xeno/Destroy() + traitdat.Destroy() //Let's clean up after ourselves. + traitdat = null + ..() \ No newline at end of file diff --git a/code/modules/xenobio2/mob/xeno_product.dm b/code/modules/xenobio2/mob/xeno_product.dm index b084b8eea6..a9989c3c45 100644 --- a/code/modules/xenobio2/mob/xeno_product.dm +++ b/code/modules/xenobio2/mob/xeno_product.dm @@ -10,4 +10,9 @@ Xenobiological product lives here as a basic type. var/source = "Unknown" var/product = "mess" var/nameVar = "blah" + +/obj/item/xenoproduct/Destroy() + traits.Destroy() //Let's not leave any traits hanging around. + traits = null + ..() \ No newline at end of file diff --git a/html/changelog.html b/html/changelog.html index 1723a560d0..d292d520ff 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -53,6 +53,40 @@ -->
+

14 June 2016

+

Arokha updated:

+
    +
  • Adds video-calls on communicators for existing calls
  • +
  • Adds a 'decline' to incoming communicator calls
  • +
  • New wallets that let you color them how you want
  • +
  • Fixes communicators being able to hear speech
  • +
  • Fixes deadcalls to communicators
  • +
  • Fixed dropping head/foot/glove items on limb loss
  • +
  • Suit coolers inside mecha now work
  • +
  • Fixed printing '1' to world over and over
  • +
  • Made mech tracking beacon constructable again
  • +
  • Change how emotes and LOOC propogate to nearby people
  • +
  • Rewrote how get_mobs_and_objs_in_view_fast works
  • +
  • Can now see through the red external airlock doors
  • +
+

Datraen updated:

+
    +
  • Adds a chance for slimes to get mutation toxin for creation of prometheans (40%).
  • +
  • Simple animals outside of the hostile subtype won't follow you as a zombie.
  • +
  • Xeno hostility is more apparent now.
  • +
  • Slime cores can no longer create twice as many slimes through an exploit.
  • +
+

GinjaNinja32 updated:

+
    +
  • Rewrote drinking glasses. There are now eight types of glass, and drink appearance is based on color and the type of glass you put it in.
  • +
  • There are now 'glass extras' you can add to drinks. Straws, drink sticks, and fruit slices (yes, all of them) all work. You can add up to two extras per glass. Add extras by clicking the glass with the extra, remove by clicking the glass with an empty hand while it's in your other hand.
  • +
  • Adding 'fizzy' things (soda water, cola, etc) or ice to a drink will make it be fizzy or have ice floating in it.
  • +
+

Yoshax updated:

+
    +
  • Everything produced in Robotics is now 25% cheaper to produce.
  • +
+

08 June 2016

Yoshax updated:

    diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index f556dac684..0ab77df4c5 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -2388,3 +2388,34 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. cabinets, consoles, fax machines, etc. This applies to all bullets. - maptweak: The research outpost toxins department now has reinforced phoron windows. - bugfix: Spears now do their correct damage instead of doing around half. +2016-06-14: + Arokha: + - rscadd: Adds video-calls on communicators for existing calls + - rscadd: Adds a 'decline' to incoming communicator calls + - rscadd: New wallets that let you color them how you want + - bugfix: Fixes communicators being able to hear speech + - bugfix: Fixes deadcalls to communicators + - bugfix: Fixed dropping head/foot/glove items on limb loss + - bugfix: Suit coolers inside mecha now work + - bugfix: Fixed printing '1' to world over and over + - bugfix: Made mech tracking beacon constructable again + - tweak: Change how emotes and LOOC propogate to nearby people + - tweak: Rewrote how get_mobs_and_objs_in_view_fast works + - tweak: Can now see through the red external airlock doors + Datraen: + - tweak: Adds a chance for slimes to get mutation toxin for creation of prometheans + (40%). + - bugfix: Simple animals outside of the hostile subtype won't follow you as a zombie. + - bugfix: Xeno hostility is more apparent now. + - bugfix: Slime cores can no longer create twice as many slimes through an exploit. + GinjaNinja32: + - rscadd: Rewrote drinking glasses. There are now eight types of glass, and drink + appearance is based on color and the type of glass you put it in. + - rscadd: There are now 'glass extras' you can add to drinks. Straws, drink sticks, + and fruit slices (yes, all of them) all work. You can add up to two extras per + glass. Add extras by clicking the glass with the extra, remove by clicking the + glass with an empty hand while it's in your other hand. + - rscadd: Adding 'fizzy' things (soda water, cola, etc) or ice to a drink will make + it be fizzy or have ice floating in it. + Yoshax: + - tweak: Everything produced in Robotics is now 25% cheaper to produce. diff --git a/icons/mob/human.dmi b/icons/mob/human.dmi index 4ed82dd5ed..4f14b81e3e 100644 Binary files a/icons/mob/human.dmi and b/icons/mob/human.dmi differ diff --git a/icons/obj/card.dmi b/icons/obj/card.dmi index 75d2b5ebf4..e1a2c1c2ae 100644 Binary files a/icons/obj/card.dmi and b/icons/obj/card.dmi differ diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index cba5ea04ca..2c2e234a3f 100644 Binary files a/icons/obj/device.dmi and b/icons/obj/device.dmi differ diff --git a/icons/obj/gun.dmi b/icons/obj/gun.dmi index 453baecbc0..81ad5fa391 100644 Binary files a/icons/obj/gun.dmi and b/icons/obj/gun.dmi differ diff --git a/icons/obj/storage.dmi b/icons/obj/storage.dmi index b9190b3f65..be5e694f22 100644 Binary files a/icons/obj/storage.dmi and b/icons/obj/storage.dmi differ diff --git a/icons/obj/wallet.dmi b/icons/obj/wallet.dmi new file mode 100644 index 0000000000..101a138156 Binary files /dev/null and b/icons/obj/wallet.dmi differ diff --git a/icons/pdrink.dmi b/icons/pdrink.dmi new file mode 100644 index 0000000000..dbbed71d51 Binary files /dev/null and b/icons/pdrink.dmi differ diff --git a/maps/polaris-1.dmm b/maps/polaris-1.dmm index a5f6406d56..fe5ad28a22 100644 --- a/maps/polaris-1.dmm +++ b/maps/polaris-1.dmm @@ -807,7 +807,7 @@ "apA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/secondary/medical_emergency_hallway) "apB" = (/obj/structure/table/reinforced,/obj/item/stack/tile/wood,/turf/simulated/floor/wood,/area/vacant/vacant_site) "apC" = (/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/quartermaster/delivery) -"apD" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 4; pixel_y = 5},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/turf/simulated/floor/wood,/area/vacant/vacant_site) +"apD" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = 4; pixel_y = 5},/obj/item/weapon/reagent_containers/food/drinks/glass2/square,/turf/simulated/floor/wood,/area/vacant/vacant_site) "apE" = (/obj/item/stack/tile/wood,/turf/simulated/floor,/area/vacant/vacant_site) "apF" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_access = list(12)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/storage/primary) "apG" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/medical_emergency_hallway) @@ -1010,7 +1010,7 @@ "atv" = (/obj/effect/floor_decal/corner/red{dir = 5},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/security/main) "atw" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/corner/red{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/security/main) "atx" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled,/area/security/main) -"aty" = (/obj/effect/floor_decal/corner/red{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/item/weapon/storage/box/drinkingglasses,/turf/simulated/floor/tiled,/area/security/main) +"aty" = (/obj/effect/floor_decal/corner/red{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/item/weapon/storage/box/glasses/square,/turf/simulated/floor/tiled,/area/security/main) "atz" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/item/weapon/screwdriver{pixel_y = 15},/obj/effect/floor_decal/corner/red{dir = 5},/turf/simulated/floor/tiled,/area/security/main) "atA" = (/obj/structure/table/standard,/obj/machinery/recharger,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/effect/floor_decal/corner/red{dir = 5},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/item/weapon/storage/box/donut,/turf/simulated/floor/tiled,/area/security/main) "atB" = (/obj/effect/floor_decal/corner/red{dir = 5},/obj/machinery/photocopier,/turf/simulated/floor/tiled,/area/security/main) @@ -2833,7 +2833,7 @@ "bdB" = (/obj/structure/flora/ausbushes/ppflowers,/turf/simulated/floor/grass,/area/hydroponics/garden) "bdC" = (/obj/effect/floor_decal/corner/green{dir = 5},/turf/simulated/floor/tiled,/area/hydroponics/garden) "bdD" = (/obj/structure/table/marble,/obj/machinery/door/firedoor/border_only,/obj/machinery/cash_register/civilian{tag = "icon-register_idle (EAST)"; icon_state = "register_idle"; dir = 4},/obj/machinery/door/blast/shutters{dir = 8; id = "coffeeshop"; layer = 3.1; name = "Cafe Shutters"},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) -"bdE" = (/obj/structure/table/marble,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 8; pixel_y = 8},/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 0; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = -8; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 8; pixel_y = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 0; pixel_y = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = -8; pixel_y = 4},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) +"bdE" = (/obj/structure/table/marble,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = 8; pixel_y = 8},/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = 0; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = -8; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = 8; pixel_y = 4},/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = 0; pixel_y = 4},/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = -8; pixel_y = 4},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) "bdF" = (/obj/structure/cable/green,/obj/structure/flora/pottedplant,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/effect/floor_decal/corner/brown/full,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "bdG" = (/obj/structure/table/woodentable,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/item/weapon/reagent_containers/food/condiment/small/sugar,/obj/effect/floor_decal/corner/brown{dir = 10},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "bdH" = (/obj/machinery/camera/network/northern_star{c_tag = "Hall - Recreation Aft"; dir = 4},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/floor/tiled,/area/crew_quarters/recreation_area_hallway) @@ -3292,7 +3292,7 @@ "bmw" = (/obj/machinery/computer/message_monitor,/turf/simulated/floor/tiled/dark,/area/server) "bmx" = (/obj/effect/floor_decal/corner/purple{dir = 8},/obj/structure/extinguisher_cabinet{pixel_x = -27},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled/white,/area/rnd/research) "bmy" = (/obj/effect/floor_decal/corner/purple,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 26},/turf/simulated/floor/tiled/white,/area/rnd/research) -"bmz" = (/obj/structure/table/standard,/obj/structure/noticeboard{pixel_y = 28},/obj/item/weapon/book/manual/medical_diagnostics_manual{pixel_y = 7},/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 4; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Break Room Emergency Phone"},/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/machinery/light{dir = 1},/obj/item/weapon/storage/box/drinkingglasses,/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak) +"bmz" = (/obj/structure/table/standard,/obj/structure/noticeboard{pixel_y = 28},/obj/item/weapon/book/manual/medical_diagnostics_manual{pixel_y = 7},/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 4; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Break Room Emergency Phone"},/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/machinery/light{dir = 1},/obj/item/weapon/storage/box/glasses/square,/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak) "bmA" = (/obj/effect/floor_decal/corner/purple/diagonal,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/research_restroom) "bmB" = (/obj/effect/floor_decal/corner/purple/diagonal,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled/white,/area/rnd/research_restroom) "bmC" = (/obj/structure/closet/wardrobe/science_white,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/effect/floor_decal/corner/purple/diagonal,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled/white,/area/rnd/research_restroom) @@ -7717,7 +7717,7 @@ "cUW" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/engineering/atmos) "cUX" = (/obj/machinery/pipedispenser,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/tiled,/area/engineering/atmos) "cUY" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/crew_quarters/visitor_lodging) -"cUZ" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/reinforced,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 2},/turf/simulated/floor/tiled,/area/engineering/break_room) +"cUZ" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/reinforced,/obj/item/weapon/storage/box/glasses/square,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 2},/turf/simulated/floor/tiled,/area/engineering/break_room) "cVa" = (/obj/structure/bed/chair/office/dark,/turf/simulated/floor/carpet,/area/engineering/break_room) "cVb" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/effect/floor_decal/corner/white{tag = "icon-corner_white (NORTH)"; icon_state = "corner_white"; dir = 1},/obj/effect/floor_decal/corner/blue{dir = 8},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/tiled,/area/engineering/foyer) "cVc" = (/obj/machinery/atmospherics/pipe/manifold/hidden/cyan{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/engineering/foyer) @@ -9652,7 +9652,7 @@ "dHz" = (/obj/machinery/computer/cryopod/robot{pixel_x = 30; pixel_y = 0},/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/camera/network/research{c_tag = "SCI - Mech Bay Starboard"; dir = 8},/turf/simulated/floor/tiled,/area/assembly/chargebay) "dHA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/hallway/primary/central_four) "dHB" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/hallway/primary/central_four) - + (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/maps/polaris-2.dmm b/maps/polaris-2.dmm index dba980372f..91f9006b6b 100644 --- a/maps/polaris-2.dmm +++ b/maps/polaris-2.dmm @@ -825,7 +825,7 @@ "pS" = (/obj/structure/reagent_dispensers/beerkeg,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops) "pT" = (/obj/machinery/vending/boozeomat,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops) "pU" = (/obj/structure/table/marble,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops) -"pV" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/storage/box/drinkingglasses,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops) +"pV" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/glasses/square,/obj/item/weapon/storage/box/glasses/square,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops) "pW" = (/obj/structure/kitchenspike,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/specops) "pX" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/specops) "pY" = (/turf/space,/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/syndicate_station/start) @@ -839,7 +839,7 @@ "qg" = (/obj/structure/sign/double/map/right{pixel_y = 32},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) "qh" = (/obj/machinery/vending/snack{name = "hacked Getmore Chocolate Corp"; prices = list()},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) "qi" = (/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) -"qj" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) +"qj" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/glasses/square{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "qk" = (/obj/structure/sink/kitchen{pixel_y = 28},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "ql" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "qm" = (/obj/effect/landmark{name = "Nuclear-Code"},/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/syndicate_mothership) @@ -1298,7 +1298,7 @@ "yX" = (/obj/machinery/vending/dinnerware,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) "yY" = (/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) "yZ" = (/obj/structure/table/marble,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) -"za" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/storage/box/drinkingglasses,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) +"za" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/glasses/square,/obj/item/weapon/storage/box/glasses/square,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) "zb" = (/obj/machinery/door/airlock/centcom{name = "Living Quarters"; opacity = 1; req_access = list(105)},/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/command) "zc" = (/obj/machinery/computer/security,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) "zd" = (/obj/machinery/computer/crew,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) @@ -1735,7 +1735,7 @@ "Hs" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/material/ashtray/bronze{pixel_x = -1; pixel_y = 1},/obj/machinery/camera/network/crescent{c_tag = "Crescent Bar East"; dir = 4},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) "Ht" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/material/ashtray/bronze{pixel_x = -1; pixel_y = 1},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) "Hu" = (/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"Hv" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"Hv" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/drinks/glass2/square,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) "Hw" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) "Hx" = (/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) "Hy" = (/obj/structure/toilet{dir = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) @@ -2125,7 +2125,7 @@ "OS" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/orange,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) "OT" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) "OU" = (/obj/machinery/vending/cola,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"OV" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"OV" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/glasses/square{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) "OW" = (/obj/machinery/portable_atmospherics/powered/pump,/turf/simulated/shuttle/plating,/area/centcom/evac) "OX" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/shuttle/plating,/area/centcom/evac) "OY" = (/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/reagent_containers/glass/bucket{amount_per_transfer_from_this = 50},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) @@ -2454,7 +2454,7 @@ "Vj" = (/obj/machinery/chem_master,/obj/effect/floor_decal/corner/beige/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) "Vk" = (/obj/effect/floor_decal/corner/beige{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) "Vl" = (/obj/structure/table/reinforced,/obj/effect/floor_decal/corner/red{dir = 5},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) - + (1,1,1) = {" aaabacadaeafagahaaaiajakalamanaoagafajacadahakaeamaiaoalahajapaqarasatauavawaxayaaabacadaeafagahaaaiajakalamanaoagafajacadahakazaAaBaCaDaEaFaGaHaIaJaKaLaMaNaOaAaBaCaDaEaFaGaHaIaJazaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaQaQaQaQaQaQaQaQaQaQaQaQaQaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaR ajaTaUaVaWaXaYaZbabbbcbdbebfbgbhaYaXbcaUaVaZbdaWbfbbbhbeaZbcabauavawbibjbkblbmbeaXbfaZbcbbbhbeaXbfaZbcbbbhbhbeaXbfaZbcbbbhbhbmazaEbnbobpaqarasatauavawbibjbkblbqbnbobpaqarasatauaNazaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaQbrbsaQbrbsaQbrbsaQbrbsaQaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPbtbubububvbububububububwbxbybxbybxbxbybxbybxbwbzbAbAbAbAbAbAbAbAbAbwbBbCbDbDbDbDbDbDbDbDbwbEbEbEbEbEbEbEbEbEbEbwbFbFbFbFbFbFbFbFbFbFbwbGbHbIbJbKbKbKbKbKbLbM diff --git a/maps/polaris-5.dmm b/maps/polaris-5.dmm index a240375e08..284c6cf9c1 100644 --- a/maps/polaris-5.dmm +++ b/maps/polaris-5.dmm @@ -656,7 +656,7 @@ "mG" = (/obj/structure/table/standard,/obj/item/weapon/material/ashtray/glass,/obj/item/weapon/reagent_containers/food/drinks/coffee,/obj/machinery/light,/turf/simulated/floor/tiled/white,/area/outpost/research/dock) "mH" = (/obj/effect/floor_decal/corner/purple{dir = 6},/turf/simulated/floor/tiled/white,/area/outpost/research/dock) "mI" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/donkpockets,/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/wood,/area/outpost/research/dorms) -"mJ" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/cups,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/obj/machinery/light,/turf/simulated/floor/wood,/area/outpost/research/dorms) +"mJ" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/cups,/obj/item/weapon/storage/box/glasses/square{pixel_x = 1; pixel_y = 4},/obj/machinery/light,/turf/simulated/floor/wood,/area/outpost/research/dorms) "mK" = (/obj/structure/table/glass,/obj/item/device/camera_film{pixel_x = 2; pixel_y = 2},/obj/item/device/camera,/turf/simulated/floor/wood,/area/outpost/research/dorms) "mL" = (/obj/item/weapon/bedsheet/purple,/obj/structure/bed/padded,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/carpet/blue,/area/outpost/research/dorms) "mM" = (/obj/structure/table/standard,/obj/machinery/alarm{dir = 1; pixel_y = -25},/obj/machinery/light/small{dir = 4; pixel_y = 0},/turf/simulated/floor/carpet/blue,/area/outpost/research/dorms) @@ -1590,7 +1590,7 @@ "EE" = (/obj/structure/bed/chair/office/light{dir = 1},/turf/simulated/floor/tiled,/area/outpost/research/xenobiology) "EF" = (/obj/machinery/recharger/wallcharger{pixel_x = 32},/turf/simulated/floor/tiled,/area/outpost/research/xenobiology) "EG" = (/obj/machinery/light{dir = 1},/obj/machinery/vending/hydronutrients,/turf/simulated/floor/tiled,/area/outpost/research/xenobiology) - + (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/maps/virgo-1.dmm b/maps/virgo-1.dmm index d2a8c8c5aa..590797f786 100644 --- a/maps/virgo-1.dmm +++ b/maps/virgo-1.dmm @@ -667,7 +667,7 @@ "amQ" = (/obj/effect/floor_decal/corner/red{dir = 5},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/security/main) "amR" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/corner/red{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/security/main) "amS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled,/area/security/main) -"amT" = (/obj/effect/floor_decal/corner/red{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/item/weapon/storage/box/drinkingglasses,/turf/simulated/floor/tiled,/area/security/main) +"amT" = (/obj/effect/floor_decal/corner/red{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/item/weapon/storage/box/glasses,/turf/simulated/floor/tiled,/area/security/main) "amU" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/item/weapon/screwdriver{pixel_y = 15},/obj/effect/floor_decal/corner/red{dir = 5},/turf/simulated/floor/tiled,/area/security/main) "amV" = (/obj/structure/table/standard,/obj/machinery/recharger,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/effect/floor_decal/corner/red{dir = 5},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/item/weapon/storage/box/donut,/turf/simulated/floor/tiled,/area/security/main) "amW" = (/obj/effect/floor_decal/corner/red{dir = 5},/obj/machinery/photocopier,/turf/simulated/floor/tiled,/area/security/main) @@ -816,7 +816,7 @@ "apJ" = (/obj/structure/disposalpipe/segment,/obj/item/stack/tile/wood,/turf/simulated/floor,/area/vacant/vacant_site) "apK" = (/obj/structure/table/reinforced,/obj/item/stack/tile/wood,/turf/simulated/floor/wood,/area/vacant/vacant_site) "apL" = (/obj/structure/table/reinforced,/obj/item/device/flashlight,/turf/simulated/floor/wood,/area/vacant/vacant_site) -"apM" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 4; pixel_y = 5},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/turf/simulated/floor/wood,/area/vacant/vacant_site) +"apM" = (/obj/structure/table/reinforced,/turf/simulated/floor/wood,/area/vacant/vacant_site) "apN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor,/area/maintenance/chapel) "apO" = (/turf/simulated/wall/r_wall,/area/security/security_equiptment_storage) "apP" = (/obj/structure/window/reinforced/tinted{dir = 1},/obj/structure/grille,/obj/structure/window/reinforced/tinted,/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/security/interrogation) @@ -2656,7 +2656,7 @@ "aZd" = (/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "aZe" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "aZf" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"aZg" = (/obj/structure/table/marble,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 8; pixel_y = 8},/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 0; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = -8; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 8; pixel_y = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 0; pixel_y = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = -8; pixel_y = 4},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) +"aZg" = (/obj/structure/table/marble,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) "aZh" = (/turf/simulated/wall,/area/medical/surgery_storage) "aZi" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/medbay_fore) "aZj" = (/obj/machinery/floodlight,/turf/simulated/floor,/area/maintenance/medbay_fore) @@ -2895,7 +2895,7 @@ "bdI" = (/turf/simulated/wall,/area/medical/cryo) "bdJ" = (/obj/structure/bookcase/manuals/medical,/obj/item/weapon/book/manual/stasis,/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak) "bdK" = (/obj/structure/table/standard,/obj/machinery/recharger{pixel_y = 0},/obj/item/weapon/reagent_containers/food/drinks/britcup,/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/machinery/newscaster{pixel_y = 32},/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak) -"bdL" = (/obj/structure/table/standard,/obj/structure/noticeboard{pixel_y = 28},/obj/item/weapon/book/manual/medical_diagnostics_manual{pixel_y = 7},/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 4; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Break Room Emergency Phone"},/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/machinery/light{dir = 1},/obj/item/weapon/storage/box/drinkingglasses,/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak) +"bdL" = (/obj/structure/table/standard,/obj/structure/noticeboard{pixel_y = 28},/obj/item/weapon/book/manual/medical_diagnostics_manual{pixel_y = 7},/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 4; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Break Room Emergency Phone"},/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak) "bdM" = (/obj/machinery/vending/cola,/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak) "bdN" = (/obj/machinery/vending/coffee,/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak) "bdO" = (/turf/simulated/wall,/area/crew_quarters/medical_restroom) @@ -7953,7 +7953,7 @@ "cWW" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/engineering/atmos) "cWX" = (/obj/machinery/pipedispenser,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/tiled,/area/engineering/atmos) "cWY" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/blast/regular{density = 0; dir = 1; icon_state = "pdoor0"; id = "atmoslockdown"; name = "Atmospherics Lockdown"; opacity = 0},/turf/simulated/floor/plating,/area/engineering/break_room) -"cWZ" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/reinforced,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 2},/turf/simulated/floor/tiled,/area/engineering/break_room) +"cWZ" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/reinforced,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 2},/turf/simulated/floor/tiled,/area/engineering/break_room) "cXa" = (/obj/structure/bed/chair/office/dark,/turf/simulated/floor/carpet,/area/engineering/break_room) "cXb" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/effect/floor_decal/corner/white{tag = "icon-corner_white (NORTH)"; icon_state = "corner_white"; dir = 1},/obj/effect/floor_decal/corner/blue{dir = 8},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/tiled,/area/engineering/foyer) "cXc" = (/obj/machinery/atmospherics/pipe/manifold/hidden/cyan{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/engineering/foyer) @@ -9707,7 +9707,7 @@ "dEI" = (/turf/space,/area/skipjack_station/southeast_solars) "dEJ" = (/obj/machinery/power/tracker,/obj/structure/cable/yellow,/turf/simulated/floor/airless,/area/solar/starboard) "dEK" = (/turf/space,/area/syndicate_station/south) - + (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -10010,4 +10010,3 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "} - diff --git a/maps/virgo-2.dmm b/maps/virgo-2.dmm index ec3c6c9176..34d0bd55e2 100644 --- a/maps/virgo-2.dmm +++ b/maps/virgo-2.dmm @@ -835,7 +835,7 @@ "qc" = (/obj/structure/reagent_dispensers/beerkeg,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops) "qd" = (/obj/machinery/vending/boozeomat,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops) "qe" = (/obj/structure/table/marble,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops) -"qf" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/storage/box/drinkingglasses,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops) +"qf" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/glasses,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops) "qg" = (/obj/structure/kitchenspike,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/specops) "qh" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/specops) "qi" = (/turf/space,/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/syndicate_station/start) @@ -849,7 +849,7 @@ "qq" = (/obj/structure/sign/double/map/right{pixel_y = 32},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) "qr" = (/obj/machinery/vending/snack{name = "hacked Getmore Chocolate Corp"; prices = list()},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) "qs" = (/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) -"qt" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) +"qt" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/glasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "qu" = (/obj/structure/sink/kitchen{pixel_y = 28},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "qv" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "qw" = (/obj/effect/landmark{name = "Nuclear-Code"},/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/syndicate_mothership) @@ -1341,7 +1341,7 @@ "zO" = (/obj/machinery/vending/dinnerware,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) "zP" = (/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) "zQ" = (/obj/structure/table/marble,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) -"zR" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/storage/box/drinkingglasses,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) +"zR" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/glasses,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) "zS" = (/obj/structure/bed/chair/comfy/teal{dir = 1},/obj/effect/floor_decal/carpet,/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/command) "zT" = (/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet,/obj/effect/floor_decal/carpet{dir = 6},/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/command) "zU" = (/obj/machinery/computer/security,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) @@ -1451,1008 +1451,1008 @@ "BU" = (/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) "BV" = (/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 8},/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) "BW" = (/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) -"BX" = (/obj/machinery/computer/cryopod{density = 0; layer = 3.3; pixel_y = 32},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"BY" = (/obj/machinery/cryopod/robot/door/gateway,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) -"BZ" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) -"Ca" = (/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"Cb" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"Cc" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) -"Cd" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 8},/area/shuttle/transport1/centcom) -"Ce" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 2},/area/shuttle/transport1/centcom) -"Cf" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-burst_l (EAST)"; icon_state = "burst_l"; dir = 4},/turf/space,/area/shuttle/transport1/centcom) -"Cg" = (/obj/machinery/computer/security,/obj/effect/floor_decal/corner/red{dir = 6},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Ch" = (/obj/structure/bed/chair,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) -"Ci" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/main_hall) -"Cj" = (/obj/machinery/computer/card,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Ck" = (/obj/effect/floor_decal/industrial/warning,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) -"Cl" = (/obj/structure/sign/redcross,/turf/unsimulated/wall,/area/centcom/medical) -"Cn" = (/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/obj/effect/step_trigger/teleporter/random{affect_ghosts = 1; name = "escapeshuttle_leave"; teleport_x = 25; teleport_x_offset = 245; teleport_y = 25; teleport_y_offset = 245; teleport_z = 6; teleport_z_offset = 6},/turf/space,/area/space) -"Co" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/red,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Cp" = (/obj/machinery/turretid{pixel_x = -28; pixel_y = -28; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Cq" = (/obj/structure/bed/chair/office/dark,/obj/machinery/button/remote/blast_door{desc = "A remote control switch for port-side blast doors."; id = "CentComPort"; name = "Security Doors"; pixel_x = -12; pixel_y = -25; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Cr" = (/obj/machinery/computer/secure_data,/obj/machinery/camera/network/crescent{c_tag = "Crescent Arrivals North"; dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Cs" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) -"Ct" = (/obj/machinery/gateway{dir = 10},/obj/effect/floor_decal/industrial/warning,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) -"Cv" = (/obj/machinery/gateway{dir = 6},/obj/effect/floor_decal/industrial/warning,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) -"Cw" = (/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) -"Cx" = (/obj/effect/floor_decal/corner/red{dir = 10},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Cy" = (/obj/structure/bed/chair{dir = 1},/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) -"Cz" = (/obj/machinery/telecomms/broadcaster/preset_cent,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CA" = (/obj/machinery/telecomms/hub/preset_cent,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CB" = (/obj/machinery/computer/rdservercontrol{badmin = 1; name = "Master R&D Server Controller"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CC" = (/obj/machinery/r_n_d/server/centcom,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CD" = (/obj/machinery/door/blast/regular{id = "CentComPort"; name = "Security Doors"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CE" = (/obj/structure/table/reinforced,/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"CF" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"CG" = (/obj/machinery/computer/teleporter,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CH" = (/obj/machinery/teleport/station,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CI" = (/obj/machinery/teleport/hub,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CJ" = (/obj/machinery/porta_turret/crescent,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"CK" = (/obj/machinery/door/airlock/external,/obj/effect/floor_decal/industrial/warning,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"CL" = (/obj/machinery/door/airlock/glass{name = "Arrivals Processing"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"CM" = (/obj/machinery/door/airlock/security{name = "Equipment Storage"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"CN" = (/obj/machinery/account_database{name = "CentComm Accounts database"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CO" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"CP" = (/turf/simulated/shuttle/wall{tag = "icon-swall (SOUTHEAST)"; icon_state = "swall"; dir = 6},/area/centcom/tram) -"CQ" = (/turf/simulated/shuttle/wall{tag = "icon-swall_straight (WEST)"; icon_state = "swall_straight"; dir = 8},/area/centcom/tram) -"CR" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) -"CS" = (/turf/simulated/shuttle/wall{tag = "icon-swall (WEST)"; icon_state = "swall"; dir = 8},/area/centcom/tram) -"CT" = (/obj/machinery/door/unpowered/shuttle,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"CU" = (/turf/simulated/shuttle/wall{tag = "icon-swall (EAST)"; icon_state = "swall"; dir = 4},/area/centcom/tram) -"CV" = (/turf/simulated/shuttle/wall{tag = "icon-swall (SOUTHWEST)"; icon_state = "swall"; dir = 10},/area/centcom/tram) -"CW" = (/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) -"CX" = (/obj/effect/floor_decal/corner/white/full{tag = "icon-corner_white_full (EAST)"; icon_state = "corner_white_full"; dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"CY" = (/obj/effect/floor_decal/corner/white,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"CZ" = (/obj/effect/floor_decal/corner/white{dir = 5},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"Da" = (/obj/effect/floor_decal/corner/white{dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"Db" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/effect/floor_decal/corner/red{dir = 9},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Dc" = (/obj/structure/closet/secure_closet/security,/obj/effect/floor_decal/corner/red{dir = 6},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Dd" = (/turf/simulated/shuttle/wall{tag = "icon-swall (NORTHWEST)"; icon_state = "swall"; dir = 9},/area/centcom/tram) -"De" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Df" = (/obj/structure/bed/chair,/obj/structure/closet/walllocker/emerglocker{pixel_x = 0; pixel_y = 28},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Dg" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Dh" = (/obj/structure/bed/chair,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 26},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Di" = (/turf/simulated/shuttle/wall{tag = "icon-swall (NORTHEAST)"; icon_state = "swall"; dir = 5},/area/centcom/tram) -"Dj" = (/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) -"Dk" = (/obj/effect/floor_decal/corner/white{dir = 6; icon_state = "corner_white"; tag = "icon-corner_white (NORTHWEST)"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"Dl" = (/obj/effect/floor_decal/corner/white/diagonal{tag = "icon-corner_white_diagonal (EAST)"; icon_state = "corner_white_diagonal"; dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"Dm" = (/obj/effect/floor_decal/corner/white{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"Dn" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/structure/window/reinforced,/obj/effect/floor_decal/corner/red{dir = 9},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Do" = (/obj/machinery/porta_turret/crescent,/obj/effect/floor_decal/industrial/hatch/yellow,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Dp" = (/obj/machinery/porta_turret/crescent,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Dq" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window2"},/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) -"Dr" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Ds" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Dt" = (/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) -"Du" = (/obj/effect/floor_decal/corner/white{tag = "icon-corner_white (NORTH)"; icon_state = "corner_white"; dir = 1},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"Dv" = (/obj/machinery/computer/card,/obj/effect/floor_decal/corner/red{dir = 6},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Dw" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/structure/window/reinforced{dir = 1},/obj/effect/floor_decal/corner/red{dir = 9},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Dx" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/restaurant) -"Dy" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) -"Dz" = (/obj/structure/flora/grass/brown,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (NORTHWEST)"; icon_state = "spline_fancy"; dir = 9},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DA" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood/cee{dir = 4},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DB" = (/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) -"DC" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood/cee{dir = 8},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DD" = (/obj/structure/flora/ausbushes/ywflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 5},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DE" = (/obj/machinery/door/airlock/centcom{name = "Arrivals Processing"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"DF" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window1"},/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) -"DG" = (/obj/structure/bed/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"DH" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"DI" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"DJ" = (/obj/structure/table/woodentable{dir = 5},/obj/structure/flora/pottedplant{pixel_y = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"DK" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"DL" = (/obj/structure/table/standard,/obj/structure/flora/pottedplant{icon_state = "plant-06"; pixel_y = 8; tag = "icon-plant-06"},/obj/effect/floor_decal/corner/red{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"DM" = (/obj/structure/bed/chair/office/dark,/obj/machinery/button/remote/blast_door{desc = "A remote control switch for port-side blast doors."; id = "CentComPort"; name = "Security Doors"; pixel_x = -12; pixel_y = -25; req_access = list(101)},/obj/effect/floor_decal/corner/red,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"DN" = (/obj/machinery/computer/secure_data,/obj/machinery/camera/network/crescent{c_tag = "Crescent Arrivals North"; dir = 8},/obj/effect/floor_decal/corner/red/full{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"DO" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/structure/window/reinforced,/obj/effect/floor_decal/corner/red/full,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"DP" = (/obj/structure/closet/secure_closet/security,/obj/effect/floor_decal/corner/red/full{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"DQ" = (/obj/structure/flora/ausbushes/fernybush,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DR" = (/obj/structure/flora/ausbushes/brflowers,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DS" = (/obj/structure/flora/ausbushes/ppflowers,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DT" = (/obj/structure/flora/bush,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DU" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/structure/flora/ausbushes/ppflowers,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DV" = (/obj/structure/flora/ausbushes/ywflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (NORTHWEST)"; icon_state = "spline_fancy"; dir = 9},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DW" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 6},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DX" = (/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) -"DY" = (/obj/structure/flora/ausbushes/fernybush,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (SOUTHWEST)"; icon_state = "spline_fancy"; dir = 10},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DZ" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 5},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Ea" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/structure/flora/ausbushes/brflowers,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Eb" = (/obj/machinery/turretid{pixel_x = -28; pixel_y = 0; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"Ec" = (/obj/machinery/computer/card,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"Ed" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Ee" = (/obj/structure/bed/chair{dir = 1},/obj/structure/closet/walllocker/emerglocker{pixel_x = 0; pixel_y = -30},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Ef" = (/obj/structure/bed/chair{dir = 1},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -30},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Eg" = (/obj/structure/table/woodentable{dir = 5},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Eh" = (/obj/structure/table/reinforced,/obj/machinery/computer/skills,/obj/structure/window/reinforced{dir = 2; health = 1e+006},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/red/full,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Ei" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/machinery/door/window/southright{name = "Arrivals Processing"; req_access = list(101)},/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/corner/red/full{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Ej" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (NORTHWEST)"; icon_state = "spline_fancy"; dir = 9},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Ek" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 6},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"El" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (SOUTHWEST)"; icon_state = "spline_fancy"; dir = 10},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Em" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"En" = (/obj/structure/bed/chair/office/dark,/obj/machinery/button/remote/blast_door{desc = "A remote control switch for port-side blast doors."; id = "CentComPortEast"; name = "Security Doors"; pixel_x = -12; pixel_y = -25; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"Eo" = (/obj/machinery/computer/secure_data,/obj/machinery/camera/network/crescent{c_tag = "Crescent Arrivals North"; dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"Ep" = (/obj/machinery/door/window/northright,/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Eq" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 1; health = 1e+006},/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Er" = (/obj/structure/bed/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Es" = (/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Et" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Eu" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Ev" = (/obj/structure/table/woodentable{dir = 5},/obj/structure/flora/pottedplant{pixel_y = 8},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Ew" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Ex" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 1; health = 1e+006},/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Ey" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "CentComPortWest"; name = "Security Doors"; opacity = 0},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Ez" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood/cee,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"EA" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"EB" = (/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"EC" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"ED" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/machinery/computer/skills,/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"EE" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/machinery/door/window/southright{name = "Arrivals Processing"; req_access = list(101)},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"EF" = (/obj/machinery/door/airlock/external,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"EG" = (/obj/structure/bed/chair/office/light{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"EH" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"EI" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"EJ" = (/obj/machinery/turretid{pixel_x = 28; pixel_y = -28; req_access = list(101)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"EK" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"EL" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"EM" = (/obj/effect/floor_decal/spline/plain{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) -"EN" = (/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"EO" = (/obj/effect/floor_decal/spline/plain{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) -"EP" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "CentComPortEast"; name = "Security Doors"; opacity = 0},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"EQ" = (/obj/machinery/door/blast/regular{id = "CentComPortEast"; name = "Security Doors"},/turf/unsimulated/floor{icon_state = "green"; dir = 8},/area/centcom/tram) -"ER" = (/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/obj/effect/step_trigger/teleporter/random{affect_ghosts = 1; name = "escapeshuttle_leave"; teleport_x = 25; teleport_x_offset = 245; teleport_y = 25; teleport_y_offset = 245; teleport_z = 6; teleport_z_offset = 6},/obj/effect/step_trigger/teleporter/random{affect_ghosts = 1; name = "escapeshuttle_leave"; teleport_x = 25; teleport_x_offset = 245; teleport_y = 25; teleport_y_offset = 245; teleport_z = 6; teleport_z_offset = 6},/turf/space,/area/space) -"ES" = (/obj/machinery/door/window/eastright,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"ET" = (/obj/machinery/hologram/holopad,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"EU" = (/obj/machinery/door/window/westright,/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"EV" = (/obj/structure/bed/chair/office/light{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"EW" = (/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"EX" = (/obj/effect/floor_decal/spline/plain{tag = "icon-spline_plain_full (NORTH)"; icon_state = "spline_plain_full"; dir = 1},/obj/structure/showcase,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) -"EY" = (/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"EZ" = (/obj/structure/bed/chair/office/light,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fa" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fb" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fc" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"Fd" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"Fe" = (/obj/machinery/door/window/southleft,/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Ff" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fg" = (/obj/structure/bed/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fh" = (/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fi" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fj" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fk" = (/obj/structure/table/woodentable{dir = 5},/obj/structure/flora/pottedplant{pixel_y = 8},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fl" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fm" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fn" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fo" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood/cee{dir = 1},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Fp" = (/obj/structure/window/reinforced,/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"Fq" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"Fr" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood/cee{dir = 1},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Fs" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"Ft" = (/turf/unsimulated/wall,/area/centcom/medical) -"Fu" = (/obj/machinery/door/airlock/glass_medical{name = "Arrivals Medbay"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Fv" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/medical) -"Fw" = (/obj/structure/flora/ausbushes/ywflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (SOUTHWEST)"; icon_state = "spline_fancy"; dir = 10},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Fx" = (/obj/structure/flora/grass/brown,/obj/effect/floor_decal/spline/fancy/wood{dir = 5},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Fy" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (NORTHWEST)"; icon_state = "spline_fancy"; dir = 9},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Fz" = (/obj/structure/flora/ausbushes/ywflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 6},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"FA" = (/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"FB" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"FC" = (/obj/machinery/vending/cola,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"FD" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"FE" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"FF" = (/obj/structure/table/standard,/obj/structure/flora/pottedplant{pixel_y = 8},/obj/effect/floor_decal/corner/green{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FG" = (/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FH" = (/obj/effect/floor_decal/corner/green{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FI" = (/obj/structure/table/standard,/obj/item/roller,/obj/item/roller{pixel_y = 8},/obj/item/roller{pixel_y = 16},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FJ" = (/obj/structure/table/standard,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FK" = (/obj/effect/floor_decal/corner/green{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FL" = (/obj/effect/floor_decal/corner/green,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FM" = (/obj/structure/table/standard,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/effect/floor_decal/corner/beige/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FN" = (/obj/structure/table/standard,/obj/machinery/reagentgrinder,/obj/effect/floor_decal/corner/beige{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FO" = (/obj/effect/floor_decal/corner/beige{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FP" = (/obj/machinery/chem_master,/obj/effect/floor_decal/corner/beige/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FQ" = (/obj/structure/flora/ausbushes,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"FR" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (SOUTHWEST)"; icon_state = "spline_fancy"; dir = 10},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"FS" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 5},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"FT" = (/obj/structure/flora/ausbushes/sparsegrass,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"FU" = (/obj/structure/flora/bush,/obj/structure/flora/ausbushes/sparsegrass,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"FV" = (/obj/effect/floor_decal/corner/white{dir = 9; icon_state = "corner_white"; tag = "icon-corner_white (NORTHWEST)"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"FW" = (/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FX" = (/obj/effect/floor_decal/corner/beige{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FY" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FZ" = (/obj/machinery/chemical_dispenser/ert,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/effect/floor_decal/corner/beige{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Ga" = (/turf/unsimulated/wall,/area/centcom/bar) -"Gb" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/bar) -"Gc" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"Gd" = (/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) -"Ge" = (/turf/unsimulated/wall,/area/centcom/bathroom) -"Gf" = (/obj/machinery/door/airlock,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) -"Gg" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s (EAST)"; icon_state = "swall_s"; dir = 4},/area/shuttle/escape/centcom) -"Gh" = (/obj/structure/window/shuttle{icon_state = "window4"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) -"Gi" = (/obj/structure/window/shuttle{icon_state = "window12"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) -"Gj" = (/obj/structure/window/shuttle{icon_state = "window8"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) -"Gk" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s"; icon_state = "swall_s"},/area/shuttle/escape/centcom) -"Gl" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Gm" = (/obj/structure/bed/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Gn" = (/obj/structure/closet/secure_closet/chemical,/obj/effect/floor_decal/corner/beige{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Go" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/effect/floor_decal/corner/beige{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Gp" = (/obj/structure/table/woodentable{dir = 5},/obj/structure/flora/pottedplant{pixel_y = 8},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"Gq" = (/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"Gr" = (/obj/structure/table/steel,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) -"Gs" = (/obj/structure/closet/secure_closet/personal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) -"Gt" = (/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) -"Gu" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"Gv" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"Gw" = (/turf/simulated/shuttle/wall{tag = "icon-swall (NORTHWEST)"; icon_state = "swall"; dir = 9},/area/shuttle/escape/centcom) -"Gx" = (/obj/machinery/computer/secure_data,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Gy" = (/obj/machinery/computer/station_alert,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Gz" = (/obj/machinery/computer/shuttle_control/emergency,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"GA" = (/obj/machinery/computer/communications,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"GB" = (/obj/machinery/computer/med_data,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"GC" = (/turf/simulated/shuttle/wall{tag = "icon-swall (NORTHEAST)"; icon_state = "swall"; dir = 5},/area/shuttle/escape/centcom) -"GD" = (/obj/effect/floor_decal/corner/green{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"GE" = (/obj/structure/closet/secure_closet/medical1,/obj/effect/floor_decal/corner/beige{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"GF" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/extinguisher,/obj/machinery/camera/network/crescent{c_tag = "Shuttle Bridge West"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"GG" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"GH" = (/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"GI" = (/obj/machinery/status_display{pixel_y = 30},/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin,/obj/machinery/camera/network/crescent{c_tag = "Shuttle Bridge East"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"GJ" = (/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"GK" = (/obj/structure/closet/secure_closet/medical1,/obj/effect/floor_decal/corner/beige/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"GL" = (/obj/effect/floor_decal/corner/beige{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"GM" = (/obj/effect/floor_decal/corner/beige,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"GN" = (/obj/machinery/chem_master,/obj/effect/floor_decal/corner/beige/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"GO" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 4},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"GP" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/amanita_pie,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"GQ" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/bigbiteburger,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"GR" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 8},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"GS" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/carrotcakeslice,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"GT" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/stew,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"GU" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) -"GV" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) -"GW" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_shuttle"; pixel_x = 0; pixel_y = -25; req_one_access = list(13); tag_door = "escape_shuttle_hatch"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"GX" = (/obj/machinery/hologram/holopad,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"GY" = (/obj/machinery/light,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"GZ" = (/obj/effect/floor_decal/corner/beige{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Ha" = (/obj/structure/closet/secure_closet/medical_wall{name = "Pill Cabinet"},/obj/item/weapon/storage/pill_bottle/antitox,/obj/item/weapon/storage/pill_bottle/tramadol,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/inaprovaline,/turf/unsimulated/wall,/area/centcom/medical) -"Hb" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/boiledrice,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"Hc" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/beetsoup,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"Hd" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/stuffing,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"He" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/soylenviridians,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"Hf" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -30},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Hg" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Hh" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = 30},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Hi" = (/turf/simulated/shuttle/wall{tag = "icon-swall_straight"; icon_state = "swall_straight"},/area/shuttle/escape/centcom) -"Hj" = (/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"Hk" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Hl" = (/obj/machinery/computer/security,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Hm" = (/turf/simulated/shuttle/wall{tag = "icon-swall"; icon_state = "swall"},/area/shuttle/escape/centcom) -"Hn" = (/obj/structure/AIcore/deactivated,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"Ho" = (/obj/machinery/computer/crew,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Hp" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Hq" = (/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"Hr" = (/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Hs" = (/obj/structure/table/standard,/obj/structure/flora/pottedplant{pixel_y = 8},/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Ht" = (/obj/machinery/smartfridge/chemistry,/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Hu" = (/obj/structure/closet/secure_closet/medical3,/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Hv" = (/obj/machinery/door/airlock/glass_command{name = "Escape Shuttle Cockpit"; req_access = list(19)},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"Hw" = (/turf/simulated/shuttle/wall{tag = "icon-swall (SOUTHEAST)"; icon_state = "swall"; dir = 6},/area/shuttle/escape/centcom) -"Hx" = (/turf/simulated/shuttle/wall{tag = "icon-swall_t"; icon_state = "swall_t"},/area/shuttle/escape/centcom) -"Hy" = (/turf/simulated/shuttle/wall{tag = "icon-swall_straight (EAST)"; icon_state = "swall_straight"; dir = 4},/area/shuttle/escape/centcom) -"Hz" = (/turf/simulated/shuttle/wall{tag = "icon-swall (SOUTHWEST)"; icon_state = "swall"; dir = 10},/area/shuttle/escape/centcom) -"HA" = (/obj/machinery/door/airlock/multi_tile/glass{id_tag = "MedbayFoyerPort"; req_access = newlist()},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HB" = (/obj/structure/table/glass,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HC" = (/obj/structure/table/glass,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HD" = (/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/obj/structure/window/reinforced{dir = 1},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HE" = (/obj/structure/table/glass,/obj/structure/window/reinforced{dir = 1},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HF" = (/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HG" = (/obj/structure/closet/secure_closet/medical3,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HH" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/bloodsoup,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"HI" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/tofukabob,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"HJ" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/poppypretzel,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"HK" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/orangecakeslice,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"HL" = (/obj/machinery/atm{pixel_x = -30},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"HM" = (/obj/machinery/atm{pixel_x = 30},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"HN" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) -"HO" = (/obj/machinery/status_display{pixel_y = 30},/obj/machinery/camera/network/crescent{c_tag = "Shuttle Cell"},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) -"HP" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 30},/obj/structure/bed/chair{dir = 8},/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) -"HQ" = (/obj/machinery/computer/crew,/obj/effect/floor_decal/corner/green{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HR" = (/obj/structure/bed/chair/office/light{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HS" = (/obj/machinery/computer/med_data,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HT" = (/obj/machinery/iv_drip,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HU" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/spesslaw,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"HV" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/candiedapple,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"HW" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/mushroomsoup,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"HX" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/meatsteak,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"HY" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"HZ" = (/obj/structure/sink{pixel_y = 16},/obj/structure/mirror{pixel_y = 32},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Ia" = (/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Ib" = (/obj/structure/urinal{pixel_y = 32},/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Ic" = (/obj/structure/urinal{pixel_y = 32},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Id" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"Ie" = (/obj/structure/window/shuttle{icon_state = "window2"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) -"If" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) -"Ig" = (/obj/machinery/hologram/holopad,/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) -"Ih" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) -"Ii" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Ij" = (/obj/structure/window/shuttle{icon_state = "window1"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) -"Ik" = (/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) -"Il" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"Im" = (/turf/unsimulated/wall,/area/tdome) -"In" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/tdome) -"Io" = (/obj/machinery/door/airlock/centcom{name = "Thunderdome"; opacity = 1; req_access = list(101)},/obj/machinery/door/blast/regular{id = "crescent_thunderdome"; name = "Thunderdome"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Ip" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Iq" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Ir" = (/obj/machinery/door/airlock{name = "Unit 3"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Is" = (/obj/machinery/door/airlock{name = "Unit 4"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"It" = (/obj/machinery/door/airlock{name = "Unit 5"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Iu" = (/obj/machinery/door/airlock{name = "Unit 6"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Iv" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 1},/area/shuttle/escape/centcom) -"Iw" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/extinguisher,/obj/item/weapon/crowbar,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Ix" = (/turf/simulated/shuttle/wall{icon_state = "swall"; dir = 5},/area/shuttle/escape/centcom) -"Iy" = (/obj/machinery/door/airlock/glass_security{name = "Escape Shuttle Cell"; req_access = list(1)},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) -"Iz" = (/turf/simulated/shuttle/wall{icon_state = "swall"; dir = 9},/area/shuttle/escape/centcom) -"IA" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/material/ashtray/bronze{pixel_x = -1; pixel_y = 1},/obj/machinery/camera/network/crescent{c_tag = "Crescent Bar East"; dir = 4},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"IB" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/material/ashtray/bronze{pixel_x = -1; pixel_y = 1},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"IC" = (/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"ID" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"IE" = (/obj/structure/table/woodentable{dir = 5},/obj/machinery/cash_register/civilian,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"IF" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"IG" = (/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"IH" = (/obj/structure/toilet{dir = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"II" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"IJ" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "centcom_dock_airlock"; locked = 1; name = "Arrivals Airlock"; req_access = list(13)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"IK" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "shuttle_dock_south_mech"; pixel_y = 19},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"IL" = (/obj/machinery/status_display{pixel_y = 30},/obj/machinery/light{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"IM" = (/obj/machinery/camera/network/crescent{c_tag = "Shuttle Center"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"IN" = (/obj/machinery/vending/medical,/turf/unsimulated/wall,/area/centcom/medical) -"IO" = (/obj/machinery/vending/medical,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"IP" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/blood/AMinus,/obj/item/weapon/reagent_containers/blood/APlus,/obj/item/weapon/reagent_containers/blood/BMinus,/obj/item/weapon/reagent_containers/blood/BPlus,/obj/item/weapon/reagent_containers/blood/OPlus,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"IQ" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"IR" = (/obj/structure/bed/chair/comfy/brown,/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet{dir = 1},/obj/effect/floor_decal/carpet{dir = 9},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"IS" = (/obj/structure/bed/chair/comfy/brown,/obj/effect/floor_decal/carpet{dir = 1},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"IT" = (/obj/structure/bed/chair/comfy/brown,/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet{dir = 1},/obj/effect/floor_decal/carpet{dir = 5},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"IU" = (/obj/structure/table/woodentable{dir = 5},/obj/item/clothing/under/suit_jacket,/obj/item/clothing/suit/wcoat,/obj/item/clothing/head/that{pixel_x = 4; pixel_y = 6},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"IV" = (/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"IW" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"IX" = (/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"IY" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"IZ" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"Ja" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "shuttle_dock_north_mech"; pixel_y = -19},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"Jb" = (/obj/structure/table/standard,/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Jc" = (/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Jd" = (/obj/machinery/sleeper{dir = 8},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Je" = (/obj/machinery/sleep_console,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Jf" = (/obj/structure/table/standard,/obj/item/roller,/obj/item/roller{pixel_y = 8},/obj/item/roller{pixel_y = 16},/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Jg" = (/obj/effect/floor_decal/corner/blue{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Jh" = (/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Ji" = (/obj/effect/floor_decal/carpet{dir = 8},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -30},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"Jj" = (/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"Jk" = (/obj/effect/floor_decal/carpet{dir = 4},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"Jl" = (/obj/structure/curtain/open/shower,/obj/machinery/shower,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Jm" = (/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Jn" = (/obj/structure/bed/chair{dir = 4},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/obj/machinery/camera/network/crescent{c_tag = "Shuttle West"; dir = 4},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Jo" = (/obj/structure/bed/chair{dir = 8},/obj/structure/closet/walllocker/emerglocker{pixel_x = 28},/obj/machinery/camera/network/crescent{c_tag = "Shuttle East"; dir = 8},/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Jp" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/adv,/obj/item/weapon/storage/firstaid/adv,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Jq" = (/obj/effect/floor_decal/corner/blue{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Jr" = (/obj/machinery/atmospherics/unary/cryo_cell,/obj/effect/floor_decal/corner/blue{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Js" = (/obj/machinery/atmospherics/unary/cryo_cell,/obj/effect/floor_decal/corner/blue/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Jt" = (/obj/structure/bed/chair/comfy/brown{dir = 1},/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet,/obj/effect/floor_decal/carpet{dir = 10},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"Ju" = (/obj/structure/bed/chair/comfy/brown{dir = 1},/obj/effect/floor_decal/carpet,/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"Jv" = (/obj/structure/bed/chair/comfy/brown{dir = 1},/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet,/obj/effect/floor_decal/carpet{dir = 6},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"Jw" = (/obj/structure/closet/secure_closet/bar{req_access = list(25)},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"Jx" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/book/manual/barman_recipes,/obj/item/weapon/reagent_containers/glass/rag,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"Jy" = (/obj/structure/table/woodentable{dir = 5},/obj/machinery/chemical_dispenser/bar_alc/full,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"Jz" = (/obj/structure/table/woodentable{dir = 5},/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"JA" = (/obj/machinery/porta_turret/crescent,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"JB" = (/obj/structure/window/shuttle{icon_state = "window3"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) -"JC" = (/obj/machinery/sleeper{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JD" = (/obj/machinery/sleep_console,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JE" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/fire,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JF" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"; tag = "icon-intact-f (NORTHEAST)"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JG" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JH" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JI" = (/obj/structure/curtain/open/shower,/obj/machinery/shower{dir = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"JJ" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "centcom_dock"; name = "docking port controller"; pixel_x = 25; pixel_y = 0; req_one_access = list(13); tag_door = "centcom_dock_airlock"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"JK" = (/obj/machinery/iv_drip,/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JL" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/toxin,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JM" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JN" = (/obj/structure/morgue,/obj/effect/floor_decal/corner/blue/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JO" = (/obj/effect/floor_decal/corner/blue{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JP" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/obj/effect/floor_decal/corner/blue/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JQ" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/obj/machinery/door/blast/regular{id = "crescent_thunderdome"; name = "Thunderdome"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"JR" = (/obj/structure/bed/roller,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/structure/closet/secure_closet/medical_wall{name = "O- Blood Locker"; pixel_x = -32},/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JS" = (/obj/machinery/bodyscanner{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JT" = (/obj/machinery/body_scanconsole,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JU" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/o2,/obj/item/weapon/storage/firstaid/o2,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JV" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 5; pixel_y = 5},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 0; pixel_y = 0},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/obj/item/weapon/wrench,/obj/effect/floor_decal/corner/blue/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JW" = (/obj/effect/floor_decal/corner/blue{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JX" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/obj/effect/floor_decal/corner/blue,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JY" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/obj/effect/floor_decal/corner/blue/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JZ" = (/obj/structure/morgue,/obj/effect/floor_decal/corner/blue{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Ka" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Kb" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Kc" = (/obj/structure/bed/chair{dir = 4},/obj/structure/closet/walllocker/emerglocker{pixel_x = -28},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Kd" = (/obj/structure/bed/chair{dir = 8},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 26},/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Ke" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/firstaid/regular,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Kf" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "GeneticsDoor"; name = "Cloning Laboratory"; req_access = list(66)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Kg" = (/obj/structure/closet/secure_closet/bar,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"Kh" = (/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"Ki" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"Kj" = (/obj/machinery/door/airlock/command{name = "Thunderdome"},/obj/machinery/door/blast/regular{id = "crescent_thunderdome"; name = "Thunderdome"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome) -"Kk" = (/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Kl" = (/obj/machinery/door/airlock/medical{name = "Virology Access"; req_access = list(5)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Km" = (/obj/effect/floor_decal/corner/blue/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Kn" = (/obj/effect/floor_decal/corner/blue{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Ko" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/effect/floor_decal/corner/blue{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Kp" = (/obj/structure/filingcabinet/chestdrawer{desc = "A large drawer filled with autopsy reports."; name = "Autopsy Reports"},/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Kq" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Kr" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer,/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer,/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer,/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Ks" = (/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Kt" = (/obj/structure/reagent_dispensers/beerkeg,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Ku" = (/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Kv" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Kw" = (/obj/machinery/status_display{pixel_y = -30},/obj/machinery/light,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"Kx" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "shuttle_dock_south_starboard_mech"; pixel_y = -19},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"Ky" = (/obj/machinery/door/airlock/medical{name = "Observation Room"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Kz" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KA" = (/obj/structure/closet/l3closet/virology,/obj/item/clothing/mask/gas,/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KB" = (/obj/machinery/door/airlock/medical{name = "Morgue"; req_access = list(6,5)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KC" = (/obj/machinery/optable,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KD" = (/obj/item/device/camera{name = "Autopsy Camera"; pixel_x = -2; pixel_y = 7},/obj/item/weapon/paper_bin{pixel_y = -6},/obj/item/weapon/pen/red{pixel_x = -1; pixel_y = -9},/obj/item/weapon/pen/blue{pixel_x = 3; pixel_y = -5},/obj/structure/table/standard,/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KE" = (/obj/structure/closet/secure_closet/freezer/meat,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"KF" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"KG" = (/obj/structure/bed/chair,/obj/effect/landmark{name = "tdomeobserve"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"KH" = (/obj/structure/disposalpipe/trunk,/obj/structure/disposaloutlet,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"KI" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"KJ" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 8},/area/shuttle/escape/centcom) -"KK" = (/obj/machinery/door/airlock/glass_mining{name = "Shuttle Cargo"},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"KL" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 1},/area/shuttle/escape/centcom) -"KM" = (/obj/machinery/door/airlock/glass_medical{name = "Escape Shuttle Infirmary"; req_access = list(5)},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"KN" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 4},/area/shuttle/escape/centcom) -"KO" = (/obj/effect/floor_decal/corner/pink{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KP" = (/obj/effect/floor_decal/corner/pink{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KQ" = (/obj/effect/floor_decal/corner/pink{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KR" = (/obj/effect/floor_decal/corner/pink/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KS" = (/obj/machinery/shower{dir = 4; icon_state = "shower"; pixel_x = 0; pixel_y = 0},/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KT" = (/obj/structure/closet/l3closet/virology,/obj/item/clothing/mask/gas,/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KU" = (/obj/machinery/clonepod,/obj/effect/floor_decal/corner/blue/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KV" = (/obj/machinery/computer/cloning,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KW" = (/obj/machinery/dna_scannernew,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KX" = (/obj/structure/closet/wardrobe/white,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KY" = (/obj/structure/table/standard,/obj/item/weapon/book/manual/medical_cloning,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KZ" = (/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/storage/box/bodybags,/obj/structure/table/standard,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"La" = (/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Lb" = (/obj/item/weapon/autopsy_scanner,/obj/item/weapon/scalpel,/obj/structure/table/standard,/obj/effect/floor_decal/corner/blue/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Lc" = (/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"Ld" = (/obj/structure/table/standard,/obj/machinery/microwave,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"Le" = (/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"Lf" = (/obj/machinery/computer/security/telescreen,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Lg" = (/obj/item/device/camera,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Lh" = (/obj/structure/disposalpipe/segment,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Li" = (/obj/structure/closet/walllocker/emerglocker{pixel_x = -28},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"Lj" = (/obj/structure/closet/hydrant{pixel_x = 30; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"Lk" = (/obj/machinery/atmospherics/unary/cryo_cell{layer = 3.3},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Ll" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Lm" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Ln" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = -4; pixel_y = 0},/obj/item/weapon/wrench,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Lo" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/weapon/storage/firstaid/o2{layer = 2.8; pixel_x = 4; pixel_y = 6},/obj/item/weapon/storage/box/masks{pixel_x = 0; pixel_y = 0},/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/fire{layer = 2.9; pixel_x = 2; pixel_y = 3},/obj/item/weapon/storage/firstaid/adv{pixel_x = -2},/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Lp" = (/obj/structure/closet/hydrant{pixel_x = -30; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"Lq" = (/obj/structure/closet/walllocker/emerglocker{pixel_x = 28},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"Lr" = (/obj/effect/floor_decal/corner/pink,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Ls" = (/obj/structure/bed/chair,/obj/effect/floor_decal/corner/pink{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Lt" = (/obj/structure/bed/chair,/obj/effect/floor_decal/corner/pink/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Lu" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Lv" = (/obj/structure/closet/l3closet/virology,/obj/item/clothing/mask/gas,/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Lw" = (/obj/structure/bed/chair,/obj/structure/disposalpipe/segment,/obj/effect/landmark{name = "tdomeobserve"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Lx" = (/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"Ly" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/obj/machinery/camera/network/crescent{c_tag = "Shuttle Medical"; dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Lz" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"LA" = (/obj/machinery/vending/wallmed1{layer = 3.3; name = "Emergency NanoMed"; pixel_x = 28; pixel_y = 0},/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"LB" = (/obj/machinery/door/airlock/medical{name = "Operating Theatre"; req_access = list(45)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LC" = (/obj/machinery/disease2/incubator,/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LD" = (/obj/item/weapon/storage/box/syringes{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/beakers,/obj/item/weapon/reagent_containers/dropper,/obj/structure/table/glass,/obj/structure/reagent_dispensers/virusfood{pixel_x = 0; pixel_y = 28},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LE" = (/obj/machinery/disease2/isolator,/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LF" = (/obj/effect/floor_decal/corner/green/full{dir = 8},/obj/machinery/computer/arcade/orion_trail,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LG" = (/obj/effect/floor_decal/corner/green{dir = 5},/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LH" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/green,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LI" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/green,/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LJ" = (/obj/structure/table/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/brown,/obj/item/weapon/melee/energy/axe,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"LK" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"LL" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/obj/structure/disposalpipe/segment,/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"LM" = (/obj/structure/table/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/brown,/obj/item/weapon/melee/energy/axe,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"LN" = (/obj/structure/closet/crate/freezer/rations,/obj/machinery/camera/network/crescent{c_tag = "Shuttle West Storage"; dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"LO" = (/obj/structure/closet/crate/freezer/rations,/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"LP" = (/obj/machinery/iv_drip,/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"LQ" = (/obj/machinery/hologram/holopad,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"LR" = (/obj/structure/bed/roller,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"LS" = (/obj/structure/bed/roller,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 26},/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"LT" = (/obj/machinery/recharge_station,/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"LU" = (/obj/machinery/recharge_station,/obj/machinery/camera/network/crescent{c_tag = "Shuttle East Storage"; dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"LV" = (/obj/structure/table/standard,/obj/item/weapon/FixOVein{pixel_x = -6; pixel_y = 1},/obj/item/stack/medical/advanced/bruise_pack,/obj/effect/floor_decal/corner/pink{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LW" = (/obj/structure/table/standard,/obj/item/weapon/retractor{pixel_x = 0; pixel_y = 6},/obj/item/weapon/scalpel,/obj/effect/floor_decal/corner/pink{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LX" = (/obj/structure/table/standard,/obj/item/weapon/surgicaldrill,/obj/item/weapon/circular_saw,/obj/effect/floor_decal/corner/pink/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LY" = (/obj/machinery/door/blast/regular{id = "thunderdomeaxe"; name = "Axe Supply"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"LZ" = (/obj/machinery/igniter,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Ma" = (/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Mb" = (/obj/structure/disposalpipe/segment,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Mc" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/airless,/area/shuttle/escape/centcom) -"Md" = (/obj/machinery/sleeper{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Me" = (/obj/machinery/sleep_console,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Mf" = (/obj/machinery/sleep_console{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Mg" = (/obj/machinery/sleeper{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Mh" = (/obj/structure/table/standard,/obj/item/weapon/cautery{pixel_y = 4},/obj/item/weapon/hemostat{pixel_y = 4},/obj/item/stack/nanopaste,/obj/effect/floor_decal/corner/pink{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Mi" = (/obj/effect/floor_decal/corner/pink{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Mj" = (/obj/machinery/door/airlock/glass_medical{name = "Virology Laboratory"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Mk" = (/obj/structure/table/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/tdome/red,/obj/item/clothing/head/helmet/thunderdome,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/energy/sword/red,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Ml" = (/obj/machinery/door/blast/regular{id = "thunderdomegen"; name = "General Supply"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Mm" = (/obj/effect/landmark{name = "tdome2"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome2) -"Mn" = (/obj/machinery/door/blast/regular{id = "thunderdome"; name = "Thunderdome Blast Door"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Mo" = (/obj/effect/landmark{name = "tdome1"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome1) -"Mp" = (/obj/structure/table/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/tdome/green,/obj/item/clothing/head/helmet/thunderdome,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/energy/sword/green,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Mq" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 1},/area/shuttle/escape/centcom) -"Mr" = (/obj/structure/shuttle/engine/propulsion,/turf/space,/area/shuttle/escape/centcom) -"Ms" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 2},/area/shuttle/escape/centcom) -"Mt" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 8},/area/shuttle/escape/centcom) -"Mu" = (/obj/structure/table/standard,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel{pixel_x = 4; pixel_y = 3},/obj/effect/floor_decal/corner/pink{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Mv" = (/obj/machinery/computer/operating,/obj/effect/floor_decal/corner/pink{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Mw" = (/obj/machinery/computer/centrifuge,/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Mx" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"My" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table/glass,/obj/item/weapon/storage/box/monkeycubes,/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Mz" = (/obj/machinery/recharger{pixel_y = 4},/obj/effect/landmark{name = "tdome2"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome2) -"MA" = (/obj/machinery/recharger{pixel_y = 4},/obj/effect/landmark{name = "tdome1"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome1) -"MB" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = 28},/obj/effect/floor_decal/corner/pink{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MC" = (/obj/machinery/smartfridge/chemistry/virology,/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MD" = (/obj/structure/bed/chair/office/dark,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"ME" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MF" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MG" = (/obj/machinery/vending/snack,/obj/effect/floor_decal/corner/green/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MH" = (/obj/machinery/vending/coffee,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MI" = (/obj/machinery/computer/arcade,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MJ" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/green,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MK" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/green,/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"ML" = (/obj/effect/landmark{name = "tdome2"},/obj/machinery/camera/network/thunder{c_tag = "Thunderdome - Red Team"; invisibility = 101},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome2) -"MM" = (/obj/machinery/flasher{id = "flash"; name = "Thunderdome Flash"},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"MN" = (/obj/effect/landmark{name = "tdome1"},/obj/machinery/camera/network/thunder{c_tag = "Green Team"; invisibility = 101},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome1) -"MO" = (/obj/structure/closet/secure_closet/medical2,/obj/effect/floor_decal/corner/pink/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MP" = (/obj/machinery/iv_drip,/obj/effect/floor_decal/corner/pink{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MQ" = (/obj/effect/floor_decal/corner/pink{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MR" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = 4; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = 4; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OMinus{pixel_x = -5; pixel_y = -1},/obj/item/weapon/reagent_containers/blood/OMinus{pixel_x = -5; pixel_y = -1},/obj/effect/floor_decal/corner/pink{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MS" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/box/masks,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/effect/floor_decal/corner/pink/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MT" = (/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/obj/effect/floor_decal/corner/green/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MU" = (/obj/item/weapon/storage/box/gloves{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/masks,/obj/structure/table/glass,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MV" = (/obj/machinery/disease2/diseaseanalyser,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MW" = (/obj/machinery/computer/diseasesplicer,/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MX" = (/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/green/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MY" = (/obj/machinery/atmospherics/pipe/vent,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"MZ" = (/obj/machinery/camera/network/thunder{c_tag = "Thunderdome Arena"; invisibility = 101},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Na" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Nb" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 1},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Nc" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Nd" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Ne" = (/obj/machinery/door/airlock/command{name = "Thunderdome Administration"; req_access = list(102)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Nf" = (/obj/machinery/door/blast/regular{id = "thunderdomehea"; name = "Heavy Supply"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Ng" = (/obj/structure/table/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Nh" = (/obj/machinery/door/airlock/command{name = "Thunderdome Administration"; req_access = list(102)},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Ni" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/obj/machinery/atmospherics/pipe/simple/visible,/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Nj" = (/obj/structure/table/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Nk" = (/obj/machinery/door/airlock/centcom{name = "Special Operations"; opacity = 1; req_access = list(103)},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/terminal) -"Nl" = (/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nm" = (/obj/structure/bed/chair{dir = 1},/obj/effect/landmark{name = "tdomeadmin"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nn" = (/obj/item/weapon/extinguisher,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"No" = (/obj/machinery/atmospherics/valve,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Np" = (/obj/structure/bed/chair{dir = 1},/obj/structure/disposalpipe/segment,/obj/effect/landmark{name = "tdomeadmin"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nq" = (/obj/machinery/computer/security/telescreen,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nr" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/sleeping_agent{pixel_x = 1},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Ns" = (/obj/item/weapon/wrench,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nt" = (/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/disposal,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nu" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome) -"Nv" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nw" = (/obj/structure/table/standard,/obj/machinery/recharger{pixel_y = 4},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nx" = (/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Ny" = (/obj/machinery/computer/pod{id = "thunderdomeaxe"; name = "Thunderdome Axe Supply"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nz" = (/obj/machinery/computer/pod{id = "thunderdomegen"; name = "Thunderdome General Supply"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"NA" = (/obj/machinery/computer/pod{id = "thunderdomehea"; name = "Thunderdome Heavy Supply"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"NB" = (/obj/machinery/computer/pod{id = "thunderdome"; name = "Thunderdome Blast Door Control"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"NC" = (/obj/item/stack/medical/ointment,/obj/item/stack/medical/ointment,/obj/item/stack/medical/ointment,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"ND" = (/obj/structure/table/standard,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/bruise_pack,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"NE" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/handcuffs,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"NF" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"NG" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/electrical,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"NH" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"NI" = (/turf/unsimulated/beach/sand{density = 1; opacity = 1},/area/beach) -"NJ" = (/turf/unsimulated/beach/sand,/area/beach) -"NK" = (/obj/structure/signpost,/turf/unsimulated/beach/sand,/area/beach) -"NL" = (/obj/structure/closet,/turf/unsimulated/beach/sand,/area/beach) -"NM" = (/obj/effect/overlay/palmtree_l,/turf/unsimulated/beach/sand,/area/beach) -"NN" = (/obj/effect/overlay/palmtree_r,/obj/effect/overlay/coconut,/turf/unsimulated/beach/sand,/area/beach) -"NO" = (/obj/effect/overlay/coconut,/turf/unsimulated/beach/sand,/area/beach) -"NP" = (/turf/space,/area/shuttle/cryo/centcom) -"NQ" = (/obj/effect/overlay/palmtree_r,/turf/unsimulated/beach/sand,/area/beach) -"NR" = (/obj/effect/landmark{name = "endgame_exit"},/turf/unsimulated/beach/sand,/area/beach) -"NS" = (/turf/simulated/shuttle/wall{dir = 4; icon_state = "swall_s"},/area/centcom/evac) -"NT" = (/turf/unsimulated/wall{desc = "That looks like it doesn't open easily."; dir = 8; icon = 'icons/obj/doors/rapid_pdoor.dmi'; icon_state = "pdoor1"; name = "Shuttle Bay Blast Door"},/area/centcom/evac) -"NU" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 2},/area/centcom/evac) -"NV" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 4},/area/centcom/evac) -"NW" = (/obj/structure/table/standard,/obj,/obj,/obj,/obj,/obj,/obj,/obj,/turf/unsimulated/beach/sand,/area/beach) -"NX" = (/obj/structure/table/standard,/obj/item/clothing/under/color/rainbow,/obj/item/clothing/glasses/sunglasses,/obj/item/clothing/head/collectable/petehat{pixel_y = 5},/turf/unsimulated/beach/sand,/area/beach) -"NY" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s (EAST)"; icon_state = "swall_s"; dir = 4},/area/centcom/evac) -"NZ" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 1},/area/centcom/evac) -"Oa" = (/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/centcom/evac) -"Ob" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 1},/area/centcom/evac) -"Oc" = (/turf/simulated/shuttle/plating,/area/centcom/evac) -"Od" = (/turf/simulated/shuttle/plating,/area/shuttle/large_escape_pod2/centcom) -"Oe" = (/obj/machinery/clonepod,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Of" = (/obj/machinery/computer/cloning,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Og" = (/obj/machinery/dna_scannernew,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Oh" = (/obj/machinery/atmospherics/unary/cryo_cell{layer = 3.3},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Oi" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Oj" = (/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = -4; pixel_y = 0},/obj/item/weapon/wrench,/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Ok" = (/obj/structure/closet/crate/medical,/obj/item/weapon/circular_saw,/obj/item/weapon/surgicaldrill,/obj/item/weapon/bonegel{pixel_x = 4; pixel_y = 3},/obj/item/weapon/bonesetter,/obj/item/weapon/scalpel,/obj/item/weapon/retractor{pixel_x = 0; pixel_y = 6},/obj/item/weapon/hemostat{pixel_y = 4},/obj/item/weapon/cautery{pixel_y = 4},/obj/item/weapon/FixOVein{pixel_x = -6; pixel_y = 1},/obj/item/stack/nanopaste,/obj/item/weapon/tank/anesthetic,/obj/item/clothing/mask/breath/medical,/obj/item/clothing/mask/surgical,/obj/item/clothing/mask/surgical,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Ol" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/turf/simulated/shuttle/wall{icon_state = "swall_c"; dir = 1},/area/centcom/evac) -"Om" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/snacks/chips,/turf/unsimulated/beach/sand,/area/beach) -"On" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/turf/unsimulated/beach/sand,/area/beach) -"Oo" = (/obj/item/weapon/beach_ball,/turf/unsimulated/beach/sand,/area/beach) -"Op" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion_l"},/turf/space,/area/centcom/evac) -"Oq" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/airless,/area/centcom/evac) -"Or" = (/obj/machinery/portable_atmospherics/powered/scrubber,/turf/simulated/shuttle/plating,/area/centcom/evac) -"Os" = (/obj/machinery/vending/engineering,/turf/simulated/shuttle/plating,/area/centcom/evac) -"Ot" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod1/centcom) -"Ou" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod2/centcom) -"Ov" = (/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/shuttle/cryo/centcom) -"Ow" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 8},/area/centcom/evac) -"Ox" = (/turf/simulated/shuttle/wall,/area/centcom/evac) -"Oy" = (/obj/machinery/door/airlock/external,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Oz" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 4},/area/centcom/evac) -"OA" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OB" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OC" = (/obj/machinery/atmospherics/pipe/manifold/visible,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OD" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OE" = (/obj/machinery/computer/operating,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OF" = (/obj/structure/shuttle/engine/propulsion{dir = 8},/turf/space,/area/centcom/evac) -"OG" = (/obj/structure/closet/emcloset,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"OH" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"OI" = (/obj/machinery/bodyscanner{dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OJ" = (/obj/machinery/body_scanconsole,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OK" = (/obj/machinery/optable,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OL" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"OM" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"ON" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/fire{pixel_x = -2; pixel_y = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OO" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 0},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OP" = (/obj/machinery/computer/crew,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OQ" = (/obj/machinery/sleeper{dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OR" = (/obj/machinery/sleep_console,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OS" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OT" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/weapon/storage/firstaid/o2{layer = 2.8; pixel_x = 4; pixel_y = 6},/obj/item/weapon/storage/box/masks{pixel_x = 0; pixel_y = 0},/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/fire{layer = 2.9; pixel_x = 2; pixel_y = 3},/obj/item/weapon/storage/firstaid/adv{pixel_x = -2},/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OU" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OV" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OW" = (/obj/structure/bed/chair,/obj/effect/landmark{name = "endgame_exit"},/obj/item/toy/plushie/mouse{desc = "A plushie of a small fuzzy rodent."; name = "Woodrat"},/turf/unsimulated/beach/sand,/area/beach) -"OX" = (/obj/structure/bed/chair,/obj/effect/landmark{name = "endgame_exit"},/turf/unsimulated/beach/sand,/area/beach) -"OY" = (/mob/living/simple_animal/crab/Coffee,/turf/unsimulated/beach/sand,/area/beach) -"OZ" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion_r"},/turf/space,/area/centcom/evac) -"Pa" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "large_escape_pod_2_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 02"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Pb" = (/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = -30; pixel_y = 0},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Pc" = (/obj/item/clothing/head/collectable/paper,/turf/unsimulated/beach/sand,/area/beach) -"Pd" = (/obj/machinery/door/airlock/maintenance_hatch{req_access = list(101)},/turf/simulated/shuttle/plating,/area/centcom/evac) -"Pe" = (/turf/simulated/shuttle/wall{tag = "icon-swall_t"; icon_state = "swall_t"},/area/centcom/evac) -"Pf" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_1_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 1"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Pg" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_2_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 2"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Ph" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "cryostorage_shuttle_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock Cryostorage"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Pi" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Pj" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "large_escape_pod_2_recovery"; pixel_x = -25; pixel_y = 25; req_one_access = list(13); tag_door = "large_escape_pod_2_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Pk" = (/obj/structure/bed/roller,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Pl" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Pm" = (/obj/machinery/iv_drip,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Pn" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/bodybags{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/bodybags,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Po" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 2},/area/centcom/evac) -"Pp" = (/turf/unsimulated/floor{icon_state = "sandwater"},/area/beach) -"Pq" = (/turf/unsimulated/wall{desc = "That looks like it doesn't open easily."; icon = 'icons/obj/doors/rapid_pdoor.dmi'; icon_state = "pdoor1"; name = "Shuttle Bay Blast Door"},/area/centcom/evac) -"Pr" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_1_recovery"; pixel_x = -25; pixel_y = 25; req_one_access = list(13); tag_door = "escape_pod_1_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Ps" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_2_recovery"; pixel_x = -25; pixel_y = 25; req_one_access = list(13); tag_door = "escape_pod_2_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Pt" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "cryostorage_shuttle_recovery"; pixel_x = -25; pixel_y = 25; req_one_access = list(13); tag_door = "cryostorage_shuttle_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Pu" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Pv" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Pw" = (/obj/machinery/vending/cola,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Px" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window4"},/turf/simulated/shuttle/plating,/area/centcom/evac) -"Py" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window8"},/turf/simulated/shuttle/plating,/area/centcom/evac) -"Pz" = (/obj/machinery/door/airlock/glass,/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/centcom/evac) -"PA" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window12"},/turf/simulated/shuttle/plating,/area/centcom/evac) -"PB" = (/obj/machinery/computer/communications,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PC" = (/obj/structure/table/standard,/obj/item/device/radio/off,/obj/item/weapon/paper_bin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PD" = (/obj/structure/window/shuttle{icon_state = "window2"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/centcom/evac) -"PE" = (/turf/unsimulated/beach/coastline{density = 1; opacity = 1},/area/beach) -"PF" = (/turf/unsimulated/beach/coastline,/area/beach) -"PG" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"PH" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PI" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/simulated/shuttle/plating,/area/centcom/evac) -"PJ" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PK" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PL" = (/obj/machinery/computer/shuttle,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PM" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window3"},/turf/simulated/shuttle/plating,/area/centcom/evac) -"PN" = (/turf/unsimulated/beach/water{density = 1; opacity = 1},/area/beach) -"PO" = (/turf/unsimulated/beach/water,/area/beach) -"PP" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PQ" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PR" = (/obj/machinery/door/airlock/hatch{name = "Cockpit"; req_access = list(109)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"PS" = (/obj/structure/table/standard,/obj/item/weapon/storage/lockbox,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PT" = (/obj/machinery/computer/station_alert,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PU" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_6_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "escape_pod_6_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"PV" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_5_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "escape_pod_5_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"PW" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_4_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "escape_pod_4_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"PX" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_3_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "escape_pod_3_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"PY" = (/obj/machinery/door/airlock/glass_security{name = "Security Processing"; req_access = list(1)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"PZ" = (/obj/machinery/computer/crew,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Qa" = (/obj/structure/table/standard,/obj/item/weapon/clipboard,/obj/item/weapon/pen,/obj/item/weapon/stamp/captain,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Qb" = (/obj/structure/window/shuttle{icon_state = "window1"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/centcom/evac) -"Qc" = (/turf/unsimulated/wall,/area/syndicate_mothership{name = "\improper Raider Base"}) -"Qd" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 1},/area/centcom/evac) -"Qe" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_6_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 6"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Qf" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_5_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 5"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Qg" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_4_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 4"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Qh" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_3_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 3"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Qi" = (/obj/machinery/door/airlock/maintenance_hatch{req_access = list(101)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Qj" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "large_escape_pod_1_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "large_escape_pod_1_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Qk" = (/obj/machinery/computer/card,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"Ql" = (/obj/structure/table/rack,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"Qm" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"Qn" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"Qo" = (/obj/machinery/computer/secure_data,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"Qp" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Qq" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 8},/area/centcom/evac) -"Qr" = (/turf/simulated/mineral,/area/syndicate_mothership{name = "\improper Raider Base"}) -"Qs" = (/obj/effect/landmark{name = "voxstart"},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Qt" = (/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Qu" = (/obj/structure/table/standard,/obj/effect/decal/cleanable/cobweb2,/obj/effect/decal/cleanable/cobweb2{icon_state = "spiderling"; name = "dead spider"; tag = "icon-spiderling"},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Qv" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod6/centcom) -"Qw" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 1},/area/space) -"Qx" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod5/centcom) -"Qy" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod4/centcom) -"Qz" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod3/centcom) -"QA" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "large_escape_pod_1_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 01"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"QB" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"QC" = (/obj/structure/closet/secure_closet/personal/patient,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"QD" = (/obj/structure/table/standard,/obj/structure/bedsheetbin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"QE" = (/obj/item/weapon/bedsheet/orange,/obj/structure/bed/padded,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"QF" = (/turf/simulated/shuttle/plating,/area/shuttle/large_escape_pod1/centcom) -"QG" = (/obj/structure/closet{name = "Evidence Closet"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"QH" = (/obj/structure/closet/secure_closet/security,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"QI" = (/obj/machinery/door/airlock/hatch{req_access = list(150)},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"QJ" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"QK" = (/obj/machinery/door/airlock/glass_security{name = "Escape Shuttle Cell"; req_access = list(1)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"QL" = (/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"QM" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"QN" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/orange,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"QO" = (/obj/item/weapon/tray{pixel_y = 5},/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"QP" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"QQ" = (/obj/machinery/portable_atmospherics/powered/pump,/turf/simulated/shuttle/plating,/area/centcom/evac) -"QR" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/shuttle/plating,/area/centcom/evac) -"QS" = (/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/reagent_containers/glass/bucket{amount_per_transfer_from_this = 50},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"QT" = (/obj/item/weapon/mop,/obj/structure/mopbucket,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"QU" = (/obj/structure/table/rack,/obj/item/weapon/reagent_containers/spray/cleaner{pixel_x = 6; pixel_y = 3},/obj/item/clothing/accessory/storage/brown_vest,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"QV" = (/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"QW" = (/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"QX" = (/turf/simulated/shuttle/wall{icon_state = "swall_f"; dir = 4},/area/centcom/evac) -"QY" = (/obj/item/weapon/bedsheet/orange,/obj/effect/decal/cleanable/cobweb2{tag = "icon-cobweb1"; icon_state = "cobweb1"},/obj/structure/bed/padded,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"QZ" = (/obj/machinery/microwave{pixel_x = -1; pixel_y = 8},/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Ra" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rb" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rc" = (/obj/structure/urinal{pixel_y = 32},/obj/item/weapon/soap/syndie,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rd" = (/obj/structure/urinal{pixel_y = 32},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Re" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rf" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rg" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rh" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Ri" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rj" = (/obj/structure/kitchenspike,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rk" = (/obj/item/clothing/head/xenos,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rl" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{dir = 4; pixel_x = -28; pixel_y = 0},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rm" = (/obj/item/clothing/mask/gas/swat{desc = "A close-fitting mask clearly not made for a human face."; name = "\improper alien mask"},/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rn" = (/obj/item/xenos_claw,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Ro" = (/obj/structure/table/rack,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rp" = (/obj/structure/table/rack,/obj/item/weapon/gun/launcher/spikethrower,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rq" = (/obj/machinery/shower{dir = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rr" = (/obj/item/pizzabox/meat,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rs" = (/obj/structure/reagent_dispensers/beerkeg,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rt" = (/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Ru" = (/obj/effect/decal/cleanable/cobweb2,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rv" = (/obj/structure/table/rack,/obj/item/clothing/glasses/thermal/plain/monocle,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rw" = (/obj/effect/landmark{name = "voxstart"},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rx" = (/obj/item/weapon/tank/nitrogen,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Ry" = (/obj/item/organ/internal/stack,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rz" = (/obj/structure/bed/chair,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RA" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RB" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RC" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RD" = (/obj/machinery/computer/station_alert,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RE" = (/obj/machinery/computer/shuttle_control/multi/skipjack,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RF" = (/obj/machinery/suit_cycler/syndicate{locked = 0},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RG" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/item/weapon/tank/nitrogen,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RH" = (/obj/item/clothing/head/philosopher_wig,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RI" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 4},/turf/space,/area/syndicate_mothership{name = "\improper Raider Base"}) -"RJ" = (/obj/machinery/door/airlock/external{req_access = list(150)},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RK" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 8},/turf/space,/area/syndicate_mothership{name = "\improper Raider Base"}) -"RL" = (/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RM" = (/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RN" = (/turf/space,/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/skipjack_station/start) -"RO" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1331; master_tag = "vox_west_control"; req_one_access = list(150)},/turf/simulated/wall/skipjack,/area/skipjack_station/start) -"RP" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_closed"; id_tag = "vox_northwest_lock"; locked = 0; req_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"RQ" = (/turf/space,/turf/simulated/shuttle/wall{dir = 1; icon_state = "diagonalWall3"},/area/skipjack_station/start) -"RR" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_closed"; id_tag = "vox_northeast_lock"; locked = 0; req_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"RS" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1331; master_tag = "vox_east_control"; req_access = list(150)},/turf/simulated/wall/skipjack,/area/skipjack_station/start) -"RT" = (/turf/simulated/wall/skipjack,/area/skipjack_station/start) -"RU" = (/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"RV" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"RW" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"RX" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"RY" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1331; id_tag = "vox_west_vent"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"RZ" = (/obj/machinery/airlock_sensor{frequency = 1331; id_tag = "vox_west_sensor"; pixel_x = 25},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sa" = (/obj/machinery/computer/station_alert,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sb" = (/obj/machinery/computer/shuttle_control/multi/skipjack,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sc" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sd" = (/obj/machinery/button/remote/blast_door{id = "skipjackshutters"; name = "remote shutter control"; req_access = list(150)},/turf/simulated/wall/skipjack,/area/skipjack_station/start) -"Se" = (/obj/machinery/airlock_sensor{frequency = 1331; id_tag = "vox_east_sensor"; pixel_x = -25},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sf" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1331; id_tag = "vox_east_vent"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sg" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/obj/machinery/meter,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sh" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "vox_west_vent"; tag_exterior_door = "vox_northwest_lock"; frequency = 1331; id_tag = "vox_west_control"; tag_interior_door = "vox_southwest_lock"; pixel_x = 24; req_access = list(150); tag_chamber_sensor = "vox_west_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1331; id_tag = "vox_west_vent"},/obj/machinery/light/small,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Si" = (/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sj" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sk" = (/obj/structure/bed/chair{dir = 1},/obj/item/clothing/glasses/thermal/plain/monocle,/obj/item/clothing/head/pirate,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sl" = (/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sm" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "vox_east_vent"; tag_exterior_door = "vox_northeast_lock"; frequency = 1331; id_tag = "vox_east_control"; tag_interior_door = "vox_southeast_lock"; pixel_x = -24; req_access = list(150); tag_chamber_sensor = "vox_east_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1331; id_tag = "vox_east_vent"},/obj/machinery/light/small,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sn" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 4},/obj/machinery/meter,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"So" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_closed"; id_tag = "vox_southwest_lock"; locked = 0; req_access = list(150)},/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sp" = (/obj/structure/table/rack,/obj/item/weapon/rig/industrial,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sq" = (/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sr" = (/obj/structure/table/rack,/obj/item/weapon/rig/light/hacker,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Ss" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_closed"; id_tag = "vox_southeast_lock"; locked = 0; req_access = list(150)},/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"St" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1331; master_tag = "vox_west_control"; pixel_x = -22; req_one_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Su" = (/obj/structure/table/rack,/obj/item/weapon/gun/energy/ionrifle,/obj/item/weapon/material/harpoon,/obj/item/clothing/suit/space/void/merc,/obj/item/clothing/head/helmet/space/void/merc,/obj/item/clothing/head/helmet/space/void/engineering,/obj/item/clothing/suit/space/void/engineering,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/obj/item/clothing/shoes/magboots,/obj/item/clothing/shoes/magboots,/obj/item/weapon/rig/light/stealth,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sv" = (/obj/machinery/microwave{pixel_x = -1; pixel_y = 8},/obj/structure/table/steel,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sw" = (/obj/item/seeds/potatoseed,/obj/item/seeds/potatoseed,/obj/item/seeds/ambrosiavulgarisseed,/obj/item/weapon/material/minihoe,/obj/item/weapon/beartrap,/obj/structure/table/steel,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sx" = (/obj/machinery/vending/hydroseeds,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sy" = (/obj/structure/table/rack,/obj/item/weapon/melee/energy/sword/pirate,/obj/item/clothing/suit/space/pirate,/obj/item/clothing/suit/space/pirate,/obj/item/weapon/tank/oxygen,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sz" = (/obj/structure/table/rack,/obj/item/weapon/storage/belt/utility/full,/obj/item/weapon/storage/belt/utility/full,/obj/item/device/multitool,/obj/item/device/multitool,/obj/item/clothing/shoes/magboots,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SA" = (/obj/machinery/washing_machine,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SB" = (/obj/structure/table/standard,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/flame/lighter/zippo,/obj/item/clothing/gloves/yellow,/obj/item/stack/material/steel{amount = 50},/obj/item/stack/material/glass{amount = 50},/obj/item/weapon/card/emag,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SC" = (/obj/structure/table/rack,/obj/item/weapon/gun/energy/sniperrifle,/obj/item/clothing/suit/space/void/mining,/obj/item/clothing/head/helmet/space/void/mining,/obj/item/clothing/head/helmet/space/void/atmos,/obj/item/clothing/suit/space/void/atmos,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SD" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1331; master_tag = "vox_east_control"; pixel_x = 22; req_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SE" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SF" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SG" = (/obj/machinery/door/airlock/hatch{req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"SH" = (/obj/structure/table/rack,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/syndicate/black/engie,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/syndicate/black/engie,/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SI" = (/obj/item/robot_parts/head,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SJ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SK" = (/obj/item/robot_parts/l_leg,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SL" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SM" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/portable_atmospherics/hydroponics,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SN" = (/obj/machinery/floodlight,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SO" = (/obj/item/device/suit_cooling_unit,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SP" = (/obj/structure/table/rack,/obj/item/weapon/gun/launcher/crossbow,/obj/item/stack/rods{amount = 10},/obj/machinery/light/small{dir = 8},/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"SQ" = (/obj/structure/table/rack,/obj/item/weapon/grenade/empgrenade,/obj/item/weapon/grenade/flashbang,/obj/item/weapon/grenade/spawnergrenade/manhacks,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"SR" = (/obj/structure/table/steel,/obj/machinery/recharger,/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"SS" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"ST" = (/obj/item/robot_parts/robot_suit,/obj/item/robot_parts/r_leg,/obj/item/robot_parts/r_arm,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SU" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SV" = (/obj/machinery/door/airlock/hatch{req_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SW" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"SX" = (/obj/structure/table/steel,/obj/item/clothing/glasses/regular,/obj/item/clothing/glasses/regular,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"SY" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"SZ" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Ta" = (/obj/item/weapon/wrench,/obj/item/weapon/mop,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Tb" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/item/weapon/crowbar,/obj/item/device/suit_cooling_unit,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Tc" = (/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/tank/air{dir = 1; start_pressure = 740},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Td" = (/obj/machinery/portable_atmospherics/hydroponics,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Te" = (/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) -"Tf" = (/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) -"Tg" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Th" = (/obj/structure/table/steel,/obj/item/weapon/deck/cards,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Ti" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Tj" = (/obj/machinery/bodyscanner{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"Tk" = (/obj/machinery/light/small{dir = 1},/obj/machinery/body_scanconsole,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"Tl" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"Tm" = (/obj/structure/toilet{dir = 4},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Tn" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/item/weapon/tank/nitrogen,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"To" = (/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/tank/air{dir = 1; start_pressure = 740},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Tp" = (/turf/unsimulated/wall,/area/wizard_station) -"Tq" = (/obj/structure/sink,/turf/unsimulated/wall,/area/wizard_station) -"Tr" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "diagonalWall3"},/area/skipjack_station/start) -"Ts" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Tt" = (/obj/structure/table/steel,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Tu" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"Tv" = (/turf/space,/turf/simulated/shuttle/wall{dir = 4; icon_state = "diagonalWall3"},/area/skipjack_station/start) -"Tw" = (/obj/structure/bookcase{name = "Forbidden Knowledge"},/obj/effect/decal/cleanable/cobweb,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"Tx" = (/obj/structure/bookcase{name = "Forbidden Knowledge"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"Ty" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"Tz" = (/obj/machinery/librarycomp,/obj/structure/table/woodentable,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"TA" = (/obj/structure/table/woodentable,/obj/item/weapon/book/manual/security_space_law,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"TB" = (/obj/structure/table/woodentable,/obj/item/weapon/book/manual/nuclear,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"TC" = (/obj/structure/table/woodentable,/obj/effect/landmark{name = "Teleport-Scroll"},/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"TD" = (/obj/structure/table/woodentable,/obj/item/weapon/paper{info = "\[center]\[b]LIST OF SPELLS AVAILABLE\[/b]\[/center]\[br]\[br]Magic Missile:\[br]This spell fires several, slow moving, magic projectiles at nearby targets. If they hit a target, it is paralyzed and takes minor damage.\[br]\[br]Fireball:\[br]This spell fires a fireball at a target and does not require wizard garb. Be careful not to fire it at people that are standing next to you.\[br]\[br]Disintegrate:\[br]This spell instantly kills somebody adjacent to you with the vilest of magick. It has a long cooldown.\[br]\[br]Disable Technology:\[br]This spell disables all weapons, cameras and most other technology in range.\[br]\[br]Smoke:\[br]This spell spawns a cloud of choking smoke at your location and does not require wizard garb.\[br]\[br]Blind:\[br]This spell temporarly blinds a single person and does not require wizard garb.\[br]Forcewall:\[br]This spell creates an unbreakable wall that lasts for 30 seconds and does not require wizard garb.\[br]\[br]Blink:\[br]This spell randomly teleports you a short distance. Useful for evasion or getting into areas if you have patience.\[br]\[br]Teleport:\[br]This spell teleports you to a type of area of your selection. Very useful if you are in danger, but has a decent cooldown, and is unpredictable.\[br]\[br]Mutate:\[br]This spell causes you to turn into a hulk, and gain telekinesis for a short while.\[br]\[br]Ethereal Jaunt:\[br]This spell creates your ethereal form, temporarily making you invisible and able to pass through walls.\[br]\[br]Knock:\[br]This spell opens nearby doors and does not require wizard garb.\[br]"; name = "List of Available Spells (READ)"},/obj/item/clothing/glasses/regular,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"TE" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/backpack/satchel/withwallet,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"TF" = (/obj/structure/toilet{pixel_y = 8},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) -"TG" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) -"TH" = (/obj/structure/mirror{pixel_y = 28},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) -"TI" = (/obj/structure/shuttle/engine/propulsion,/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/skipjack_station/start) -"TJ" = (/obj/structure/table/standard,/obj/item/weapon/legcuffs,/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) -"TK" = (/obj/structure/table/standard,/obj/item/weapon/deck/cards,/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) -"TL" = (/obj/machinery/light/small,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"TM" = (/obj/structure/table/standard,/obj/item/weapon/circular_saw{pixel_y = 8},/obj/item/weapon/hemostat,/obj/item/weapon/scalpel,/obj/item/stack/medical/advanced/bruise_pack,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"TN" = (/obj/structure/simple_door/wood{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"TO" = (/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"TP" = (/obj/effect/landmark/start{name = "wizard"},/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"TQ" = (/obj/structure/simple_door/iron,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"TR" = (/obj/machinery/shower{icon_state = "shower"; dir = 8},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) -"TS" = (/obj/machinery/optable,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"TT" = (/obj/structure/table/standard,/obj/item/weapon/cautery,/obj/item/weapon/retractor,/obj/item/weapon/reagent_containers/glass/bottle/stoxin,/obj/item/weapon/reagent_containers/glass/bottle/stoxin,/obj/item/weapon/reagent_containers/syringe,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"TU" = (/obj/structure/bookcase{name = "bookcase (Tactics)"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"TV" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/obj/structure/closet/coffin,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"TW" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green{on = 0; pixel_x = -3; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/flask/barflask,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"TX" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) -"TY" = (/obj/item/weapon/bedsheet/rainbow,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"TZ" = (/obj/item/weapon/bedsheet/hos,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Ua" = (/obj/structure/table/standard,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel,/obj/item/weapon/FixOVein,/obj/item/stack/nanopaste,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"Ub" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/bag/cash,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"Uc" = (/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Ud" = (/obj/item/weapon/bedsheet/rd,/obj/structure/bed/padded,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Ue" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/red,/obj/item/clothing/shoes/sandal,/obj/item/clothing/head/wizard/red,/obj/item/weapon/staff,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Uf" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/marisa,/obj/item/clothing/shoes/sandal/marisa,/obj/item/clothing/head/wizard/marisa,/obj/item/weapon/staff/broom,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Ug" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/magusblue,/obj/item/clothing/head/wizard/magus,/obj/item/weapon/staff,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Uh" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Ui" = (/obj/structure/toilet{dir = 4},/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) -"Uj" = (/obj/item/weapon/bedsheet/orange,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Uk" = (/obj/item/weapon/bedsheet/green,/obj/machinery/light/small{dir = 4},/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Ul" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"Um" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/adv{pixel_x = 1},/obj/item/weapon/storage/firstaid/toxin{pixel_x = 3; pixel_y = 3},/obj/machinery/light/small{dir = 4},/obj/structure/closet/secure_closet/medical_wall{pixel_x = 32; pixel_y = 0; req_access = list(150)},/obj/item/weapon/storage/firstaid/fire{pixel_x = 1},/obj/item/weapon/storage/firstaid/o2{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/regular,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"Un" = (/obj/structure/bookcase,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"Uo" = (/obj/machinery/vending/magivend,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"Up" = (/obj/structure/simple_door/wood{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Uq" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Ur" = (/obj/item/weapon/bedsheet/rd,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Us" = (/obj/item/pizzabox/meat,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Ut" = (/obj/item/weapon/bedsheet/clown,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Uu" = (/obj/structure/table/woodentable,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"Uv" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/backpack/cultpack,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Uw" = (/obj/structure/table/woodentable,/obj/item/clothing/glasses/monocle,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Ux" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/backpack,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Uy" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/under/psysuit,/obj/item/clothing/suit/wizrobe/psypurple,/obj/item/clothing/head/wizard/amp,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Uz" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/shoes/sandal/marisa{desc = "A set of fancy shoes that are as functional as they are comfortable."; name = "Gentlemans Shoes"},/obj/item/clothing/under/gentlesuit,/obj/item/clothing/suit/wizrobe/gentlecoat,/obj/item/clothing/head/wizard/cap,/obj/item/weapon/staff/gentcane,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"UA" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/magusred,/obj/item/clothing/head/wizard/magus,/obj/item/weapon/staff,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"UB" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 4},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UC" = (/obj/structure/table/woodentable,/obj/item/weapon/dice/d20,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UD" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/cups,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UE" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 8},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UF" = (/obj/item/target,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) -"UG" = (/obj/item/target/syndicate,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) -"UH" = (/obj/item/target/alien,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) -"UI" = (/turf/unsimulated/wall/fakeglass{dir = 1; icon_state = "fakewindows"},/area/wizard_station) -"UJ" = (/obj/structure/table/rack,/obj/item/weapon/material/knife/ritual,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"UK" = (/obj/structure/kitchenspike,/obj/structure/table/marble,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"UL" = (/obj/structure/table/woodentable,/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/snacks/milosoup,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UM" = (/obj/structure/table/woodentable,/obj/item/weapon/dice,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UN" = (/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) -"UO" = (/turf/unsimulated/wall/fakeglass,/area/wizard_station) -"UP" = (/obj/structure/table/woodentable,/obj/item/device/megaphone,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UQ" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/donut,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UR" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/snacks/chawanmushi,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"US" = (/obj/structure/table/woodentable,/obj/item/weapon/spacecash/c1,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UT" = (/obj/item/weapon/book/manual/robotics_cyborgs,/obj/structure/table/glass,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) -"UU" = (/obj/item/robot_parts/head,/obj/structure/table/glass,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) -"UV" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) -"UW" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows"; dir = 8},/area/wizard_station) -"UX" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows2"; dir = 8},/area/wizard_station) -"UY" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows"; dir = 4},/area/wizard_station) -"UZ" = (/obj/effect/decal/remains/human,/turf/unsimulated/floor{tag = "icon-lava"; name = "plating"; icon_state = "lava"},/area/wizard_station) -"Va" = (/turf/unsimulated/floor{tag = "icon-lava"; name = "plating"; icon_state = "lava"},/area/wizard_station) -"Vb" = (/turf/unsimulated/floor{icon_state = "asteroid"; tag = "icon-ironsand7"},/area/wizard_station) -"Vc" = (/mob/living/simple_animal/crab{name = "Experiment 68a"},/turf/unsimulated/floor{icon_state = "asteroid"; tag = "icon-ironsand7"},/area/wizard_station) -"Vd" = (/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/wizard_station) -"Ve" = (/obj/structure/flora/ausbushes/fullgrass,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/wizard_station) -"Vf" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) -"Vg" = (/mob/living/carbon/human/monkey{name = "Murphey"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) -"Vh" = (/mob/living/simple_animal/hostile/creature{name = "Experiment 35b"},/turf/unsimulated/floor{tag = "icon-lava"; name = "plating"; icon_state = "lava"},/area/wizard_station) -"Vi" = (/obj/structure/flora/ausbushes/grassybush,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/wizard_station) -"Vj" = (/mob/living/simple_animal/hostile/retaliate/goat{name = "Experiment 97d"},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/wizard_station) -"Vk" = (/obj/item/weapon/caution,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) -"Vl" = (/obj/item/weapon/material/knife/ritual,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) - +"BX" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) +"BY" = (/obj/machinery/computer/cryopod{density = 0; layer = 3.3; pixel_y = 32},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"BZ" = (/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"Ca" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"Cb" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) +"Cc" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 8},/area/shuttle/transport1/centcom) +"Cd" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 2},/area/shuttle/transport1/centcom) +"Ce" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-burst_l (EAST)"; icon_state = "burst_l"; dir = 4},/turf/space,/area/shuttle/transport1/centcom) +"Cf" = (/obj/machinery/computer/security,/obj/effect/floor_decal/corner/red{dir = 6},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Cg" = (/obj/structure/bed/chair,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) +"Ch" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/main_hall) +"Ci" = (/obj/machinery/computer/card,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Cj" = (/obj/machinery/cryopod/robot/door/gateway,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) +"Ck" = (/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/obj/effect/step_trigger/teleporter/random{affect_ghosts = 1; name = "escapeshuttle_leave"; teleport_x = 25; teleport_x_offset = 245; teleport_y = 25; teleport_y_offset = 245; teleport_z = 6; teleport_z_offset = 6},/turf/space,/area/space) +"Cl" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/red,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Cm" = (/obj/machinery/turretid{pixel_x = -28; pixel_y = -28; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Cn" = (/obj/structure/bed/chair/office/dark,/obj/machinery/button/remote/blast_door{desc = "A remote control switch for port-side blast doors."; id = "CentComPort"; name = "Security Doors"; pixel_x = -12; pixel_y = -25; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Co" = (/obj/machinery/computer/secure_data,/obj/machinery/camera/network/crescent{c_tag = "Crescent Arrivals North"; dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Cp" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) +"Cq" = (/obj/machinery/gateway{dir = 10},/obj/effect/floor_decal/industrial/warning,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) +"Cr" = (/obj/effect/floor_decal/industrial/warning,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) +"Cs" = (/obj/machinery/gateway{dir = 6},/obj/effect/floor_decal/industrial/warning,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) +"Ct" = (/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) +"Cu" = (/obj/effect/floor_decal/corner/red{dir = 10},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Cv" = (/obj/structure/bed/chair{dir = 1},/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) +"Cw" = (/obj/machinery/telecomms/broadcaster/preset_cent,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"Cx" = (/obj/machinery/telecomms/hub/preset_cent,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"Cy" = (/obj/machinery/computer/rdservercontrol{badmin = 1; name = "Master R&D Server Controller"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"Cz" = (/obj/machinery/r_n_d/server/centcom,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"CA" = (/obj/machinery/door/blast/regular{id = "CentComPort"; name = "Security Doors"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"CB" = (/obj/structure/table/reinforced,/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"CC" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"CD" = (/obj/machinery/computer/teleporter,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"CE" = (/obj/machinery/teleport/station,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"CF" = (/obj/machinery/teleport/hub,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"CG" = (/obj/machinery/porta_turret/crescent,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"CH" = (/obj/machinery/door/airlock/external,/obj/effect/floor_decal/industrial/warning,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"CI" = (/obj/machinery/door/airlock/glass{name = "Arrivals Processing"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"CJ" = (/obj/machinery/door/airlock/security{name = "Equipment Storage"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"CK" = (/obj/machinery/account_database{name = "CentComm Accounts database"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"CL" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"CM" = (/turf/simulated/shuttle/wall{tag = "icon-swall (SOUTHEAST)"; icon_state = "swall"; dir = 6},/area/centcom/tram) +"CN" = (/turf/simulated/shuttle/wall{tag = "icon-swall_straight (WEST)"; icon_state = "swall_straight"; dir = 8},/area/centcom/tram) +"CO" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) +"CP" = (/turf/simulated/shuttle/wall{tag = "icon-swall (WEST)"; icon_state = "swall"; dir = 8},/area/centcom/tram) +"CQ" = (/obj/machinery/door/unpowered/shuttle,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"CR" = (/turf/simulated/shuttle/wall{tag = "icon-swall (EAST)"; icon_state = "swall"; dir = 4},/area/centcom/tram) +"CS" = (/turf/simulated/shuttle/wall{tag = "icon-swall (SOUTHWEST)"; icon_state = "swall"; dir = 10},/area/centcom/tram) +"CT" = (/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) +"CU" = (/obj/effect/floor_decal/corner/white/full{tag = "icon-corner_white_full (EAST)"; icon_state = "corner_white_full"; dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"CV" = (/obj/effect/floor_decal/corner/white,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"CW" = (/obj/effect/floor_decal/corner/white{dir = 5},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"CX" = (/obj/effect/floor_decal/corner/white{dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"CY" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/effect/floor_decal/corner/red{dir = 9},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"CZ" = (/obj/structure/closet/secure_closet/security,/obj/effect/floor_decal/corner/red{dir = 6},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Da" = (/turf/simulated/shuttle/wall{tag = "icon-swall (NORTHWEST)"; icon_state = "swall"; dir = 9},/area/centcom/tram) +"Db" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"Dc" = (/obj/structure/bed/chair,/obj/structure/closet/walllocker/emerglocker{pixel_x = 0; pixel_y = 28},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"Dd" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"De" = (/obj/structure/bed/chair,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 26},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"Df" = (/turf/simulated/shuttle/wall{tag = "icon-swall (NORTHEAST)"; icon_state = "swall"; dir = 5},/area/centcom/tram) +"Dg" = (/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) +"Dh" = (/obj/effect/floor_decal/corner/white{dir = 6; icon_state = "corner_white"; tag = "icon-corner_white (NORTHWEST)"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"Di" = (/obj/effect/floor_decal/corner/white/diagonal{tag = "icon-corner_white_diagonal (EAST)"; icon_state = "corner_white_diagonal"; dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"Dj" = (/obj/effect/floor_decal/corner/white{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"Dk" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/structure/window/reinforced,/obj/effect/floor_decal/corner/red{dir = 9},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Dl" = (/obj/machinery/porta_turret/crescent,/obj/effect/floor_decal/industrial/hatch/yellow,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Dm" = (/obj/machinery/porta_turret/crescent,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Dn" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window2"},/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) +"Do" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"Dp" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"Dq" = (/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) +"Dr" = (/obj/effect/floor_decal/corner/white{tag = "icon-corner_white (NORTH)"; icon_state = "corner_white"; dir = 1},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"Ds" = (/obj/machinery/computer/card,/obj/effect/floor_decal/corner/red{dir = 6},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Dt" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/structure/window/reinforced{dir = 1},/obj/effect/floor_decal/corner/red{dir = 9},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Du" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/restaurant) +"Dv" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) +"Dw" = (/obj/structure/flora/grass/brown,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (NORTHWEST)"; icon_state = "spline_fancy"; dir = 9},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Dx" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood/cee{dir = 4},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Dy" = (/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) +"Dz" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood/cee{dir = 8},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DA" = (/obj/structure/flora/ausbushes/ywflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 5},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DB" = (/obj/machinery/door/airlock/centcom{name = "Arrivals Processing"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"DC" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window1"},/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) +"DD" = (/obj/structure/bed/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"DE" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"DF" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"DG" = (/obj/structure/table/woodentable{dir = 5},/obj/structure/flora/pottedplant{pixel_y = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"DH" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"DI" = (/obj/structure/table/standard,/obj/structure/flora/pottedplant{icon_state = "plant-06"; pixel_y = 8; tag = "icon-plant-06"},/obj/effect/floor_decal/corner/red{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"DJ" = (/obj/structure/bed/chair/office/dark,/obj/machinery/button/remote/blast_door{desc = "A remote control switch for port-side blast doors."; id = "CentComPort"; name = "Security Doors"; pixel_x = -12; pixel_y = -25; req_access = list(101)},/obj/effect/floor_decal/corner/red,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"DK" = (/obj/machinery/computer/secure_data,/obj/machinery/camera/network/crescent{c_tag = "Crescent Arrivals North"; dir = 8},/obj/effect/floor_decal/corner/red/full{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"DL" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/structure/window/reinforced,/obj/effect/floor_decal/corner/red/full,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"DM" = (/obj/structure/closet/secure_closet/security,/obj/effect/floor_decal/corner/red/full{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"DN" = (/obj/structure/flora/ausbushes/fernybush,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DO" = (/obj/structure/flora/ausbushes/brflowers,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DP" = (/obj/structure/flora/ausbushes/ppflowers,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DQ" = (/obj/structure/flora/bush,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DR" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/structure/flora/ausbushes/ppflowers,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DS" = (/obj/structure/flora/ausbushes/ywflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (NORTHWEST)"; icon_state = "spline_fancy"; dir = 9},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DT" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 6},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DU" = (/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) +"DV" = (/obj/structure/flora/ausbushes/fernybush,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (SOUTHWEST)"; icon_state = "spline_fancy"; dir = 10},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DW" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 5},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DX" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/structure/flora/ausbushes/brflowers,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DY" = (/obj/machinery/turretid{pixel_x = -28; pixel_y = 0; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"DZ" = (/obj/machinery/computer/card,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"Ea" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"Eb" = (/obj/structure/bed/chair{dir = 1},/obj/structure/closet/walllocker/emerglocker{pixel_x = 0; pixel_y = -30},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"Ec" = (/obj/structure/bed/chair{dir = 1},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -30},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"Ed" = (/obj/structure/table/woodentable{dir = 5},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Ee" = (/obj/structure/table/reinforced,/obj/machinery/computer/skills,/obj/structure/window/reinforced{dir = 2; health = 1e+006},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/red/full,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Ef" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/machinery/door/window/southright{name = "Arrivals Processing"; req_access = list(101)},/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/corner/red/full{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Eg" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (NORTHWEST)"; icon_state = "spline_fancy"; dir = 9},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Eh" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 6},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Ei" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (SOUTHWEST)"; icon_state = "spline_fancy"; dir = 10},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Ej" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Ek" = (/obj/structure/bed/chair/office/dark,/obj/machinery/button/remote/blast_door{desc = "A remote control switch for port-side blast doors."; id = "CentComPortEast"; name = "Security Doors"; pixel_x = -12; pixel_y = -25; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"El" = (/obj/machinery/computer/secure_data,/obj/machinery/camera/network/crescent{c_tag = "Crescent Arrivals North"; dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"Em" = (/obj/machinery/door/window/northright,/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"En" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 1; health = 1e+006},/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Eo" = (/obj/structure/bed/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Ep" = (/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Eq" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Er" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Es" = (/obj/structure/table/woodentable{dir = 5},/obj/structure/flora/pottedplant{pixel_y = 8},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Et" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Eu" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 1; health = 1e+006},/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Ev" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "CentComPortWest"; name = "Security Doors"; opacity = 0},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Ew" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood/cee,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Ex" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"Ey" = (/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"Ez" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"EA" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/machinery/computer/skills,/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"EB" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/machinery/door/window/southright{name = "Arrivals Processing"; req_access = list(101)},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"EC" = (/obj/machinery/door/airlock/external,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"ED" = (/obj/structure/bed/chair/office/light{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EE" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EF" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EG" = (/obj/machinery/turretid{pixel_x = 28; pixel_y = -28; req_access = list(101)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EH" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EI" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"EJ" = (/obj/effect/floor_decal/spline/plain{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) +"EK" = (/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"EL" = (/obj/effect/floor_decal/spline/plain{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) +"EM" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "CentComPortEast"; name = "Security Doors"; opacity = 0},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"EN" = (/obj/machinery/door/blast/regular{id = "CentComPortEast"; name = "Security Doors"},/turf/unsimulated/floor{icon_state = "green"; dir = 8},/area/centcom/tram) +"EO" = (/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/obj/effect/step_trigger/teleporter/random{affect_ghosts = 1; name = "escapeshuttle_leave"; teleport_x = 25; teleport_x_offset = 245; teleport_y = 25; teleport_y_offset = 245; teleport_z = 6; teleport_z_offset = 6},/obj/effect/step_trigger/teleporter/random{affect_ghosts = 1; name = "escapeshuttle_leave"; teleport_x = 25; teleport_x_offset = 245; teleport_y = 25; teleport_y_offset = 245; teleport_z = 6; teleport_z_offset = 6},/turf/space,/area/space) +"EP" = (/obj/machinery/door/window/eastright,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EQ" = (/obj/machinery/hologram/holopad,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"ER" = (/obj/machinery/door/window/westright,/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"ES" = (/obj/structure/bed/chair/office/light{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"ET" = (/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"EU" = (/obj/effect/floor_decal/spline/plain{tag = "icon-spline_plain_full (NORTH)"; icon_state = "spline_plain_full"; dir = 1},/obj/structure/showcase,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) +"EV" = (/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"EW" = (/obj/structure/bed/chair/office/light,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EX" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EY" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EZ" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"Fa" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"Fb" = (/obj/machinery/door/window/southleft,/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fc" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fd" = (/obj/structure/bed/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fe" = (/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Ff" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fg" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fh" = (/obj/structure/table/woodentable{dir = 5},/obj/structure/flora/pottedplant{pixel_y = 8},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fi" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fj" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fk" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fl" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood/cee{dir = 1},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Fm" = (/obj/structure/window/reinforced,/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"Fn" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"Fo" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood/cee{dir = 1},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Fp" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"Fq" = (/turf/unsimulated/wall,/area/centcom/medical) +"Fr" = (/obj/machinery/door/airlock/glass_medical{name = "Arrivals Medbay"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Fs" = (/obj/structure/sign/redcross,/turf/unsimulated/wall,/area/centcom/medical) +"Ft" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/medical) +"Fu" = (/obj/structure/flora/ausbushes/ywflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (SOUTHWEST)"; icon_state = "spline_fancy"; dir = 10},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Fv" = (/obj/structure/flora/grass/brown,/obj/effect/floor_decal/spline/fancy/wood{dir = 5},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Fw" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (NORTHWEST)"; icon_state = "spline_fancy"; dir = 9},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Fx" = (/obj/structure/flora/ausbushes/ywflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 6},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Fy" = (/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"Fz" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"FA" = (/obj/machinery/vending/cola,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"FB" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"FC" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"FD" = (/obj/structure/table/standard,/obj/structure/flora/pottedplant{pixel_y = 8},/obj/effect/floor_decal/corner/green{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FE" = (/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FF" = (/obj/effect/floor_decal/corner/green{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FG" = (/obj/structure/table/standard,/obj/item/roller,/obj/item/roller{pixel_y = 8},/obj/item/roller{pixel_y = 16},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FH" = (/obj/structure/table/standard,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FI" = (/obj/effect/floor_decal/corner/green{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FJ" = (/obj/effect/floor_decal/corner/green,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FK" = (/obj/structure/table/standard,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/effect/floor_decal/corner/beige/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FL" = (/obj/structure/table/standard,/obj/machinery/reagentgrinder,/obj/effect/floor_decal/corner/beige{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FM" = (/obj/effect/floor_decal/corner/beige{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FN" = (/obj/machinery/chem_master,/obj/effect/floor_decal/corner/beige/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FO" = (/obj/structure/flora/ausbushes,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"FP" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (SOUTHWEST)"; icon_state = "spline_fancy"; dir = 10},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"FQ" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 5},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"FR" = (/obj/structure/flora/ausbushes/sparsegrass,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"FS" = (/obj/structure/flora/bush,/obj/structure/flora/ausbushes/sparsegrass,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"FT" = (/obj/effect/floor_decal/corner/white{dir = 9; icon_state = "corner_white"; tag = "icon-corner_white (NORTHWEST)"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"FU" = (/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FV" = (/obj/effect/floor_decal/corner/beige{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FW" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FX" = (/obj/machinery/chemical_dispenser/ert,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/effect/floor_decal/corner/beige{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FY" = (/turf/unsimulated/wall,/area/centcom/bar) +"FZ" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/bar) +"Ga" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"Gb" = (/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) +"Gc" = (/turf/unsimulated/wall,/area/centcom/bathroom) +"Gd" = (/obj/machinery/door/airlock,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) +"Ge" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s (EAST)"; icon_state = "swall_s"; dir = 4},/area/shuttle/escape/centcom) +"Gf" = (/obj/structure/window/shuttle{icon_state = "window4"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) +"Gg" = (/obj/structure/window/shuttle{icon_state = "window12"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) +"Gh" = (/obj/structure/window/shuttle{icon_state = "window8"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) +"Gi" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s"; icon_state = "swall_s"},/area/shuttle/escape/centcom) +"Gj" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Gk" = (/obj/structure/bed/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Gl" = (/obj/structure/closet/secure_closet/chemical,/obj/effect/floor_decal/corner/beige{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Gm" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/effect/floor_decal/corner/beige{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Gn" = (/obj/structure/table/woodentable{dir = 5},/obj/structure/flora/pottedplant{pixel_y = 8},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"Go" = (/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"Gp" = (/obj/structure/table/steel,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) +"Gq" = (/obj/structure/closet/secure_closet/personal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) +"Gr" = (/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) +"Gs" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"Gt" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"Gu" = (/turf/simulated/shuttle/wall{tag = "icon-swall (NORTHWEST)"; icon_state = "swall"; dir = 9},/area/shuttle/escape/centcom) +"Gv" = (/obj/machinery/computer/secure_data,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Gw" = (/obj/machinery/computer/station_alert,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Gx" = (/obj/machinery/computer/shuttle_control/emergency,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Gy" = (/obj/machinery/computer/communications,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Gz" = (/obj/machinery/computer/med_data,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"GA" = (/turf/simulated/shuttle/wall{tag = "icon-swall (NORTHEAST)"; icon_state = "swall"; dir = 5},/area/shuttle/escape/centcom) +"GB" = (/obj/effect/floor_decal/corner/green{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"GC" = (/obj/structure/closet/secure_closet/medical1,/obj/effect/floor_decal/corner/beige{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"GD" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/extinguisher,/obj/machinery/camera/network/crescent{c_tag = "Shuttle Bridge West"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"GE" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"GF" = (/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"GG" = (/obj/machinery/status_display{pixel_y = 30},/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin,/obj/machinery/camera/network/crescent{c_tag = "Shuttle Bridge East"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"GH" = (/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"GI" = (/obj/structure/closet/secure_closet/medical1,/obj/effect/floor_decal/corner/beige/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"GJ" = (/obj/effect/floor_decal/corner/beige{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"GK" = (/obj/effect/floor_decal/corner/beige,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"GL" = (/obj/machinery/chem_master,/obj/effect/floor_decal/corner/beige/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"GM" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 4},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"GN" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/amanita_pie,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"GO" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/bigbiteburger,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"GP" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 8},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"GQ" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/carrotcakeslice,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"GR" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/stew,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"GS" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) +"GT" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) +"GU" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_shuttle"; pixel_x = 0; pixel_y = -25; req_one_access = list(13); tag_door = "escape_shuttle_hatch"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"GV" = (/obj/machinery/hologram/holopad,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"GW" = (/obj/machinery/light,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"GX" = (/obj/effect/floor_decal/corner/beige{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"GY" = (/obj/structure/closet/secure_closet/medical_wall{name = "Pill Cabinet"},/obj/item/weapon/storage/pill_bottle/antitox,/obj/item/weapon/storage/pill_bottle/tramadol,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/inaprovaline,/turf/unsimulated/wall,/area/centcom/medical) +"GZ" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/boiledrice,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"Ha" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/beetsoup,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"Hb" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/stuffing,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"Hc" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/soylenviridians,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"Hd" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -30},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"He" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Hf" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = 30},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Hg" = (/turf/simulated/shuttle/wall{tag = "icon-swall_straight"; icon_state = "swall_straight"},/area/shuttle/escape/centcom) +"Hh" = (/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"Hi" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Hj" = (/obj/machinery/computer/security,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Hk" = (/turf/simulated/shuttle/wall{tag = "icon-swall"; icon_state = "swall"},/area/shuttle/escape/centcom) +"Hl" = (/obj/structure/AIcore/deactivated,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"Hm" = (/obj/machinery/computer/crew,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Hn" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Ho" = (/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"Hp" = (/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Hq" = (/obj/structure/table/standard,/obj/structure/flora/pottedplant{pixel_y = 8},/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Hr" = (/obj/machinery/smartfridge/chemistry,/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Hs" = (/obj/structure/closet/secure_closet/medical3,/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Ht" = (/obj/machinery/door/airlock/glass_command{name = "Escape Shuttle Cockpit"; req_access = list(19)},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"Hu" = (/turf/simulated/shuttle/wall{tag = "icon-swall (SOUTHEAST)"; icon_state = "swall"; dir = 6},/area/shuttle/escape/centcom) +"Hv" = (/turf/simulated/shuttle/wall{tag = "icon-swall_t"; icon_state = "swall_t"},/area/shuttle/escape/centcom) +"Hw" = (/turf/simulated/shuttle/wall{tag = "icon-swall_straight (EAST)"; icon_state = "swall_straight"; dir = 4},/area/shuttle/escape/centcom) +"Hx" = (/turf/simulated/shuttle/wall{tag = "icon-swall (SOUTHWEST)"; icon_state = "swall"; dir = 10},/area/shuttle/escape/centcom) +"Hy" = (/obj/machinery/door/airlock/multi_tile/glass{id_tag = "MedbayFoyerPort"; req_access = newlist()},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Hz" = (/obj/structure/table/glass,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HA" = (/obj/structure/table/glass,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HB" = (/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/obj/structure/window/reinforced{dir = 1},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HC" = (/obj/structure/table/glass,/obj/structure/window/reinforced{dir = 1},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HD" = (/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HE" = (/obj/structure/closet/secure_closet/medical3,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HF" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/bloodsoup,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"HG" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/tofukabob,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"HH" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/poppypretzel,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"HI" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/orangecakeslice,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"HJ" = (/obj/machinery/atm{pixel_x = -30},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"HK" = (/obj/machinery/atm{pixel_x = 30},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"HL" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) +"HM" = (/obj/machinery/status_display{pixel_y = 30},/obj/machinery/camera/network/crescent{c_tag = "Shuttle Cell"},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) +"HN" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 30},/obj/structure/bed/chair{dir = 8},/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) +"HO" = (/obj/machinery/computer/crew,/obj/effect/floor_decal/corner/green{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HP" = (/obj/structure/bed/chair/office/light{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HQ" = (/obj/machinery/computer/med_data,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HR" = (/obj/machinery/iv_drip,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HS" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/spesslaw,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"HT" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/candiedapple,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"HU" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/mushroomsoup,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"HV" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/meatsteak,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"HW" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"HX" = (/obj/structure/sink{pixel_y = 16},/obj/structure/mirror{pixel_y = 32},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"HY" = (/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"HZ" = (/obj/structure/urinal{pixel_y = 32},/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Ia" = (/obj/structure/urinal{pixel_y = 32},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Ib" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"Ic" = (/obj/structure/window/shuttle{icon_state = "window2"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) +"Id" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) +"Ie" = (/obj/machinery/hologram/holopad,/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) +"If" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) +"Ig" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Ih" = (/obj/structure/window/shuttle{icon_state = "window1"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) +"Ii" = (/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) +"Ij" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"Ik" = (/turf/unsimulated/wall,/area/tdome) +"Il" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/tdome) +"Im" = (/obj/machinery/door/airlock/centcom{name = "Thunderdome"; opacity = 1; req_access = list(101)},/obj/machinery/door/blast/regular{id = "crescent_thunderdome"; name = "Thunderdome"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"In" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Io" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Ip" = (/obj/machinery/door/airlock{name = "Unit 3"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Iq" = (/obj/machinery/door/airlock{name = "Unit 4"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Ir" = (/obj/machinery/door/airlock{name = "Unit 5"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Is" = (/obj/machinery/door/airlock{name = "Unit 6"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"It" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 1},/area/shuttle/escape/centcom) +"Iu" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/extinguisher,/obj/item/weapon/crowbar,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Iv" = (/turf/simulated/shuttle/wall{icon_state = "swall"; dir = 5},/area/shuttle/escape/centcom) +"Iw" = (/obj/machinery/door/airlock/glass_security{name = "Escape Shuttle Cell"; req_access = list(1)},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) +"Ix" = (/turf/simulated/shuttle/wall{icon_state = "swall"; dir = 9},/area/shuttle/escape/centcom) +"Iy" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/material/ashtray/bronze{pixel_x = -1; pixel_y = 1},/obj/machinery/camera/network/crescent{c_tag = "Crescent Bar East"; dir = 4},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"Iz" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/material/ashtray/bronze{pixel_x = -1; pixel_y = 1},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"IA" = (/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"IB" = (/obj/structure/table/woodentable{dir = 5},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"IC" = (/obj/structure/table/woodentable{dir = 5},/obj/machinery/cash_register/civilian,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"ID" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"IE" = (/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"IF" = (/obj/structure/toilet{dir = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"IG" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"IH" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "centcom_dock_airlock"; locked = 1; name = "Arrivals Airlock"; req_access = list(13)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"II" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "shuttle_dock_south_mech"; pixel_y = 19},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"IJ" = (/obj/machinery/status_display{pixel_y = 30},/obj/machinery/light{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"IK" = (/obj/machinery/camera/network/crescent{c_tag = "Shuttle Center"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"IL" = (/obj/machinery/vending/medical,/turf/unsimulated/wall,/area/centcom/medical) +"IM" = (/obj/machinery/vending/medical,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"IN" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/blood/AMinus,/obj/item/weapon/reagent_containers/blood/APlus,/obj/item/weapon/reagent_containers/blood/BMinus,/obj/item/weapon/reagent_containers/blood/BPlus,/obj/item/weapon/reagent_containers/blood/OPlus,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"IO" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"IP" = (/obj/structure/bed/chair/comfy/brown,/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet{dir = 1},/obj/effect/floor_decal/carpet{dir = 9},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"IQ" = (/obj/structure/bed/chair/comfy/brown,/obj/effect/floor_decal/carpet{dir = 1},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"IR" = (/obj/structure/bed/chair/comfy/brown,/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet{dir = 1},/obj/effect/floor_decal/carpet{dir = 5},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"IS" = (/obj/structure/table/woodentable{dir = 5},/obj/item/clothing/under/suit_jacket,/obj/item/clothing/suit/wcoat,/obj/item/clothing/head/that{pixel_x = 4; pixel_y = 6},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"IT" = (/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"IU" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"IV" = (/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"IW" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"IX" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"IY" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "shuttle_dock_north_mech"; pixel_y = -19},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"IZ" = (/obj/structure/table/standard,/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Ja" = (/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jb" = (/obj/machinery/sleeper{dir = 8},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jc" = (/obj/machinery/sleep_console,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jd" = (/obj/structure/table/standard,/obj/item/roller,/obj/item/roller{pixel_y = 8},/obj/item/roller{pixel_y = 16},/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Je" = (/obj/effect/floor_decal/corner/blue{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jf" = (/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jg" = (/obj/effect/floor_decal/carpet{dir = 8},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -30},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"Jh" = (/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"Ji" = (/obj/effect/floor_decal/carpet{dir = 4},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"Jj" = (/obj/structure/curtain/open/shower,/obj/machinery/shower,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Jk" = (/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Jl" = (/obj/structure/bed/chair{dir = 4},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/obj/machinery/camera/network/crescent{c_tag = "Shuttle West"; dir = 4},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Jm" = (/obj/structure/bed/chair{dir = 8},/obj/structure/closet/walllocker/emerglocker{pixel_x = 28},/obj/machinery/camera/network/crescent{c_tag = "Shuttle East"; dir = 8},/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Jn" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/adv,/obj/item/weapon/storage/firstaid/adv,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jo" = (/obj/effect/floor_decal/corner/blue{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jp" = (/obj/machinery/atmospherics/unary/cryo_cell,/obj/effect/floor_decal/corner/blue{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jq" = (/obj/machinery/atmospherics/unary/cryo_cell,/obj/effect/floor_decal/corner/blue/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jr" = (/obj/structure/bed/chair/comfy/brown{dir = 1},/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet,/obj/effect/floor_decal/carpet{dir = 10},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"Js" = (/obj/structure/bed/chair/comfy/brown{dir = 1},/obj/effect/floor_decal/carpet,/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"Jt" = (/obj/structure/bed/chair/comfy/brown{dir = 1},/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet,/obj/effect/floor_decal/carpet{dir = 6},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"Ju" = (/obj/structure/closet/secure_closet/bar{req_access = list(25)},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"Jv" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/book/manual/barman_recipes,/obj/item/weapon/reagent_containers/glass/rag,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"Jw" = (/obj/structure/table/woodentable{dir = 5},/obj/machinery/chemical_dispenser/bar_alc/full,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"Jx" = (/obj/structure/table/woodentable{dir = 5},/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"Jy" = (/obj/machinery/porta_turret/crescent,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"Jz" = (/obj/structure/window/shuttle{icon_state = "window3"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) +"JA" = (/obj/machinery/sleeper{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JB" = (/obj/machinery/sleep_console,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JC" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/fire,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JD" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"; tag = "icon-intact-f (NORTHEAST)"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JE" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JF" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JG" = (/obj/structure/curtain/open/shower,/obj/machinery/shower{dir = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"JH" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "centcom_dock"; name = "docking port controller"; pixel_x = 25; pixel_y = 0; req_one_access = list(13); tag_door = "centcom_dock_airlock"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"JI" = (/obj/machinery/iv_drip,/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JJ" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/toxin,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JK" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JL" = (/obj/structure/morgue,/obj/effect/floor_decal/corner/blue/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JM" = (/obj/effect/floor_decal/corner/blue{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JN" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/obj/effect/floor_decal/corner/blue/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JO" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/obj/machinery/door/blast/regular{id = "crescent_thunderdome"; name = "Thunderdome"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"JP" = (/obj/structure/bed/roller,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/structure/closet/secure_closet/medical_wall{name = "O- Blood Locker"; pixel_x = -32},/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JQ" = (/obj/machinery/bodyscanner{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JR" = (/obj/machinery/body_scanconsole,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JS" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/o2,/obj/item/weapon/storage/firstaid/o2,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JT" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 5; pixel_y = 5},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 0; pixel_y = 0},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/obj/item/weapon/wrench,/obj/effect/floor_decal/corner/blue/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JU" = (/obj/effect/floor_decal/corner/blue{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JV" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/obj/effect/floor_decal/corner/blue,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JW" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/obj/effect/floor_decal/corner/blue/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JX" = (/obj/structure/morgue,/obj/effect/floor_decal/corner/blue{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JY" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JZ" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Ka" = (/obj/structure/bed/chair{dir = 4},/obj/structure/closet/walllocker/emerglocker{pixel_x = -28},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Kb" = (/obj/structure/bed/chair{dir = 8},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 26},/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Kc" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/firstaid/regular,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Kd" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "GeneticsDoor"; name = "Cloning Laboratory"; req_access = list(66)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Ke" = (/obj/structure/closet/secure_closet/bar,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Kf" = (/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Kg" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Kh" = (/obj/machinery/door/airlock/command{name = "Thunderdome"},/obj/machinery/door/blast/regular{id = "crescent_thunderdome"; name = "Thunderdome"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome) +"Ki" = (/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Kj" = (/obj/machinery/door/airlock/medical{name = "Virology Access"; req_access = list(5)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Kk" = (/obj/effect/floor_decal/corner/blue/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Kl" = (/obj/effect/floor_decal/corner/blue{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Km" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/effect/floor_decal/corner/blue{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Kn" = (/obj/structure/filingcabinet/chestdrawer{desc = "A large drawer filled with autopsy reports."; name = "Autopsy Reports"},/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Ko" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Kp" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer,/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer,/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer,/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Kq" = (/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Kr" = (/obj/structure/reagent_dispensers/beerkeg,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Ks" = (/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Kt" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Ku" = (/obj/machinery/status_display{pixel_y = -30},/obj/machinery/light,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"Kv" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "shuttle_dock_south_starboard_mech"; pixel_y = -19},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"Kw" = (/obj/machinery/door/airlock/medical{name = "Observation Room"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Kx" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Ky" = (/obj/structure/closet/l3closet/virology,/obj/item/clothing/mask/gas,/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Kz" = (/obj/machinery/door/airlock/medical{name = "Morgue"; req_access = list(6,5)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KA" = (/obj/machinery/optable,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KB" = (/obj/item/device/camera{name = "Autopsy Camera"; pixel_x = -2; pixel_y = 7},/obj/item/weapon/paper_bin{pixel_y = -6},/obj/item/weapon/pen/red{pixel_x = -1; pixel_y = -9},/obj/item/weapon/pen/blue{pixel_x = 3; pixel_y = -5},/obj/structure/table/standard,/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KC" = (/obj/structure/closet/secure_closet/freezer/meat,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"KD" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"KE" = (/obj/structure/bed/chair,/obj/effect/landmark{name = "tdomeobserve"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"KF" = (/obj/structure/disposalpipe/trunk,/obj/structure/disposaloutlet,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"KG" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"KH" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 8},/area/shuttle/escape/centcom) +"KI" = (/obj/machinery/door/airlock/glass_mining{name = "Shuttle Cargo"},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"KJ" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 1},/area/shuttle/escape/centcom) +"KK" = (/obj/machinery/door/airlock/glass_medical{name = "Escape Shuttle Infirmary"; req_access = list(5)},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"KL" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 4},/area/shuttle/escape/centcom) +"KM" = (/obj/effect/floor_decal/corner/pink{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KN" = (/obj/effect/floor_decal/corner/pink{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KO" = (/obj/effect/floor_decal/corner/pink{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KP" = (/obj/effect/floor_decal/corner/pink/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KQ" = (/obj/machinery/shower{dir = 4; icon_state = "shower"; pixel_x = 0; pixel_y = 0},/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KR" = (/obj/structure/closet/l3closet/virology,/obj/item/clothing/mask/gas,/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KS" = (/obj/machinery/clonepod,/obj/effect/floor_decal/corner/blue/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KT" = (/obj/machinery/computer/cloning,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KU" = (/obj/machinery/dna_scannernew,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KV" = (/obj/structure/closet/wardrobe/white,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KW" = (/obj/structure/table/standard,/obj/item/weapon/book/manual/medical_cloning,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KX" = (/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/storage/box/bodybags,/obj/structure/table/standard,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KY" = (/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KZ" = (/obj/item/weapon/autopsy_scanner,/obj/item/weapon/scalpel,/obj/structure/table/standard,/obj/effect/floor_decal/corner/blue/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"La" = (/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Lb" = (/obj/structure/table/standard,/obj/machinery/microwave,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Lc" = (/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Ld" = (/obj/machinery/computer/security/telescreen,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Le" = (/obj/item/device/camera,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Lf" = (/obj/structure/disposalpipe/segment,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Lg" = (/obj/structure/closet/walllocker/emerglocker{pixel_x = -28},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"Lh" = (/obj/structure/closet/hydrant{pixel_x = 30; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"Li" = (/obj/machinery/atmospherics/unary/cryo_cell{layer = 3.3},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Lj" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Lk" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Ll" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = -4; pixel_y = 0},/obj/item/weapon/wrench,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Lm" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/weapon/storage/firstaid/o2{layer = 2.8; pixel_x = 4; pixel_y = 6},/obj/item/weapon/storage/box/masks{pixel_x = 0; pixel_y = 0},/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/fire{layer = 2.9; pixel_x = 2; pixel_y = 3},/obj/item/weapon/storage/firstaid/adv{pixel_x = -2},/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Ln" = (/obj/structure/closet/hydrant{pixel_x = -30; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"Lo" = (/obj/structure/closet/walllocker/emerglocker{pixel_x = 28},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"Lp" = (/obj/effect/floor_decal/corner/pink,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Lq" = (/obj/structure/bed/chair,/obj/effect/floor_decal/corner/pink{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Lr" = (/obj/structure/bed/chair,/obj/effect/floor_decal/corner/pink/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Ls" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Lt" = (/obj/structure/closet/l3closet/virology,/obj/item/clothing/mask/gas,/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Lu" = (/obj/structure/bed/chair,/obj/structure/disposalpipe/segment,/obj/effect/landmark{name = "tdomeobserve"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Lv" = (/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"Lw" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/obj/machinery/camera/network/crescent{c_tag = "Shuttle Medical"; dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Lx" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Ly" = (/obj/machinery/vending/wallmed1{layer = 3.3; name = "Emergency NanoMed"; pixel_x = 28; pixel_y = 0},/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Lz" = (/obj/machinery/door/airlock/medical{name = "Operating Theatre"; req_access = list(45)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LA" = (/obj/machinery/disease2/incubator,/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LB" = (/obj/item/weapon/storage/box/syringes{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/beakers,/obj/item/weapon/reagent_containers/dropper,/obj/structure/table/glass,/obj/structure/reagent_dispensers/virusfood{pixel_x = 0; pixel_y = 28},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LC" = (/obj/machinery/disease2/isolator,/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LD" = (/obj/effect/floor_decal/corner/green/full{dir = 8},/obj/machinery/computer/arcade/orion_trail,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LE" = (/obj/effect/floor_decal/corner/green{dir = 5},/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LF" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/green,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LG" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/green,/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LH" = (/obj/structure/table/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/brown,/obj/item/weapon/melee/energy/axe,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"LI" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"LJ" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/obj/structure/disposalpipe/segment,/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"LK" = (/obj/structure/table/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/brown,/obj/item/weapon/melee/energy/axe,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"LL" = (/obj/structure/closet/crate/freezer/rations,/obj/machinery/camera/network/crescent{c_tag = "Shuttle West Storage"; dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"LM" = (/obj/structure/closet/crate/freezer/rations,/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"LN" = (/obj/machinery/iv_drip,/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"LO" = (/obj/machinery/hologram/holopad,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"LP" = (/obj/structure/bed/roller,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"LQ" = (/obj/structure/bed/roller,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 26},/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"LR" = (/obj/machinery/recharge_station,/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"LS" = (/obj/machinery/recharge_station,/obj/machinery/camera/network/crescent{c_tag = "Shuttle East Storage"; dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"LT" = (/obj/structure/table/standard,/obj/item/weapon/FixOVein{pixel_x = -6; pixel_y = 1},/obj/item/stack/medical/advanced/bruise_pack,/obj/effect/floor_decal/corner/pink{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LU" = (/obj/structure/table/standard,/obj/item/weapon/retractor{pixel_x = 0; pixel_y = 6},/obj/item/weapon/scalpel,/obj/effect/floor_decal/corner/pink{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LV" = (/obj/structure/table/standard,/obj/item/weapon/surgicaldrill,/obj/item/weapon/circular_saw,/obj/effect/floor_decal/corner/pink/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LW" = (/obj/machinery/door/blast/regular{id = "thunderdomeaxe"; name = "Axe Supply"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"LX" = (/obj/machinery/igniter,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"LY" = (/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"LZ" = (/obj/structure/disposalpipe/segment,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"Ma" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/airless,/area/shuttle/escape/centcom) +"Mb" = (/obj/machinery/sleeper{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Mc" = (/obj/machinery/sleep_console,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Md" = (/obj/machinery/sleep_console{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Me" = (/obj/machinery/sleeper{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Mf" = (/obj/structure/table/standard,/obj/item/weapon/cautery{pixel_y = 4},/obj/item/weapon/hemostat{pixel_y = 4},/obj/item/stack/nanopaste,/obj/effect/floor_decal/corner/pink{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Mg" = (/obj/effect/floor_decal/corner/pink{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Mh" = (/obj/machinery/door/airlock/glass_medical{name = "Virology Laboratory"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Mi" = (/obj/structure/table/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/tdome/red,/obj/item/clothing/head/helmet/thunderdome,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/energy/sword/red,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Mj" = (/obj/machinery/door/blast/regular{id = "thunderdomegen"; name = "General Supply"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Mk" = (/obj/effect/landmark{name = "tdome2"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome2) +"Ml" = (/obj/machinery/door/blast/regular{id = "thunderdome"; name = "Thunderdome Blast Door"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Mm" = (/obj/effect/landmark{name = "tdome1"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome1) +"Mn" = (/obj/structure/table/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/tdome/green,/obj/item/clothing/head/helmet/thunderdome,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/energy/sword/green,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Mo" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 1},/area/shuttle/escape/centcom) +"Mp" = (/obj/structure/shuttle/engine/propulsion,/turf/space,/area/shuttle/escape/centcom) +"Mq" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 2},/area/shuttle/escape/centcom) +"Mr" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 8},/area/shuttle/escape/centcom) +"Ms" = (/obj/structure/table/standard,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel{pixel_x = 4; pixel_y = 3},/obj/effect/floor_decal/corner/pink{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Mt" = (/obj/machinery/computer/operating,/obj/effect/floor_decal/corner/pink{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Mu" = (/obj/machinery/computer/centrifuge,/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Mv" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Mw" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table/glass,/obj/item/weapon/storage/box/monkeycubes,/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Mx" = (/obj/machinery/recharger{pixel_y = 4},/obj/effect/landmark{name = "tdome2"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome2) +"My" = (/obj/machinery/recharger{pixel_y = 4},/obj/effect/landmark{name = "tdome1"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome1) +"Mz" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = 28},/obj/effect/floor_decal/corner/pink{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MA" = (/obj/machinery/smartfridge/chemistry/virology,/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MB" = (/obj/structure/bed/chair/office/dark,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MC" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MD" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"ME" = (/obj/machinery/vending/snack,/obj/effect/floor_decal/corner/green/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MF" = (/obj/machinery/vending/coffee,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MG" = (/obj/machinery/computer/arcade,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MH" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/green,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MI" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/green,/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MJ" = (/obj/effect/landmark{name = "tdome2"},/obj/machinery/camera/network/thunder{c_tag = "Thunderdome - Red Team"; invisibility = 101},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome2) +"MK" = (/obj/machinery/flasher{id = "flash"; name = "Thunderdome Flash"},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"ML" = (/obj/effect/landmark{name = "tdome1"},/obj/machinery/camera/network/thunder{c_tag = "Green Team"; invisibility = 101},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome1) +"MM" = (/obj/structure/closet/secure_closet/medical2,/obj/effect/floor_decal/corner/pink/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MN" = (/obj/machinery/iv_drip,/obj/effect/floor_decal/corner/pink{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MO" = (/obj/effect/floor_decal/corner/pink{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MP" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = 4; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = 4; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OMinus{pixel_x = -5; pixel_y = -1},/obj/item/weapon/reagent_containers/blood/OMinus{pixel_x = -5; pixel_y = -1},/obj/effect/floor_decal/corner/pink{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MQ" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/box/masks,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/effect/floor_decal/corner/pink/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MR" = (/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/obj/effect/floor_decal/corner/green/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MS" = (/obj/item/weapon/storage/box/gloves{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/masks,/obj/structure/table/glass,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MT" = (/obj/machinery/disease2/diseaseanalyser,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MU" = (/obj/machinery/computer/diseasesplicer,/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MV" = (/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/green/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MW" = (/obj/machinery/atmospherics/pipe/vent,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"MX" = (/obj/machinery/camera/network/thunder{c_tag = "Thunderdome Arena"; invisibility = 101},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"MY" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"MZ" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 1},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"Na" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"Nb" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"Nc" = (/obj/machinery/door/airlock/command{name = "Thunderdome Administration"; req_access = list(102)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Nd" = (/obj/machinery/door/blast/regular{id = "thunderdomehea"; name = "Heavy Supply"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Ne" = (/obj/structure/table/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Nf" = (/obj/machinery/door/airlock/command{name = "Thunderdome Administration"; req_access = list(102)},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"Ng" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/obj/machinery/atmospherics/pipe/simple/visible,/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"Nh" = (/obj/structure/table/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Ni" = (/obj/machinery/door/airlock/centcom{name = "Special Operations"; opacity = 1; req_access = list(103)},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/terminal) +"Nj" = (/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nk" = (/obj/structure/bed/chair{dir = 1},/obj/effect/landmark{name = "tdomeadmin"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nl" = (/obj/item/weapon/extinguisher,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nm" = (/obj/machinery/atmospherics/valve,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nn" = (/obj/structure/bed/chair{dir = 1},/obj/structure/disposalpipe/segment,/obj/effect/landmark{name = "tdomeadmin"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"No" = (/obj/machinery/computer/security/telescreen,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Np" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/sleeping_agent{pixel_x = 1},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nq" = (/obj/item/weapon/wrench,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nr" = (/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/disposal,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Ns" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome) +"Nt" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nu" = (/obj/structure/table/standard,/obj/machinery/recharger{pixel_y = 4},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nv" = (/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nw" = (/obj/machinery/computer/pod{id = "thunderdomeaxe"; name = "Thunderdome Axe Supply"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nx" = (/obj/machinery/computer/pod{id = "thunderdomegen"; name = "Thunderdome General Supply"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Ny" = (/obj/machinery/computer/pod{id = "thunderdomehea"; name = "Thunderdome Heavy Supply"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nz" = (/obj/machinery/computer/pod{id = "thunderdome"; name = "Thunderdome Blast Door Control"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"NA" = (/obj/item/stack/medical/ointment,/obj/item/stack/medical/ointment,/obj/item/stack/medical/ointment,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"NB" = (/obj/structure/table/standard,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/bruise_pack,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"NC" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/handcuffs,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"ND" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"NE" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/electrical,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"NF" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"NG" = (/turf/unsimulated/beach/sand{density = 1; opacity = 1},/area/beach) +"NH" = (/turf/unsimulated/beach/sand,/area/beach) +"NI" = (/obj/structure/signpost,/turf/unsimulated/beach/sand,/area/beach) +"NJ" = (/obj/structure/closet,/turf/unsimulated/beach/sand,/area/beach) +"NK" = (/obj/effect/overlay/palmtree_l,/turf/unsimulated/beach/sand,/area/beach) +"NL" = (/obj/effect/overlay/palmtree_r,/obj/effect/overlay/coconut,/turf/unsimulated/beach/sand,/area/beach) +"NM" = (/obj/effect/overlay/coconut,/turf/unsimulated/beach/sand,/area/beach) +"NN" = (/turf/space,/area/shuttle/cryo/centcom) +"NO" = (/obj/effect/overlay/palmtree_r,/turf/unsimulated/beach/sand,/area/beach) +"NP" = (/obj/effect/landmark{name = "endgame_exit"},/turf/unsimulated/beach/sand,/area/beach) +"NQ" = (/turf/simulated/shuttle/wall{dir = 4; icon_state = "swall_s"},/area/centcom/evac) +"NR" = (/turf/unsimulated/wall{desc = "That looks like it doesn't open easily."; dir = 8; icon = 'icons/obj/doors/rapid_pdoor.dmi'; icon_state = "pdoor1"; name = "Shuttle Bay Blast Door"},/area/centcom/evac) +"NS" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 2},/area/centcom/evac) +"NT" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 4},/area/centcom/evac) +"NU" = (/obj/structure/table/standard,/obj,/obj,/obj,/obj,/obj,/obj,/obj,/turf/unsimulated/beach/sand,/area/beach) +"NV" = (/obj/structure/table/standard,/obj/item/clothing/under/color/rainbow,/obj/item/clothing/glasses/sunglasses,/obj/item/clothing/head/collectable/petehat{pixel_y = 5},/turf/unsimulated/beach/sand,/area/beach) +"NW" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s (EAST)"; icon_state = "swall_s"; dir = 4},/area/centcom/evac) +"NX" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 1},/area/centcom/evac) +"NY" = (/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/centcom/evac) +"NZ" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 1},/area/centcom/evac) +"Oa" = (/turf/simulated/shuttle/plating,/area/centcom/evac) +"Ob" = (/turf/simulated/shuttle/plating,/area/shuttle/large_escape_pod2/centcom) +"Oc" = (/obj/machinery/clonepod,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Od" = (/obj/machinery/computer/cloning,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Oe" = (/obj/machinery/dna_scannernew,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Of" = (/obj/machinery/atmospherics/unary/cryo_cell{layer = 3.3},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Og" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Oh" = (/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = -4; pixel_y = 0},/obj/item/weapon/wrench,/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Oi" = (/obj/structure/closet/crate/medical,/obj/item/weapon/circular_saw,/obj/item/weapon/surgicaldrill,/obj/item/weapon/bonegel{pixel_x = 4; pixel_y = 3},/obj/item/weapon/bonesetter,/obj/item/weapon/scalpel,/obj/item/weapon/retractor{pixel_x = 0; pixel_y = 6},/obj/item/weapon/hemostat{pixel_y = 4},/obj/item/weapon/cautery{pixel_y = 4},/obj/item/weapon/FixOVein{pixel_x = -6; pixel_y = 1},/obj/item/stack/nanopaste,/obj/item/weapon/tank/anesthetic,/obj/item/clothing/mask/breath/medical,/obj/item/clothing/mask/surgical,/obj/item/clothing/mask/surgical,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Oj" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/turf/simulated/shuttle/wall{icon_state = "swall_c"; dir = 1},/area/centcom/evac) +"Ok" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/snacks/chips,/turf/unsimulated/beach/sand,/area/beach) +"Ol" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/turf/unsimulated/beach/sand,/area/beach) +"Om" = (/obj/item/weapon/beach_ball,/turf/unsimulated/beach/sand,/area/beach) +"On" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion_l"},/turf/space,/area/centcom/evac) +"Oo" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/airless,/area/centcom/evac) +"Op" = (/obj/machinery/portable_atmospherics/powered/scrubber,/turf/simulated/shuttle/plating,/area/centcom/evac) +"Oq" = (/obj/machinery/vending/engineering,/turf/simulated/shuttle/plating,/area/centcom/evac) +"Or" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod1/centcom) +"Os" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod2/centcom) +"Ot" = (/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/shuttle/cryo/centcom) +"Ou" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 8},/area/centcom/evac) +"Ov" = (/turf/simulated/shuttle/wall,/area/centcom/evac) +"Ow" = (/obj/machinery/door/airlock/external,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Ox" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 4},/area/centcom/evac) +"Oy" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Oz" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OA" = (/obj/machinery/atmospherics/pipe/manifold/visible,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OB" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OC" = (/obj/machinery/computer/operating,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OD" = (/obj/structure/shuttle/engine/propulsion{dir = 8},/turf/space,/area/centcom/evac) +"OE" = (/obj/structure/closet/emcloset,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"OF" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"OG" = (/obj/machinery/bodyscanner{dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OH" = (/obj/machinery/body_scanconsole,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OI" = (/obj/machinery/optable,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OJ" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"OK" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OL" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/fire{pixel_x = -2; pixel_y = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OM" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 0},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"ON" = (/obj/machinery/computer/crew,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OO" = (/obj/machinery/sleeper{dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OP" = (/obj/machinery/sleep_console,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OQ" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OR" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/weapon/storage/firstaid/o2{layer = 2.8; pixel_x = 4; pixel_y = 6},/obj/item/weapon/storage/box/masks{pixel_x = 0; pixel_y = 0},/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/fire{layer = 2.9; pixel_x = 2; pixel_y = 3},/obj/item/weapon/storage/firstaid/adv{pixel_x = -2},/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OS" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OT" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OU" = (/obj/structure/bed/chair,/obj/effect/landmark{name = "endgame_exit"},/obj/item/toy/plushie/mouse{desc = "A plushie of a small fuzzy rodent."; name = "Woodrat"},/turf/unsimulated/beach/sand,/area/beach) +"OV" = (/obj/structure/bed/chair,/obj/effect/landmark{name = "endgame_exit"},/turf/unsimulated/beach/sand,/area/beach) +"OW" = (/mob/living/simple_animal/crab/Coffee,/turf/unsimulated/beach/sand,/area/beach) +"OX" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion_r"},/turf/space,/area/centcom/evac) +"OY" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "large_escape_pod_2_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 02"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"OZ" = (/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = -30; pixel_y = 0},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Pa" = (/obj/item/clothing/head/collectable/paper,/turf/unsimulated/beach/sand,/area/beach) +"Pb" = (/obj/machinery/door/airlock/maintenance_hatch{req_access = list(101)},/turf/simulated/shuttle/plating,/area/centcom/evac) +"Pc" = (/turf/simulated/shuttle/wall{tag = "icon-swall_t"; icon_state = "swall_t"},/area/centcom/evac) +"Pd" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_1_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 1"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Pe" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_2_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 2"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Pf" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "cryostorage_shuttle_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock Cryostorage"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Pg" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Ph" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "large_escape_pod_2_recovery"; pixel_x = -25; pixel_y = 25; req_one_access = list(13); tag_door = "large_escape_pod_2_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Pi" = (/obj/structure/bed/roller,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Pj" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Pk" = (/obj/machinery/iv_drip,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Pl" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/bodybags{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/bodybags,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Pm" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 2},/area/centcom/evac) +"Pn" = (/turf/unsimulated/floor{icon_state = "sandwater"},/area/beach) +"Po" = (/turf/unsimulated/wall{desc = "That looks like it doesn't open easily."; icon = 'icons/obj/doors/rapid_pdoor.dmi'; icon_state = "pdoor1"; name = "Shuttle Bay Blast Door"},/area/centcom/evac) +"Pp" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_1_recovery"; pixel_x = -25; pixel_y = 25; req_one_access = list(13); tag_door = "escape_pod_1_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Pq" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_2_recovery"; pixel_x = -25; pixel_y = 25; req_one_access = list(13); tag_door = "escape_pod_2_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Pr" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "cryostorage_shuttle_recovery"; pixel_x = -25; pixel_y = 25; req_one_access = list(13); tag_door = "cryostorage_shuttle_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Ps" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Pt" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Pu" = (/obj/machinery/vending/cola,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Pv" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window4"},/turf/simulated/shuttle/plating,/area/centcom/evac) +"Pw" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window8"},/turf/simulated/shuttle/plating,/area/centcom/evac) +"Px" = (/obj/machinery/door/airlock/glass,/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/centcom/evac) +"Py" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window12"},/turf/simulated/shuttle/plating,/area/centcom/evac) +"Pz" = (/obj/machinery/computer/communications,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PA" = (/obj/structure/table/standard,/obj/item/device/radio/off,/obj/item/weapon/paper_bin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PB" = (/obj/structure/window/shuttle{icon_state = "window2"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/centcom/evac) +"PC" = (/turf/unsimulated/beach/coastline{density = 1; opacity = 1},/area/beach) +"PD" = (/turf/unsimulated/beach/coastline,/area/beach) +"PE" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"PF" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PG" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/simulated/shuttle/plating,/area/centcom/evac) +"PH" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PI" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PJ" = (/obj/machinery/computer/shuttle,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PK" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window3"},/turf/simulated/shuttle/plating,/area/centcom/evac) +"PL" = (/turf/unsimulated/beach/water{density = 1; opacity = 1},/area/beach) +"PM" = (/turf/unsimulated/beach/water,/area/beach) +"PN" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PO" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PP" = (/obj/machinery/door/airlock/hatch{name = "Cockpit"; req_access = list(109)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"PQ" = (/obj/structure/table/standard,/obj/item/weapon/storage/lockbox,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PR" = (/obj/machinery/computer/station_alert,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PS" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_6_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "escape_pod_6_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"PT" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_5_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "escape_pod_5_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"PU" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_4_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "escape_pod_4_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"PV" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_3_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "escape_pod_3_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"PW" = (/obj/machinery/door/airlock/glass_security{name = "Security Processing"; req_access = list(1)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"PX" = (/obj/machinery/computer/crew,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PY" = (/obj/structure/table/standard,/obj/item/weapon/clipboard,/obj/item/weapon/pen,/obj/item/weapon/stamp/captain,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PZ" = (/obj/structure/window/shuttle{icon_state = "window1"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/centcom/evac) +"Qa" = (/turf/unsimulated/wall,/area/syndicate_mothership{name = "\improper Raider Base"}) +"Qb" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 1},/area/centcom/evac) +"Qc" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_6_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 6"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Qd" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_5_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 5"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Qe" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_4_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 4"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Qf" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_3_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 3"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Qg" = (/obj/machinery/door/airlock/maintenance_hatch{req_access = list(101)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Qh" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "large_escape_pod_1_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "large_escape_pod_1_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Qi" = (/obj/machinery/computer/card,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"Qj" = (/obj/structure/table/rack,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"Qk" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"Ql" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"Qm" = (/obj/machinery/computer/secure_data,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"Qn" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Qo" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 8},/area/centcom/evac) +"Qp" = (/turf/simulated/mineral,/area/syndicate_mothership{name = "\improper Raider Base"}) +"Qq" = (/obj/effect/landmark{name = "voxstart"},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Qr" = (/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Qs" = (/obj/structure/table/standard,/obj/effect/decal/cleanable/cobweb2,/obj/effect/decal/cleanable/cobweb2{icon_state = "spiderling"; name = "dead spider"; tag = "icon-spiderling"},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Qt" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod6/centcom) +"Qu" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 1},/area/space) +"Qv" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod5/centcom) +"Qw" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod4/centcom) +"Qx" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod3/centcom) +"Qy" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "large_escape_pod_1_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 01"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Qz" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"QA" = (/obj/structure/closet/secure_closet/personal/patient,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"QB" = (/obj/structure/table/standard,/obj/structure/bedsheetbin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"QC" = (/obj/item/weapon/bedsheet/orange,/obj/structure/bed/padded,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QD" = (/turf/simulated/shuttle/plating,/area/shuttle/large_escape_pod1/centcom) +"QE" = (/obj/structure/closet{name = "Evidence Closet"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"QF" = (/obj/structure/closet/secure_closet/security,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"QG" = (/obj/machinery/door/airlock/hatch{req_access = list(150)},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QH" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"QI" = (/obj/machinery/door/airlock/glass_security{name = "Escape Shuttle Cell"; req_access = list(1)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"QJ" = (/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QK" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"QL" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/orange,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"QM" = (/obj/item/weapon/tray{pixel_y = 5},/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QN" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/glasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QO" = (/obj/machinery/portable_atmospherics/powered/pump,/turf/simulated/shuttle/plating,/area/centcom/evac) +"QP" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/shuttle/plating,/area/centcom/evac) +"QQ" = (/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/reagent_containers/glass/bucket{amount_per_transfer_from_this = 50},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"QR" = (/obj/item/weapon/mop,/obj/structure/mopbucket,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"QS" = (/obj/structure/table/rack,/obj/item/weapon/reagent_containers/spray/cleaner{pixel_x = 6; pixel_y = 3},/obj/item/clothing/accessory/storage/brown_vest,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"QT" = (/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QU" = (/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QV" = (/turf/simulated/shuttle/wall{icon_state = "swall_f"; dir = 4},/area/centcom/evac) +"QW" = (/obj/item/weapon/bedsheet/orange,/obj/effect/decal/cleanable/cobweb2{tag = "icon-cobweb1"; icon_state = "cobweb1"},/obj/structure/bed/padded,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QX" = (/obj/machinery/microwave{pixel_x = -1; pixel_y = 8},/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QY" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QZ" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Ra" = (/obj/structure/urinal{pixel_y = 32},/obj/item/weapon/soap/syndie,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rb" = (/obj/structure/urinal{pixel_y = 32},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rc" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rd" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Re" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rf" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rg" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rh" = (/obj/structure/kitchenspike,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Ri" = (/obj/item/clothing/head/xenos,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rj" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{dir = 4; pixel_x = -28; pixel_y = 0},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rk" = (/obj/item/clothing/mask/gas/swat{desc = "A close-fitting mask clearly not made for a human face."; name = "\improper alien mask"},/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rl" = (/obj/item/xenos_claw,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rm" = (/obj/structure/table/rack,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rn" = (/obj/structure/table/rack,/obj/item/weapon/gun/launcher/spikethrower,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Ro" = (/obj/machinery/shower{dir = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rp" = (/obj/item/pizzabox/meat,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rq" = (/obj/structure/reagent_dispensers/beerkeg,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rr" = (/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rs" = (/obj/effect/decal/cleanable/cobweb2,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rt" = (/obj/structure/table/rack,/obj/item/clothing/glasses/thermal/plain/monocle,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Ru" = (/obj/effect/landmark{name = "voxstart"},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rv" = (/obj/item/weapon/tank/nitrogen,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rw" = (/obj/item/organ/internal/stack,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rx" = (/obj/structure/bed/chair,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Ry" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rz" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RA" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RB" = (/obj/machinery/computer/station_alert,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RC" = (/obj/machinery/computer/shuttle_control/multi/skipjack,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RD" = (/obj/machinery/suit_cycler/syndicate{locked = 0},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RE" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/item/weapon/tank/nitrogen,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RF" = (/obj/item/clothing/head/philosopher_wig,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RG" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 4},/turf/space,/area/syndicate_mothership{name = "\improper Raider Base"}) +"RH" = (/obj/machinery/door/airlock/external{req_access = list(150)},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RI" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 8},/turf/space,/area/syndicate_mothership{name = "\improper Raider Base"}) +"RJ" = (/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RK" = (/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RL" = (/turf/space,/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/skipjack_station/start) +"RM" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1331; master_tag = "vox_west_control"; req_one_access = list(150)},/turf/simulated/wall/skipjack,/area/skipjack_station/start) +"RN" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_closed"; id_tag = "vox_northwest_lock"; locked = 0; req_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"RO" = (/turf/space,/turf/simulated/shuttle/wall{dir = 1; icon_state = "diagonalWall3"},/area/skipjack_station/start) +"RP" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_closed"; id_tag = "vox_northeast_lock"; locked = 0; req_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"RQ" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1331; master_tag = "vox_east_control"; req_access = list(150)},/turf/simulated/wall/skipjack,/area/skipjack_station/start) +"RR" = (/turf/simulated/wall/skipjack,/area/skipjack_station/start) +"RS" = (/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"RT" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"RU" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"RV" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"RW" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1331; id_tag = "vox_west_vent"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"RX" = (/obj/machinery/airlock_sensor{frequency = 1331; id_tag = "vox_west_sensor"; pixel_x = 25},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"RY" = (/obj/machinery/computer/station_alert,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"RZ" = (/obj/machinery/computer/shuttle_control/multi/skipjack,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Sa" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Sb" = (/obj/machinery/button/remote/blast_door{id = "skipjackshutters"; name = "remote shutter control"; req_access = list(150)},/turf/simulated/wall/skipjack,/area/skipjack_station/start) +"Sc" = (/obj/machinery/airlock_sensor{frequency = 1331; id_tag = "vox_east_sensor"; pixel_x = -25},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sd" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1331; id_tag = "vox_east_vent"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Se" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/obj/machinery/meter,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sf" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "vox_west_vent"; tag_exterior_door = "vox_northwest_lock"; frequency = 1331; id_tag = "vox_west_control"; tag_interior_door = "vox_southwest_lock"; pixel_x = 24; req_access = list(150); tag_chamber_sensor = "vox_west_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1331; id_tag = "vox_west_vent"},/obj/machinery/light/small,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sg" = (/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Sh" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Si" = (/obj/structure/bed/chair{dir = 1},/obj/item/clothing/glasses/thermal/plain/monocle,/obj/item/clothing/head/pirate,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Sj" = (/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Sk" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "vox_east_vent"; tag_exterior_door = "vox_northeast_lock"; frequency = 1331; id_tag = "vox_east_control"; tag_interior_door = "vox_southeast_lock"; pixel_x = -24; req_access = list(150); tag_chamber_sensor = "vox_east_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1331; id_tag = "vox_east_vent"},/obj/machinery/light/small,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sl" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 4},/obj/machinery/meter,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sm" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_closed"; id_tag = "vox_southwest_lock"; locked = 0; req_access = list(150)},/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sn" = (/obj/structure/table/rack,/obj/item/weapon/rig/industrial,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"So" = (/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Sp" = (/obj/structure/table/rack,/obj/item/weapon/rig/light/hacker,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Sq" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_closed"; id_tag = "vox_southeast_lock"; locked = 0; req_access = list(150)},/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sr" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1331; master_tag = "vox_west_control"; pixel_x = -22; req_one_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Ss" = (/obj/structure/table/rack,/obj/item/weapon/gun/energy/ionrifle,/obj/item/weapon/material/harpoon,/obj/item/clothing/suit/space/void/merc,/obj/item/clothing/head/helmet/space/void/merc,/obj/item/clothing/head/helmet/space/void/engineering,/obj/item/clothing/suit/space/void/engineering,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/obj/item/clothing/shoes/magboots,/obj/item/clothing/shoes/magboots,/obj/item/weapon/rig/light/stealth,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"St" = (/obj/machinery/microwave{pixel_x = -1; pixel_y = 8},/obj/structure/table/steel,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Su" = (/obj/item/seeds/potatoseed,/obj/item/seeds/potatoseed,/obj/item/seeds/ambrosiavulgarisseed,/obj/item/weapon/material/minihoe,/obj/item/weapon/beartrap,/obj/structure/table/steel,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sv" = (/obj/machinery/vending/hydroseeds,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sw" = (/obj/structure/table/rack,/obj/item/weapon/melee/energy/sword/pirate,/obj/item/clothing/suit/space/pirate,/obj/item/clothing/suit/space/pirate,/obj/item/weapon/tank/oxygen,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Sx" = (/obj/structure/table/rack,/obj/item/weapon/storage/belt/utility/full,/obj/item/weapon/storage/belt/utility/full,/obj/item/device/multitool,/obj/item/device/multitool,/obj/item/clothing/shoes/magboots,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sy" = (/obj/machinery/washing_machine,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sz" = (/obj/structure/table/standard,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/flame/lighter/zippo,/obj/item/clothing/gloves/yellow,/obj/item/stack/material/steel{amount = 50},/obj/item/stack/material/glass{amount = 50},/obj/item/weapon/card/emag,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SA" = (/obj/structure/table/rack,/obj/item/weapon/gun/energy/sniperrifle,/obj/item/clothing/suit/space/void/mining,/obj/item/clothing/head/helmet/space/void/mining,/obj/item/clothing/head/helmet/space/void/atmos,/obj/item/clothing/suit/space/void/atmos,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SB" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1331; master_tag = "vox_east_control"; pixel_x = 22; req_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SC" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SD" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SE" = (/obj/machinery/door/airlock/hatch{req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"SF" = (/obj/structure/table/rack,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/syndicate/black/engie,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/syndicate/black/engie,/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SG" = (/obj/item/robot_parts/head,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SH" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SI" = (/obj/item/robot_parts/l_leg,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SJ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SK" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/portable_atmospherics/hydroponics,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SL" = (/obj/machinery/floodlight,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SM" = (/obj/item/device/suit_cooling_unit,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SN" = (/obj/structure/table/rack,/obj/item/weapon/gun/launcher/crossbow,/obj/item/stack/rods{amount = 10},/obj/machinery/light/small{dir = 8},/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"SO" = (/obj/structure/table/rack,/obj/item/weapon/grenade/empgrenade,/obj/item/weapon/grenade/flashbang,/obj/item/weapon/grenade/spawnergrenade/manhacks,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"SP" = (/obj/structure/table/steel,/obj/machinery/recharger,/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"SQ" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SR" = (/obj/item/robot_parts/robot_suit,/obj/item/robot_parts/r_leg,/obj/item/robot_parts/r_arm,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SS" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"ST" = (/obj/machinery/door/airlock/hatch{req_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SU" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"SV" = (/obj/structure/table/steel,/obj/item/clothing/glasses/regular,/obj/item/clothing/glasses/regular,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"SW" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"SX" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SY" = (/obj/item/weapon/wrench,/obj/item/weapon/mop,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SZ" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/item/weapon/crowbar,/obj/item/device/suit_cooling_unit,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Ta" = (/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/tank/air{dir = 1; start_pressure = 740},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Tb" = (/obj/machinery/portable_atmospherics/hydroponics,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Tc" = (/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) +"Td" = (/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) +"Te" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Tf" = (/obj/structure/table/steel,/obj/item/weapon/deck/cards,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Tg" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Th" = (/obj/machinery/bodyscanner{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"Ti" = (/obj/machinery/light/small{dir = 1},/obj/machinery/body_scanconsole,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"Tj" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"Tk" = (/obj/structure/toilet{dir = 4},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Tl" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/item/weapon/tank/nitrogen,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Tm" = (/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/tank/air{dir = 1; start_pressure = 740},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Tn" = (/turf/unsimulated/wall,/area/wizard_station) +"To" = (/obj/structure/sink,/turf/unsimulated/wall,/area/wizard_station) +"Tp" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "diagonalWall3"},/area/skipjack_station/start) +"Tq" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Tr" = (/obj/structure/table/steel,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Ts" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"Tt" = (/turf/space,/turf/simulated/shuttle/wall{dir = 4; icon_state = "diagonalWall3"},/area/skipjack_station/start) +"Tu" = (/obj/structure/bookcase{name = "Forbidden Knowledge"},/obj/effect/decal/cleanable/cobweb,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Tv" = (/obj/structure/bookcase{name = "Forbidden Knowledge"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Tw" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Tx" = (/obj/machinery/librarycomp,/obj/structure/table/woodentable,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Ty" = (/obj/structure/table/woodentable,/obj/item/weapon/book/manual/security_space_law,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Tz" = (/obj/structure/table/woodentable,/obj/item/weapon/book/manual/nuclear,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"TA" = (/obj/structure/table/woodentable,/obj/effect/landmark{name = "Teleport-Scroll"},/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"TB" = (/obj/structure/table/woodentable,/obj/item/weapon/paper{info = "\[center]\[b]LIST OF SPELLS AVAILABLE\[/b]\[/center]\[br]\[br]Magic Missile:\[br]This spell fires several, slow moving, magic projectiles at nearby targets. If they hit a target, it is paralyzed and takes minor damage.\[br]\[br]Fireball:\[br]This spell fires a fireball at a target and does not require wizard garb. Be careful not to fire it at people that are standing next to you.\[br]\[br]Disintegrate:\[br]This spell instantly kills somebody adjacent to you with the vilest of magick. It has a long cooldown.\[br]\[br]Disable Technology:\[br]This spell disables all weapons, cameras and most other technology in range.\[br]\[br]Smoke:\[br]This spell spawns a cloud of choking smoke at your location and does not require wizard garb.\[br]\[br]Blind:\[br]This spell temporarly blinds a single person and does not require wizard garb.\[br]Forcewall:\[br]This spell creates an unbreakable wall that lasts for 30 seconds and does not require wizard garb.\[br]\[br]Blink:\[br]This spell randomly teleports you a short distance. Useful for evasion or getting into areas if you have patience.\[br]\[br]Teleport:\[br]This spell teleports you to a type of area of your selection. Very useful if you are in danger, but has a decent cooldown, and is unpredictable.\[br]\[br]Mutate:\[br]This spell causes you to turn into a hulk, and gain telekinesis for a short while.\[br]\[br]Ethereal Jaunt:\[br]This spell creates your ethereal form, temporarily making you invisible and able to pass through walls.\[br]\[br]Knock:\[br]This spell opens nearby doors and does not require wizard garb.\[br]"; name = "List of Available Spells (READ)"},/obj/item/clothing/glasses/regular,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"TC" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/backpack/satchel/withwallet,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"TD" = (/obj/structure/toilet{pixel_y = 8},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) +"TE" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) +"TF" = (/obj/structure/mirror{pixel_y = 28},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) +"TG" = (/obj/structure/shuttle/engine/propulsion,/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/skipjack_station/start) +"TH" = (/obj/structure/table/standard,/obj/item/weapon/legcuffs,/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) +"TI" = (/obj/structure/table/standard,/obj/item/weapon/deck/cards,/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) +"TJ" = (/obj/machinery/light/small,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"TK" = (/obj/structure/table/standard,/obj/item/weapon/circular_saw{pixel_y = 8},/obj/item/weapon/hemostat,/obj/item/weapon/scalpel,/obj/item/stack/medical/advanced/bruise_pack,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"TL" = (/obj/structure/simple_door/wood{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"TM" = (/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"TN" = (/obj/effect/landmark/start{name = "wizard"},/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"TO" = (/obj/structure/simple_door/iron,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"TP" = (/obj/machinery/shower{icon_state = "shower"; dir = 8},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) +"TQ" = (/obj/machinery/optable,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"TR" = (/obj/structure/table/standard,/obj/item/weapon/cautery,/obj/item/weapon/retractor,/obj/item/weapon/reagent_containers/glass/bottle/stoxin,/obj/item/weapon/reagent_containers/glass/bottle/stoxin,/obj/item/weapon/reagent_containers/syringe,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"TS" = (/obj/structure/bookcase{name = "bookcase (Tactics)"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"TT" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/obj/structure/closet/coffin,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"TU" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green{on = 0; pixel_x = -3; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/flask/barflask,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"TV" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) +"TW" = (/obj/item/weapon/bedsheet/rainbow,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"TX" = (/obj/item/weapon/bedsheet/hos,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"TY" = (/obj/structure/table/standard,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel,/obj/item/weapon/FixOVein,/obj/item/stack/nanopaste,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"TZ" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/bag/cash,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Ua" = (/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Ub" = (/obj/item/weapon/bedsheet/rd,/obj/structure/bed/padded,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Uc" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/red,/obj/item/clothing/shoes/sandal,/obj/item/clothing/head/wizard/red,/obj/item/weapon/staff,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Ud" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/marisa,/obj/item/clothing/shoes/sandal/marisa,/obj/item/clothing/head/wizard/marisa,/obj/item/weapon/staff/broom,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Ue" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/magusblue,/obj/item/clothing/head/wizard/magus,/obj/item/weapon/staff,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Uf" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Ug" = (/obj/structure/toilet{dir = 4},/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) +"Uh" = (/obj/item/weapon/bedsheet/orange,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Ui" = (/obj/item/weapon/bedsheet/green,/obj/machinery/light/small{dir = 4},/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Uj" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"Uk" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/adv{pixel_x = 1},/obj/item/weapon/storage/firstaid/toxin{pixel_x = 3; pixel_y = 3},/obj/machinery/light/small{dir = 4},/obj/structure/closet/secure_closet/medical_wall{pixel_x = 32; pixel_y = 0; req_access = list(150)},/obj/item/weapon/storage/firstaid/fire{pixel_x = 1},/obj/item/weapon/storage/firstaid/o2{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/regular,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"Ul" = (/obj/structure/bookcase,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Um" = (/obj/machinery/vending/magivend,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Un" = (/obj/structure/simple_door/wood{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Uo" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Up" = (/obj/item/weapon/bedsheet/rd,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Uq" = (/obj/item/pizzabox/meat,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Ur" = (/obj/item/weapon/bedsheet/clown,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Us" = (/obj/structure/table/woodentable,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Ut" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/backpack/cultpack,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Uu" = (/obj/structure/table/woodentable,/obj/item/clothing/glasses/monocle,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Uv" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/backpack,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Uw" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/under/psysuit,/obj/item/clothing/suit/wizrobe/psypurple,/obj/item/clothing/head/wizard/amp,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Ux" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/shoes/sandal/marisa{desc = "A set of fancy shoes that are as functional as they are comfortable."; name = "Gentlemans Shoes"},/obj/item/clothing/under/gentlesuit,/obj/item/clothing/suit/wizrobe/gentlecoat,/obj/item/clothing/head/wizard/cap,/obj/item/weapon/staff/gentcane,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Uy" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/magusred,/obj/item/clothing/head/wizard/magus,/obj/item/weapon/staff,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Uz" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 4},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UA" = (/obj/structure/table/woodentable,/obj/item/weapon/dice/d20,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UB" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/cups,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UC" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 8},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UD" = (/obj/item/target,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) +"UE" = (/obj/item/target/syndicate,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) +"UF" = (/obj/item/target/alien,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) +"UG" = (/turf/unsimulated/wall/fakeglass{dir = 1; icon_state = "fakewindows"},/area/wizard_station) +"UH" = (/obj/structure/table/rack,/obj/item/weapon/material/knife/ritual,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"UI" = (/obj/structure/kitchenspike,/obj/structure/table/marble,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"UJ" = (/obj/structure/table/woodentable,/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/snacks/milosoup,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UK" = (/obj/structure/table/woodentable,/obj/item/weapon/dice,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UL" = (/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) +"UM" = (/turf/unsimulated/wall/fakeglass,/area/wizard_station) +"UN" = (/obj/structure/table/woodentable,/obj/item/device/megaphone,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UO" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/donut,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UP" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/snacks/chawanmushi,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UQ" = (/obj/structure/table/woodentable,/obj/item/weapon/spacecash/c1,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UR" = (/obj/item/weapon/book/manual/robotics_cyborgs,/obj/structure/table/glass,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) +"US" = (/obj/item/robot_parts/head,/obj/structure/table/glass,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) +"UT" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) +"UU" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows"; dir = 8},/area/wizard_station) +"UV" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows2"; dir = 8},/area/wizard_station) +"UW" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows"; dir = 4},/area/wizard_station) +"UX" = (/obj/effect/decal/remains/human,/turf/unsimulated/floor{tag = "icon-lava"; name = "plating"; icon_state = "lava"},/area/wizard_station) +"UY" = (/turf/unsimulated/floor{tag = "icon-lava"; name = "plating"; icon_state = "lava"},/area/wizard_station) +"UZ" = (/turf/unsimulated/floor{icon_state = "asteroid"; tag = "icon-ironsand7"},/area/wizard_station) +"Va" = (/mob/living/simple_animal/crab{name = "Experiment 68a"},/turf/unsimulated/floor{icon_state = "asteroid"; tag = "icon-ironsand7"},/area/wizard_station) +"Vb" = (/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/wizard_station) +"Vc" = (/obj/structure/flora/ausbushes/fullgrass,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/wizard_station) +"Vd" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) +"Ve" = (/mob/living/carbon/human/monkey{name = "Murphey"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) +"Vf" = (/mob/living/simple_animal/hostile/creature{name = "Experiment 35b"},/turf/unsimulated/floor{tag = "icon-lava"; name = "plating"; icon_state = "lava"},/area/wizard_station) +"Vg" = (/obj/structure/flora/ausbushes/grassybush,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/wizard_station) +"Vh" = (/mob/living/simple_animal/hostile/retaliate/goat{name = "Experiment 97d"},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/wizard_station) +"Vi" = (/obj/item/weapon/caution,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) +"Vj" = (/obj/item/weapon/material/knife/ritual,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) + (1,1,1) = {" aaabacadaeafagahaaaiajakalamanaoagafajacadahakaeamaiaoalahajapaqarasatauavawaxayaaabacadaeafagahaaaiajakalamanaoagafajacadahakazaAaBaCaDaEaFaGaHaIaJaKaLaMaNaOaAaBaCaDaEaFaGaHaIaJazaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaQaQaQaQaQaQaQaQaQaQaQaQaQaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaR ajaTaUaVaWaXaYaZbabbbcbdbebfbgbhaYaXbcaUaVaZbdaWbfbbbhbeaZbcabauavawbibjbkblbmbeaXbfaZbcbbbhbeaXbfaZbcbbbhbhbeaXbfaZbcbbbhbhbmazaEbnbobpaqarasatauavawbibjbkblbqbnbobpaqarasatauaNazaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaQbrbsaQbrbsaQbrbsaQbrbsaQaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPbtbubububvbububububububwbxbybxbybxbxbybxbybxbwbzbAbAbAbAbAbAbAbAbAbwbBbCbDbDbDbDbDbDbDbDbwbEbEbEbEbEbEbEbEbEbEbwbFbFbFbFbFbFbFbFbFbFbwbGbHbIbJbKbKbKbKbKbLbM @@ -2587,127 +2587,126 @@ aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaP aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwondaPaPAzAAABAzAAAAACADAEAAAFAGndndwoAHwIwIxwAbykAlyHzwAIAJAKxwALAMyFykAozyzMzMANzyAOzPAPzPAiAjzPArAsAtzPzywrwrwrwrwrwrwrwrwrwqwrwrwrwrAxAxAywrwrAQwrARwrwrARwrAxsozHzHsowrwrsoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmj aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwnaPaPAzASATAUAVAWAXAWAWAWAXAYAZwnwnwnwIwIwIxwAlAlxMxMxMxMxMxMxwxMBaykBbBczyBdzMANzyAOzPzPzPBeAjzPArBfAtzPzywrwrwrwrwrwrwrwrwrwqBgzDwrwrwrwrwrBhwrsozUBiBjAxBkwrAksozHzHsowrwrsoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmj aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwnaPaPBlBmBnBmBoBmBmBmBmBmBmBmBpBqyhBqwIwIwIxwAMykBrBsBsBsBsBsBtxMxMBuxMxMzyzyzyzyzyAiAiAiAiAiAjzPArBvAtzPzywqwqBwwqwqsowKwrwrsoBxzDwrwrwrwrwrsosososowqwqwqwqwqsosoByBysowrwrsoaPaPaPaPBzBzBzBzBzBzBzBzBzBzBzBzBzBzBzBzBzBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmj -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwondndndaPaPaPaPaPaPaPaPaPaPaPndndndwowIwIwIwnaPaPBABBBCBDAVBEBFBEBEBEBFBGBHwnwnwnwIwIwIxwBaykykykykykykykBrBsBIykBrBJBKzyzPzPzPAjAjAjAjAjzPzPzPzPzPzPzyBLBMwrBNBOsoBPBQBRByByBSBysowqBTwqsoBUBUBUBVBWBWBWBZBXBUBUBywKwrwrsoaPaPaPBzBzCaCaCaCaCaCaCbCbCbCaCaCaCaCbCbCbCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmj -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwondaPaPBAAACdBAAAAAACADAEAACeCfndndwowIwIwIxwBaykykzJzJzJzJzJykykykykykzJCgzyChzPzPzPzPzPzPzPzPzPzPzPzPChzywrwrwrwrwrsowrwrwrCiBUBUCjsowrwrwrsoBUBUBUBVBYBYBYBZBUBUBUBywrwrwrsoaPaPaPBzCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPCnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmj -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwowowowowoxcndndndndndndndndndndndaPwnwIwIwIxwBaykykCoCoCoCoCoykykykykykykAozyAszPArAsAsAtzPzPArAsAsAtzPAszywrwrwrwrwrsowrwrwrCiCpCqCrsowrwrwrsoBUBUBUCsCtCkCvCwBUBUBUBywrwrwrsoaPaPaPBzCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmj -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwondaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIxwBaykykzgykykykzgykBbCxAMykykAozyCyzPArBvBfAtzPzPArBvBfAtzPCyzywrCzCACBCCsowqCDwqByCECFBysoCGCHCIsoBUBUBUBUBUBUBUBUBUBUBUBywrwrwrsoaPaPaPBzCaCaCaCJBzBzBzCcCcCcBzCKCKBzCcCcCcBzBzBzBzCcCcCcBzBzCcCcCcBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmj -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwoCLCLCLwowoaPndaPaPaPaPaPaPaPaPaPaPaPndaPwowoCLCLCLwowoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowoCLCLCLxwBaykBbAMykykBbCxAMAoxwxwCMCMxwzyChzPzPzPzPzPzPzPzPzPzPzPzPChzyCNsososososoBUBUBUByCiCiBysososososoBUBUBUBUBUBUBUBUBUBUBUBywrwrwrsoaPaPaPBzCOCaCaBzBzCPCQCRCQCRCSCTCTCUCRCQCRCQCVCWCWCWCWCWCWCWCWCWCWBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPmj -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowICXwIwIwowondaPaPaPaPaPaPaPaPaPaPaPndwowowICYCZDawIwowoaPaPaPaPaPaPaPaPaPaPaPaPaPwowowIwICZDaxwBIykAoxwBuBuxwxwBaAoxwDbykykDczyAszPArAsAsAtzPzPArAsAsAtzPAszysosoBUBUBUBUBUBUBUBUBUBUBUByBysosoByBUBUBUBUBUBUBUBUBUBUBUBywrwrwrsoaPaPaPBzCOCaCaBzCPDdDeDeDeDeDfDgDgDhDeDeDeDfDiCVDjDjDjDjDjDjDjDjDjBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIDkwIwIwHwowoaPaPaPaPaPaPaPaPaPaPaPwowowHwIwIDlwIwIwHwowoaPaPaPaPaPaPaPaPaPaPaPwowowHwIwIDmDaAlykykAoxwAMykAoxwBaAoxwDnykykDczyCyzPArBvBfAtzPzPArBvBfAtzPCyzysoDoBUBUBUBUBUBUBUBUBUBUBUDoByBysoByDpBUBUBUBUBUBUBUBUBUDpBywKwrwrBzBzBzBzBzCOCaCaCcDqDrDgDgDgDgDgDgDgDgDgDgDgDgDsDqDtDtDtDtDtDtDtDtDtBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwIDmwIwIwIwIwowowowownwnwnwnwnwowowowowIwIwIDmCZDuwIwIwIwowowowownwnwnwnwnwowowowowIwIwIwICZwIAlykykAoxwBaykDvxwBaAoxwDwykykDczyzyDxDxDxDxzyDyDyzyDxDxDxDxzyzyBUBUBUBUDzDADBDBDBDCDDBUBUBUBUByByByByByByByBUBUBUByByByByBysowrwrDECaCaCaBzCOCaCaCcDFDrDgDgDgDgDgDgDgDgDgDgDgDgDsDFDjDjDjDjDjDjDjDjDjBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIDGyhDHDGyhDIDJDKyhDHDGyhDHwIwIwIwIwIwIwIwIwIDGyhDHDGyhDIDJDKyhDHDGyhDHwIwIwIwIwIwIxwDLykBrxMBaDMDNxMBIBrxwDOCxCxDPxwDQDRDSDRDSCiBUBUCiDRDTDRDRDUByBUBUBUDVDWDXDXDXDXDXDYDZBUBUBUByDRDSDRDQDSCiBUBUBUCiDSDRDREasowrwrBzEbCaEcCcCOCaCaBzDiCVEdEdEdEdEeDgDgEfEdEdEdEeCPDdDtDtDtDtDtDtDtDtDtBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIDGyhDHDGyhDIEgDKyhDHDGyhDHwIwIwIwIwIwIwIwIwIDGyhDHDGyhDIEgDKyhDHDGyhDHwIwIwIwIwIwIxwxwAlAlxMEhEixMxMAlAlxwxwxwxwxwxwCiCiCiCiCiCiBUBUCiCiCiCiCiCiByBUBUEjEkDXDXDXDXDXDXDXElDDBUBUByCiCiCiCiCiCiBUBUBUCiCiCiCiCiByEmEmBzCaEnEoCcCOCaCaBzBzDiCQCRCQCRCSCTCTCUCRCQCRCQDdCWCWCWCWCWCWCWCWCWCWBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnEpEqwnwIwIwIwIErEsEtErEsEuEvEwEsEtErEsEtwIwIwnExEpEqwnwIwIErEsEtErEsEuEvEwEsEtErEsEtwIwIwIwIwIwIwIwIwIwIBUBUBUBUEyBUBUEyBUBUBUDoByDoBUBUBUBUBUBUBUBUBUBUBUBUDoByBUBUEzDXDXDXEAEBECDXDXDXEzBUBUByDpBUBUBUBUBUBUBUBUBUBUBUBUDpByBUBUCcEDEECcBzCaCaCaCJBzBzBzCcCcCcBzEFEFBzCcCcCcBzBzBzBzCcCcCcBzBzCcCcCcBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnEGyhEHwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIEIEJEGyhEKwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIBUBUBUBUEyBUBUEyBUBUBUBUELBUBUBUBUBUBUBUBUBUBUBUBUBUBUELBUBUEMDXDXEAENENENECDXDXEOBUBUELBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUEPCaCaCaEQCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPERmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdCnmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmd -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnyhyhESwIwIwIwIwIwIwIwIwIwIETwIwIwIwIwIwIwIwIEUEVwoyhESwIwIwIwIwIwIwIwIETwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwICiBUBUBUByBUBUByBUBUBUBUELBUBUBUBUBUBUBUBUBUBUBUBUBUBUELBUBUEMDXDXEWENEXENEYDXDXEOBUBUELBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUCcCaCaCaCcCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnEZyhFawIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIFbyhEZyhFawIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIBUBUBUBUEyBUBUEyBUBUBUBUELBUBUBUBUBUBUBUBUBUBUBUBUBUBUELBUBUEMDXDXFcENENENFdDXDXEOBUBUELBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUEPCaCaCaEQCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnFeFfwnwIwIwIwIFgFhFiFgFhFjFkFlFhFiFgFhFiwIwIwnFmFeFnwnwIwIFgFhFiFgFhFjFkFlFhFiFgFhFiwIwIwIwIwIwIwIwIwIwIBUBUBUBUEyBUBUEyBUBUBUDoByDoBUBUBUBUBUBUBUBUBUBUBUBUDoByBUBUFoDXDXDXFcFpFqDXDXDXFrBUBUByDpBUBUBUBUBUBUBUBUBUBUBUBUDpBzFsFsBzBzBzBzBzCaCaCaCJBzBzBzCcCcCcBzCKCKBzCcCcCcBzBzBzBzCcCcCcBzBzCcCcCcBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIDGyhDHDGyhDIEgDKyhDHDGyhDHwIwIwIwIwIwIwIwIwIDGyhDHDGyhDIEgDKyhDHDGyhDHwIwIwIwIwIwIFtFtFuFuClFvFvFvFtFuFuFtFtFvFvFtFtCiCiCiCiCiCiBUBUCiCiCiCiCiCiByBUBUFwFxDXDXDXDXDXDXDXFyFzBUBUByCiCiCiCiCiCiBUBUCiCiCiCiCiCiBzFAFAFBFCFDFECcCOCaCaBzBzCPCQCRCQCRCSCTCTCUCRCQCRCQCVCWCWCWCWCWCWCWCWCWCWBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIDGyhDHDGyhDIDJDKyhDHDGyhDHwIwIwIwIwIwIwIwIwIDGyhDHDGyhDIDJDKyhDHDGyhDHwIwIwIwIwIwIFtFFFGFGFHFIFJFJFKFGFLFtFMFNFOFPFtDTDQDRDSDSCiBUBUCiEaFQDSDRDRByBUBUBUFRFSDXDXDXDXDXFyDWBUBUBUByFTDRDQDRDSCiBUBUCiDRDSDRFUFQBzFAFAFAFAFAFACcCOCaCaBzCPDdDeDeDeDeDfDgDgDhDeDeDeDfDiCVDjDjDjDjDjDjDjDjDjBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwIFVFVwIwIwIwowowowownwnwnwnwnwowowowowIwIwIDkCZDuwIwIwIwowowowownwnwnwnwnwowowowowIwIwICYCZwIFuFGFGFGFGFGFGFGFGFGFWFtFXFGFYFZFtGaGbGbGbGbGaGcGcGaGbGbGbGbGaGaBUBUBUBUFwDAGdGdGdDCFzBUBUBUBUGeGeGeGeGeGeGeGfGfGeGeGeGeGeGeBzFAFAFAFAFAFABzCOCaCaCcDqDrDgDgDgDgDgDgDgDgDgDgDgDgDsDqDtDtDtDtDtDtDtDtDtBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowICZFVwIwHwowoaPaPaPaPaPaPaPaPaPaPaPwowowHwIDmCZDawIwHwowoaPaPGgGhGiGiGiGjGkaPaPwowowHwIDkCZDaFuFGFGGlGmFGFGGlGmFGFWFtGnFGFGGoFtGpGqGqGqGqGqGqGqGqGqGqGqGqGpGaByDoBUBUBUBUBUBUBUBUBUBUBUDoByGeGrGsGsGsGsGtGtGtGtGsGsGsGsGrBzFAFAGuGvFAGuCcCOCaCaCcDFDrDgDgDgDgDgDgDgDgDgDgDgDgDsDFDjDjDjDjDjDjDjDjDjBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIDuwIwowondaPaPaPaPaPaPaPaPaPaPaPndwowowIDmCZwIwIwowondaPGgGwGxGyGzGAGBGCGkaPndwowowIwICZwIFtGDFGGlGmFGFGGlGmFGFWFtGEFGFYFZFtGqGqGqGqGqGqGqGqGqGqGqGqGqGqGaByByBUBUBUBUBUBUBUBUBUBUBUByByGeGtGtGtGtGtGtGtGtGtGtGtGtGtGtBzFAFAGuGvFAGuCcCOCaCaBzDiCVEdEdEdEdEeDgDgEfEdEdEdEeCPDdDtDtDtDtDtDtDtDtDtBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwoCLCLCLwowoaPndaPaPaPaPaPaPaPaPaPaPaPndaPwowoCLCLCLwowoaPndGgGwGFGGGHGGGHGGGIGCGkndaPwowoCLCLCLFtGJFGGlGmFGFGGlGmFGFWFtGKGLGMGNFtGqGqGOGPGQGRGqGqGOGSGTGRGqGqGaaPByByByByByBUByBUByByByByByaPGeGtGUGUGUGUGtGtGtGtGUGUGUGUGtBzFAFAGuGvFAGuBzCOCaCaBzBzDiCQCRCQCRCSCTCTCUCRCQCRCQDdCWCWCWCWCWCWCWCWCWCWBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwnaPaPndGVGHGHGHGWGXGYGHGHGHGVndaPaPwnwIwIwIFtGJFGFGFGFGFGFGFGFGFWFtFtFXGZHaFtGqGqGOHbHcGRGqGqGOHdHeGRGqGqGaaPaPByHfHgBUBUDXBUBUHgHhByaPaPGeGtGtGtGtGtGtGtGtGtGtGtGtGtGtBzFAFAGuGvFAGuCcCaCaCaCJBzBzBzCcCcCcBzEFEFBzCcCcCcBzBzBzBzCcCcCcBzBzCcCcCcBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwnaPaPndHiHjHkHlHmHnHmHoHpHqHindaPaPwnwIwIwIFtGJFGFGFLHrHrHrHrHrHsFtHtFKFHHuFtGqGqGqGqGqGqGqGqGqGqGqGqGqGqGaaPaPByHfHgBUBUDXBUBUHgHhByaPaPGeGrGsGsGsGsGtGtGtGtGsGsGsGsGrBzFAFAGuGvFAGuCcCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwnaPaPndHiHvGVHwHxHyHxHzGVHvHindaPaPwnwIwIwIFtFvHAFGFtHBHCHDHEHCHFFtGJFGFGHGFtGqGqGOHHHIGRGqGqGOHJHKGRGqGqGaaPaPByHLBUBUBUDXBUBUBUHMByaPaPGeGeGeGeGeGeGeGfGfGeGeGeGeGeGeBzFAFAGuGvFAGuBzCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwondndndaPaPaPaPaPaPaPaPaPaPaPndndndwowIwIwIwondndndHiGHHpHiHNHOHPHiHkGHHindndndwowIwIwIFtGJFGFGHQFKHRFGFGHRFHHSFKFGFGHTFtGqGqGOHUHVGRGqGqGOHWHXGRGqGqGaaPaPByHfHgBUBUDXBUBUHgHhByaPaPGeHYHZHZHZHZHYHYHYHYIaIbIbIbIcBzFAFAGuGvFAGuBzBzCaCaCaCaCaCaIdIdIdCaCaCaCaIdIdIdCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPGVGHHpIeIfIgIhIeHkGHGVaPaPaPwowIwIwIFtGJFGFGFGFGFGFGFGFGFGFGFGFGFGIiFtGqGqGqGqGqGqGqGqGqGqGqGqGqGqGaaPaPByHfHgBUBUDXBUBUHgHhByaPaPGeHYHYHYHYHYHYHYHYHYHYHYHYHYHYBzFAFAFAFAFAFABzBzBzCcCcCcBzCcCcCcBzCcCcCcBzCcCcCcBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPGgGwHjHpIjIfIkIhIjHkHqGCGkaPaPwowIwIwIFtGJFGFGFGFGFGFGFGFGFGFGFGFGFGHTFtGqGqGqGqGqGqIlIlIlIlIlIlIlIlGaaPaPImImImInInIoInInImImImaPaPGeIpGeIqGeIrGeHYHYGeIsGeItGeIuBzFAFAFAFAFAFACcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwnwnwnIvIwGHHpIxGVIyGVIzHkGHIwIvwnwnwnwIwIwIFtGJFGFLHrHrHrGDFLHrHrGDFGFGFGIiFtIAIBIBGqGqICIDIDIDIEIDIDIDIDGaaPaPImIFIGInIGIGIGInIGIFImaPaPGeIHGeIHGeIHGeHYHYGeIHGeIHGeIHBzFAFAIIIIIIIICcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaPaPaPaPaPaPaPaPaPaPaPaPaPyiyhygwIwIwIIJyhIJIKGHGHGHILIMGHGHILGHGHGHIKIJyhIJwIwIwIFtFvFGFWFvFvFvGJFWINHaGJFLIOIPIQFtIRISITGqGqICIUIVIVIVIVIVIVIVGaaPaPImIGIWIXIGIGIGIXIYIGImaPaPGeGeGeGeGeGeGeHYHYGeGeGeGeGeGeBzFAFAIZIZIZIZCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaPaPaPaPaPaPaPaPaPaPaPaPaPyiyhygwIwIwIIJyhIJJaGHGHGHGHGHGHGHGHGHGHGHJaIJyhIJwIwIwIFtJbFGFHJcJdJeFKFHJfFtJgJhFtFtFtFtJiJjJkGqGqICIVIVIVIVIVIVIVIVGaaPaPImInIGInIGIGIGInIGInImaPaPGeJlHYJlHYJlIaHYHYJmJlHYJlHYJlBzFAFAFAFAFAFACcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwnwnwnIvJnGHHpIeHkGHHpIeHkGHJoIvwnwnwnwIwIwIFtJbFGFGFGFGFGFGFGJpFtJgJqJrJrJsFtJtJuJvGqGqIVIVIVJwJxJyJzIVIVGaaPaPImIGIGIGIGIGIGIGIGIGImaPaPGeHYHYHYHYHYHYHYHYHYHYHYHYHYHYBzJAFAFAFAFACcCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPIeHkGHHpJBHkGHHpJBHkGHHpIeaPaPwowIwIwIFtJbFGFGFGJCJDFGFGJEFtJgFGJFJGJHFtGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaImImImIGIGIGIGIGIGIGIGIGImImImGeJIHYJIHYJIIaHYHYJmJIHYJIHYJIBzCcCcCcCcCcCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwondndndndndndndndndndndndndndndndndwowIwIJJwoaPaPJBHkGHHpJBHkGXHpJBHkGHHpJBaPaPwowIwIwIFtJKFGFGFGFGFGFGFGJLFtJgFGFGJMJHFtJNJOJOJOJPImIGIGIGIGIGIGIGIGIGIGIGImImJQImImIGImImJQImImIGIGImImImGeGeGeGeGeGeGeGeGeGeGeGeGeaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPIjHkGHHpJBHkGHHpJBHkGHHpIjaPaPwowIwIwIFtJRFGFGFGJSJTFGFGJUFtJVJWFGJXJYFtJZFGFGFGKaImIGImImImImKbImImImIGIGIGIGIGIGImIGImIGIGIGIGIGIGIGIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwnwnwnIvKcGHHpIjHkGHHpIjHkGHKdIvwnwnwnwIwIwIFtGJFGFGFGFLHrGDFGKeFtFtFtKfFtFtFtJZFGFGFGKaImIGImKgKhKhKhKhKiImImImImImImImImKjImImImImImImImImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaPaPaPaPaPaPaPaPaPaPaPaPaPyiyhygwIwIwIIJyhIJIKGHGHGHGHGHGHGHGHGHGHGHIKIJyhIJwIwIwIFtGJFGFLHrKkFtFtKlFtFtKmKnFGJqKoFtKnFGFGFGKpImIGImKgKhKhKhKhKiImKqKrKsKrKtKuKuKuKuKuKtKuKtKuKvImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaPaPaPaPaPaPaPaPaPaPaPaPaPyiyhygwIwIwIIJyhIJJaGHGHKwGHGHGHGHGHKwGHGHKxIJyhIJwIwIwIFtFtKyFtINFtFtKzFGKAFtJgFGFGFGFGKBFGFGKCFGKDImIGImKEKhKhKhKhKFImKuKGKGKGKGKGKuKuKuKGKGKGKGKHKIImIGImImImImImImImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwnwnwnKJGVKKKLGhGjKMGhGjKLKKGVKNwnwnwnwIwIwIFtKOFGKPKQKRFtKSFGKTFtKUKVKWKXKYFtKZLaLaLaLbImIGImKELcLdLdKhKhLeKuKuLfLgLfKuKuKuKuKuLfLgLfLhKuImIGIGIGIGIGIGIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPndndndndndndndndndndndaPaPaPwowIwIwIwoaPaPIvLiLjIvLkLlLmLnLoIvLpLqIvaPaPwowpwpwpFtKOFGLrLsLtFtLuFGLvFtFtFtFtFtFtFtFtFtFtFtImImIGImImImImImImImImKuKGKGKGKGKGKuKuKuKGKGKGKGLwKuImImImImImImImIGImImImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwondndndndaPaPaPaPaPaPaPaPaPndndndndwowIwIwIwondndIvLxLxIvLyLzLmLmLAIvLxLxIvndndwowIwIwIFtFtLBFtFvFvFtFtKlFtFtLCLDLEFvLFLGJcLHLHLIImIGIGImImLJLJLJLJLJImLKLKLKLKLKLKLKLKLKLKLKLKLKLLLKImLMLMLMLMLMImIGIGIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPxcwnwnwnxcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPxcwnwnwnxcaPaPIvLNLOIvLPLmLQLRLSIvLTLUIvaPaPxcwIwIwIFtLVFGKPLWLXFtGJFGFHJcFKFGFHFvFKFGFGFGFGFWImIGImImImLYLYLYLYLYImLZMaMaMaMaMaMaMaMaMaMaMaMaMbLZImLYLYLYLYLYImImImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwFwGwFwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwFwFwFwnaPaPKJMcMcIvMdMeLmMfMgIvMcMcKNaPaPwnwIwIwIFtMhFGFGFGMiFtGJFGFGFLHrFGFGMjFGFGFGFGFGFWImIGImMkMlMmMmMmMmMmMnMaMaMaMaMaMaMaMaMaMaMaMaMaMbMaMnMoMoMoMoMoMlMpImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwnwnaPaPMqMrMrMsKLMcMcMcKLMsMrMrMtaPaPwnwIwIwIFtMuFGFGKCMvFtMwFGFGFWMxFGMyFvGDFGFYFGFGFWImIGImMkMlMmMzMmMzMmMnMaMaMaMaMaMaMaMaMaMaMaMaMaMbMaMnMoMAMoMAMoMlMpImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPMqMrMrMrMtaPaPaPaPaPaPwowIwIwIFtKOFGFGFGMBFtMCFGFGMDMEFGMFFvMGMHMIMJMJMKImIGImMkMlMmMmMLMmMmMnMaMaMaMaMaMaMaMMMaMaMaMaMaMbMaMnMoMoMNMoMoMlMpImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIFtMOMPMQMRMSFtMTMUMVMWMXHrKkFtFtFtFtFtFtFtImIGImMkMlMmMmMmMmMmMnMaMaMaMaMaMaMYMZMYMaMaMaMaMbMaMnMoMoMoMoMoMlMpImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIFtFtFtFtFtFtFtFtFtFtFtFtFtFtFtaPaPaPaPaPaPImIGImMkMlMmMzMmMzMmMnMaMaMaMaMaMaNaNbNcMaMaMaMaMbMaMnMoMAMoMAMoMlMpImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwoaPaPaPaPaPaPImIGImIGMlMmMmMmMmMmMnMaMaMaMaMaMaMaNdMaMaMaMaMaMbMaMnMoMoMoMoMoMlIGImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwoaPaPaPaPaPaPImIGImNeImNfNfNfNfNfImLZMaMaMaMaMaMaNdMaMaMaMaMaMbLZImNfNfNfNfNfImNeImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwJwIwIwIwIwIwIwIwIwIwIwIwIwIwIwJwoaPaPaPaPaPaPImIGIGIGImNgNgNgNgNgImLKLKLKLKLKLKNhNiNhLKLKLKLKLLLKImNjNjNjNjNjImIGIGIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwnwnwowowowownwnwnwnwoNkNkwowoaPaPaPaPaPaPImImImIGImImImImImImImNlNmNmNmNmNmNnNoNlNmNmNmNmNpNlImImImImImImImIGImImImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowpwpwoaPaPaPaPaPaPaPaPaPImIGIGIGIGIGIGIGImNlNlNqNlNqNlNlNrNsNlNqNlNqNtNlImIGIGIGIGIGIGIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPImImImImImImImIGNuNlNlNlNvNvNvNlNlNlNvNvNvNvNvNlNuIGImImImImImImImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPImImImNwNwNwNxNyNzNANlNBNCNDNENFNGNHImImImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNININININININININININININININININININININIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPImImImImImImImImImImImImImImImImImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNKNJNJNJNLNLNLNJNJNLNLNLNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINMNJNJNJNJNJNJNJNJNJNJNJNJNJNJNJNJNJNNNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJNJNJNJNJNJNJNJNJNJNJNONJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJNJNJNJNJNJNJNJNJNJNJNMNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNPNPNPNPNPNPNPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJNJNQNONJNJNJNJNJNJNJNJNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNPNPNPNPNPNPNPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJNJNJNRNRNJNJNJNJNJNJNJNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNPNPNPNPNPNPNPNPNPaPNSNTNTNTNTNTNTNTNTNTNTNTNTNUwnwIwIwnNSNVNVNVNVNVNVNVNVNUaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJNJNRNWNXNRNJNJNJNJNJNJNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNYNVNVNVNVNZNTNTNTNZNTNTNTNZOaNPNPNPNPNPNPNPNPNPOaObOcOdOdOdOdOdOdOdOdOdOdOdObwowpwpwoObOeOfOgOhOhOiOjOkOlNUaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJNJNROmOnNRNJNJNQNJOoNJNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPOpOqOcOrOsObOtOtOtObOuOuOuObOaOvOvOvOvOvOvOvOvOvOaObOdOdOdOdOdOdOdOdOdOdOdOdOwOxOyOyOxOzOAOAOAOBOCODOAOAOEObaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJNJNJNRNRNJNJNJNJNJNJNJNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPOFOqOcOcOcObOtOtOtObOuOuOuObOaOvOvOvOvOvOvOvOvOvOaObOdOdOdOdOdOdOdOdOdOdOdOdObOGOHOHOGObOIOJOAOAOAOAOAOAOKObaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNONJNJNJNJNJNJNJNJNJNJNJNJNJNMNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPOFOqOcOcOcObOtOtOtObOuOuOuObOaOvOvOvOvOvOvOvOvOvOaObOdOdOdOdOdOdOdOdOdOdOdOdObOHOLOLOHObOAOAOAOMONOOOAOAOPOxNVNVNUaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNQNONJNJNJNJNJNJNJNJNJNJNJNJNONJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPOFOqOcOcOcObOtOtOtObOuOuOuObOaOvOvOvOvOvOvOvOvOvOaObOcOdOdOdOdOdOdOdOdOdOdOdObOHOLOLOHObOQOROAOSOTOUOAOAOAOAOAOVObaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJNJNJNJNJOWNJOXNJOXNJOYNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPOZOqOcOcOcObOtOtOtObOuOuOuObOaOvOvOvOvOvOvOvOvOvOaOwNVNVNVNVOxPaPaOxNVNVNVNVOzOHOLOLOHObPbOAOAOAOAOAOAOAOAOAOAOVObaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJPcNJNJNJNJNJNJNJNJNJNJNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNYNVNVOxPdOxPeOxPfOxPeOxPgOxPeOxOaOxPeOxPhOxPeOxOaOxOzPiOHOHOHOHPjOHOHOHOHOHOGObOHOLOLOHObOQOROAOAPkPkPlPmPmPnOxNVPoNVNUaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNIPpPpPpPpPpPpPpPpPpPpPpPpPpPpPpPpPpPpPpNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPPqOGOHOHOHOHOHOHPrOHOHOHPsOHOHOHOHOHOHOHPtOHOHPuPvPwOxOHOLOLOLOLOLOLOLOLOLOLOHOxOHOLOLOHOxPxPyPzPzPxPAPyOxNVNVOzPBOLPCPDaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPEPFPFPFPFPFPFPFPFPFPFPFPFPFPFPFPFPFPFPFPEaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPPqOHOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOHPGOHOLPHPHPHPHPHPHPHPHOLOHPGOHOLOLOHPGOHOHOHOHOHOHOHOHOHOHPIPJPKPLPMaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPPqOHOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLPPOLOLPQPQPQPQPQPQPQPQOLOLPPOLOLOLOLPPOLOLOLOLOLOLOLOLOLOHPROHOLPSPMaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPPqOHOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOHPGOHOLPJPJPJPJPJPJPJPJOLOHPGOHOLOLOHPGOHOHOHOHOHOHOHOHOHOHPIPHPKPTPMaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -mdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdaPaPaPaPaPaPaPaPaPaPPqOGOHOHOHOHOHOHPUOHOHOHPVOHOHOHPWOHOHOHPXOHOHOHOHOGOxOHOLOLOLOLOLOLOLOLOLOLOHOxOHOLOLOHOxPxPyPYPxPyNZPxPyPPPPOzPZOLQaQbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRaRaRaRaRaRaRaRaRaRaRQcQcQcQcQcQcQcQcQcQcQcQcQcQcQcQcQcQcQcQcQcaRaRaRaRaRaRaRmdaPaPaPaPaPaPaPaPaPaPQdNVNVOxPdOxNZOxQeOxNZOxQfOxNZOxQgOxNZOxQhOxNZOxQiOxOzOHOHOHOHOHQjOHOHOHOHOHOGObOHOLOLOHObQkQlQmQnQoObQpOLOLOLOxNVNZNVQqaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjmjmjmjmjmjmjmjQrQrQrQrQrQcQsQtQuQcQrQrQrQrQrQrQrQrQrQrQrmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPOpOqOcOcOcObQvQvQvQwQxQxQxQwQyQyQyQwQzQzQzObOLOLOLOwNVNVNVNVOxQAQAOxNVNVNVNVOzOHOLOLOHObQBQmQmQmQBObQCOLOLOLOLQDObaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjmjmjmjmjmjmjmjQrQrQrQrQrQcQEQtQtQcQrQrQrQrQrQrQrQrQrQrQrmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPOFOqOcOcOcObQvQvQvQwQxQxQxQwQyQyQyQwQzQzQzObOLOLOLObQFQFQFQFQFQFQFQFQFQFQFOcObOHOLOLOHObQGQHQmQmQmObQpOLOLQpOLQpObaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjmjmjmjQrQrQrQcQcQcQcQrQcQcQcQcQIQcQcQcQcQcQcQcQrQrQrQrQrmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPOFOqOcOcOcObQvQvQvQwQxQxQxQwQyQyQyQwQzQzQzObOLOLOLObQFQFQFQFQFQFQFQFQFQFQFQFObQJPHPHQJObPxPyQKPxPyObQCOLQpOxNVNVQqaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjQrQrQrQrQLQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQcQrQrQrQrQrmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPOFOqOcOcOcObQvQvQvQwQxQxQxQwQyQyQyQwQzQzQzObOLOLOLObQFQFQFQFQFQFQFQFQFQFQFQFObQMQMQMQMObQNQmQmQmQNObQpOLQCObaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjQrQrQtQLQLQLQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQcQOQPQrQrQrmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPOZOqOcQQQRObQvQvQvQwQxQxQxQwQyQyQyQwQzQzQzObQSQTQUObQFQFQFQFQFQFQFQFQFQFQFQFOwOxPxPyOxOzQmQmQmQmQmObQCOLQpObaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjQrQrQLQLQLQrQrQrQcQcQcQcQIQcQcQcQcQIQcQtQtQtQIQVQWQrQrQrmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPQdNVNVNVNVPeNTNTNTPeNTNTNTPeNTNTNTPeNTNTNTPeNVNVNVOzQFQFQFQFQFQFQFQFQFQFQFOcObaPaPaPaPObQNQmQNQmQNObQpOLQXQqaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjQrQLQLQrQrQrQrQrQrQrQrQcQtQtQEQcQYQtQcQtQtQtQIQVQZQrQrQcmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPQdNTNTNTNTNTNTNTNTNTNTNTNTQqaPaPaPaPQdNVNVNVNVNVPeNVNVQqaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjQrQLQrQrQrmjmjQrQcQcQcQcRaQtQsQcRaQsQcQtQtQtQcQVQVQVRbQcmjmjaRmjmjmjaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjQrQLQLQrmjmjmjQrRcRdRdQcQcQcQcQcQcQcQcQtQtQtQcQVQVQVReQcmjmjaRmjmjmjaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjQrQLQLQLQLQrQrmjmjQrRfRgRfQIQtQtQtQtQtQtQtQtQtQtQcRhRiRjQcQcmjmjaRmjmjmjaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNaR -aRmjRkQLQLQLQLQLQrmjmjQcRlRfRfQIQtQtQtQtQtQtQtQtQtQtQcQrQrQrQrQrmjmjaRmjmjmjaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaR -aRmjRmRnRoQLRpQLQLmjmjQcRlRqQcQcQcQcQcQcQcQcQcQcQIQcQcQcQcQcQcQcQcQcQcmjmjaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjRrQLRoQLRoQLQLmjmjQrQrQrQcQtQtQtQtQtQtQcRsRtRtRtRuQcQtQtQtQtQtQtQcmjaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjQrQLRoQLRvQLQLmjmjaPaPmjQcQtQsQtQtQtQtQcRtRtRwRtRtQcQtQtQtQtQsQtQcmjaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjQrRxQLQLQLRyQLmjmjaPaPmjQcQtQtQtQtQtQtQIRtRtRzRtRtQIQtQtQtQtQtQtQcmjaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjQrQrQLQLQLQLQrmjmjncaPaPQcQtQtQcRARBRCQcRtRDRERtRFQcRARBRCQcQtQtQcaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjQrQrQrQrRGRHQrmjndncaPaPQcQtQtQcaPaPaPQcQcRARBRCQcQcaPaPaPQcQtQtQcaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjQrQrQrQrQrQrmjaPaPaPaPaPRIRJRJRKaPaPaPaPaPaPaPaPaPaPaPaPaPRIRJRJRKaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjmjmjmjmjaPaPaPaPRIRLRMRKaPaPaPaPaPaPaPaPaPaPaPaPaPRIRLRMRKaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjmjmjmjaPaPaPaPaPRIRJRJRKaPaPaPaPaPaPaPaPaPaPaPaPaPRIRJRJRKaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjmjmjmjaPaPaPaPaPRNRORPRQaPaPaPRNaPaPaPaPaPRQaPaPaPRNRRRSRQaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPaPaPaPaPRTRURURTaPaPaPRTRVRWRWRWRXRTaPaPaPRTRURURTaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPaPaPaPaPRTRYRZRTaPaPRNRTRTSaSbScSdRTRQaPaPRTSeSfRTaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPaPaPaPaPRTSgShRTaPaPRTRTSiSjSkSjSlRTRTaPaPRTSmSnRTaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPaPaPaPaPRTSoRTRTRTRTRTSpSqSqSqSqSqSrRTRTRTRTRTSsRTaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPaPaPaPaPRTStSuSvSwSxRTSySqSqSqSqSqSyRTSzSASBSCSDRTaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjaPaPaPaPaPaPaPaPaPaPaPRTSERURURUSFRTRVRWRXSGRVRWRXRTSHRURUSISERTaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjaPaPaPaPaPaPaPaPaPaPaPSJSERURURURUSGSqSqSqSqSqSqSqSGRURUSKRUSESJaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPaPaPaPaPaPaPSLSMRUSNSORURTSPSQSqSqSqSqSRRTRUSSRUSTSESLaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPaPaPaPaPaPaPSUSMRURURTSVRTRTRTSWSXSYRTRTRTSVRTSZTaTbSUaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPaPaPaPaPaPRNRTTcTdTdRTTeTfTeSJTgThTiSJTjTkTlRTTmTnToRTRQaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTpTpTpTpTpTpTpTpTpTpTpTpTqTpTpTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPmjmjaPaPaPTrRTTsTsRTRTTeTeTeSLTgTtTiSLTlTlTuRTRTTsTsRTTvaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTwTxTyTzTATBTpTCTDTETpTFTGTGTHTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPmjmjaPaPaPaPTrTITITvRTTJTKTeSUTLSqTLSUTlTlTMRTTrTITITvaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyTyTyTyTyTyTNTOTPTOTQTGTGTGTRTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPmjmjaPaPaPaPaPaPaPaPRTTeTeTeRTRTSGRTRTTSTlTTRTaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTUTUTyTyTyTVTpTOTOTWTpTpTpTpTpTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPRTTeTeTXRTTYSqTZRTTlTlUaRTaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyTyTyTyTyUbTpUcUcUdTpUeUfUgUhTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPRTRTUiTeRTUjSqUkRTUlUmRTRTaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpUnUnTyTyTyUoTpUcUcUcUpUcUcUcUqTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPTrRTRTRTRTUrUsUtRTRTRTRTTvaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyTyTyTyTyUuTpUvUwUxTpUyUzUAUhTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPmjmjaPaPaPaPaPaPaPaPTrRTTsTsTsTsTsRTTvaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyTyTyTyTyTVTpTpTpTpTpTpTpTpTpTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPmjmjmjaPaPaPaPaPaPaPaPTrTITITITITITvaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyUBUCUDUETyUFUGUHUFUIUJUKUKUJTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyUBULUMUETyUNUNUNUNUOTOTOTOTOTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyUBUPUQUETyUNUNUNUNUNUNUNUNUNTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPaPaPaPaPaPaPmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyUBURUSUETyUNUNUNUNUNUNUTUUUVTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPaPaPaPaPmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyTyTyTyTyTyUNUNUNUNUNUNUNUNUNTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPaPaPaPmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpUWUXUXUXUXUXUXUXUXUXUXUXUXUXUYTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjaPaPaPaPaPaPaPaPaPaPmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpUZVaVaUIVbVcVbUIVdVdVeUIVfVgTGTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpVaVhUZUOVbVbVbUOViVjVdUOVkTGVlTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -mdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTpTpTpTpTpTpTpTpTpTpTpTpTpTpTpTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwondndndaPaPaPaPaPaPaPaPaPaPaPndndndwowIwIwIwnaPaPBABBBCBDAVBEBFBEBEBEBFBGBHwnwnwnwIwIwIxwBaykykykykykykykBrBsBIykBrBJBKzyzPzPzPAjAjAjAjAjzPzPzPzPzPzPzyBLBMwrBNBOsoBPBQBRByByBSBysowqBTwqsoBUBUBUBVBWBWBWBXBYBUBUBywKwrwrsoaPaPaPBzBzBZBZBZBZBZBZCaCaCaBZBZBZBZCaCaCaCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmj +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwondaPaPBAAACcBAAAAAACADAEAACdCendndwowIwIwIxwBaykykzJzJzJzJzJykykykykykzJCfzyCgzPzPzPzPzPzPzPzPzPzPzPzPCgzywrwrwrwrwrsowrwrwrChBUBUCisowrwrwrsoBUBUBUBVCjCjCjBXBUBUBUBywrwrwrsoaPaPaPBzBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPCkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmj +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwowowowowoxcndndndndndndndndndndndaPwnwIwIwIxwBaykykClClClClClykykykykykykAozyAszPArAsAsAtzPzPArAsAsAtzPAszywrwrwrwrwrsowrwrwrChCmCnCosowrwrwrsoBUBUBUCpCqCrCsCtBUBUBUBywrwrwrsoaPaPaPBzBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmj +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwondaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIxwBaykykzgykykykzgykBbCuAMykykAozyCvzPArBvBfAtzPzPArBvBfAtzPCvzywrCwCxCyCzsowqCAwqByCBCCBysoCDCECFsoBUBUBUBUBUBUBUBUBUBUBUBywrwrwrsoaPaPaPBzBZBZBZCGBzBzBzCbCbCbBzCHCHBzCbCbCbBzBzBzBzCbCbCbBzBzCbCbCbBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmj +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwoCICICIwowoaPndaPaPaPaPaPaPaPaPaPaPaPndaPwowoCICICIwowoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowoCICICIxwBaykBbAMykykBbCuAMAoxwxwCJCJxwzyCgzPzPzPzPzPzPzPzPzPzPzPzPCgzyCKsososososoBUBUBUByChChBysososososoBUBUBUBUBUBUBUBUBUBUBUBywrwrwrsoaPaPaPBzCLBZBZBzBzCMCNCOCNCOCPCQCQCRCOCNCOCNCSCTCTCTCTCTCTCTCTCTCTBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPmj +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowICUwIwIwowondaPaPaPaPaPaPaPaPaPaPaPndwowowICVCWCXwIwowoaPaPaPaPaPaPaPaPaPaPaPaPaPwowowIwICWCXxwBIykAoxwBuBuxwxwBaAoxwCYykykCZzyAszPArAsAsAtzPzPArAsAsAtzPAszysosoBUBUBUBUBUBUBUBUBUBUBUByBysosoByBUBUBUBUBUBUBUBUBUBUBUBywrwrwrsoaPaPaPBzCLBZBZBzCMDaDbDbDbDbDcDdDdDeDbDbDbDcDfCSDgDgDgDgDgDgDgDgDgBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIDhwIwIwHwowoaPaPaPaPaPaPaPaPaPaPaPwowowHwIwIDiwIwIwHwowoaPaPaPaPaPaPaPaPaPaPaPwowowHwIwIDjCXAlykykAoxwAMykAoxwBaAoxwDkykykCZzyCvzPArBvBfAtzPzPArBvBfAtzPCvzysoDlBUBUBUBUBUBUBUBUBUBUBUDlByBysoByDmBUBUBUBUBUBUBUBUBUDmBywKwrwrBzBzBzBzBzCLBZBZCbDnDoDdDdDdDdDdDdDdDdDdDdDdDdDpDnDqDqDqDqDqDqDqDqDqBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwIDjwIwIwIwIwowowowownwnwnwnwnwowowowowIwIwIDjCWDrwIwIwIwowowowownwnwnwnwnwowowowowIwIwIwICWwIAlykykAoxwBaykDsxwBaAoxwDtykykCZzyzyDuDuDuDuzyDvDvzyDuDuDuDuzyzyBUBUBUBUDwDxDyDyDyDzDABUBUBUBUByByByByByByByBUBUBUByByByByBysowrwrDBBZBZBZBzCLBZBZCbDCDoDdDdDdDdDdDdDdDdDdDdDdDdDpDCDgDgDgDgDgDgDgDgDgBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIDDyhDEDDyhDFDGDHyhDEDDyhDEwIwIwIwIwIwIwIwIwIDDyhDEDDyhDFDGDHyhDEDDyhDEwIwIwIwIwIwIxwDIykBrxMBaDJDKxMBIBrxwDLCuCuDMxwDNDODPDODPChBUBUChDODQDODODRByBUBUBUDSDTDUDUDUDUDUDVDWBUBUBUByDODPDODNDPChBUBUBUChDPDODODXsowrwrBzDYBZDZCbCLBZBZBzDfCSEaEaEaEaEbDdDdEcEaEaEaEbCMDaDqDqDqDqDqDqDqDqDqBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIDDyhDEDDyhDFEdDHyhDEDDyhDEwIwIwIwIwIwIwIwIwIDDyhDEDDyhDFEdDHyhDEDDyhDEwIwIwIwIwIwIxwxwAlAlxMEeEfxMxMAlAlxwxwxwxwxwxwChChChChChChBUBUChChChChChChByBUBUEgEhDUDUDUDUDUDUDUEiDABUBUByChChChChChChBUBUBUChChChChChByEjEjBzBZEkElCbCLBZBZBzBzDfCNCOCNCOCPCQCQCRCOCNCOCNDaCTCTCTCTCTCTCTCTCTCTBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnEmEnwnwIwIwIwIEoEpEqEoEpErEsEtEpEqEoEpEqwIwIwnEuEmEnwnwIwIEoEpEqEoEpErEsEtEpEqEoEpEqwIwIwIwIwIwIwIwIwIwIBUBUBUBUEvBUBUEvBUBUBUDlByDlBUBUBUBUBUBUBUBUBUBUBUBUDlByBUBUEwDUDUDUExEyEzDUDUDUEwBUBUByDmBUBUBUBUBUBUBUBUBUBUBUBUDmByBUBUCbEAEBCbBzBZBZBZCGBzBzBzCbCbCbBzECECBzCbCbCbBzBzBzBzCbCbCbBzBzCbCbCbBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnEDyhEEwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIEFEGEDyhEHwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIBUBUBUBUEvBUBUEvBUBUBUBUEIBUBUBUBUBUBUBUBUBUBUBUBUBUBUEIBUBUEJDUDUExEKEKEKEzDUDUELBUBUEIBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUEMBZBZBZENBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPEOmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdCkmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmd +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnyhyhEPwIwIwIwIwIwIwIwIwIwIEQwIwIwIwIwIwIwIwIERESwoyhEPwIwIwIwIwIwIwIwIEQwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIChBUBUBUByBUBUByBUBUBUBUEIBUBUBUBUBUBUBUBUBUBUBUBUBUBUEIBUBUEJDUDUETEKEUEKEVDUDUELBUBUEIBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUCbBZBZBZCbBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnEWyhEXwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIEYyhEWyhEXwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIBUBUBUBUEvBUBUEvBUBUBUBUEIBUBUBUBUBUBUBUBUBUBUBUBUBUBUEIBUBUEJDUDUEZEKEKEKFaDUDUELBUBUEIBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUEMBZBZBZENBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnFbFcwnwIwIwIwIFdFeFfFdFeFgFhFiFeFfFdFeFfwIwIwnFjFbFkwnwIwIFdFeFfFdFeFgFhFiFeFfFdFeFfwIwIwIwIwIwIwIwIwIwIBUBUBUBUEvBUBUEvBUBUBUDlByDlBUBUBUBUBUBUBUBUBUBUBUBUDlByBUBUFlDUDUDUEZFmFnDUDUDUFoBUBUByDmBUBUBUBUBUBUBUBUBUBUBUBUDmBzFpFpBzBzBzBzBzBZBZBZCGBzBzBzCbCbCbBzCHCHBzCbCbCbBzBzBzBzCbCbCbBzBzCbCbCbBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIDDyhDEDDyhDFEdDHyhDEDDyhDEwIwIwIwIwIwIwIwIwIDDyhDEDDyhDFEdDHyhDEDDyhDEwIwIwIwIwIwIFqFqFrFrFsFtFtFtFqFrFrFqFqFtFtFqFqChChChChChChBUBUChChChChChChByBUBUFuFvDUDUDUDUDUDUDUFwFxBUBUByChChChChChChBUBUChChChChChChBzFyFyFzFAFBFCCbCLBZBZBzBzCMCNCOCNCOCPCQCQCRCOCNCOCNCSCTCTCTCTCTCTCTCTCTCTBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIDDyhDEDDyhDFDGDHyhDEDDyhDEwIwIwIwIwIwIwIwIwIDDyhDEDDyhDFDGDHyhDEDDyhDEwIwIwIwIwIwIFqFDFEFEFFFGFHFHFIFEFJFqFKFLFMFNFqDQDNDODPDPChBUBUChDXFODPDODOByBUBUBUFPFQDUDUDUDUDUFwDTBUBUBUByFRDODNDODPChBUBUChDODPDOFSFOBzFyFyFyFyFyFyCbCLBZBZBzCMDaDbDbDbDbDcDdDdDeDbDbDbDcDfCSDgDgDgDgDgDgDgDgDgBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwIFTFTwIwIwIwowowowownwnwnwnwnwowowowowIwIwIDhCWDrwIwIwIwowowowownwnwnwnwnwowowowowIwIwICVCWwIFrFEFEFEFEFEFEFEFEFEFUFqFVFEFWFXFqFYFZFZFZFZFYGaGaFYFZFZFZFZFYFYBUBUBUBUFuDxGbGbGbDzFxBUBUBUBUGcGcGcGcGcGcGcGdGdGcGcGcGcGcGcBzFyFyFyFyFyFyBzCLBZBZCbDnDoDdDdDdDdDdDdDdDdDdDdDdDdDpDnDqDqDqDqDqDqDqDqDqBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowICWFTwIwHwowoaPaPaPaPaPaPaPaPaPaPaPwowowHwIDjCWCXwIwHwowoaPaPGeGfGgGgGgGhGiaPaPwowowHwIDhCWCXFrFEFEGjGkFEFEGjGkFEFUFqGlFEFEGmFqGnGoGoGoGoGoGoGoGoGoGoGoGoGnFYByDlBUBUBUBUBUBUBUBUBUBUBUDlByGcGpGqGqGqGqGrGrGrGrGqGqGqGqGpBzFyFyGsGtFyGsCbCLBZBZCbDCDoDdDdDdDdDdDdDdDdDdDdDdDdDpDCDgDgDgDgDgDgDgDgDgBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIDrwIwowondaPaPaPaPaPaPaPaPaPaPaPndwowowIDjCWwIwIwowondaPGeGuGvGwGxGyGzGAGiaPndwowowIwICWwIFqGBFEGjGkFEFEGjGkFEFUFqGCFEFWFXFqGoGoGoGoGoGoGoGoGoGoGoGoGoGoFYByByBUBUBUBUBUBUBUBUBUBUBUByByGcGrGrGrGrGrGrGrGrGrGrGrGrGrGrBzFyFyGsGtFyGsCbCLBZBZBzDfCSEaEaEaEaEbDdDdEcEaEaEaEbCMDaDqDqDqDqDqDqDqDqDqBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwoCICICIwowoaPndaPaPaPaPaPaPaPaPaPaPaPndaPwowoCICICIwowoaPndGeGuGDGEGFGEGFGEGGGAGindaPwowoCICICIFqGHFEGjGkFEFEGjGkFEFUFqGIGJGKGLFqGoGoGMGNGOGPGoGoGMGQGRGPGoGoFYaPByByByByByBUByBUByByByByByaPGcGrGSGSGSGSGrGrGrGrGSGSGSGSGrBzFyFyGsGtFyGsBzCLBZBZBzBzDfCNCOCNCOCPCQCQCRCOCNCOCNDaCTCTCTCTCTCTCTCTCTCTBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwnaPaPndGTGFGFGFGUGVGWGFGFGFGTndaPaPwnwIwIwIFqGHFEFEFEFEFEFEFEFEFUFqFqFVGXGYFqGoGoGMGZHaGPGoGoGMHbHcGPGoGoFYaPaPByHdHeBUBUDUBUBUHeHfByaPaPGcGrGrGrGrGrGrGrGrGrGrGrGrGrGrBzFyFyGsGtFyGsCbBZBZBZCGBzBzBzCbCbCbBzECECBzCbCbCbBzBzBzBzCbCbCbBzBzCbCbCbBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwnaPaPndHgHhHiHjHkHlHkHmHnHoHgndaPaPwnwIwIwIFqGHFEFEFJHpHpHpHpHpHqFqHrFIFFHsFqGoGoGoGoGoGoGoGoGoGoGoGoGoGoFYaPaPByHdHeBUBUDUBUBUHeHfByaPaPGcGpGqGqGqGqGrGrGrGrGqGqGqGqGpBzFyFyGsGtFyGsCbBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwnaPaPndHgHtGTHuHvHwHvHxGTHtHgndaPaPwnwIwIwIFqFtHyFEFqHzHAHBHCHAHDFqGHFEFEHEFqGoGoGMHFHGGPGoGoGMHHHIGPGoGoFYaPaPByHJBUBUBUDUBUBUBUHKByaPaPGcGcGcGcGcGcGcGdGdGcGcGcGcGcGcBzFyFyGsGtFyGsBzBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwondndndaPaPaPaPaPaPaPaPaPaPaPndndndwowIwIwIwondndndHgGFHnHgHLHMHNHgHiGFHgndndndwowIwIwIFqGHFEFEHOFIHPFEFEHPFFHQFIFEFEHRFqGoGoGMHSHTGPGoGoGMHUHVGPGoGoFYaPaPByHdHeBUBUDUBUBUHeHfByaPaPGcHWHXHXHXHXHWHWHWHWHYHZHZHZIaBzFyFyGsGtFyGsBzBzBZBZBZBZBZBZIbIbIbBZBZBZBZIbIbIbCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPGTGFHnIcIdIeIfIcHiGFGTaPaPaPwowIwIwIFqGHFEFEFEFEFEFEFEFEFEFEFEFEFEIgFqGoGoGoGoGoGoGoGoGoGoGoGoGoGoFYaPaPByHdHeBUBUDUBUBUHeHfByaPaPGcHWHWHWHWHWHWHWHWHWHWHWHWHWHWBzFyFyFyFyFyFyBzBzBzCbCbCbBzCbCbCbBzCbCbCbBzCbCbCbBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPGeGuHhHnIhIdIiIfIhHiHoGAGiaPaPwowIwIwIFqGHFEFEFEFEFEFEFEFEFEFEFEFEFEHRFqGoGoGoGoGoGoIjIjIjIjIjIjIjIjFYaPaPIkIkIkIlIlImIlIlIkIkIkaPaPGcInGcIoGcIpGcHWHWGcIqGcIrGcIsBzFyFyFyFyFyFyCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwnwnwnItIuGFHnIvGTIwGTIxHiGFIuItwnwnwnwIwIwIFqGHFEFJHpHpHpGBFJHpHpGBFEFEFEIgFqIyIzIzGoGoIAIBIBIBICIBIBIBIBFYaPaPIkIDIEIlIEIEIEIlIEIDIkaPaPGcIFGcIFGcIFGcHWHWGcIFGcIFGcIFBzFyFyIGIGIGIGCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaPaPaPaPaPaPaPaPaPaPaPaPaPyiyhygwIwIwIIHyhIHIIGFGFGFIJIKGFGFIJGFGFGFIIIHyhIHwIwIwIFqFtFEFUFtFtFtGHFUILGYGHFJIMINIOFqIPIQIRGoGoIAISITITITITITITITFYaPaPIkIEIUIVIEIEIEIVIWIEIkaPaPGcGcGcGcGcGcGcHWHWGcGcGcGcGcGcBzFyFyIXIXIXIXCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaPaPaPaPaPaPaPaPaPaPaPaPaPyiyhygwIwIwIIHyhIHIYGFGFGFGFGFGFGFGFGFGFGFIYIHyhIHwIwIwIFqIZFEFFJaJbJcFIFFJdFqJeJfFqFqFqFqJgJhJiGoGoIAITITITITITITITITFYaPaPIkIlIEIlIEIEIEIlIEIlIkaPaPGcJjHWJjHWJjHYHWHWJkJjHWJjHWJjBzFyFyFyFyFyFyCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwnwnwnItJlGFHnIcHiGFHnIcHiGFJmItwnwnwnwIwIwIFqIZFEFEFEFEFEFEFEJnFqJeJoJpJpJqFqJrJsJtGoGoITITITJuJvJwJxITITFYaPaPIkIEIEIEIEIEIEIEIEIEIkaPaPGcHWHWHWHWHWHWHWHWHWHWHWHWHWHWBzJyFyFyFyFyCbCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPIcHiGFHnJzHiGFHnJzHiGFHnIcaPaPwowIwIwIFqIZFEFEFEJAJBFEFEJCFqJeFEJDJEJFFqFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYIkIkIkIEIEIEIEIEIEIEIEIEIkIkIkGcJGHWJGHWJGHYHWHWJkJGHWJGHWJGBzCbCbCbCbCbCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwondndndndndndndndndndndndndndndndndwowIwIJHwoaPaPJzHiGFHnJzHiGVHnJzHiGFHnJzaPaPwowIwIwIFqJIFEFEFEFEFEFEFEJJFqJeFEFEJKJFFqJLJMJMJMJNIkIEIEIEIEIEIEIEIEIEIEIEIkIkJOIkIkIEIkIkJOIkIkIEIEIkIkIkGcGcGcGcGcGcGcGcGcGcGcGcGcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPIhHiGFHnJzHiGFHnJzHiGFHnIhaPaPwowIwIwIFqJPFEFEFEJQJRFEFEJSFqJTJUFEJVJWFqJXFEFEFEJYIkIEIkIkIkIkJZIkIkIkIEIEIEIEIEIEIkIEIkIEIEIEIEIEIEIEIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwnwnwnItKaGFHnIhHiGFHnIhHiGFKbItwnwnwnwIwIwIFqGHFEFEFEFJHpGBFEKcFqFqFqKdFqFqFqJXFEFEFEJYIkIEIkKeKfKfKfKfKgIkIkIkIkIkIkIkIkKhIkIkIkIkIkIkIkIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaPaPaPaPaPaPaPaPaPaPaPaPaPyiyhygwIwIwIIHyhIHIIGFGFGFGFGFGFGFGFGFGFGFIIIHyhIHwIwIwIFqGHFEFJHpKiFqFqKjFqFqKkKlFEJoKmFqKlFEFEFEKnIkIEIkKeKfKfKfKfKgIkKoKpKqKpKrKsKsKsKsKsKrKsKrKsKtIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaPaPaPaPaPaPaPaPaPaPaPaPaPyiyhygwIwIwIIHyhIHIYGFGFKuGFGFGFGFGFKuGFGFKvIHyhIHwIwIwIFqFqKwFqILFqFqKxFEKyFqJeFEFEFEFEKzFEFEKAFEKBIkIEIkKCKfKfKfKfKDIkKsKEKEKEKEKEKsKsKsKEKEKEKEKFKGIkIEIkIkIkIkIkIkIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwnwnwnKHGTKIKJGfGhKKGfGhKJKIGTKLwnwnwnwIwIwIFqKMFEKNKOKPFqKQFEKRFqKSKTKUKVKWFqKXKYKYKYKZIkIEIkKCLaLbLbKfKfLcKsKsLdLeLdKsKsKsKsKsLdLeLdLfKsIkIEIEIEIEIEIEIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPndndndndndndndndndndndaPaPaPwowIwIwIwoaPaPItLgLhItLiLjLkLlLmItLnLoItaPaPwowpwpwpFqKMFELpLqLrFqLsFELtFqFqFqFqFqFqFqFqFqFqFqIkIkIEIkIkIkIkIkIkIkIkKsKEKEKEKEKEKsKsKsKEKEKEKELuKsIkIkIkIkIkIkIkIEIkIkIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwondndndndaPaPaPaPaPaPaPaPaPndndndndwowIwIwIwondndItLvLvItLwLxLkLkLyItLvLvItndndwowIwIwIFqFqLzFqFtFtFqFqKjFqFqLALBLCFtLDLEJaLFLFLGIkIEIEIkIkLHLHLHLHLHIkLILILILILILILILILILILILILILJLIIkLKLKLKLKLKIkIEIEIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPxcwnwnwnxcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPxcwnwnwnxcaPaPItLLLMItLNLkLOLPLQItLRLSItaPaPxcwIwIwIFqLTFEKNLULVFqGHFEFFJaFIFEFFFtFIFEFEFEFEFUIkIEIkIkIkLWLWLWLWLWIkLXLYLYLYLYLYLYLYLYLYLYLYLYLZLXIkLWLWLWLWLWIkIkIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwFwGwFwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwFwFwFwnaPaPKHMaMaItMbMcLkMdMeItMaMaKLaPaPwnwIwIwIFqMfFEFEFEMgFqGHFEFEFJHpFEFEMhFEFEFEFEFEFUIkIEIkMiMjMkMkMkMkMkMlLYLYLYLYLYLYLYLYLYLYLYLYLYLZLYMlMmMmMmMmMmMjMnIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwnwnaPaPMoMpMpMqKJMaMaMaKJMqMpMpMraPaPwnwIwIwIFqMsFEFEKAMtFqMuFEFEFUMvFEMwFtGBFEFWFEFEFUIkIEIkMiMjMkMxMkMxMkMlLYLYLYLYLYLYLYLYLYLYLYLYLYLZLYMlMmMyMmMyMmMjMnIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPMoMpMpMpMraPaPaPaPaPaPwowIwIwIFqKMFEFEFEMzFqMAFEFEMBMCFEMDFtMEMFMGMHMHMIIkIEIkMiMjMkMkMJMkMkMlLYLYLYLYLYLYLYMKLYLYLYLYLYLZLYMlMmMmMLMmMmMjMnIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIFqMMMNMOMPMQFqMRMSMTMUMVHpKiFqFqFqFqFqFqFqIkIEIkMiMjMkMkMkMkMkMlLYLYLYLYLYLYMWMXMWLYLYLYLYLZLYMlMmMmMmMmMmMjMnIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqaPaPaPaPaPaPIkIEIkMiMjMkMxMkMxMkMlLYLYLYLYLYLYMYMZNaLYLYLYLYLZLYMlMmMyMmMyMmMjMnIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwoaPaPaPaPaPaPIkIEIkIEMjMkMkMkMkMkMlLYLYLYLYLYLYLYNbLYLYLYLYLYLZLYMlMmMmMmMmMmMjIEIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwoaPaPaPaPaPaPIkIEIkNcIkNdNdNdNdNdIkLXLYLYLYLYLYLYNbLYLYLYLYLYLZLXIkNdNdNdNdNdIkNcIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwJwIwIwIwIwIwIwIwIwIwIwIwIwIwIwJwoaPaPaPaPaPaPIkIEIEIEIkNeNeNeNeNeIkLILILILILILINfNgNfLILILILILJLIIkNhNhNhNhNhIkIEIEIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwnwnwowowowownwnwnwnwoNiNiwowoaPaPaPaPaPaPIkIkIkIEIkIkIkIkIkIkIkNjNkNkNkNkNkNlNmNjNkNkNkNkNnNjIkIkIkIkIkIkIkIEIkIkIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowpwpwoaPaPaPaPaPaPaPaPaPIkIEIEIEIEIEIEIEIkNjNjNoNjNoNjNjNpNqNjNoNjNoNrNjIkIEIEIEIEIEIEIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPIkIkIkIkIkIkIkIENsNjNjNjNtNtNtNjNjNjNtNtNtNtNtNjNsIEIkIkIkIkIkIkIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPIkIkIkNuNuNuNvNwNxNyNjNzNANBNCNDNENFIkIkIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNGNGNGNGNGNGNGNGNGNGNGNGNGNGNGNGNGNGNGNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPIkIkIkIkIkIkIkIkIkIkIkIkIkIkIkIkIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNINHNHNHNJNJNJNHNHNJNJNJNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNKNHNHNHNHNHNHNHNHNHNHNHNHNHNHNHNHNHNLNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHNHNHNHNHNHNHNHNHNHNHNMNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHNHNHNHNHNHNHNHNHNHNHNKNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNNNNNNNNNNNNNNaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHNHNONMNHNHNHNHNHNHNHNHNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNNNNNNNNNNNNNNaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHNHNHNPNPNHNHNHNHNHNHNHNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNNNNNNNNNNNNNNNNNNaPNQNRNRNRNRNRNRNRNRNRNRNRNRNSwnwIwIwnNQNTNTNTNTNTNTNTNTNSaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHNHNPNUNVNPNHNHNHNHNHNHNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNWNTNTNTNTNXNRNRNRNXNRNRNRNXNYNNNNNNNNNNNNNNNNNNNYNZOaObObObObObObObObObObObNZwowpwpwoNZOcOdOeOfOfOgOhOiOjNSaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHNHNPOkOlNPNHNHNONHOmNHNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPOnOoOaOpOqNZOrOrOrNZOsOsOsNZNYOtOtOtOtOtOtOtOtOtNYNZObObObObObObObObObObObObOuOvOwOwOvOxOyOyOyOzOAOBOyOyOCNZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHNHNHNPNPNHNHNHNHNHNHNHNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPODOoOaOaOaNZOrOrOrNZOsOsOsNZNYOtOtOtOtOtOtOtOtOtNYNZObObObObObObObObObObObObNZOEOFOFOENZOGOHOyOyOyOyOyOyOINZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNMNHNHNHNHNHNHNHNHNHNHNHNHNHNKNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPODOoOaOaOaNZOrOrOrNZOsOsOsNZNYOtOtOtOtOtOtOtOtOtNYNZObObObObObObObObObObObObNZOFOJOJOFNZOyOyOyOKOLOMOyOyONOvNTNTNSaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNONMNHNHNHNHNHNHNHNHNHNHNHNHNMNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPODOoOaOaOaNZOrOrOrNZOsOsOsNZNYOtOtOtOtOtOtOtOtOtNYNZOaObObObObObObObObObObObNZOFOJOJOFNZOOOPOyOQOROSOyOyOyOyOyOTNZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHNHNHNHNHOUNHOVNHOVNHOWNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPOXOoOaOaOaNZOrOrOrNZOsOsOsNZNYOtOtOtOtOtOtOtOtOtNYOuNTNTNTNTOvOYOYOvNTNTNTNTOxOFOJOJOFNZOZOyOyOyOyOyOyOyOyOyOyOTNZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHPaNHNHNHNHNHNHNHNHNHNHNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNWNTNTOvPbOvPcOvPdOvPcOvPeOvPcOvNYOvPcOvPfOvPcOvNYOvOxPgOFOFOFOFPhOFOFOFOFOFOENZOFOJOJOFNZOOOPOyOyPiPiPjPkPkPlOvNTPmNTNSaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGPnPnPnPnPnPnPnPnPnPnPnPnPnPnPnPnPnPnPnNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPPoOEOFOFOFOFOFOFPpOFOFOFPqOFOFOFOFOFOFOFPrOFOFPsPtPuOvOFOJOJOJOJOJOJOJOJOJOJOFOvOFOJOJOFOvPvPwPxPxPvPyPwOvNTNTOxPzOJPAPBaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPCPDPDPDPDPDPDPDPDPDPDPDPDPDPDPDPDPDPDPDPCaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPPoOFOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOFPEOFOJPFPFPFPFPFPFPFPFOJOFPEOFOJOJOFPEOFOFOFOFOFOFOFOFOFOFPGPHPIPJPKaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPPoOFOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJPNOJOJPOPOPOPOPOPOPOPOOJOJPNOJOJOJOJPNOJOJOJOJOJOJOJOJOJOFPPOFOJPQPKaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPPoOFOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOFPEOFOJPHPHPHPHPHPHPHPHOJOFPEOFOJOJOFPEOFOFOFOFOFOFOFOFOFOFPGPFPIPRPKaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +mdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdaPaPaPaPaPaPaPaPaPaPPoOEOFOFOFOFOFOFPSOFOFOFPTOFOFOFPUOFOFOFPVOFOFOFOFOEOvOFOJOJOJOJOJOJOJOJOJOJOFOvOFOJOJOFOvPvPwPWPvPwNXPvPwPNPNOxPXOJPYPZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRaRaRaRaRaRaRaRaRaRaRQaQaQaQaQaQaQaQaQaQaQaQaQaQaQaQaQaQaQaQaQaaRaRaRaRaRaRaRmdaPaPaPaPaPaPaPaPaPaPQbNTNTOvPbOvNXOvQcOvNXOvQdOvNXOvQeOvNXOvQfOvNXOvQgOvOxOFOFOFOFOFQhOFOFOFOFOFOENZOFOJOJOFNZQiQjQkQlQmNZQnOJOJOJOvNTNXNTQoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjmjmjmjmjmjmjmjQpQpQpQpQpQaQqQrQsQaQpQpQpQpQpQpQpQpQpQpQpmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPOnOoOaOaOaNZQtQtQtQuQvQvQvQuQwQwQwQuQxQxQxNZOJOJOJOuNTNTNTNTOvQyQyOvNTNTNTNTOxOFOJOJOFNZQzQkQkQkQzNZQAOJOJOJOJQBNZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjmjmjmjmjmjmjmjQpQpQpQpQpQaQCQrQrQaQpQpQpQpQpQpQpQpQpQpQpmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPODOoOaOaOaNZQtQtQtQuQvQvQvQuQwQwQwQuQxQxQxNZOJOJOJNZQDQDQDQDQDQDQDQDQDQDQDOaNZOFOJOJOFNZQEQFQkQkQkNZQnOJOJQnOJQnNZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjmjmjmjQpQpQpQaQaQaQaQpQaQaQaQaQGQaQaQaQaQaQaQaQpQpQpQpQpmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPODOoOaOaOaNZQtQtQtQuQvQvQvQuQwQwQwQuQxQxQxNZOJOJOJNZQDQDQDQDQDQDQDQDQDQDQDQDNZQHPFPFQHNZPvPwQIPvPwNZQAOJQnOvNTNTQoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjQpQpQpQpQJQrQrQrQrQrQrQrQrQrQrQrQrQrQrQrQrQrQaQpQpQpQpQpmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPODOoOaOaOaNZQtQtQtQuQvQvQvQuQwQwQwQuQxQxQxNZOJOJOJNZQDQDQDQDQDQDQDQDQDQDQDQDNZQKQKQKQKNZQLQkQkQkQLNZQnOJQANZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjQpQpQrQJQJQJQrQrQrQrQrQrQrQrQrQrQrQrQrQrQrQrQaQMQNQpQpQpmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPOXOoOaQOQPNZQtQtQtQuQvQvQvQuQwQwQwQuQxQxQxNZQQQRQSNZQDQDQDQDQDQDQDQDQDQDQDQDOuOvPvPwOvOxQkQkQkQkQkNZQAOJQnNZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjQpQpQJQJQJQpQpQpQaQaQaQaQGQaQaQaQaQGQaQrQrQrQGQTQUQpQpQpmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPQbNTNTNTNTPcNRNRNRPcNRNRNRPcNRNRNRPcNRNRNRPcNTNTNTOxQDQDQDQDQDQDQDQDQDQDQDOaNZaPaPaPaPNZQLQkQLQkQLNZQnOJQVQoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjQpQJQJQpQpQpQpQpQpQpQpQaQrQrQCQaQWQrQaQrQrQrQGQTQXQpQpQamjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPQbNRNRNRNRNRNRNRNRNRNRNRNRQoaPaPaPaPQbNTNTNTNTNTPcNTNTQoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjQpQJQpQpQpmjmjQpQaQaQaQaQYQrQqQaQYQqQaQrQrQrQaQTQTQTQZQamjmjaRmjmjmjaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjQpQJQJQpmjmjmjQpRaRbRbQaQaQaQaQaQaQaQaQrQrQrQaQTQTQTRcQamjmjaRmjmjmjaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjQpQJQJQJQJQpQpmjmjQpRdReRdQGQrQrQrQrQrQrQrQrQrQrQaRfRgRhQaQamjmjaRmjmjmjaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPLPLPLPLPLPLPLPLPLPLPLPLPLPLPLPLPLPLPLPLaR +aRmjRiQJQJQJQJQJQpmjmjQaRjRdRdQGQrQrQrQrQrQrQrQrQrQrQaQpQpQpQpQpmjmjaRmjmjmjaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaR +aRmjRkRlRmQJRnQJQJmjmjQaRjRoQaQaQaQaQaQaQaQaQaQaQGQaQaQaQaQaQaQaQaQaQamjmjaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjRpQJRmQJRmQJQJmjmjQpQpQpQaQrQrQrQrQrQrQaRqRrRrRrRsQaQrQrQrQrQrQrQamjaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjQpQJRmQJRtQJQJmjmjaPaPmjQaQrQqQrQrQrQrQaRrRrRuRrRrQaQrQrQrQrQqQrQamjaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjQpRvQJQJQJRwQJmjmjaPaPmjQaQrQrQrQrQrQrQGRrRrRxRrRrQGQrQrQrQrQrQrQamjaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjQpQpQJQJQJQJQpmjmjncaPaPQaQrQrQaRyRzRAQaRrRBRCRrRDQaRyRzRAQaQrQrQaaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjQpQpQpQpRERFQpmjndncaPaPQaQrQrQaaPaPaPQaQaRyRzRAQaQaaPaPaPQaQrQrQaaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjQpQpQpQpQpQpmjaPaPaPaPaPRGRHRHRIaPaPaPaPaPaPaPaPaPaPaPaPaPRGRHRHRIaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjmjmjmjmjaPaPaPaPRGRJRKRIaPaPaPaPaPaPaPaPaPaPaPaPaPRGRJRKRIaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjmjmjmjaPaPaPaPaPRGRHRHRIaPaPaPaPaPaPaPaPaPaPaPaPaPRGRHRHRIaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjmjmjmjaPaPaPaPaPRLRMRNROaPaPaPRLaPaPaPaPaPROaPaPaPRLRPRQROaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPaPaPaPaPRRRSRSRRaPaPaPRRRTRURURURVRRaPaPaPRRRSRSRRaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPaPaPaPaPRRRWRXRRaPaPRLRRRRRYRZSaSbRRROaPaPRRScSdRRaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPaPaPaPaPRRSeSfRRaPaPRRRRSgShSiShSjRRRRaPaPRRSkSlRRaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPaPaPaPaPRRSmRRRRRRRRRRSnSoSoSoSoSoSpRRRRRRRRRRSqRRaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPaPaPaPaPRRSrSsStSuSvRRSwSoSoSoSoSoSwRRSxSySzSASBRRaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjaPaPaPaPaPaPaPaPaPaPaPRRSCRSRSRSSDRRRTRURVSERTRURVRRSFRSRSSGSCRRaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjaPaPaPaPaPaPaPaPaPaPaPSHSCRSRSRSRSSESoSoSoSoSoSoSoSERSRSSIRSSCSHaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPaPaPaPaPaPaPSJSKRSSLSMRSRRSNSOSoSoSoSoSPRRRSSQRSSRSCSJaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPaPaPaPaPaPaPSSSKRSRSRRSTRRRRRRSUSVSWRRRRRRSTRRSXSYSZSSaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPaPaPaPaPaPRLRRTaTbTbRRTcTdTcSHTeTfTgSHThTiTjRRTkTlTmRRROaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTnTnTnTnTnTnTnTnTnTnTnTnToTnTnTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPmjmjaPaPaPTpRRTqTqRRRRTcTcTcSJTeTrTgSJTjTjTsRRRRTqTqRRTtaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTuTvTwTxTyTzTnTATBTCTnTDTETETFTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPmjmjaPaPaPaPTpTGTGTtRRTHTITcSSTJSoTJSSTjTjTKRRTpTGTGTtaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwTwTwTwTwTwTLTMTNTMTOTETETETPTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPmjmjaPaPaPaPaPaPaPaPRRTcTcTcRRRRSERRRRTQTjTRRRaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTSTSTwTwTwTTTnTMTMTUTnTnTnTnTnTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPRRTcTcTVRRTWSoTXRRTjTjTYRRaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwTwTwTwTwTZTnUaUaUbTnUcUdUeUfTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPRRRRUgTcRRUhSoUiRRUjUkRRRRaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnUlUlTwTwTwUmTnUaUaUaUnUaUaUaUoTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPTpRRRRRRRRUpUqUrRRRRRRRRTtaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwTwTwTwTwUsTnUtUuUvTnUwUxUyUfTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPmjmjaPaPaPaPaPaPaPaPTpRRTqTqTqTqTqRRTtaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwTwTwTwTwTTTnTnTnTnTnTnTnTnTnTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPmjmjmjaPaPaPaPaPaPaPaPTpTGTGTGTGTGTtaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwUzUAUBUCTwUDUEUFUDUGUHUIUIUHTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwUzUJUKUCTwULULULULUMTMTMTMTMTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwUzUNUOUCTwULULULULULULULULULTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPaPaPaPaPaPaPmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwUzUPUQUCTwULULULULULULURUSUTTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPaPaPaPaPmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwTwTwTwTwTwULULULULULULULULULTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPaPaPaPmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnUUUVUVUVUVUVUVUVUVUVUVUVUVUVUWTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjaPaPaPaPaPaPaPaPaPaPmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnUXUYUYUGUZVaUZUGVbVbVcUGVdVeTETnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnUYVfUXUMUZUZUZUMVgVhVbUMViTEVjTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +mdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTnTnTnTnTnTnTnTnTnTnTnTnTnTnTnTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP "} - diff --git a/maps/virgo-5.dmm b/maps/virgo-5.dmm index 40cbebab59..113451711c 100644 --- a/maps/virgo-5.dmm +++ b/maps/virgo-5.dmm @@ -683,7 +683,7 @@ "ng" = (/obj/effect/floor_decal/corner/purple{dir = 9},/turf/simulated/floor/tiled/white,/area/outpost/research/dock) "nh" = (/obj/effect/floor_decal/corner/purple{dir = 6},/turf/simulated/floor/tiled/white,/area/outpost/research/dock) "ni" = (/obj/machinery/newscaster{layer = 3.3; pixel_x = 0; pixel_y = -27},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor/wood,/area/outpost/research/dorms) -"nj" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/cups,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/obj/machinery/light,/turf/simulated/floor/wood,/area/outpost/research/dorms) +"nj" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/cups,/obj/item/weapon/storage/box/glasses{pixel_x = 1; pixel_y = 4},/obj/machinery/light,/turf/simulated/floor/wood,/area/outpost/research/dorms) "nk" = (/obj/structure/table/glass,/obj/item/device/camera_film{pixel_x = 2; pixel_y = 2},/obj/item/device/camera,/turf/simulated/floor/wood,/area/outpost/research/dorms) "nl" = (/obj/item/weapon/bedsheet/purple,/obj/structure/bed/padded,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/carpet/blue,/area/outpost/research/dorms) "nm" = (/obj/structure/table/standard,/obj/machinery/alarm{dir = 1; pixel_y = -25},/obj/machinery/light/small{dir = 4; pixel_y = 0},/turf/simulated/floor/carpet/blue,/area/outpost/research/dorms) @@ -1591,7 +1591,7 @@ "EE" = (/obj/machinery/light/small{dir = 4},/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "EF" = (/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/libertycap,/turf/simulated/floor/airless{icon_state = "asteroidplating2"},/area/mine/explored) "EG" = (/turf/space,/area/skipjack_station/mining) - + (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/nano/templates/communicator.tmpl b/nano/templates/communicator.tmpl index bb0a26842f..58b86a30d7 100644 --- a/nano/templates/communicator.tmpl +++ b/nano/templates/communicator.tmpl @@ -103,7 +103,12 @@ Used In File(s): code\game\objects\items\devices\communicator\communicator.dm {{:value.name}}
-
{{:helper.link('Disconnect', 'close', {'disconnect' : value.true_name}, null, 'redButton')}}
+ {{:helper.link('Disconnect', 'close', {'disconnect' : value.true_name}, null, 'redButton')}} + {{if data.video_comm == null}} + {{:helper.link('Start Video', 'signal-diag', {'startvideo' : value.ref})}} + {{else data.video_comm == value.ref}} + {{:helper.link('End Video', 'signal-diag', {'endvideo' : value.true_name}, null, 'redButton')}} + {{/if}}
{{/for}} @@ -114,7 +119,7 @@ Used In File(s): code\game\objects\items\devices\communicator\communicator.dm {{:value.name}}
-
{{:value.address}}
{{:helper.link('Dial', 'signal-diag', {'dial' : value.address})}} +
{{:value.address}}
{{:helper.link('Accept', 'signal-diag', {'dial' : value.address})}}{{:helper.link('Decline', 'close', {'decline' : value.ref})}}
{{/for}} diff --git a/vorestation.dme b/vorestation.dme index 4553f2a0eb..3f7f9ed308 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -173,8 +173,6 @@ #include "code\datums\progressbar.dm" #include "code\datums\recipe.dm" #include "code\datums\sun.dm" -#include "code\datums\supplypacks.dm" -#include "code\datums\supplypacks_vr.dm" #include "code\datums\helper_datums\construction_datum.dm" #include "code\datums\helper_datums\events.dm" #include "code\datums\helper_datums\getrev.dm" @@ -205,6 +203,19 @@ #include "code\datums\repositories\cameras.dm" #include "code\datums\repositories\crew.dm" #include "code\datums\repositories\repository.dm" +#include "code\datums\supplypacks\atmospherics.dm" +#include "code\datums\supplypacks\contraband.dm" +#include "code\datums\supplypacks\engineering.dm" +#include "code\datums\supplypacks\hospitality.dm" +#include "code\datums\supplypacks\hydroponics.dm" +#include "code\datums\supplypacks\medical.dm" +#include "code\datums\supplypacks\misc.dm" +#include "code\datums\supplypacks\operations.dm" +#include "code\datums\supplypacks\science.dm" +#include "code\datums\supplypacks\science_vr.dm" +#include "code\datums\supplypacks\security.dm" +#include "code\datums\supplypacks\supply.dm" +#include "code\datums\supplypacks\supplypacks.dm" #include "code\datums\underwear\bottom.dm" #include "code\datums\underwear\socks.dm" #include "code\datums\underwear\top.dm" @@ -224,6 +235,8 @@ #include "code\datums\uplink\uplink_categories.dm" #include "code\datums\uplink\uplink_items.dm" #include "code\datums\uplink\visible_weapons.dm" +#include "code\datums\vending\stored_item.dm" +#include "code\datums\vending\vending.dm" #include "code\datums\wires\airlock.dm" #include "code\datums\wires\alarm.dm" #include "code\datums\wires\apc.dm" @@ -1797,6 +1810,11 @@ #include "code\modules\reagents\reagent_containers\pill.dm" #include "code\modules\reagents\reagent_containers\spray.dm" #include "code\modules\reagents\reagent_containers\syringes.dm" +#include "code\modules\reagents\reagent_containers\drinkingglass\drinkingglass.dm" +#include "code\modules\reagents\reagent_containers\drinkingglass\extras.dm" +#include "code\modules\reagents\reagent_containers\drinkingglass\glass_boxes.dm" +#include "code\modules\reagents\reagent_containers\drinkingglass\glass_types.dm" +#include "code\modules\reagents\reagent_containers\drinkingglass\shaker.dm" #include "code\modules\reagents\reagent_containers\food\cans.dm" #include "code\modules\reagents\reagent_containers\food\condiment.dm" #include "code\modules\reagents\reagent_containers\food\drinks.dm" @@ -1804,7 +1822,7 @@ #include "code\modules\reagents\reagent_containers\food\sandwich.dm" #include "code\modules\reagents\reagent_containers\food\snacks.dm" #include "code\modules\reagents\reagent_containers\food\drinks\bottle.dm" -#include "code\modules\reagents\reagent_containers\food\drinks\drinkingglass.dm" +#include "code\modules\reagents\reagent_containers\food\drinks\cup.dm" #include "code\modules\reagents\reagent_containers\food\drinks\jar.dm" #include "code\modules\reagents\reagent_containers\food\drinks\bottle\robot.dm" #include "code\modules\reagents\reagent_containers\food\snacks\meat.dm"