diff --git a/.github/workflows/autochangelog.yml b/.github/workflows/autochangelog.yml new file mode 100644 index 0000000000..7732426718 --- /dev/null +++ b/.github/workflows/autochangelog.yml @@ -0,0 +1,39 @@ +name: Autochangelog +on: + pull_request: + types: closed + branches: + - master + +env: + BASENAME: "polaris" + +jobs: + autochangelog: + name: Autochangelog + runs-on: ubuntu-16.04 + if: github.event.pull_request.merged == true + steps: + - uses: /actions/checkout@v2 + - name: Ensure +x on CI directory + run: | + chmod -R +x ./tools/ci + - uses: actions/setup-python@v2 + with: + python-version: '3.7' + - name: Generate Changelog + run: | + pip install pyyaml + python tools/GenerateChangelog/ss13_autochangelog.py \ + html/changelogs \ + ${{ github.event.pull_request.number }} \ + "${{ github.event.pull_request.user.login }}" \ + "${{ github.event.pull_request.body }}" + python tools/GenerateChangelog/ss13_genchangelog.py \ + html/changelog.html \ + html/changelogs + - uses: stefanzweifel/git-auto-commit-action@v4 + with: + commit_message: Automatic changelog generation for ${{ github.events.pull_request.number }} + branch: ${{ github.events.pull_request.base }} + commit_user_name: Autochangelog Bot diff --git a/code/__defines/belly_modes_vr.dm b/code/__defines/belly_modes_vr.dm index ccffcf4341..d497391d3f 100644 --- a/code/__defines/belly_modes_vr.dm +++ b/code/__defines/belly_modes_vr.dm @@ -9,30 +9,17 @@ #define DM_SIZE_STEAL "Size Steal" #define DM_HEAL "Heal" #define DM_EGG "Encase In Egg" -#define DM_TRANSFORM "Transform" //#define DM_ITEMWEAK "Digest (Item Friendly)" //#define DM_STRIPDIGEST "Strip Digest (Items Only)" //#define DM_DIGEST_NUMB "Digest (Numbing)" -//TF modes -#define DM_TRANSFORM_HAIR_AND_EYES "Transform (Hair and eyes)" -#define DM_TRANSFORM_MALE "Transform (Male)" -#define DM_TRANSFORM_FEMALE "Transform (Female)" -#define DM_TRANSFORM_KEEP_GENDER "Transform (Keep Gender)" -#define DM_TRANSFORM_REPLICA "Transform (Replica Of Self)" -#define DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR "Transform (Change Species and Taur)" -#define DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG "Transform (Change Species and Taur) (EGG)" -#define DM_TRANSFORM_REPLICA_EGG "Transform (Replica Of Self) (EGG)" -#define DM_TRANSFORM_KEEP_GENDER_EGG "Transform (Keep Gender) (EGG)" -#define DM_TRANSFORM_MALE_EGG "Transform (Male) (EGG)" -#define DM_TRANSFORM_FEMALE_EGG "Transform (Female) (EGG)" - //Addon mode flags #define DM_FLAG_NUMBING 0x1 #define DM_FLAG_STRIPPING 0x2 #define DM_FLAG_LEAVEREMAINS 0x4 #define DM_FLAG_THICKBELLY 0x8 +#define DM_FLAG_AFFECTWORN 0x10 //Item related modes #define IM_HOLD "Hold" diff --git a/code/__defines/map.dm b/code/__defines/map.dm index fce63b9955..be86ee58d6 100644 --- a/code/__defines/map.dm +++ b/code/__defines/map.dm @@ -7,6 +7,7 @@ #define MAP_LEVEL_EMPTY 0x020 // Empty Z-levels that may be used for various things (currently used by bluespace jump) #define MAP_LEVEL_CONSOLES 0x040 // Z-levels available to various consoles, such as the crew monitor (when that gets coded in). Defaults to station_levels if unset. #define MAP_LEVEL_XENOARCH_EXEMPT 0x080 // Z-levels exempt from xenoarch digsite generation. +#define MAP_LEVEL_VORESPAWN 0x100 // Z-levels players are allowed to late join to via vorish means. Usually non-dangerous locations. // Misc map defines. #define SUBMAP_MAP_EDGE_PAD 8 // Automatically created submaps are forbidden from being this close to the main map's edge. //VOREStation Edit \ No newline at end of file diff --git a/code/__defines/misc.dm b/code/__defines/misc.dm index 82b1eabc60..69e949e495 100644 --- a/code/__defines/misc.dm +++ b/code/__defines/misc.dm @@ -157,6 +157,8 @@ #define MAT_GRAPHITE "graphite" #define MAT_LEATHER "leather" #define MAT_CHITIN "chitin" +#define MAT_CLOTH "cloth" +#define MAT_SYNCLOTH "syncloth" #define SHARD_SHARD "shard" #define SHARD_SHRAPNEL "shrapnel" @@ -480,4 +482,15 @@ GLOBAL_LIST_INIT(all_volume_channels, list( VOLUME_CHANNEL_ALARMS, VOLUME_CHANNEL_VORE, VOLUME_CHANNEL_DOORS, -)) \ No newline at end of file +)) + +#define APPEARANCECHANGER_CHANGED_RACE "Race" +#define APPEARANCECHANGER_CHANGED_GENDER "Gender" +#define APPEARANCECHANGER_CHANGED_GENDER_ID "Gender Identity" +#define APPEARANCECHANGER_CHANGED_SKINTONE "Skin Tone" +#define APPEARANCECHANGER_CHANGED_SKINCOLOR "Skin Color" +#define APPEARANCECHANGER_CHANGED_HAIRSTYLE "Hair Style" +#define APPEARANCECHANGER_CHANGED_HAIRCOLOR "Hair Color" +#define APPEARANCECHANGER_CHANGED_F_HAIRSTYLE "Facial Hair Style" +#define APPEARANCECHANGER_CHANGED_F_HAIRCOLOR "Facial Hair Color" +#define APPEARANCECHANGER_CHANGED_EYES "Eye Color" diff --git a/code/__defines/species_languages.dm b/code/__defines/species_languages.dm index 34c68ebd08..f6ca0ea565 100644 --- a/code/__defines/species_languages.dm +++ b/code/__defines/species_languages.dm @@ -68,7 +68,7 @@ #define LANGUAGE_ALAI "Alai" #define LANGUAGE_ZADDAT "Vedahq" #define LANGUAGE_PROMETHEAN "Promethean Biolinguistics" -#define LANGUAGE_BLOB "Blob" +#define LANGUAGE_BLOB "Chemosense Transmission" #define LANGUAGE_GIBBERISH "Babel" // Language flags. diff --git a/code/__defines/subsystems.dm b/code/__defines/subsystems.dm index d0a5d72c86..801d11a4d7 100644 --- a/code/__defines/subsystems.dm +++ b/code/__defines/subsystems.dm @@ -52,6 +52,7 @@ var/global/list/runlevel_flags = list(RUNLEVEL_LOBBY, RUNLEVEL_SETUP, RUNLEVEL_G // Subsystem init_order, from highest priority to lowest priority // Subsystems shutdown in the reverse of the order they initialize in // The numbers just define the ordering, they are meaningless otherwise. +#define INIT_ORDER_DBCORE 41 //CHOMPEdit #define INIT_ORDER_SQLITE 40 #define INIT_ORDER_CHEMISTRY 35 #define INIT_ORDER_SKYBOX 30 diff --git a/code/_helpers/global_lists.dm b/code/_helpers/global_lists.dm index 371f35b051..855decff39 100644 --- a/code/_helpers/global_lists.dm +++ b/code/_helpers/global_lists.dm @@ -215,7 +215,7 @@ var/global/list/string_slot_flags = list( GLOB.closet_appearances[T] = app // VOREStation Add - Vore Modes! - paths = typesof(/datum/digest_mode) - /datum/digest_mode/transform + paths = typesof(/datum/digest_mode) for(var/T in paths) var/datum/digest_mode/DM = new T GLOB.digest_modes[DM.id] = DM diff --git a/code/_helpers/global_lists_vr.dm b/code/_helpers/global_lists_vr.dm index 0406099616..7a49e8b387 100644 --- a/code/_helpers/global_lists_vr.dm +++ b/code/_helpers/global_lists_vr.dm @@ -8,9 +8,11 @@ var/global/list/tail_styles_list = list() // Stores /datum/sprite_accessory/tail var/global/list/wing_styles_list = list() // Stores /datum/sprite_accessory/wing indexed by type var/global/list/negative_traits = list() // Negative custom species traits, indexed by path var/global/list/neutral_traits = list() // Neutral custom species traits, indexed by path +var/global/list/everyone_traits = list() // Neutral traits available to all species, indexed by path var/global/list/positive_traits = list() // Positive custom species traits, indexed by path var/global/list/traits_costs = list() // Just path = cost list, saves time in char setup var/global/list/all_traits = list() // All of 'em at once (same instances) +var/global/list/active_ghost_pods = list() var/global/list/sensorpreflist = list("Off", "Binary", "Vitals", "Tracking", "No Preference") //TFF 5/8/19 - Suit Sensors global list @@ -106,30 +108,66 @@ var/global/list/fancy_release_sounds = list( ) var/global/list/global_vore_egg_types = list( - "Unathi" = UNATHI_EGG, - "Tajaran" = TAJARAN_EGG, - "Akula" = AKULA_EGG, - "Skrell" = SKRELL_EGG, - "Nevrean" = NEVREAN_EGG, - "Sergal" = SERGAL_EGG, - "Human" = HUMAN_EGG, - "Slime" = SLIME_EGG, - "Egg" = EGG_EGG, - "Xenochimera" = XENOCHIMERA_EGG, - "Xenomorph" = XENOMORPH_EGG) + "Unathi", + "Tajara", + "Akula", + "Skrell", + "Sergal", + "Nevrean", + "Human", + "Slime", + "Egg", + "Xenochimera", + "Xenomorph", + "Chocolate", + "Boney", + "Slime glob", + "Chicken", + "Synthetic", + "Cooking error", + "Escape pod", + "Web cocoon", + "Bug cocoon", + "Rock", + "Yellow", + "Blue", + "Green", + "Orange", + "Purple", + "Red", + "Rainbow", + "Spotted pink") var/global/list/tf_vore_egg_types = list( - "Unathi" = /obj/structure/closet/secure_closet/egg/unathi, - "Tajara" = /obj/structure/closet/secure_closet/egg/tajaran, - "Akula" = /obj/structure/closet/secure_closet/egg/shark, - "Skrell" = /obj/structure/closet/secure_closet/egg/skrell, - "Sergal" = /obj/structure/closet/secure_closet/egg/sergal, - "Nevrean" = /obj/structure/closet/secure_closet/egg/nevrean, - "Human" = /obj/structure/closet/secure_closet/egg/human, - "Slime" = /obj/structure/closet/secure_closet/egg/slime, - "Egg" = /obj/structure/closet/secure_closet/egg, - "Xenochimera" = /obj/structure/closet/secure_closet/egg/scree, - "Xenomorph" = /obj/structure/closet/secure_closet/egg/xenomorph) + "Unathi" = /obj/item/weapon/storage/vore_egg/unathi, + "Tajara" = /obj/item/weapon/storage/vore_egg/tajaran, + "Akula" = /obj/item/weapon/storage/vore_egg/shark, + "Skrell" = /obj/item/weapon/storage/vore_egg/skrell, + "Sergal" = /obj/item/weapon/storage/vore_egg/sergal, + "Nevrean" = /obj/item/weapon/storage/vore_egg/nevrean, + "Human" = /obj/item/weapon/storage/vore_egg/human, + "Slime" = /obj/item/weapon/storage/vore_egg/slime, + "Egg" = /obj/item/weapon/storage/vore_egg, + "Xenochimera" = /obj/item/weapon/storage/vore_egg/scree, + "Xenomorph" = /obj/item/weapon/storage/vore_egg/xenomorph, + "Chocolate" = /obj/item/weapon/storage/vore_egg/chocolate, + "Boney" = /obj/item/weapon/storage/vore_egg/owlpellet, + "Slime glob" = /obj/item/weapon/storage/vore_egg/slimeglob, + "Chicken" = /obj/item/weapon/storage/vore_egg/chicken, + "Synthetic" = /obj/item/weapon/storage/vore_egg/synthetic, + "Cooking error" = /obj/item/weapon/storage/vore_egg/badrecipe, + "Escape pod" = /obj/item/weapon/storage/vore_egg/escapepod, + "Web cocoon" = /obj/item/weapon/storage/vore_egg/cocoon, + "Bug cocoon" = /obj/item/weapon/storage/vore_egg/bugcocoon, + "Rock" = /obj/item/weapon/storage/vore_egg/rock, + "Yellow" = /obj/item/weapon/storage/vore_egg/yellow, + "Blue" = /obj/item/weapon/storage/vore_egg/blue, + "Green" = /obj/item/weapon/storage/vore_egg/green, + "Orange" = /obj/item/weapon/storage/vore_egg/orange, + "Purple" = /obj/item/weapon/storage/vore_egg/purple, + "Red" = /obj/item/weapon/storage/vore_egg/red, + "Rainbow" = /obj/item/weapon/storage/vore_egg/rainbow, + "Spotted pink" = /obj/item/weapon/storage/vore_egg/pinkspots) var/global/list/edible_trash = list(/obj/item/broken_device, /obj/item/clothing/accessory/collar, //TFF 10/7/19 - add option to nom collars, @@ -180,7 +218,8 @@ var/global/list/edible_trash = list(/obj/item/broken_device, /obj/item/weapon/storage/fancy/cigarettes, /obj/item/weapon/storage/fancy/crayons, /obj/item/weapon/storage/fancy/egg_box, - /obj/item/weapon/storage/wallet) + /obj/item/weapon/storage/wallet, + /obj/item/weapon/storage/vore_egg) var/global/list/contamination_flavors = list( "Generic" = contamination_flavors_generic, @@ -457,7 +496,7 @@ var/global/list/remainless_species = list(SPECIES_PROMETHEAN, for(var/path in paths) var/datum/sprite_accessory/hair_accessory/instance = new path() hair_accesories_list[path] = instance - + // Custom species traits paths = typesof(/datum/trait) - /datum/trait for(var/path in paths) @@ -472,6 +511,8 @@ var/global/list/remainless_species = list(SPECIES_PROMETHEAN, negative_traits[path] = instance if(0) neutral_traits[path] = instance + if(!(instance.custom_only)) + everyone_traits[path] = instance if(0.1 to INFINITY) positive_traits[path] = instance diff --git a/code/_helpers/logging.dm b/code/_helpers/logging.dm index 3bef9b4f15..56f2882957 100644 --- a/code/_helpers/logging.dm +++ b/code/_helpers/logging.dm @@ -65,45 +65,110 @@ if (config.log_say) WRITE_LOG(diary, "SAY: [speaker.simple_info_line()]: [html_decode(text)]") - //Log the message to in-game dialogue logs, as well. + //Log the message to in-game dialogue logs, as well. //CHOMPEdit Begin if(speaker.client) - speaker.dialogue_log += "([time_stamp()]) ([speaker]/[speaker.client]) SAY: - [text]" - GLOB.round_text_log += "([time_stamp()]) ([speaker]/[speaker.client]) SAY: - [text]" + //speaker.dialogue_log += "([time_stamp()]) ([speaker]/[speaker.client]) SAY: - [text]" + if(!SSdbcore.IsConnected()) + establish_db_connection() + if(!SSdbcore.IsConnected()) + return null + var/DBQuery/query_insert = SSdbcore.NewQuery("INSERT INTO erro_dialog (mid, time, ckey, mob, type, message) VALUES (null, NOW(), :sender_ckey, :sender_mob, :message_type, :message_content)", \ + list("sender_ckey" = speaker.ckey, "sender_mob" = speaker.real_name, "message_type" = "say", "message_content" = text)) + if(!query_insert.Execute()) + log_debug("Error during logging: "+query_insert.ErrorMsg()) + qdel(query_insert) + return + qdel(query_insert) + //GLOB.round_text_log += "([time_stamp()]) ([speaker]/[speaker.client]) SAY: - [text]" + //CHOMPEdit End /proc/log_ooc(text, client/user) if (config.log_ooc) WRITE_LOG(diary, "OOC: [user.simple_info_line()]: [html_decode(text)]") - - GLOB.round_text_log += "([time_stamp()]) ([user]) OOC: - [text]" + if(!SSdbcore.IsConnected()) + establish_db_connection() + if(!SSdbcore.IsConnected()) + return null + var/DBQuery/query_insert = SSdbcore.NewQuery("INSERT INTO erro_dialog (mid, time, ckey, mob, type, message) VALUES (null, NOW(), :sender_ckey, :sender_mob, :message_type, :message_content)", \ + list("sender_ckey" = user.ckey, "sender_mob" = user.mob.real_name, "message_type" = "ooc", "message_content" = text)) + if(!query_insert.Execute()) + log_debug("Error during logging: "+query_insert.ErrorMsg()) + qdel(query_insert) + return + qdel(query_insert) + //GLOB.round_text_log += "([time_stamp()]) ([user]) OOC: - [text]" /proc/log_aooc(text, client/user) if (config.log_ooc) WRITE_LOG(diary, "AOOC: [user.simple_info_line()]: [html_decode(text)]") - - GLOB.round_text_log += "([time_stamp()]) ([user]) AOOC: - [text]" + if(!SSdbcore.IsConnected()) + establish_db_connection() + if(!SSdbcore.IsConnected()) + return null + var/DBQuery/query_insert = SSdbcore.NewQuery("INSERT INTO erro_dialog (mid, time, ckey, mob, type, message) VALUES (null, NOW(), :sender_ckey, :sender_mob, :message_type, :message_content)", \ + list("sender_ckey" = user.ckey, "sender_mob" = user.mob.real_name, "message_type" = "aooc", "message_content" = text)) + if(!query_insert.Execute()) + log_debug("Error during logging: "+query_insert.ErrorMsg()) + qdel(query_insert) + return + qdel(query_insert) + //GLOB.round_text_log += "([time_stamp()]) ([user]) AOOC: - [text]" /proc/log_looc(text, client/user) if (config.log_ooc) WRITE_LOG(diary, "LOOC: [user.simple_info_line()]: [html_decode(text)]") - - GLOB.round_text_log += "([time_stamp()]) ([user]) LOOC: - [text]" + if(!SSdbcore.IsConnected()) + establish_db_connection() + if(!SSdbcore.IsConnected()) + return null + var/DBQuery/query_insert = SSdbcore.NewQuery("INSERT INTO erro_dialog (mid, time, ckey, mob, type, message) VALUES (null, NOW(), :sender_ckey, :sender_mob, :message_type, :message_content)", \ + list("sender_ckey" = user.ckey, "sender_mob" = user.mob.real_name, "message_type" = "looc", "message_content" = text)) + if(!query_insert.Execute()) + log_debug("Error during logging: "+query_insert.ErrorMsg()) + qdel(query_insert) + return + qdel(query_insert) + //GLOB.round_text_log += "([time_stamp()]) ([user]) LOOC: - [text]" /proc/log_whisper(text, mob/speaker) if (config.log_whisper) WRITE_LOG(diary, "WHISPER: [speaker.simple_info_line()]: [html_decode(text)]") if(speaker.client) - speaker.dialogue_log += "([time_stamp()]) ([speaker]/[speaker.client]) SAY: - [text]" - GLOB.round_text_log += "([time_stamp()]) ([speaker]/[speaker.client]) SAY: - [text]" + //speaker.dialogue_log += "([time_stamp()]) ([speaker]/[speaker.client]) SAY: - [text]" + //GLOB.round_text_log += "([time_stamp()]) ([speaker]/[speaker.client]) SAY: - [text]" + if(!SSdbcore.IsConnected()) + establish_db_connection() + if(!SSdbcore.IsConnected()) + return null + var/DBQuery/query_insert = SSdbcore.NewQuery("INSERT INTO erro_dialog (mid, time, ckey, mob, type, message) VALUES (null, NOW(), :sender_ckey, :sender_mob, :message_type, :message_content)", \ + list("sender_ckey" = speaker.ckey, "sender_mob" = speaker.real_name, "message_type" = "whisper", "message_content" = text)) + if(!query_insert.Execute()) + log_debug("Error during logging: "+query_insert.ErrorMsg()) + qdel(query_insert) + return + qdel(query_insert) /proc/log_emote(text, mob/speaker) if (config.log_emote) WRITE_LOG(diary, "EMOTE: [speaker.simple_info_line()]: [html_decode(text)]") - + //CHOMPEdit Begin if(speaker.client) - speaker.dialogue_log += "([time_stamp()]) ([speaker]/[speaker.client]) EMOTE: - [text]" - GLOB.round_text_log += "([time_stamp()]) ([speaker]/[speaker.client]) EMOTE: - [text]" + //speaker.dialogue_log += "([time_stamp()]) ([speaker]/[speaker.client]) EMOTE: - [text]" + //GLOB.round_text_log += "([time_stamp()]) ([speaker]/[speaker.client]) EMOTE: - [text]" + if(!SSdbcore.IsConnected()) + establish_db_connection() + if(!SSdbcore.IsConnected()) + return null + var/DBQuery/query_insert = SSdbcore.NewQuery("INSERT INTO erro_dialog (mid, time, ckey, mob, type, message) VALUES (null, NOW(), :sender_ckey, :sender_mob, :message_type, :message_content)", \ + list("sender_ckey" = speaker.ckey, "sender_mob" = speaker.real_name, "message_type" = "emote", "message_content" = text)) + if(!query_insert.Execute()) + log_debug("Error during logging: "+query_insert.ErrorMsg()) + qdel(query_insert) + return + qdel(query_insert) + //CHOMPEdit End /proc/log_attack(attacker, defender, message) if (config.log_attack) @@ -124,14 +189,40 @@ /proc/log_ghostsay(text, mob/speaker) if (config.log_say) WRITE_LOG(diary, "DEADCHAT: [speaker.simple_info_line()]: [html_decode(text)]") - - speaker.dialogue_log += "([time_stamp()]) ([speaker]/[speaker.client]) DEADSAY: - [text]" - GLOB.round_text_log += "([time_stamp()]) ([src]/[speaker.client]) DEADSAY: - [text]" - + //CHOMPEdit Begin + if(speaker.client) + if(!SSdbcore.IsConnected()) + establish_db_connection() + if(!SSdbcore.IsConnected()) + return null + var/DBQuery/query_insert = SSdbcore.NewQuery("INSERT INTO erro_dialog (mid, time, ckey, mob, type, message) VALUES (null, NOW(), :sender_ckey, :sender_mob, :message_type, :message_content)", \ + list("sender_ckey" = speaker.ckey, "sender_mob" = speaker.real_name, "message_type" = "deadsay", "message_content" = text)) + if(!query_insert.Execute()) + log_debug("Error during logging: "+query_insert.ErrorMsg()) + qdel(query_insert) + return + qdel(query_insert) + //speaker.dialogue_log += "([time_stamp()]) ([speaker]/[speaker.client]) DEADSAY: - [text]" + //GLOB.round_text_log += "([time_stamp()]) ([src]/[speaker.client]) DEADSAY: - [text]" + //CHOMPEdit End /proc/log_ghostemote(text, mob/speaker) if (config.log_emote) WRITE_LOG(diary, "DEADEMOTE: [speaker.simple_info_line()]: [html_decode(text)]") + //CHOMPEdit Begin + if(speaker.client) + if(!SSdbcore.IsConnected()) + establish_db_connection() + if(!SSdbcore.IsConnected()) + return null + var/DBQuery/query_insert = SSdbcore.NewQuery("INSERT INTO erro_dialog (mid, time, ckey, mob, type, message) VALUES (null, NOW(), :sender_ckey, :sender_mob, :message_type, :message_content)", \ + list("sender_ckey" = speaker.ckey, "sender_mob" = speaker.real_name, "message_type" = "deademote", "message_content" = text)) + if(!query_insert.Execute()) + log_debug("Error during logging: "+query_insert.ErrorMsg()) + qdel(query_insert) + return + qdel(query_insert) + //CHOMPEdit End /proc/log_adminwarn(text) if (config.log_adminwarn) @@ -140,10 +231,23 @@ /proc/log_pda(text, mob/speaker) if (config.log_pda) WRITE_LOG(diary, "PDA: [speaker.simple_info_line()]: [html_decode(text)]") + //CHOMPEdit Begin + if(speaker.client) + if(!SSdbcore.IsConnected()) + establish_db_connection() + if(!SSdbcore.IsConnected()) + return null + var/DBQuery/query_insert = SSdbcore.NewQuery("INSERT INTO erro_dialog (mid, time, ckey, mob, type, message) VALUES (null, NOW(), :sender_ckey, :sender_mob, :message_type, :message_content)", \ + list("sender_ckey" = speaker.ckey, "sender_mob" = speaker.real_name, "message_type" = "pda", "message_content" = text)) + if(!query_insert.Execute()) + log_debug("Error during logging: "+query_insert.ErrorMsg()) + qdel(query_insert) + return + qdel(query_insert) - speaker.dialogue_log += "([time_stamp()]) ([speaker]/[speaker.client]) MSG: - [text]" - GLOB.round_text_log += "([time_stamp()]) ([speaker]/[speaker.client]) MSG: - [text]" - + //speaker.dialogue_log += "([time_stamp()]) ([speaker]/[speaker.client]) MSG: - [text]" + //GLOB.round_text_log += "([time_stamp()]) ([speaker]/[speaker.client]) MSG: - [text]" + //CHOMPEdit End /proc/log_to_dd(text) to_world_log(text) //this comes before the config check because it can't possibly runtime diff --git a/code/_helpers/logging_vr.dm b/code/_helpers/logging_vr.dm index aa117125dc..7771b49482 100644 --- a/code/_helpers/logging_vr.dm +++ b/code/_helpers/logging_vr.dm @@ -1,11 +1,53 @@ /proc/log_nsay(text, inside, mob/speaker) if (config.log_say) WRITE_LOG(diary, "NSAY (NIF:[inside]): [speaker.simple_info_line()]: [html_decode(text)]") + //CHOMPEdit Begin + if(speaker.client) + if(!SSdbcore.IsConnected()) + establish_db_connection() + if(!SSdbcore.IsConnected()) + return null + var/DBQuery/query_insert = SSdbcore.NewQuery("INSERT INTO erro_dialog (mid, time, ckey, mob, type, message) VALUES (null, NOW(), :sender_ckey, :sender_mob, :message_type, :message_content)", \ + list("sender_ckey" = speaker.ckey, "sender_mob" = speaker.real_name, "message_type" = "nsay", "message_content" = text)) + if(!query_insert.Execute()) + log_debug("Error during logging: "+query_insert.ErrorMsg()) + qdel(query_insert) + return + qdel(query_insert) + //CHOMPEdit End /proc/log_nme(text, inside, mob/speaker) if (config.log_emote) WRITE_LOG(diary, "NME (NIF:[inside]): [speaker.simple_info_line()]: [html_decode(text)]") + //CHOMPEdit Begin + if(speaker.client) + if(!SSdbcore.IsConnected()) + establish_db_connection() + if(!SSdbcore.IsConnected()) + return null + var/DBQuery/query_insert = SSdbcore.NewQuery("INSERT INTO erro_dialog (mid, time, ckey, mob, type, message) VALUES (null, NOW(), :sender_ckey, :sender_mob, :message_type, :message_content)", \ + list("sender_ckey" = speaker.ckey, "sender_mob" = speaker.real_name, "message_type" = "nme", "message_content" = text)) + if(!query_insert.Execute()) + log_debug("Error during logging: "+query_insert.ErrorMsg()) + qdel(query_insert) + return + qdel(query_insert) + //CHOMPEdit End /proc/log_subtle(text, mob/speaker) if (config.log_emote) WRITE_LOG(diary, "SUBTLE: [speaker.simple_info_line()]: [html_decode(text)]") + //CHOMPEdit Begin + if(speaker.client) + if(!SSdbcore.IsConnected()) + establish_db_connection() + if(!SSdbcore.IsConnected()) + return null + var/DBQuery/query_insert = SSdbcore.NewQuery("INSERT INTO erro_dialog (mid, time, ckey, mob, type, message) VALUES (null, NOW(), :sender_ckey, :sender_mob, :message_type, :message_content)", \ + list("sender_ckey" = speaker.ckey, "sender_mob" = speaker.real_name, "message_type" = "subtle", "message_content" = text)) + if(!query_insert.Execute()) + log_debug("Error during logging: "+query_insert.ErrorMsg()) + qdel(query_insert) + return + qdel(query_insert) + //CHOMPEdit End diff --git a/code/_helpers/mobs.dm b/code/_helpers/mobs.dm index d4400da8df..c3ea7946a4 100644 --- a/code/_helpers/mobs.dm +++ b/code/_helpers/mobs.dm @@ -110,7 +110,7 @@ Proc for attack log creation, because really why not 6 is additional information, anything that needs to be added */ -/proc/add_attack_logs(mob/user, mob/target, what_done, var/admin_notify = TRUE) +/proc/add_attack_logs(mob/user, mob/target, what_done, var/admin_notify = TRUE, var/use_async = TRUE) //CHOMPEdit if(islist(target)) //Multi-victim adding var/list/targets = target for(var/mob/M in targets) @@ -120,10 +120,17 @@ Proc for attack log creation, because really why not var/user_str = key_name(user) var/target_str = key_name(target) - if(ismob(user)) - user.attack_log += text("\[[time_stamp()]\] Attacked [target_str]: [what_done]") + if(ismob(user)) //CHOMPEdit Begin + //user.attack_log += text("\[[time_stamp()]\] Attacked [target_str]: [what_done]") + var/DBQuery/query_insert = SSdbcore.NewQuery("INSERT INTO erro_attacklog (id, time, ckey, mob, message) VALUES (null, NOW(), :t_ckey, :t_mob, :t_content)", list("t_ckey" = user.ckey, "t_mob" = user.real_name, "t_content" = "Attacked [target_str]: [what_done]")) + query_insert.Execute(async=use_async) + qdel(query_insert) if(ismob(target)) - target.attack_log += text("\[[time_stamp()]\] Attacked by [user_str]: [what_done]") + //target.attack_log += text("\[[time_stamp()]\] Attacked by [user_str]: [what_done]") + var/DBQuery/query_insert = SSdbcore.NewQuery("INSERT INTO erro_attacklog (id, time, ckey, mob, message) VALUES (null, NOW(), :t_ckey, :t_mob, :t_content)", list("t_ckey" = target.ckey, "t_mob" = target.real_name, "t_content" = "Attacked by [user_str]: [what_done]")) + query_insert.Execute(async=use_async) + qdel(query_insert) + //CHOMPEdit End log_attack(user_str,target_str,what_done) if(admin_notify) msg_admin_attack("[key_name_admin(user)] vs [target_str]: [what_done]") diff --git a/code/_helpers/text.dm b/code/_helpers/text.dm index 2d59fa6b6a..a6473ddab2 100644 --- a/code/_helpers/text.dm +++ b/code/_helpers/text.dm @@ -14,9 +14,11 @@ */ // Run all strings to be used in an SQL query through this proc first to properly escape out injection attempts. -/proc/sanitizeSQL(var/t as text) - var/sqltext = dbcon.Quote(t); - return copytext(sqltext, 2, length(sqltext));//Quote() adds quotes around input, we already do that +/proc/sanitizeSQL(var/t as text) + //var/sqltext = dbcon.Quote(t); //CHOMPEdit Begin + //return copytext(sqltext, 2, length(sqltext));//Quote() adds quotes around input, we already do that + return t + //CHOMPEdit End /* * Text sanitization diff --git a/code/_helpers/typelists.dm b/code/_helpers/typelists.dm new file mode 100644 index 0000000000..f271b9204d --- /dev/null +++ b/code/_helpers/typelists.dm @@ -0,0 +1,43 @@ +GLOBAL_LIST_EMPTY(typelists) + +#ifndef TESTING + +/datum/proc/typelist(key, list/values = list()) + var/list/mytypelist = GLOB.typelists[type] || (GLOB.typelists[type] = list()) + return mytypelist[key] || (mytypelist[key] = values.Copy()) + +#else +// mostly the same code as above, just more verbose, slower and has tallying for saved lists +/datum/proc/typelist(key, list/values) + if (!values) + values = list() + GLOB.typelistkeys |= key + if (GLOB.typelists[type]) + if (GLOB.typelists[type][key]) + GLOB.typelists[type]["[key]-saved"]++ + return GLOB.typelists[type][key] + else + GLOB.typelists[type][key] = values.Copy() + else + GLOB.typelists[type] = list() + GLOB.typelists[type][key] = values.Copy() + return GLOB.typelists[type][key] + +GLOBAL_LIST_EMPTY(typelistkeys) + +/proc/tallytypelistsavings() + var/savings = list() + var/saveditems = list() + for (var/key in GLOB.typelistkeys) + savings[key] = 0 + saveditems[key] = 0 + + for (var/type in GLOB.typelists) + for (var/saving in savings) + if (GLOB.typelists[type]["[saving]-saved"]) + savings[saving] += GLOB.typelists[type]["[saving]-saved"] + saveditems[saving] += (GLOB.typelists[type]["[saving]-saved"] * length(GLOB.typelists[type][saving])) + + for (var/saving in savings) + to_chat(world, "Savings for [saving]: [savings[saving]] lists, [saveditems[saving]] items") +#endif \ No newline at end of file diff --git a/code/_helpers/unsorted.dm b/code/_helpers/unsorted.dm index 00ad3a0a58..c7b399e4ee 100644 --- a/code/_helpers/unsorted.dm +++ b/code/_helpers/unsorted.dm @@ -1283,6 +1283,9 @@ var/mob/dview/dview_mob = new /proc/dview(var/range = world.view, var/center, var/invis_flags = 0) if(!center) return + if(!dview_mob) //VOREStation Add: Debugging + dview_mob = new + log_error("Had to recreate the dview mob!") dview_mob.loc = center diff --git a/code/_onclick/click.dm b/code/_onclick/click.dm index 6a4579f191..b29a1192d9 100644 --- a/code/_onclick/click.dm +++ b/code/_onclick/click.dm @@ -354,19 +354,13 @@ facedir(direction) /obj/screen/click_catcher + name = "Darkness" icon = 'icons/mob/screen_gen.dmi' icon_state = "click_catcher" plane = CLICKCATCHER_PLANE + layer = LAYER_HUD_UNDER mouse_opacity = 2 - screen_loc = "CENTER-7,CENTER-7" - -/obj/screen/click_catcher/proc/MakeGreed() - . = list() - for(var/i = 0, i<15, i++) - for(var/j = 0, j<15, j++) - var/obj/screen/click_catcher/CC = new() - CC.screen_loc = "NORTH-[i],EAST-[j]" - . += CC + screen_loc = "SOUTHWEST to NORTHEAST" /obj/screen/click_catcher/Click(location, control, params) var/list/modifiers = params2list(params) @@ -374,7 +368,8 @@ var/mob/living/carbon/C = usr C.swap_hand() else - var/turf/T = screen_loc2turf(screen_loc, get_turf(usr)) + var/list/P = params2list(params) + var/turf/T = screen_loc2turf(P["screen-loc"], get_turf(usr)) if(T) T.Click(location, control, params) . = 1 diff --git a/code/_onclick/hud/screen_objects_vr.dm b/code/_onclick/hud/screen_objects_vr.dm index b3388f7bf7..1d8df98a38 100644 --- a/code/_onclick/hud/screen_objects_vr.dm +++ b/code/_onclick/hud/screen_objects_vr.dm @@ -11,6 +11,11 @@ var/mob/living/simple_mob/shadekin/SK = usr if(istype(SK)) to_chat(usr,"Energy: [SK.energy] ([SK.dark_gains])") + if("shadekin status") + var/turf/T = get_turf(usr) + if(T) + var/darkness = round(1 - T.get_lumcount(),0.1) + to_chat(usr,"Darkness: [darkness]") var/mob/living/carbon/human/H = usr if(istype(H) && istype(H.species, /datum/species/shadekin)) to_chat(usr,"Energy: [H.shadekin_get_energy(H)]") diff --git a/code/controllers/subsystems/dbcore.dm b/code/controllers/subsystems/dbcore.dm new file mode 100644 index 0000000000..09dce0c13c --- /dev/null +++ b/code/controllers/subsystems/dbcore.dm @@ -0,0 +1,370 @@ +SUBSYSTEM_DEF(dbcore) + name = "Database" + flags = SS_BACKGROUND + wait = 1 MINUTES + init_order = INIT_ORDER_DBCORE + var/failed_connection_timeout = 0 + + var/schema_mismatch = 0 + var/db_minor = 0 + var/db_major = 0 + var/failed_connections = 0 + + var/last_error + var/list/active_queries = list() + + var/connection // Arbitrary handle returned from rust_g. + +/datum/controller/subsystem/dbcore/Initialize() + return ..() + +/datum/controller/subsystem/dbcore/fire() + for(var/I in active_queries) + var/DBQuery/Q = I + if(world.time - Q.last_activity_time > (5 MINUTES)) + message_admins("Found undeleted query, please check the server logs and notify coders.") + log_debug("Undeleted query: \"[Q.sql]\" LA: [Q.last_activity] LAT: [Q.last_activity_time]") + qdel(Q) + if(MC_TICK_CHECK) + return + +/datum/controller/subsystem/dbcore/Recover() + connection = SSdbcore.connection + +/datum/controller/subsystem/dbcore/Shutdown() + //This is as close as we can get to the true round end before Disconnect() without changing where it's called, defeating the reason this is a subsystem + if(IsConnected()) + Disconnect() + +//nu +/datum/controller/subsystem/dbcore/can_vv_get(var_name) + return var_name != NAMEOF(src, connection) && var_name != NAMEOF(src, active_queries) && ..() + +/datum/controller/subsystem/dbcore/vv_edit_var(var_name, var_value) + if(var_name == NAMEOF(src, connection)) + return FALSE + return ..() + +/datum/controller/subsystem/dbcore/proc/Connect() + if(IsConnected()) + return TRUE + + if(failed_connection_timeout <= world.time) //it's been more than 5 seconds since we failed to connect, reset the counter + failed_connections = 0 + + if(failed_connections > 5) //If it failed to establish a connection more than 5 times in a row, don't bother attempting to connect for 5 seconds. + failed_connection_timeout = world.time + 50 + return FALSE + + if(!config.sql_enabled) + return FALSE + + var/user = sqlfdbklogin + var/pass = sqlfdbkpass + var/db = sqlfdbkdb + var/address = sqladdress + var/port = text2num(sqlport) + var/timeout = 10 + var/thread_limit = 50 + + var/result = json_decode(rustg_sql_connect_pool(json_encode(list( + "host" = address, + "port" = port, + "user" = user, + "pass" = pass, + "db_name" = db, + "read_timeout" = timeout, + "write_timeout" = timeout, + "max_threads" = thread_limit, + )))) + . = (result["status"] == "ok") + if (.) + connection = result["handle"] + else + connection = null + last_error = result["data"] + log_world("Connect() failed | [last_error]") + ++failed_connections + +/datum/controller/subsystem/dbcore/proc/CheckSchemaVersion() + if(config.sql_enabled) + if(Connect()) + log_world("Database connection established.") + else + log_debug("Your server failed to establish a connection with the database.") + else + log_debug("Database is not enabled in configuration.") + +/*/datum/controller/subsystem/dbcore/proc/SetRoundID() + if(!Connect()) + return + var/DBQuery/query_round_initialize = SSdbcore.NewQuery( + "INSERT INTO [format_table_name("round")] (initialize_datetime, server_ip, server_port) VALUES (Now(), INET_ATON(:internet_address), :port)", + list("internet_address" = world.internet_address || "0", "port" = "[world.port]") + ) + query_round_initialize.Execute(async = FALSE) + GLOB.round_id = "[query_round_initialize.last_insert_id]" + qdel(query_round_initialize) + +/datum/controller/subsystem/dbcore/proc/SetRoundStart() + if(!Connect()) + return + var/DBQuery/query_round_start = SSdbcore.NewQuery( + "UPDATE [format_table_name("round")] SET start_datetime = Now() WHERE id = :round_id", + list("round_id" = GLOB.round_id) + ) + query_round_start.Execute() + qdel(query_round_start) + +/datum/controller/subsystem/dbcore/proc/SetRoundEnd() + if(!Connect()) + return + var/DBQuery/query_round_end = SSdbcore.NewQuery( + "UPDATE [format_table_name("round")] SET end_datetime = Now(), game_mode_result = :game_mode_result, station_name = :station_name WHERE id = :round_id", + list("game_mode_result" = SSticker.mode_result, "station_name" = station_name(), "round_id" = GLOB.round_id) + ) + query_round_end.Execute() + qdel(query_round_end)*/ + +/datum/controller/subsystem/dbcore/proc/Disconnect() + failed_connections = 0 + if (connection) + rustg_sql_disconnect_pool(connection) + connection = null + +/datum/controller/subsystem/dbcore/proc/IsConnected() + if (!config.sql_enabled) + return FALSE + if (!connection) + return FALSE + return json_decode(rustg_sql_connected(connection))["status"] == "online" + +/datum/controller/subsystem/dbcore/proc/ErrorMsg() + if(!config.sql_enabled) + return "Database disabled by configuration" + return last_error + +/datum/controller/subsystem/dbcore/proc/ReportError(error) + last_error = error + +/datum/controller/subsystem/dbcore/proc/NewQuery(sql_query, arguments) + if(IsAdminAdvancedProcCall()) + message_admins("ERROR: Advanced admin proc call led to sql query. Query has been blocked") + return FALSE + return new /DBQuery(connection, sql_query, arguments) + +/datum/controller/subsystem/dbcore/proc/QuerySelect(list/querys, warn = FALSE, qdel = FALSE) + if (!islist(querys)) + if (!istype(querys, /DBQuery)) + CRASH("Invalid query passed to QuerySelect: [querys]") + querys = list(querys) + + for (var/thing in querys) + var/DBQuery/query = thing + if (warn) + INVOKE_ASYNC(query, /DBQuery.proc/warn_execute) + else + INVOKE_ASYNC(query, /DBQuery.proc/Execute) + + for (var/thing in querys) + var/DBQuery/query = thing + UNTIL(!query.in_progress) + if (qdel) + qdel(query) + + + +/* +Takes a list of rows (each row being an associated list of column => value) and inserts them via a single mass query. +Rows missing columns present in other rows will resolve to SQL NULL +You are expected to do your own escaping of the data, and expected to provide your own quotes for strings. +The duplicate_key arg can be true to automatically generate this part of the query + or set to a string that is appended to the end of the query +Ignore_errors instructes mysql to continue inserting rows if some of them have errors. + the erroneous row(s) aren't inserted and there isn't really any way to know why or why errored +Delayed insert mode was removed in mysql 7 and only works with MyISAM type tables, + It was included because it is still supported in mariadb. + It does not work with duplicate_key and the mysql server ignores it in those cases +*/ +/datum/controller/subsystem/dbcore/proc/MassInsert(table, list/rows, duplicate_key = FALSE, ignore_errors = FALSE, delayed = FALSE, warn = FALSE, async = TRUE, special_columns = null) + if (!table || !rows || !istype(rows)) + return + + // Prepare column list + var/list/columns = list() + var/list/has_question_mark = list() + for (var/list/row in rows) + for (var/column in row) + columns[column] = "?" + has_question_mark[column] = TRUE + for (var/column in special_columns) + columns[column] = special_columns[column] + has_question_mark[column] = findtext(special_columns[column], "?") + + // Prepare SQL query full of placeholders + var/list/query_parts = list("INSERT") + if (delayed) + query_parts += " DELAYED" + if (ignore_errors) + query_parts += " IGNORE" + query_parts += " INTO " + query_parts += table + query_parts += "\n([columns.Join(", ")])\nVALUES" + + var/list/arguments = list() + var/has_row = FALSE + for (var/list/row in rows) + if (has_row) + query_parts += "," + query_parts += "\n (" + var/has_col = FALSE + for (var/column in columns) + if (has_col) + query_parts += ", " + if (has_question_mark[column]) + var/name = "p[arguments.len]" + query_parts += replacetext(columns[column], "?", ":[name]") + arguments[name] = row[column] + else + query_parts += columns[column] + has_col = TRUE + query_parts += ")" + has_row = TRUE + + if (duplicate_key == TRUE) + var/list/column_list = list() + for (var/column in columns) + column_list += "[column] = VALUES([column])" + query_parts += "\nON DUPLICATE KEY UPDATE [column_list.Join(", ")]" + else if (duplicate_key != FALSE) + query_parts += duplicate_key + + var/DBQuery/Query = NewQuery(query_parts.Join(), arguments) + if (warn) + . = Query.warn_execute(async) + else + . = Query.Execute(async) + qdel(Query) + +/DBQuery + // Inputs + var/connection + var/sql + var/arguments + + // Status information + var/in_progress + var/last_error + var/last_activity + var/last_activity_time + + // Output + var/list/list/rows + var/next_row_to_take = 1 + var/affected + var/last_insert_id + + var/list/item //list of data values populated by NextRow() + +/DBQuery/New(connection, sql, arguments) + SSdbcore.active_queries[src] = TRUE + Activity("Created") + item = list() + + src.connection = connection + src.sql = sql + src.arguments = arguments + +/DBQuery/Destroy() + Close() + SSdbcore.active_queries -= src + return ..() + +/DBQuery/CanProcCall(proc_name) + //fuck off kevinz + return FALSE + +/DBQuery/proc/Activity(activity) + last_activity = activity + last_activity_time = world.time + +/DBQuery/proc/warn_execute(async = TRUE) + . = Execute(async) + if(!.) + to_chat(usr, "A SQL error occurred during this operation, check the server logs.") + +/DBQuery/proc/Execute(async = TRUE, log_error = TRUE) + Activity("Execute") + if(in_progress) + CRASH("Attempted to start a new query while waiting on the old one") + + if(!SSdbcore.IsConnected()) + last_error = "No connection!" + return FALSE + + var/start_time + if(!async) + start_time = REALTIMEOFDAY + Close() + . = run_query(async) + var/timed_out = !. && findtext(last_error, "Operation timed out") + if(!. && log_error) + log_debug("[last_error] | Query used: [sql] | Arguments: [json_encode(arguments)]") + if(!async && timed_out) + log_debug("Query execution started at [start_time]") + log_debug("Query execution ended at [REALTIMEOFDAY]") + log_debug("Slow query timeout detected.") + log_debug("Query used: [sql]") + slow_query_check() + +/DBQuery/proc/run_query(async) + var/job_result_str + + if (async) + var/job_id = rustg_sql_query_async(connection, sql, json_encode(arguments)) + in_progress = TRUE + UNTIL((job_result_str = rustg_sql_check_query(job_id)) != RUSTG_JOB_NO_RESULTS_YET) + in_progress = FALSE + + if (job_result_str == RUSTG_JOB_ERROR) + last_error = job_result_str + return FALSE + else + job_result_str = rustg_sql_query_blocking(connection, sql, json_encode(arguments)) + + var/result = json_decode(job_result_str) + switch (result["status"]) + if ("ok") + rows = result["rows"] + affected = result["affected"] + last_insert_id = result["last_insert_id"] + return TRUE + if ("err") + last_error = result["data"] + return FALSE + if ("offline") + last_error = "offline" + return FALSE + +/DBQuery/proc/RowCount() + return rows.len + +/DBQuery/proc/slow_query_check() + message_admins("HEY! A database query timed out.") + +/DBQuery/proc/NextRow(async = TRUE) + Activity("NextRow") + + if (rows && next_row_to_take <= rows.len) + item = rows[next_row_to_take] + next_row_to_take++ + return !!item + else + return FALSE + +/DBQuery/proc/ErrorMsg() + return last_error + +/DBQuery/proc/Close() + rows = null + item = null \ No newline at end of file diff --git a/code/controllers/subsystems/persist_vr.dm b/code/controllers/subsystems/persist_vr.dm index e87ca93ca3..c571c532e4 100644 --- a/code/controllers/subsystems/persist_vr.dm +++ b/code/controllers/subsystems/persist_vr.dm @@ -20,7 +20,7 @@ SUBSYSTEM_DEF(persist) return establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL src.currentrun.Cut() return if(!resumed) @@ -84,10 +84,11 @@ SUBSYSTEM_DEF(persist) var/sql_dpt = sql_sanitize_text(department_earning) var/sql_bal = text2num("[C.department_hours[department_earning]]") var/sql_total = text2num("[C.play_hours[department_earning]]") - var/DBQuery/query = dbcon.NewQuery("INSERT INTO vr_player_hours (ckey, department, hours, total_hours) VALUES ('[sql_ckey]', '[sql_dpt]', [sql_bal], [sql_total]) ON DUPLICATE KEY UPDATE hours = VALUES(hours), total_hours = VALUES(total_hours)") + var/list/sqlargs = list("t_ckey" = sql_ckey, "t_department" = sql_dpt) //CHOMPEdit TGSQL + var/DBQuery/query = SSdbcore.NewQuery("INSERT INTO vr_player_hours (ckey, department, hours, total_hours) VALUES (:t_ckey, :t_department, [sql_bal], [sql_total]) ON DUPLICATE KEY UPDATE hours = VALUES(hours), total_hours = VALUES(total_hours)", sqlargs) //CHOMPEdit TGSQL if(!query.Execute()) //CHOMPEdit log_admin(query.ErrorMsg()) //CHOMPEdit - + qdel(query) //CHOMPEdit TGSQL if (MC_TICK_CHECK) return diff --git a/code/controllers/subsystems/ticker.dm b/code/controllers/subsystems/ticker.dm index 5d6aaf1fc3..fcc076231d 100644 --- a/code/controllers/subsystems/ticker.dm +++ b/code/controllers/subsystems/ticker.dm @@ -470,15 +470,15 @@ var/global/datum/controller/subsystem/ticker/ticker for (var/mob/living/silicon/ai/aiPlayer in mob_list) if (aiPlayer.stat != 2) - to_world("[aiPlayer.name] (Played by: [aiPlayer.key])'s laws at the end of the round were:") + to_world("[aiPlayer.name]'s laws at the end of the round were:") //CHOMPedit: stop doxxing of silicons else - to_world("[aiPlayer.name] (Played by: [aiPlayer.key])'s laws when it was deactivated were:") + to_world("[aiPlayer.name]'s laws when it was deactivated were:") //CHOMPedit: stop doxxing of silicons aiPlayer.show_laws(1) if (aiPlayer.connected_robots.len) var/robolist = "The AI's loyal minions were: " for(var/mob/living/silicon/robot/robo in aiPlayer.connected_robots) - robolist += "[robo.name][robo.stat?" (Deactivated) (Played by: [robo.key]), ":" (Played by: [robo.key]), "]" + robolist += "[robo.name][robo.stat?" (Deactivated), ":" , "]" //CHOMPedit: stop doxxing of silicons to_world("[robolist]") var/dronecount = 0 @@ -491,9 +491,9 @@ var/global/datum/controller/subsystem/ticker/ticker if (!robo.connected_ai) if (robo.stat != 2) - to_world("[robo.name] (Played by: [robo.key]) survived as an AI-less stationbound synthetic! Its laws were:") + to_world("[robo.name] survived as an AI-less stationbound synthetic! Its laws were:") //CHOMPedit: stop doxxing of silicons else - to_world("[robo.name] (Played by: [robo.key]) was unable to survive the rigors of being a stationbound synthetic without an AI. Its laws were:") + to_world("[robo.name] was unable to survive the rigors of being a stationbound synthetic without an AI. Its laws were:") //CHOMPedit: stop doxxing of silicons if(robo) //How the hell do we lose robo between here and the world messages directly above this? robo.laws.show_laws(world) diff --git a/code/datums/autolathe/devices.dm b/code/datums/autolathe/devices.dm index 9c6ab5bb97..eed4839159 100644 --- a/code/datums/autolathe/devices.dm +++ b/code/datums/autolathe/devices.dm @@ -26,6 +26,12 @@ name = "mechanical trap" path =/obj/item/weapon/beartrap +/datum/category_item/autolathe/devices/barbedwire + name = "barbed wire" + path = /obj/item/weapon/material/barbedwire + hidden = 1 + resources = list(DEFAULT_WALL_MATERIAL = 10000) + /datum/category_item/autolathe/devices/electropack name = "electropack" path =/obj/item/device/radio/electropack diff --git a/code/datums/autolathe/tools.dm b/code/datums/autolathe/tools.dm index 9e9a87ea71..9b88a496fa 100644 --- a/code/datums/autolathe/tools.dm +++ b/code/datums/autolathe/tools.dm @@ -48,6 +48,11 @@ path = /obj/item/weapon/reagent_containers/spray resources = list(MAT_PLASTIC = 2000) +/datum/category_item/autolathe/devices/slowwire + name = "snare wire" + path = /obj/item/weapon/material/barbedwire/plastic + resources = list(MAT_PLASTIC = 10000) + /datum/category_item/autolathe/tools/spraynozzle name = "spray nozzle" path = /obj/item/weapon/reagent_containers/spray diff --git a/code/datums/supplypacks/misc.dm b/code/datums/supplypacks/misc.dm index c8da9d206c..e2ff8049c9 100644 --- a/code/datums/supplypacks/misc.dm +++ b/code/datums/supplypacks/misc.dm @@ -85,6 +85,7 @@ /obj/item/toy/plushie/foxbear, /obj/item/toy/plushie/nukeplushie, /obj/item/toy/plushie/otter, + /obj/item/toy/plushie/vox, //VOREStation Add End //YawnWider Add Start /obj/item/toy/plushie/teshari/_yw, diff --git a/code/datums/supplypacks/robotics_vr.dm b/code/datums/supplypacks/robotics_vr.dm index 5e06210079..460831fbac 100644 --- a/code/datums/supplypacks/robotics_vr.dm +++ b/code/datums/supplypacks/robotics_vr.dm @@ -1,3 +1,4 @@ +/* //CHOMPedit commented micromech stuff, because fuck this trash /datum/supply_pack/robotics/mecha_gopher name = "Circuit Crate (\"Gopher\" APLU)" contains = list( @@ -31,7 +32,7 @@ cost = 25 containertype = /obj/structure/closet/crate/secure/science containername = "APLU \"Weasel\" Circuit Crate" - access = access_robotics + access = access_robotics */ /datum/supply_pack/robotics/some_robolimbs name = "Basic Robolimb Blueprints" diff --git a/code/datums/uplink/tools.dm b/code/datums/uplink/tools.dm index 51d7ec7cd2..eee41e9699 100644 --- a/code/datums/uplink/tools.dm +++ b/code/datums/uplink/tools.dm @@ -92,6 +92,12 @@ desc = "A device which is capable of disrupting subspace communications, preventing the use of headsets, PDAs, and communicators within \ a radius of seven meters. It runs off weapon cells, which can be replaced as needed. One cell will last for approximately ten minutes." +/datum/uplink_item/item/tools/wall_elecrtifier + name = "Wall Electrifier" + item_cost = 10 + path = /obj/item/weapon/cell/spike + desc = "A modified powercell which will electrify walls and reinforced floors in a 3x3 tile range around it. Always active." + /datum/uplink_item/item/tools/emag name = "Cryptographic Sequencer" item_cost = 30 diff --git a/code/datums/uplink/uplink_items.dm b/code/datums/uplink/uplink_items.dm index 8d9de8f732..a4434be0df 100644 --- a/code/datums/uplink/uplink_items.dm +++ b/code/datums/uplink/uplink_items.dm @@ -8,7 +8,7 @@ var/datum/uplink/uplink = new() /datum/uplink/New(var/type) items_assoc = list() items = init_subtypes(/datum/uplink_item) - categories = init_subtypes(/datum/uplink_category) + categories = init_subtypes(/datum/uplink_category) categories = dd_sortedObjectList(categories) for(var/datum/uplink_item/item in items) @@ -51,7 +51,7 @@ var/datum/uplink/uplink = new() if(!can_buy(U)) return - if(U.CanUseTopic(user, GLOB.tgui_inventory_state) != STATUS_INTERACTIVE) + if(U.tgui_status(user, GLOB.tgui_inventory_state) != STATUS_INTERACTIVE) return var/cost = cost(U.uses, U) diff --git a/code/datums/wires/mines.dm b/code/datums/wires/mines.dm index 209fcc4c30..5e757ad16c 100644 --- a/code/datums/wires/mines.dm +++ b/code/datums/wires/mines.dm @@ -1,5 +1,5 @@ /datum/wires/mines - wire_count = 6 + wire_count = 7 randomize = TRUE holder_type = /obj/effect/mine proper_name = "Explosive Wires" @@ -7,6 +7,7 @@ /datum/wires/mines/New(atom/_holder) wires = list(WIRE_EXPLODE, WIRE_EXPLODE_DELAY, WIRE_DISARM, WIRE_BADDISARM) return ..() +#define WIRE_TRAP 64 /datum/wires/mines/get_status() . = ..() @@ -29,7 +30,13 @@ if(WIRE_DISARM) C.visible_message("[bicon(C)] *click!*", "[bicon(C)] *click!*") - new C.mineitemtype(get_turf(C)) + var/obj/effect/mine/MI = new C.mineitemtype(get_turf(C)) + + if(C.trap) + MI.trap = C.trap + C.trap = null + MI.trap.forceMove(MI) + spawn(0) qdel(C) @@ -37,6 +44,15 @@ C.visible_message("[bicon(C)] *BEEPBEEPBEEP*", "[bicon(C)] *BEEPBEEPBEEP*") spawn(20) C.explode() + + if(WIRE_TRAP) + C.visible_message("[bicon(C)] *click!*", "[bicon(C)] *click!*") + + if(mend) + C.visible_message("[bicon(C)] - The mine recalibrates[C.camo_net ? ", revealing \the [C.trap] inside." : "."]") + + C.alpha = 255 + ..() /datum/wires/mines/on_pulse(wire) @@ -57,6 +73,10 @@ if(WIRE_BADDISARM) C.visible_message("[bicon(C)] *ping*", "[bicon(C)] *ping*") + + if(WIRE_TRAP) + C.visible_message("[bicon(C)] *ping*", "[bicon(C)] *ping*") + ..() /datum/wires/mines/interactable(mob/user) diff --git a/code/defines/procs/statistics.dm b/code/defines/procs/statistics.dm index 9ea9023de4..05ab212535 100644 --- a/code/defines/procs/statistics.dm +++ b/code/defines/procs/statistics.dm @@ -7,14 +7,15 @@ proc/sql_poll_population() if(M.client) playercount += 1 establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL log_game("SQL ERROR during population polling. Failed to connect.") else var/sqltime = time2text(world.realtime, "YYYY-MM-DD hh:mm:ss") - var/DBQuery/query = dbcon_old.NewQuery("INSERT INTO `tgstation`.`population` (`playercount`, `admincount`, `time`) VALUES ([playercount], [admincount], '[sqltime]')") + var/DBQuery/query = SSdbcore.NewQuery("INSERT INTO `population` (`playercount`, `admincount`, `time`) VALUES ([playercount], [admincount], '[sqltime]')") //CHOMPEdit TGSQL if(!query.Execute()) var/err = query.ErrorMsg() log_game("SQL ERROR during population polling. Error : \[[err]\]\n") + qdel(query) //CHOMPEdit TGSQL proc/sql_report_round_start() // TODO @@ -50,13 +51,14 @@ proc/sql_report_death(var/mob/living/carbon/human/H) var/coord = "[H.x], [H.y], [H.z]" //to_world("INSERT INTO death (name, byondkey, job, special, pod, tod, laname, lakey, gender, bruteloss, fireloss, brainloss, oxyloss) VALUES ('[sqlname]', '[sqlkey]', '[sqljob]', '[sqlspecial]', '[sqlpod]', '[sqltime]', '[laname]', '[lakey]', '[H.gender]', [H.bruteloss], [H.getFireLoss()], [H.brainloss], [H.getOxyLoss()])") establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL log_game("SQL ERROR during death reporting. Failed to connect.") else - var/DBQuery/query = dbcon.NewQuery("INSERT INTO death (name, byondkey, job, special, pod, tod, laname, lakey, gender, bruteloss, fireloss, brainloss, oxyloss, coord) VALUES ('[sqlname]', '[sqlkey]', '[sqljob]', '[sqlspecial]', '[sqlpod]', '[sqltime]', '[laname]', '[lakey]', '[H.gender]', [H.getBruteLoss()], [H.getFireLoss()], [H.brainloss], [H.getOxyLoss()], '[coord]')") + var/DBQuery/query = SSdbcore.NewQuery("INSERT INTO death (name, byondkey, job, special, pod, tod, laname, lakey, gender, bruteloss, fireloss, brainloss, oxyloss, coord) VALUES (:t_name, :t_byondkey, :t_job, :t_special, :t_pod, '[sqltime]', :t_laname, :t_lakey, '[H.gender]', [H.getBruteLoss()], [H.getFireLoss()], [H.brainloss], [H.getOxyLoss()], '[coord]')", list("t_name" = sqlname,"t_byondkey" = sqlkey, "t_job" = sqljob, "t_special" = sqlspecial, "t_pod" = sqlpod, "t_laname" = laname, "t_lakey" = lakey)) //CHOMPEdit TGSQL if(!query.Execute()) var/err = query.ErrorMsg() log_game("SQL ERROR during death reporting. Error : \[[err]\]\n") + qdel(query) //CHOMPEdit TGSQL proc/sql_report_cyborg_death(var/mob/living/silicon/robot/H) @@ -84,13 +86,14 @@ proc/sql_report_cyborg_death(var/mob/living/silicon/robot/H) var/coord = "[H.x], [H.y], [H.z]" //to_world("INSERT INTO death (name, byondkey, job, special, pod, tod, laname, lakey, gender, bruteloss, fireloss, brainloss, oxyloss) VALUES ('[sqlname]', '[sqlkey]', '[sqljob]', '[sqlspecial]', '[sqlpod]', '[sqltime]', '[laname]', '[lakey]', '[H.gender]', [H.bruteloss], [H.getFireLoss()], [H.brainloss], [H.getOxyLoss()])") establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL log_game("SQL ERROR during death reporting. Failed to connect.") else - var/DBQuery/query = dbcon.NewQuery("INSERT INTO death (name, byondkey, job, special, pod, tod, laname, lakey, gender, bruteloss, fireloss, brainloss, oxyloss, coord) VALUES ('[sqlname]', '[sqlkey]', '[sqljob]', '[sqlspecial]', '[sqlpod]', '[sqltime]', '[laname]', '[lakey]', '[H.gender]', [H.getBruteLoss()], [H.getFireLoss()], [H.brainloss], [H.getOxyLoss()], '[coord]')") + var/DBQuery/query = SSdbcore.NewQuery("INSERT INTO death (name, byondkey, job, special, pod, tod, laname, lakey, gender, bruteloss, fireloss, brainloss, oxyloss, coord) VALUES (:t_name, :t_byondkey, :t_job, :t_special, :t_pod, '[sqltime]', :t_laname, :t_lakey, '[H.gender]', [H.getBruteLoss()], [H.getFireLoss()], [H.brainloss], [H.getOxyLoss()], '[coord]')", list("t_name" = sqlname,"t_byondkey" = sqlkey, "t_job" = sqljob, "t_special" = sqlspecial, "t_pod" = sqlpod, "t_laname" = laname, "t_lakey" = lakey)) //CHOMPEdit TGSQL if(!query.Execute()) var/err = query.ErrorMsg() log_game("SQL ERROR during death reporting. Error : \[[err]\]\n") + qdel(query) //CHOMPEdit TGSQL proc/statistic_cycle() @@ -115,18 +118,18 @@ proc/sql_commit_feedback() return establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL log_game("SQL ERROR during feedback reporting. Failed to connect.") else - var/DBQuery/max_query = dbcon.NewQuery("SELECT MAX(roundid) AS max_round_id FROM erro_feedback") + var/DBQuery/max_query = SSdbcore.NewQuery("SELECT MAX(roundid) AS max_round_id FROM erro_feedback") //CHOMPEdit TGSQL max_query.Execute() var/newroundid while(max_query.NextRow()) newroundid = max_query.item[1] - + qdel(max_query) //CHOMPEdit TGSQL if(!(isnum(newroundid))) newroundid = text2num(newroundid) @@ -139,7 +142,8 @@ proc/sql_commit_feedback() var/variable = item.get_variable() var/value = item.get_value() - var/DBQuery/query = dbcon.NewQuery("INSERT INTO erro_feedback (id, roundid, time, variable, value) VALUES (null, [newroundid], Now(), '[variable]', '[value]')") + var/DBQuery/query = SSdbcore.NewQuery("INSERT INTO erro_feedback (id, roundid, time, variable, value) VALUES (null, [newroundid], Now(), '[variable]', '[value]')") //CHOMPEdit TGSQL if(!query.Execute()) var/err = query.ErrorMsg() log_game("SQL ERROR during death reporting. Error : \[[err]\]\n") + qdel(query) //CHOMPEdit TGSQL diff --git a/code/game/dna/dna2.dm b/code/game/dna/dna2.dm index 1ffaab1793..34180bf329 100644 --- a/code/game/dna/dna2.dm +++ b/code/game/dna/dna2.dm @@ -206,23 +206,9 @@ var/global/list/datum/dna/gene/dna_genes[0] // Technically custom_species is not part of the UI, but this place avoids merge problems. src.custom_species = character.custom_species - if(istype(character.species,/datum/species/custom)) - var/datum/species/custom/CS = character.species - src.species_traits = CS.traits.Copy() - src.base_species = CS.base_species - src.blood_color = CS.blood_color - - if(istype(character.species,/datum/species/xenochimera)) - var/datum/species/xenochimera/CS = character.species - //src.species_traits = CS.traits.Copy() //No traits - src.base_species = CS.base_species - src.blood_color = CS.blood_color - - if(istype(character.species,/datum/species/alraune)) - var/datum/species/alraune/CS = character.species - //src.species_traits = CS.traits.Copy() //No traits - src.base_species = CS.base_species - src.blood_color = CS.blood_color + src.base_species = character.species.base_species + src.blood_color = character.species.blood_color + src.species_traits = character.species.traits.Copy() // +1 to account for the none-of-the-above possibility SetUIValueRange(DNA_UI_EAR_STYLE, ear_style + 1, ear_styles_list.len + 1, 1) diff --git a/code/game/dna/dna2_helpers.dm b/code/game/dna/dna2_helpers.dm index 0edc6bb636..758f74d873 100644 --- a/code/game/dna/dna2_helpers.dm +++ b/code/game/dna/dna2_helpers.dm @@ -237,20 +237,9 @@ // Technically custom_species is not part of the UI, but this place avoids merge problems. H.custom_species = dna.custom_species - if(istype(H.species,/datum/species/custom)) - var/datum/species/custom/CS = H.species - var/datum/species/custom/new_CS = CS.produceCopy(dna.base_species,dna.species_traits,src) - new_CS.blood_color = dna.blood_color - - if(istype(H.species,/datum/species/xenochimera)) - var/datum/species/xenochimera/CS = H.species - var/datum/species/xenochimera/new_CS = CS.produceCopy(dna.base_species,dna.species_traits,src) - new_CS.blood_color = dna.blood_color - - if(istype(H.species,/datum/species/alraune)) - var/datum/species/alraune/CS = H.species - var/datum/species/alraune/new_CS = CS.produceCopy(dna.base_species,dna.species_traits,src) - new_CS.blood_color = dna.blood_color + H.species.blood_color = dna.blood_color + var/datum/species/S = H.species + S.produceCopy(dna.base_species,dna.species_traits,src) // VOREStation Edit End H.force_update_organs() //VOREStation Add - Gotta do this too diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index 42e6a6ddd0..8708d8b9f2 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -303,10 +303,16 @@ var/global/list/additional_antag_types = list() var/escaped_on_pod_1 = 0 var/escaped_on_pod_2 = 0 var/escaped_on_pod_3 = 0 + var/escaped_on_pod_4 = 0 //CHOMP Add var/escaped_on_pod_5 = 0 + var/escaped_on_pod_6 = 0 //CHOMP Add var/escaped_on_shuttle = 0 + var/escaped_on_pod_large_1 = 0 //CHOMP Add + var/escaped_on_pod_large_2 = 0 //CHOMP Add + var/escaped_on_cryopod = 0 //CHOMP Add - var/list/area/escape_locations = list(/area/shuttle/escape, /area/shuttle/escape_pod1/centcom, /area/shuttle/escape_pod2/centcom, /area/shuttle/escape_pod3/centcom, /area/shuttle/escape_pod5/centcom) //VOREStation Edit + var/list/area/escape_locations = list(/area/shuttle/escape/centcom, /area/shuttle/cryo/centcom, /area/shuttle/escape_pod1/centcom, /area/shuttle/escape_pod2/centcom, /area/shuttle/escape_pod3/centcom, /area/shuttle/escape_pod5/centcom, /area/shuttle/escape_pod6/centcom, /area/shuttle/large_escape_pod1/centcom +, /area/shuttle/large_escape_pod2/centcom) //CHOMP Edit: Appended /centcom to the escape shuttle again to fix transfer message. Added some escape pods to the list. for(var/mob/M in player_list) if(M.client) @@ -330,8 +336,20 @@ var/global/list/additional_antag_types = list() escaped_on_pod_2++ if(M.loc && M.loc.loc && M.loc.loc.type == /area/shuttle/escape_pod3/centcom) escaped_on_pod_3++ + if(M.loc && M.loc.loc && M.loc.loc.type == /area/shuttle/escape_pod4/centcom) //CHOMP Add + escaped_on_pod_4++ if(M.loc && M.loc.loc && M.loc.loc.type == /area/shuttle/escape_pod5/centcom) escaped_on_pod_5++ + if(M.loc && M.loc.loc && M.loc.loc.type == /area/shuttle/escape_pod6/centcom) //CHOMP Add + escaped_on_pod_6++ + if(M.loc && M.loc.loc && M.loc.loc.type == /area/shuttle/large_escape_pod1/centcom) //CHOMP Add + escaped_on_pod_large_1++ + if(M.loc && M.loc.loc && M.loc.loc.type == /area/shuttle/large_escape_pod2/centcom) //CHOMP Add + escaped_on_pod_large_2++ + if(M.loc && M.loc.loc && M.loc.loc.type == /area/shuttle/cryo/centcom) //CHOMP Add + escaped_on_cryopod++ + + if(isobserver(M)) ghosts++ @@ -364,8 +382,18 @@ var/global/list/additional_antag_types = list() feedback_set("escaped_on_pod_2",escaped_on_pod_2) if(escaped_on_pod_3 > 0) feedback_set("escaped_on_pod_3",escaped_on_pod_3) + if(escaped_on_pod_4 > 0) //CHOMP Add + feedback_set("escaped_on_pod_4",escaped_on_pod_4) if(escaped_on_pod_5 > 0) feedback_set("escaped_on_pod_5",escaped_on_pod_5) + if(escaped_on_pod_6 > 0) //CHOMP Add + feedback_set("escaped_on_pod_6",escaped_on_pod_6) + if(escaped_on_pod_large_1 > 0) //CHOMP Add + feedback_set("escaped_on_pod_large_1",escaped_on_pod_large_1) + if(escaped_on_pod_large_2 > 0) //CHOMP Add + feedback_set("escaped_on_pod_large_2",escaped_on_pod_large_2) + if(escaped_on_cryopod > 0) //CHOMP Add + feedback_set("escaped_on_cryopod",escaped_on_cryopod) send2mainirc("A round of [src.name] has ended - [surviving_total] survivors, [ghosts] ghosts.") diff --git a/code/game/jobs/job/assistant_vr.dm b/code/game/jobs/job/assistant_vr.dm index b6d4ad1cad..9a390250a6 100644 --- a/code/game/jobs/job/assistant_vr.dm +++ b/code/game/jobs/job/assistant_vr.dm @@ -22,10 +22,7 @@ "Lab Assistant" = /datum/alt_title/intern_sci, //CHOMPEdit "Security Cadet" = /datum/alt_title/intern_sec, "Jr. Cargo Tech" = /datum/alt_title/intern_crg, - "Server" = /datum/alt_title/server, - //CHOMPSTATION edit start. - "Belly Filler" = /datum/alt_title/prey) - //CHOMPSTATION edit end. + "Server" = /datum/alt_title/server) job_description = "An Intern does whatever is requested of them, often doing so in process of learning \ another job. Though they are part of the crew, they have no real authority." timeoff_factor = 0 // Interns, noh @@ -68,14 +65,6 @@ title_blurb = "A Server helps out kitchen and diner staff with various tasks, primarily food delivery. A Server has no real authority." title_outfit = /decl/hierarchy/outfit/job/service/server -//CHOMPSTATION edit start: Thought it would be funny for people to wear their reason for being on station on their shoulder. -/datum/alt_title/prey - title = "Belly Filler" - title_blurb = "Considering the needs of this particular region of space, a Belly Filler is a crewmember who has willingly consigned themselves to \ - serving the voracious appetites of their fellow crewmembers. A Belly Filler has no authority." - title_outfit = /decl/hierarchy/outfit/job/assistant/intern -//CHOMPSTATION edit end. - /datum/job/intern/New() ..() if(config) diff --git a/code/game/jobs/job_controller.dm b/code/game/jobs/job_controller.dm index 4e53589c2f..1b0a0c0b4d 100644 --- a/code/game/jobs/job_controller.dm +++ b/code/game/jobs/job_controller.dm @@ -371,8 +371,7 @@ var/global/datum/controller/occupations/job_master if(istype(S, /obj/effect/landmark/start) && istype(S.loc, /turf)) H.forceMove(S.loc) else - var/list/spawn_props = LateSpawn(H.client, rank) - var/turf/T = spawn_props["turf"] + var/turf/T = get_turf(pick(latejoin)) if(!T) to_chat(H, "You were unable to be spawned at your chosen late-join spawnpoint. Please verify your job/spawn point combination makes sense, and try another one.") return @@ -511,21 +510,22 @@ var/global/datum/controller/occupations/job_master to_chat(H, "Failed to locate a storage object on your mob, either you spawned with no arms and no backpack or this is a bug.") if(istype(H)) //give humans wheelchairs, if they need them. - var/obj/item/organ/external/l_foot = H.get_organ("l_foot") - var/obj/item/organ/external/r_foot = H.get_organ("r_foot") - var/obj/item/weapon/storage/S = locate() in H.contents - var/obj/item/wheelchair/R = null - if(S) - R = locate() in S.contents - if(!l_foot || !r_foot || R) - var/obj/structure/bed/chair/wheelchair/W = new /obj/structure/bed/chair/wheelchair(H.loc) - W.buckle_mob(H) - H.update_canmove() - W.set_dir(H.dir) - W.add_fingerprint(H) - if(R) - W.color = R.color - qdel(R) + if(istype(H.loc, /obj/belly)) //unless in a gut + var/obj/item/organ/external/l_foot = H.get_organ("l_foot") + var/obj/item/organ/external/r_foot = H.get_organ("r_foot") + var/obj/item/weapon/storage/S = locate() in H.contents + var/obj/item/wheelchair/R = null + if(S) + R = locate() in S.contents + if(!l_foot || !r_foot || R) + var/obj/structure/bed/chair/wheelchair/W = new /obj/structure/bed/chair/wheelchair(H.loc) + W.buckle_mob(H) + H.update_canmove() + W.set_dir(H.dir) + W.add_fingerprint(H) + if(R) + W.color = R.color + qdel(R) to_chat(H, "You are [job.total_positions == 1 ? "the" : "a"] [alt_title ? alt_title : rank].") @@ -649,24 +649,90 @@ var/global/datum/controller/occupations/job_master var/datum/spawnpoint/spawnpos var/fail_deadly = FALSE + var/obj/belly/vore_spawn_gut var/datum/job/J = SSjob.get_job(rank) fail_deadly = J?.offmap_spawn //Spawn them at their preferred one if(C && C.prefs.spawnpoint) - if(!(C.prefs.spawnpoint in using_map.allowed_spawns)) - if(fail_deadly) - to_chat(C, "Your chosen spawnpoint is unavailable for this map and your job requires a specific spawnpoint. Please correct your spawn point choice.") - return + if(C.prefs.spawnpoint == "Vore Belly") + var/list/preds = list() + var/list/pred_names = list() //This is cringe + for(var/client/V in GLOB.clients) + if(!isliving(V.mob)) + continue + var/mob/living/M = V.mob + if(M.stat == UNCONSCIOUS || M.stat == DEAD || M.client.is_afk(10 MINUTES)) + continue + if(!M.latejoin_vore) + continue + if(!(M.z in using_map.vorespawn_levels)) + continue + preds += M + pred_names += M.real_name //very cringe + + if(preds.len) + var/pred_name = input(C, "Choose a Predator.", "Pred Spawnpoint") as null|anything in pred_names + if(!pred_name) + return + var/index = pred_names.Find(pred_name) + var/mob/living/pred = preds[index] + var/list/available_bellies = list() + for(var/obj/belly/Y in pred.vore_organs) + if(Y.vorespawn_blacklist) + continue + available_bellies += Y + var/backup = alert(C, "Do you want a mind backup?", "Confirm", "Yes", "No") + if(backup == "Yes") + backup = 1 + vore_spawn_gut = input(C, "Choose a Belly.", "Belly Spawnpoint") as null|anything in available_bellies + if(!vore_spawn_gut) + return + to_chat(C, "[pred] has received your spawn request. Please wait.") + log_admin("[key_name(C)] has requested to vore spawn into [key_name(pred)]") + message_admins("[key_name(C)] has requested to vore spawn into [key_name(pred)]") + + var/confirm = alert(pred, "[C.prefs.real_name] is attempting to spawn into your [vore_spawn_gut]. Let them?", "Confirm", "No", "Yes") + if(confirm != "Yes") + to_chat(C, "[pred] has declined your spawn request.") + return + if(!vore_spawn_gut || QDELETED(vore_spawn_gut)) + to_chat(C, "Somehow, the belly you were trying to enter no longer exists.") + return + if(pred.stat == UNCONSCIOUS || pred.stat == DEAD) + to_chat(C, "[pred] is not conscious.") + to_chat(pred, "You must be conscious to accept.") + return + if(!(pred.z in using_map.vorespawn_levels)) + to_chat(C, "[pred] is no longer in station grounds.") + to_chat(pred, "You must be within station grounds to accept.") + return + if(backup) + addtimer(CALLBACK(src, .proc/m_backup_client, C), 5 SECONDS) + log_admin("[key_name(C)] has vore spawned into [key_name(pred)]") + message_admins("[key_name(C)] has vore spawned into [key_name(pred)]") + to_chat(C, "You have been spawned via vore. You are free to roleplay how you got there as you please, such as teleportation or having had already been there.") + to_chat(pred, "Your prey has spawned via vore. You are free to roleplay this how you please, such as teleportation or having had already been there.") else - to_chat(C, "Your chosen spawnpoint ([C.prefs.spawnpoint]) is unavailable for the current map. Spawning you at one of the enabled spawn points instead.") - spawnpos = null - else + to_chat(C, "No predators were available to accept you.") + return spawnpos = spawntypes[C.prefs.spawnpoint] + else + if(!(C.prefs.spawnpoint in using_map.allowed_spawns)) + if(fail_deadly) + to_chat(C, "Your chosen spawnpoint is unavailable for this map and your job requires a specific spawnpoint. Please correct your spawn point choice.") + return + else + to_chat(C, "Your chosen spawnpoint ([C.prefs.spawnpoint]) is unavailable for the current map. Spawning you at one of the enabled spawn points instead.") + spawnpos = null + else + spawnpos = spawntypes[C.prefs.spawnpoint] //We will return a list key'd by "turf" and "msg" - . = list("turf","msg") + . = list("turf","msg", "voreny") + if(vore_spawn_gut) + .["voreny"] = vore_spawn_gut if(spawnpos && istype(spawnpos) && spawnpos.turfs.len) if(spawnpos.check_job_spawning(rank)) .["turf"] = spawnpos.get_spawn_position() @@ -684,3 +750,9 @@ var/global/datum/controller/occupations/job_master var/spawning = pick(latejoin) .["turf"] = get_turf(spawning) .["msg"] = "has arrived on the station" + +/datum/controller/occupations/proc/m_backup_client(var/client/C) //Same as m_backup, but takes a client entry. Used for vore late joining. + if(!ishuman(C.mob)) + return + var/mob/living/carbon/human/CM = C.mob + SStranscore.m_backup(CM.mind, CM.nif, TRUE) diff --git a/code/game/jobs/jobs.dm b/code/game/jobs/jobs.dm index d430eacaf3..ef104f08c9 100644 --- a/code/game/jobs/jobs.dm +++ b/code/game/jobs/jobs.dm @@ -144,9 +144,7 @@ var/list/whitelisted_positions = list( "Chief Medical Officer", "Command Secretary", "Warden", - "AI", - "Cyborg", - "pAI" + "AI" ) diff --git a/code/game/machinery/computer/guestpass.dm b/code/game/machinery/computer/guestpass.dm index c2876572d7..0090d03b7a 100644 --- a/code/game/machinery/computer/guestpass.dm +++ b/code/game/machinery/computer/guestpass.dm @@ -168,9 +168,9 @@ if(reas) reason = reas if("duration") - var/dur = input("Duration (in minutes) during which pass is valid (up to 120 minutes).", "Duration") as num|null + var/dur = input("Duration (in minutes) during which pass is valid (up to 360 minutes).", "Duration") as num|null //VOREStation Edit if(dur) - if(dur > 0 && dur <= 120) + if(dur > 0 && dur <= 360) //VOREStation Edit duration = dur else to_chat(usr, "Invalid duration.") diff --git a/code/game/machinery/deployable.dm b/code/game/machinery/deployable.dm index db27559796..64a3cc1fc7 100644 --- a/code/game/machinery/deployable.dm +++ b/code/game/machinery/deployable.dm @@ -1,111 +1,8 @@ /* CONTAINS: Deployable items -Barricades */ -//Barricades! -/obj/structure/barricade - name = "barricade" - desc = "This space is blocked off by a barricade." - icon = 'icons/obj/structures.dmi' - icon_state = "barricade" - anchored = 1.0 - density = 1.0 - var/health = 100 - var/maxhealth = 100 - var/datum/material/material - -/obj/structure/barricade/New(var/newloc, var/material_name) - ..(newloc) - if(!material_name) - material_name = "wood" - material = get_material_by_name("[material_name]") - if(!material) - qdel(src) - return - name = "[material.display_name] barricade" - desc = "This space is blocked off by a barricade made of [material.display_name]." - color = material.icon_colour - maxhealth = material.integrity - health = maxhealth - -/obj/structure/barricade/get_material() - return material - -/obj/structure/barricade/attackby(obj/item/W as obj, mob/user as mob) - user.setClickCooldown(user.get_attack_speed(W)) - if(istype(W, /obj/item/stack)) - var/obj/item/stack/D = W - if(D.get_material_name() != material.name) - return //hitting things with the wrong type of stack usually doesn't produce messages, and probably doesn't need to. - if(health < maxhealth) - if(D.get_amount() < 1) - to_chat(user, "You need one sheet of [material.display_name] to repair \the [src].") - return - visible_message("[user] begins to repair \the [src].") - if(do_after(user,20) && health < maxhealth) - if(D.use(1)) - health = maxhealth - visible_message("[user] repairs \the [src].") - return - return - else - switch(W.damtype) - if("fire") - health -= W.force * 1 - if("brute") - health -= W.force * 0.75 - if(material == (get_material_by_name(MAT_WOOD) || get_material_by_name(MAT_SIFWOOD))) - playsound(src, 'sound/effects/woodcutting.ogg', 100, 1) - else - playsound(src, 'sound/weapons/smash.ogg', 50, 1) - CheckHealth() - ..() - -/obj/structure/barricade/proc/CheckHealth() - if(health <= 0) - dismantle() - return - -/obj/structure/barricade/take_damage(var/damage) - health -= damage - CheckHealth() - return - -/obj/structure/barricade/attack_generic(var/mob/user, var/damage, var/attack_verb) - visible_message("[user] [attack_verb] the [src]!") - if(material == get_material_by_name("resin")) - playsound(src, 'sound/effects/attackblob.ogg', 100, 1) - else if(material == (get_material_by_name(MAT_WOOD) || get_material_by_name(MAT_SIFWOOD))) - playsound(src, 'sound/effects/woodcutting.ogg', 100, 1) - else - playsound(src, 'sound/weapons/smash.ogg', 50, 1) - user.do_attack_animation(src) - health -= damage - CheckHealth() - return - -/obj/structure/barricade/proc/dismantle() - material.place_dismantled_product(get_turf(src)) - visible_message("\The [src] falls apart!") - qdel(src) - return - -/obj/structure/barricade/ex_act(severity) - switch(severity) - if(1.0) - dismantle() - if(2.0) - health -= 25 - CheckHealth() - -/obj/structure/barricade/CanPass(atom/movable/mover, turf/target)//So bullets will fly over and stuff. - if(istype(mover) && mover.checkpass(PASSTABLE)) - return TRUE - return FALSE - -//Actual Deployable machinery stuff /obj/machinery/deployable name = "deployable" desc = "deployable" diff --git a/code/game/machinery/telecrystal_storage_ch.dm b/code/game/machinery/telecrystal_storage_ch.dm new file mode 100644 index 0000000000..0a4c047b0f --- /dev/null +++ b/code/game/machinery/telecrystal_storage_ch.dm @@ -0,0 +1,138 @@ +/obj/machinery/smartfridge/tcrystal + name = "Telecrystal storage" + desc = "Some kind of storage machine that only accepts telecrystals" + icon_state = "donkvendor" + icon_base = "donkvendor" + icon_contents = null + icon = 'icons/obj/survival_pod_vend.dmi' + light_range = 5 + light_power = 1.2 + light_color = "#DDFFD3" + pixel_y = -4 + max_n_of_items = 1000000 + +/obj/machinery/smartfridge/tcrystal/accept_check(obj/item/O) + return istype(O,/obj/item/stack/telecrystal) + +/obj/machinery/smartfridge/tcrystal/proc/mod_amount(var/datum/stored_item/I,var/mod) + if(I.amount + mod <= 0) + item_records.Remove(I) + qdel(I) + else + I.amount += mod + +/obj/machinery/smartfridge/tcrystal/stock(obj/item/stack/telecrystal/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)) + mod_amount(I,O.amount) + hasRecord = TRUE + qdel(O) + break + if(!hasRecord) + var/datum/stored_item/item = new/datum/stored_item(src,O.type,O.name,O.amount) + item_records.Add(item) + qdel(O) + +/obj/machinery/smartfridge/tcrystal/tgui_act(action, params) + add_fingerprint(usr) + switch(action) + if("Release") + var/amount = 0 + if(params["amount"]) + amount = params["amount"] + else + amount = input("How many items?", "How many items would you like to take out?", 1) as num|null + + if(QDELETED(src) || QDELETED(usr) || !usr.Adjacent(src)) + return FALSE + + var/index = text2num(params["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. + if(count > 0) + if((count - amount) < 0) + amount = count + mod_amount(I,-amount) + var/crystal_amount = min(240,amount) + while(crystal_amount > 0) + new /obj/item/stack/telecrystal(loc,crystal_amount) + amount -= crystal_amount + crystal_amount = min(240,amount) + + return TRUE + return FALSE + +/datum/stored_item/telecrystals + item_name = "Telecrystals" + +/datum/stored_item/telecrystals/get_amount() + return amount + +/datum/stored_item/telecrystals/init_products() + return + +/obj/tcspawner + name = "Telecrystal spawner" + desc = "This item spawns stack of 5 telecrystals" + icon = 'icons/misc/mark.dmi' + icon_state = "x4" + var/amount_to_spawn = 5 + +/obj/tcspawner/Initialize() + ..() + + var/turf/T = get_turf(src) + var/obj/item/stack/telecrystal/M = new (T,amount_to_spawn) + + var/obj/structure/closet/C = locate() in T + if(C) + C.contents += M + + return INITIALIZE_HINT_QDEL + +/obj/tcspawner/stack5 + desc = "This item spawns stack of 5 telecrystals" + amount_to_spawn = 5 + +/obj/tcspawner/stack10 + desc = "This item spawns stack of 10 telecrystals" + amount_to_spawn = 10 + +/obj/tcspawner/stack15 + desc = "This item spawns stack of 15 telecrystals" + amount_to_spawn = 15 + +/obj/tcspawner/stack20 + desc = "This item spawns stack of 20 telecrystals" + amount_to_spawn = 20 + +/obj/tcspawner/stack25 + desc = "This item spawns stack of 25 telecrystals" + amount_to_spawn = 25 + +/obj/tcspawner/stack50 + desc = "This item spawns stack of 50 telecrystals" + amount_to_spawn = 50 + +/obj/tcspawner/stack75 + desc = "This item spawns stack of 75 telecrystals" + amount_to_spawn = 75 + +/obj/tcspawner/stack100 + desc = "This item spawns stack of 100 telecrystals" + amount_to_spawn = 100 + +/obj/tcspawner/stack150 + desc = "This item spawns stack of 150 telecrystals" + amount_to_spawn = 150 + +/obj/tcspawner/stack200 + desc = "This item spawns stack of 200 telecrystals" + amount_to_spawn = 200 + +/obj/tcspawner/stack240 + desc = "This item spawns stack of 240 telecrystals" + amount_to_spawn = 240 \ No newline at end of file diff --git a/code/game/machinery/vending_machines.dm b/code/game/machinery/vending_machines.dm index 3ebb93289a..10607011ce 100644 --- a/code/game/machinery/vending_machines.dm +++ b/code/game/machinery/vending_machines.dm @@ -754,6 +754,8 @@ /obj/item/toy/plushie/foxbear = 1, /obj/item/toy/plushie/nukeplushie = 1, /obj/item/toy/plushie/otter = 1, + /obj/item/toy/plushie/vox = 1, + /obj/item/toy/mistletoe = 1, //VOREStation Add End //YawnWider Add Start /obj/item/toy/plushie/teshari/_yw = 1, @@ -800,6 +802,8 @@ /obj/item/toy/plushie/foxbear = 50, /obj/item/toy/plushie/nukeplushie = 50, /obj/item/toy/plushie/otter = 50, + /obj/item/toy/plushie/vox = 50, + /obj/item/toy/mistletoe = 50, //VOREStation Add End //YawnWider Add Start /obj/item/toy/plushie/teshari/_yw = 150, diff --git a/code/game/machinery/vending_machines_vr.dm b/code/game/machinery/vending_machines_vr.dm index 3c826b469e..75e0c9d815 100644 --- a/code/game/machinery/vending_machines_vr.dm +++ b/code/game/machinery/vending_machines_vr.dm @@ -719,6 +719,7 @@ /obj/item/clothing/under/dress/maid = 5, /obj/item/clothing/under/dress/maid/sexy = 5, /obj/item/clothing/under/dress/maid/janitor = 5, + /obj/item/clothing/under/harness = 5, //CHOMP Edit: Added gear harness, /obj/item/clothing/under/moderncoat = 5, /obj/item/clothing/under/permit = 5, /obj/item/clothing/under/oldwoman = 5, @@ -2075,6 +2076,7 @@ /obj/item/clothing/under/dress/maid = 5, /obj/item/clothing/under/dress/maid/sexy = 5, /obj/item/clothing/under/dress/maid/janitor = 5, + /obj/item/clothing/under/harness = 5, //CHOMP Edit: Added gear harness, /obj/item/clothing/under/moderncoat = 5, /obj/item/clothing/under/permit = 5, /obj/item/clothing/under/oldwoman = 5, @@ -3139,6 +3141,7 @@ /obj/item/clothing/under/dress/maid = 5, /obj/item/clothing/under/dress/maid/sexy = 5, /obj/item/clothing/under/dress/maid/janitor = 5, + /obj/item/clothing/under/harness = 5, //CHOMP Edit: Added gear harness, /obj/item/clothing/under/moderncoat = 5, /obj/item/clothing/under/permit = 5, /obj/item/clothing/under/oldwoman = 5, diff --git a/code/game/mecha/combat/durand.dm b/code/game/mecha/combat/durand.dm index aa5a9e000c..19bd2b9c53 100644 --- a/code/game/mecha/combat/durand.dm +++ b/code/game/mecha/combat/durand.dm @@ -33,6 +33,9 @@ defence_mode_possible = 1 + icon_scale_x = 1.5 + icon_scale_y = 1.5 + /* /obj/mecha/combat/durand/New() ..() diff --git a/code/game/mecha/combat/gygax.dm b/code/game/mecha/combat/gygax.dm index 0323124c47..1f9d4a0b6e 100644 --- a/code/game/mecha/combat/gygax.dm +++ b/code/game/mecha/combat/gygax.dm @@ -31,6 +31,9 @@ overload_possible = 1 + icon_scale_x = 1.35 + icon_scale_y = 1.35 + //Not quite sure how to move those yet. /obj/mecha/combat/gygax/get_commands() var/output = {"
diff --git a/code/game/mecha/combat/marauder.dm b/code/game/mecha/combat/marauder.dm index e2c0b9467a..fd0442a294 100644 --- a/code/game/mecha/combat/marauder.dm +++ b/code/game/mecha/combat/marauder.dm @@ -44,6 +44,9 @@ /obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster ) + icon_scale_x = 1.5 + icon_scale_y = 1.5 + /obj/mecha/combat/marauder/seraph desc = "Heavy-duty, command-type exosuit. This is a custom model, utilized only by high-ranking military personnel." name = "Seraph" diff --git a/code/game/mecha/equipment/mecha_equipment.dm b/code/game/mecha/equipment/mecha_equipment.dm index 412437b3aa..b44b0bba36 100644 --- a/code/game/mecha/equipment/mecha_equipment.dm +++ b/code/game/mecha/equipment/mecha_equipment.dm @@ -49,6 +49,9 @@ ..() return +/obj/item/mecha_parts/mecha_equipment/proc/add_equip_overlay(obj/mecha/M as obj) + return + /obj/item/mecha_parts/mecha_equipment/proc/update_chassis_page() if(chassis) send_byjax(chassis.occupant,"exosuit.browser","eq_list",chassis.get_equipment_list()) @@ -78,12 +81,14 @@ chassis.special_equipment -= src listclearnulls(chassis.special_equipment) //VOREStation Addition begin: MICROMECHS + //CHOMPedit commented micromech stuff, because fuck this trash + /* if(equip_type == EQUIP_MICRO_UTILITY) chassis.micro_utility_equipment -= src listclearnulls(chassis.micro_utility_equipment) if(equip_type == EQUIP_MICRO_WEAPON) chassis.micro_weapon_equipment -= src - listclearnulls(chassis.micro_weapon_equipment) + listclearnulls(chassis.micro_weapon_equipment) */ //VOREStation Addition end: MICROMECHS chassis.universal_equipment -= src chassis.equipment -= src @@ -168,10 +173,12 @@ if(equip_type == EQUIP_SPECIAL && M.special_equipment.len < M.max_special_equip) return 1 //VOREStation Addition begin: MICROMECHS + //CHOMPedit commented micromech stuff, because fuck this trash + /* if(equip_type == EQUIP_MICRO_UTILITY && M.micro_utility_equipment.len < M.max_micro_utility_equip) return 1 if(equip_type == EQUIP_MICRO_WEAPON && M.micro_weapon_equipment.len < M.max_micro_weapon_equip) - return 1 + return 1 */ //VOREStation Addition end: MICROMECHS if(equip_type != EQUIP_SPECIAL && M.universal_equipment.len < M.max_universal_equip) //The exosuit needs to be military grade to actually have a universal slot capable of accepting a true weapon. if(equip_type == EQUIP_WEAPON && !istype(M, /obj/mecha/combat)) @@ -202,12 +209,14 @@ M.special_equipment += src has_equipped = 1 //VOREStation Addition begin: MICROMECHS + //CHOMPedit commented micromech stuff, because fuck this trash + /* if(equip_type == EQUIP_MICRO_UTILITY && M.micro_utility_equipment.len < M.max_micro_utility_equip && !has_equipped) M.micro_utility_equipment += src has_equipped = 1 if(equip_type == EQUIP_MICRO_WEAPON && M.micro_weapon_equipment.len < M.max_micro_weapon_equip && !has_equipped) M.micro_weapon_equipment += src - has_equipped = 1 + has_equipped = 1 */ //VOREStation Addition end: MICROMECHS if(equip_type != EQUIP_SPECIAL && M.universal_equipment.len < M.max_universal_equip && !has_equipped) M.universal_equipment += src @@ -240,10 +249,12 @@ if(EQUIP_SPECIAL) chassis.special_equipment -= src //VOREStation Addition begin: MICROMECHS + //CHOMPedit commented micromech stuff, because fuck this trash + /* if(EQUIP_MICRO_UTILITY)//CHOMPstation edit - This was improperly named bugging detaching on my equipment fix. chassis.micro_utility_equipment -= src if(EQUIP_MICRO_WEAPON) - chassis.micro_weapon_equipment -= src + chassis.micro_weapon_equipment -= src */ //VOREStation Addition end: MICROMECHS if(chassis.selected == src) chassis.selected = null diff --git a/code/game/mecha/equipment/tools/repair_droid.dm b/code/game/mecha/equipment/tools/repair_droid.dm index 7cd8ebd9ab..acae64142f 100644 --- a/code/game/mecha/equipment/tools/repair_droid.dm +++ b/code/game/mecha/equipment/tools/repair_droid.dm @@ -26,9 +26,10 @@ pr_repair_droid = null ..() -/obj/item/mecha_parts/mecha_equipment/repair_droid/attach(obj/mecha/M as obj) +/obj/item/mecha_parts/mecha_equipment/repair_droid/add_equip_overlay(obj/mecha/M as obj) ..() - droid_overlay = new(src.icon, icon_state = "repair_droid") + if(!droid_overlay) + droid_overlay = new(src.icon, icon_state = "repair_droid") M.add_overlay(droid_overlay) return diff --git a/code/game/mecha/equipment/tools/shield.dm b/code/game/mecha/equipment/tools/shield.dm index ce0c43e7da..0a50869e88 100644 --- a/code/game/mecha/equipment/tools/shield.dm +++ b/code/game/mecha/equipment/tools/shield.dm @@ -37,15 +37,19 @@ my_shield = null ..() +/obj/item/mecha_parts/mecha_equipment/combat_shield/add_equip_overlay(obj/mecha/M as obj) + ..() + if(!drone_overlay) + drone_overlay = new(src.icon, icon_state = "shield_droid") + M.overlays += drone_overlay + return + /obj/item/mecha_parts/mecha_equipment/combat_shield/attach(obj/mecha/M as obj) ..() if(chassis) my_shield.shield_health = 0 my_shield.my_mecha = chassis my_shield.forceMove(chassis) - - drone_overlay = new(src.icon, icon_state = "shield_droid") - M.overlays += drone_overlay return /obj/item/mecha_parts/mecha_equipment/combat_shield/detach() diff --git a/code/game/mecha/equipment/tools/syringe_gun.dm b/code/game/mecha/equipment/tools/syringe_gun.dm index 7449d80c0f..1658a01df6 100644 --- a/code/game/mecha/equipment/tools/syringe_gun.dm +++ b/code/game/mecha/equipment/tools/syringe_gun.dm @@ -467,11 +467,15 @@ if(enabled) set_ready_state(0) log_message("Activated.") - chassis.overlays += drone_overlay else set_ready_state(1) log_message("Deactivated.") - chassis.overlays -= drone_overlay + +/obj/item/mecha_parts/mecha_equipment/crisis_drone/add_equip_overlay(obj/mecha/M as obj) + ..() + if(enabled) + M.add_overlay(drone_overlay) + return /obj/item/mecha_parts/mecha_equipment/crisis_drone/Topic(href, href_list) ..() diff --git a/code/game/mecha/equipment/weapons/energy/laser.dm b/code/game/mecha/equipment/weapons/energy/laser.dm index 372fe67f0f..9aca9100d7 100644 --- a/code/game/mecha/equipment/weapons/energy/laser.dm +++ b/code/game/mecha/equipment/weapons/energy/laser.dm @@ -20,6 +20,17 @@ origin_tech = list(TECH_MATERIAL = 3, TECH_COMBAT = 3, TECH_PHORON = 3, TECH_POWER = 3) +/obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/gamma //CHOMPedit begin : adds Gamma Laser as proof of concept + equip_cooldown = 5 + name = "\improper GA-X \"Render\" Experimental Gamma Laser" + desc = "A experimental suppression laser that fires blasts of radiation charged photons, extremely effective at punching through armor." + icon_state = "mecha_coil" + energy_drain = 80 + projectile = /obj/item/projectile/beam/gamma + fire_sound = 'sound/weapons/emitter.ogg' + + origin_tech = list(TECH_MATERIAL = 5, TECH_COMBAT = 5, TECH_PHORON = 4, TECH_POWER = 5, TECH_ILLEGAL = 3) //CHOMPedit end + /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/xray/rigged equip_cooldown = 12 name = "jury-rigged xray rifle" diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm index fe8ec5876d..492837fbeb 100644 --- a/code/game/mecha/mech_fabricator.dm +++ b/code/game/mecha/mech_fabricator.dm @@ -67,9 +67,9 @@ "Vehicle", "Rigsuit", "Phazon", - "Gopher", // VOREStation Add - "Polecat", // VOREStation Add - "Weasel", // VOREStation Add + //"Gopher", // VOREStation Add //CHOMPedit commented micromech stuff, because fuck this trash + //"Polecat", // VOREStation Add //CHOMPedit commented micromech stuff, because fuck this trash + //"Weasel", // VOREStation Add //CHOMPedit commented micromech stuff, because fuck this trash "Exosuit Equipment", "Exosuit Internals", "Exosuit Ammunition", diff --git a/code/game/mecha/mech_prosthetics.dm b/code/game/mecha/mech_prosthetics.dm index 72e51262e7..640a57140f 100644 --- a/code/game/mecha/mech_prosthetics.dm +++ b/code/game/mecha/mech_prosthetics.dm @@ -48,9 +48,9 @@ "Vehicle", "Rigsuit", "Phazon", - "Gopher", // VOREStation Add - "Polecat", // VOREStation Add - "Weasel", // VOREStation Add + //"Gopher", // VOREStation Add //CHOMPedit commented micromech stuff, because fuck this trash + //"Polecat", // VOREStation Add //CHOMPedit commented micromech stuff, because fuck this trash + //"Weasel", // VOREStation Add //CHOMPedit commented micromech stuff, because fuck this trash "Exosuit Equipment", "Exosuit Internals", "Exosuit Ammunition", diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index 8e7480c6a2..bb0f4b7ba3 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -208,6 +208,7 @@ for(var/path in starting_equipment) var/obj/item/mecha_parts/mecha_equipment/ME = new path(src) ME.attach(src) + update_transform() /obj/mecha/drain_power(var/drain_check) @@ -1577,11 +1578,12 @@ src.verbs += /obj/mecha/verb/eject src.Entered(mmi_as_oc) src.Move(src.loc) - src.icon_state = src.reset_icon() + update_icon() set_dir(dir_in) src.log_message("[mmi_as_oc] moved in as pilot.") if(!hasInternalDamage()) src.occupant << sound('sound/mecha/nominal.ogg',volume=50) + update_icon() return 1 else return 0 @@ -1884,7 +1886,7 @@ src.forceMove(src.loc) src.verbs += /obj/mecha/verb/eject src.log_append_to_last("[H] moved in as pilot.") - src.icon_state = src.reset_icon() + update_icon() //VOREStation Edit Add if(occupant.hud_used) minihud = new (occupant.hud_used, src) @@ -2004,7 +2006,7 @@ occupant.clear_alert("mech damage") occupant.in_enclosed_vehicle = 0 occupant = null - icon_state = src.reset_icon()+"-open" + update_icon() set_dir(dir_in) verbs -= /obj/mecha/verb/eject @@ -2232,7 +2234,7 @@ output += "Universal Module: [W.name] Detach
" for(var/obj/item/mecha_parts/mecha_equipment/W in special_equipment) output += "Special Module: [W.name] Detach
" - for(var/obj/item/mecha_parts/mecha_equipment/W in micro_utility_equipment)//CHOMPstation Edit - Adds micro equipent to the menu + /*for(var/obj/item/mecha_parts/mecha_equipment/W in micro_utility_equipment)//CHOMPstation Edit - Adds micro equipent to the menu output += "Micro Utility Module: [W.name] Detach
" for(var/obj/item/mecha_parts/mecha_equipment/W in micro_weapon_equipment) output += "Micro Weapon Module: [W.name] Detach
" @@ -2244,7 +2246,7 @@ Available universal slots: [max_universal_equip-universal_equipment.len]
Available special slots: [max_special_equip-special_equipment.len]
- "} + "} */ //CHOMPedit commented micromech stuff, because fuck this trash return output /obj/mecha/proc/get_equipment_list() //outputs mecha equipment list in html @@ -2664,13 +2666,6 @@ return 1 return 0 -/obj/mecha/proc/reset_icon() - if (initial_icon) - icon_state = initial_icon - else - icon_state = initial(icon_state) - return icon_state - //This is for mobs mostly. /obj/mecha/attack_generic(var/mob/user, var/damage, var/attack_message) diff --git a/code/game/mecha/mecha_appearance.dm b/code/game/mecha/mecha_appearance.dm new file mode 100644 index 0000000000..5136ef070b --- /dev/null +++ b/code/game/mecha/mecha_appearance.dm @@ -0,0 +1,65 @@ + + +/obj/mecha + // Show the pilot. + var/show_pilot = FALSE + + // The state of the 'face', or the thing that overlays on the pilot. If this isn't set, it will probably look really weird. + var/face_state = null + var/icon/face_overlay + + var/icon/pilot_image + + // How many pixels do we bump the pilot upward? + var/pilot_lift = 0 + +/obj/mecha/update_transform() + // Now for the regular stuff. + var/matrix/M = matrix() + M.Scale(icon_scale_x, icon_scale_y) + M.Translate(0, 16*(icon_scale_y-1)) + animate(src, transform = M, time = 10) + return + +/obj/mecha/update_icon() + if(!initial_icon) + initial_icon = initial(icon_state) + + if(occupant) + icon_state = initial_icon + else + icon_state = "[initial_icon]-open" + + cut_overlays() + + if(show_pilot) + if(occupant) + pilot_image = getCompoundIcon(occupant) + + if(!istype(occupant, /mob/living/carbon/brain)) + + var/icon/Cutter + + if("[initial_icon]_cutter" in icon_states(icon)) + Cutter = new(src.icon, "[initial_icon]_cutter") + + if(Cutter) + pilot_image.Blend(Cutter, ICON_MULTIPLY, y = (-1 * pilot_lift)) + + var/image/Pilot = image(pilot_image) + + Pilot.pixel_y = pilot_lift + + add_overlay(Pilot) + else + pilot_image = null + + if(face_state && !face_overlay) + face_overlay = new(src.icon, icon_state = face_state) + + if(face_overlay) + add_overlay(face_overlay) + + for(var/obj/item/mecha_parts/mecha_equipment/ME in equipment) + ME.add_equip_overlay(src) + return diff --git a/code/game/mecha/medical/odysseus.dm b/code/game/mecha/medical/odysseus.dm index dbba0cd251..4db6332cb1 100644 --- a/code/game/mecha/medical/odysseus.dm +++ b/code/game/mecha/medical/odysseus.dm @@ -17,6 +17,9 @@ step_energy_drain = 6 var/obj/item/clothing/glasses/hud/health/mech/hud + icon_scale_x = 1.2 + icon_scale_y = 1.2 + /obj/mecha/medical/odysseus/New() ..() hud = new /obj/item/clothing/glasses/hud/health/mech(src) diff --git a/code/game/mecha/micro/mecha_construction_paths_vr.dm b/code/game/mecha/micro/mecha_construction_paths_vr.dm index a63322b5a3..41a4d43686 100644 --- a/code/game/mecha/micro/mecha_construction_paths_vr.dm +++ b/code/game/mecha/micro/mecha_construction_paths_vr.dm @@ -1,4 +1,4 @@ - +/* //CHOMPedit commented micromech stuff, because fuck this trash /datum/construction/mecha/polecat_chassis steps = list(list("key"=/obj/item/mecha_parts/micro/part/polecat_torso),//1 list("key"=/obj/item/mecha_parts/micro/part/polecat_left_arm),//2 @@ -766,3 +766,4 @@ ..() feedback_inc("mecha_weasel_created",1) return +*/ \ No newline at end of file diff --git a/code/game/mecha/micro/mecha_parts_vr.dm b/code/game/mecha/micro/mecha_parts_vr.dm index 59f6714351..d0c45ccb38 100644 --- a/code/game/mecha/micro/mecha_parts_vr.dm +++ b/code/game/mecha/micro/mecha_parts_vr.dm @@ -1,5 +1,5 @@ //new micro parts define - +/* //CHOMPedit commented micromech stuff, because fuck this trash /obj/item/mecha_parts/micro name = "mecha part" icon = 'icons/mecha/mech_construct_vr.dmi' @@ -124,7 +124,7 @@ icon_state = "weasel-arm-right" origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 3, TECH_ENGINEERING = 3) -/*/obj/item/mecha_parts/micro/part/weasel_left_leg +/obj/item/mecha_parts/micro/part/weasel_left_leg name="Weasel Left Leg" icon_state = "weasel-leg-left" origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 3, TECH_ENGINEERING = 3) @@ -132,9 +132,9 @@ /obj/item/mecha_parts/micro/part/weasel_right_leg name="Weasel Right Leg" icon_state = "weasel-leg-right" - origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 3, TECH_ENGINEERING = 3)*/ + origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 3, TECH_ENGINEERING = 3) /obj/item/mecha_parts/micro/part/weasel_tri_leg name="Weasel Legs" icon_state = "weasel-leg-all" - origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 3, TECH_ENGINEERING = 3) \ No newline at end of file + origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 3, TECH_ENGINEERING = 3) */ \ No newline at end of file diff --git a/code/game/mecha/micro/mecha_vr.dm b/code/game/mecha/micro/mecha_vr.dm index a0dd1b43e9..237b64f30f 100644 --- a/code/game/mecha/micro/mecha_vr.dm +++ b/code/game/mecha/micro/mecha_vr.dm @@ -1,4 +1,4 @@ -#ifdef T_BOARD_MICRO_MECHA +/*#ifdef T_BOARD_MICRO_MECHA ////CHOMPedit commented micromech stuff, because fuck this trash #error T_BOARD_MICRO_MECHA already defined elsewhere, we can't use it. #endif #define T_BOARD_MICRO_MECHA(name) "exosuit module circuit board (" + (name) + ")" @@ -44,4 +44,4 @@ /obj/item/weapon/circuitboard/mecha/weasel/main name = T_BOARD_MICRO_MECHA("Weasel central control") - icon_state = "mainboard" + icon_state = "mainboard" */ diff --git a/code/game/mecha/micro/mechfab_designs_vr.dm b/code/game/mecha/micro/mechfab_designs_vr.dm index c48c10184a..4ef7fa76e3 100644 --- a/code/game/mecha/micro/mechfab_designs_vr.dm +++ b/code/game/mecha/micro/mechfab_designs_vr.dm @@ -1,3 +1,4 @@ +/* //CHOMPedit commented micromech stuff, because fuck this trash /datum/design/item/mechfab/gopher category = list("Gopher") time = 5 @@ -162,7 +163,7 @@ build_path = /obj/item/mecha_parts/micro/part/weasel_right_arm materials = list(DEFAULT_WALL_MATERIAL = 8750) -/*/datum/design/item/mechfab/weasel/left_leg +/datum/design/item/mechfab/weasel/left_leg name = "Weasel Left Leg" id = "weasel_left_leg" build_path = /obj/item/mecha_parts/micro/part/weasel_left_leg @@ -172,7 +173,7 @@ name = "Weasel Right Leg" id = "weasel_right_leg" build_path = /obj/item/mecha_parts/micro/part/weasel_right_leg - materials = list(DEFAULT_WALL_MATERIAL = 12500)*/ + materials = list(DEFAULT_WALL_MATERIAL = 12500) /datum/design/item/mechfab/weasel/tri_leg name = "Weasel Tri Leg" @@ -184,9 +185,9 @@ name = "Weasel Head" id = "weasel_head" build_path = /obj/item/mecha_parts/micro/part/weasel_head - materials = list(DEFAULT_WALL_MATERIAL = 7000, "glass" = 2500) + materials = list(DEFAULT_WALL_MATERIAL = 7000, "glass" = 2500) */ -/datum/design/item/mecha/medigun +/datum/design/item/mecha/medigun //Who the fuck thought it was a good idea to put this here? name = "BL-3/P directed restoration system" desc = "A portable medical system used to treat external injuries from afar." id = "mech_medigun" diff --git a/code/game/mecha/micro/micro.dm b/code/game/mecha/micro/micro.dm index 97f86f7472..5c2c2ed6ff 100644 --- a/code/game/mecha/micro/micro.dm +++ b/code/game/mecha/micro/micro.dm @@ -1,3 +1,4 @@ +/* //CHOMPedit commented micromech stuff, because fuck this trash /obj/mecha var/max_micro_utility_equip = 0 var/max_micro_weapon_equip = 0 @@ -155,5 +156,5 @@ return result /obj/effect/decal/mecha_wreckage/micro - icon = 'icons/mecha/micro.dmi' + icon = 'icons/mecha/micro.dmi' */ diff --git a/code/game/mecha/micro/micro_equipment.dm b/code/game/mecha/micro/micro_equipment.dm index 2ea7e44763..8426766449 100644 --- a/code/game/mecha/micro/micro_equipment.dm +++ b/code/game/mecha/micro/micro_equipment.dm @@ -3,7 +3,7 @@ ///////////////////////////// //// WEAPONS BELOW //// ///////////////////////////// - +/* //CHOMPedit commented micromech stuff, because fuck this trash /obj/item/mecha_parts/mecha_equipment/weapon/energy/microlaser w_class = ITEMSIZE_LARGE desc = "A mounted micro laser-carbine for micro mechs." //CHOMPedit @@ -225,4 +225,4 @@ O.loc = src.loc to_chat(usr, "You empty the ore box") - return + return */ diff --git a/code/game/mecha/micro/security.dm b/code/game/mecha/micro/security.dm index d6d054a4f5..d634694510 100644 --- a/code/game/mecha/micro/security.dm +++ b/code/game/mecha/micro/security.dm @@ -1,3 +1,4 @@ +/* //CHOMPedit commented micromech stuff, because fuck this trash /obj/mecha/micro/sec/moved_inside(var/mob/living/carbon/human/H as mob) if(..()) if(H.client) @@ -55,4 +56,4 @@ /obj/effect/decal/mecha_wreckage/micro/sec/weasel name = "Weasel wreckage" - icon_state = "weasel-broken" + icon_state = "weasel-broken" */ diff --git a/code/game/mecha/micro/utility.dm b/code/game/mecha/micro/utility.dm index 9ceaa2bae9..4bc1e89321 100644 --- a/code/game/mecha/micro/utility.dm +++ b/code/game/mecha/micro/utility.dm @@ -1,4 +1,4 @@ - +/* //CHOMPedit commented micromech stuff, because fuck this trash /obj/mecha/micro/utility/gopher //small digging creature, to keep the theme desc = "A tough little utility mech for micro crewmembers, based on a miner borg chassis." @@ -21,4 +21,4 @@ /obj/effect/decal/mecha_wreckage/micro/utility/gopher name = "Gopher wreckage" icon_state = "gopher-broken" - +*/ diff --git a/code/game/mecha/working/ripley.dm b/code/game/mecha/working/ripley.dm index aff19e301d..def044c9bb 100644 --- a/code/game/mecha/working/ripley.dm +++ b/code/game/mecha/working/ripley.dm @@ -24,6 +24,9 @@ /obj/item/mecha_parts/component/electrical ) + icon_scale_x = 1.2 + icon_scale_y = 1.2 + /obj/mecha/working/ripley/Destroy() for(var/atom/movable/A in src.cargo) A.loc = loc @@ -92,6 +95,20 @@ for(var/obj/item/mecha_parts/mecha_tracking/B in src.contents)//Deletes the beacon so it can't be found easily qdel (B) +/obj/mecha/working/ripley/antique + name = "APLU \"Geiger\"" + desc = "You can't beat the classics." + icon_state = "ripley-old" + initial_icon = "ripley-old" + + show_pilot = TRUE + pilot_lift = 5 + + max_utility_equip = 1 + max_universal_equip = 3 + + icon_scale_x = 1 + icon_scale_y = 1 //Vorestation Edit Start diff --git a/code/game/objects/effects/bluespace_spawner_ch.dm b/code/game/objects/effects/bluespace_spawner_ch.dm new file mode 100644 index 0000000000..f81af322cf --- /dev/null +++ b/code/game/objects/effects/bluespace_spawner_ch.dm @@ -0,0 +1,37 @@ +/obj/effect/bspawner + name = "bluespace tear" + desc = "An erratic portal of bluespace energies, its tear seems quite unstable but seems to endlessly create crystals. . ." + anchored = 1 + icon = 'icons/obj/stationobjs_vr.dmi' + icon_state = "portalgateway" + var/obj/item_to_spawn = /obj/item/stack/telecrystal + var/item_arg = 8 + var/time_between_spawn = 1 MINUTE + var/time_to_end = 45 MINUTES + var/spawned_num = 0 + var/init_time + +/obj/effect/bspawner/Initialize() + . = ..() + START_PROCESSING(SSobj,src) + init_time = world.time + +/obj/effect/bspawner/proc/spawn_item() + if(!isnull(item_arg)) + new item_to_spawn(loc,item_arg) + else + new item_to_spawn(loc) + +/obj/effect/bspawner/process() + if(world.time > init_time + time_between_spawn * (spawned_num + 1)) + spawn_item() + spawned_num++ + if(world.time > init_time + time_to_end) + qdel(src) + +/obj/effect/bspawner/Destroy() + STOP_PROCESSING(SSobj,src) + . = ..() + +/obj/effect/bspawner/min30 + time_to_end = 30 MINUTES \ No newline at end of file diff --git a/code/game/objects/effects/mines.dm b/code/game/objects/effects/mines.dm index c522b4300e..c5e1f26c61 100644 --- a/code/game/objects/effects/mines.dm +++ b/code/game/objects/effects/mines.dm @@ -7,16 +7,32 @@ icon_state = "uglymine" var/triggered = 0 var/smoke_strength = 3 - var/mineitemtype = /obj/item/weapon/mine + var/obj/item/weapon/mine/mineitemtype = /obj/item/weapon/mine var/panel_open = 0 var/datum/wires/mines/wires = null register_as_dangerous_object = TRUE + var/camo_net = FALSE // Will the mine 'cloak' on deployment? + + // The trap item will be triggered in some manner when detonating. Default only checks for grenades. + var/obj/item/trap = null + /obj/effect/mine/New() icon_state = "uglyminearmed" wires = new(src) + if(ispath(trap)) + trap = new trap(src) + +/obj/effect/mine/Initialize() + ..() + + if(camo_net) + alpha = 50 + /obj/effect/mine/Destroy() + if(trap) + QDEL_NULL(trap) qdel_null(wires) return ..() @@ -25,11 +41,33 @@ triggered = 1 s.set_up(3, 1, src) s.start() - explosion(loc, 0, 2, 3, 4) //land mines are dangerous, folks. - visible_message("\The [src.name] detonates!") + + if(trap) + trigger_trap(M) + visible_message("\The [src.name] flashes as it is triggered!") + + else + explosion(loc, 0, 2, 3, 4) //land mines are dangerous, folks. + visible_message("\The [src.name] detonates!") + qdel(s) qdel(src) +/obj/effect/mine/proc/trigger_trap(var/mob/living/victim) + if(istype(trap, /obj/item/weapon/grenade)) + var/obj/item/weapon/grenade/G = trap + trap = null + G.forceMove(get_turf(src)) + if(victim.ckey) + msg_admin_attack("[key_name_admin(victim)] stepped on \a [src.name], triggering [trap]") + G.activate() + + if(istype(trap, /obj/item/device/transfer_valve)) + var/obj/item/device/transfer_valve/TV = trap + trap = null + TV.forceMove(get_turf(src)) + TV.toggle_valve() + /obj/effect/mine/bullet_act() if(prob(50)) explode() @@ -63,6 +101,9 @@ "You very carefully screw the mine's panel [panel_open ? "open" : "closed"].") playsound(src, W.usesound, 50, 1) + // Panel open, stay uncloaked, or uncloak if already cloaked. If you don't cloak on place, ignore it and just be normal alpha. + alpha = camo_net ? (panel_open ? 255 : 50) : 255 + else if((W.is_wirecutter() || istype(W, /obj/item/device/multitool)) && panel_open) interact(user) else @@ -74,6 +115,9 @@ user.set_machine(src) wires.Interact(user) +/obj/effect/mine/camo + camo_net = TRUE + /obj/effect/mine/dnascramble mineitemtype = /obj/item/weapon/mine/dnascramble @@ -193,6 +237,9 @@ spawn(0) qdel(src) +/obj/effect/mine/emp/camo + camo_net = TRUE + /obj/effect/mine/incendiary mineitemtype = /obj/item/weapon/mine/incendiary @@ -208,6 +255,26 @@ spawn(0) qdel(src) +/obj/effect/mine/gadget + mineitemtype = /obj/item/weapon/mine/gadget + +/obj/effect/mine/gadget/explode(var/mob/living/M) + var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread() + triggered = 1 + s.set_up(3, 1, src) + s.start() + + if(trap) + trigger_trap(M) + visible_message("\The [src.name] flashes as it is triggered!") + + else + explosion(loc, 0, 0, 2, 2) + visible_message("\The [src.name] detonates!") + + qdel(s) + qdel(src) + ///////////////////////////////////////////// // The held item version of the above mines ///////////////////////////////////////////// @@ -219,6 +286,10 @@ var/countdown = 10 var/minetype = /obj/effect/mine //This MUST be an /obj/effect/mine type, or it'll runtime. + var/obj/item/trap = null + + var/list/allowed_gadgets = null + /obj/item/weapon/mine/attack_self(mob/user as mob) // You do not want to move or throw a land mine while priming it... Explosives + Sudden Movement = Bad Times add_fingerprint(user) msg_admin_attack("[key_name_admin(user)] primed \a [src]") @@ -231,11 +302,39 @@ prime(user, TRUE) return +/obj/item/weapon/mine/attackby(obj/item/W as obj, mob/living/user as mob) + if(W.is_screwdriver() && trap) + to_chat(user, "You begin removing \the [trap].") + if(do_after(user, 10 SECONDS)) + to_chat(user, "You finish disconnecting the mine's trigger.") + trap.forceMove(get_turf(src)) + trap = null + return + + if(LAZYLEN(allowed_gadgets) && !trap) + var/allowed = FALSE + + for(var/path in allowed_gadgets) + if(istype(W, path)) + allowed = TRUE + break + + if(allowed) + user.drop_from_inventory(W) + W.forceMove(src) + trap = W + + ..() + /obj/item/weapon/mine/proc/prime(mob/user as mob, var/explode_now = FALSE) visible_message("\The [src.name] beeps as the priming sequence completes.") var/obj/effect/mine/R = new minetype(get_turf(src)) src.transfer_fingerprints_to(R) R.add_fingerprint(user) + if(trap) + R.trap = trap + trap = null + R.trap.forceMove(R) if(explode_now) R.explode(user) spawn(0) @@ -286,8 +385,14 @@ desc = "A small explosive mine with a fire symbol on the side." minetype = /obj/effect/mine/incendiary +/obj/item/weapon/mine/gadget + name = "gadget mine" + desc = "A small pressure-triggered device. If no component is added, the internal release bolts will detonate in unison when triggered." + + allowed_gadgets = list(/obj/item/weapon/grenade, /obj/item/device/transfer_valve) + // This tells AI mobs to not be dumb and step on mines willingly. /obj/item/weapon/mine/is_safe_to_step(mob/living/L) if(!L.hovering) return FALSE - return ..() \ No newline at end of file + return ..() diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 6da2255e1b..ff0ff75426 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -104,8 +104,10 @@ var/tip_timer // reference to timer id for a tooltip we might open soon -/obj/item/New() - ..() +/obj/item/Initialize(mapload) + . = ..() + if(islist(origin_tech)) + origin_tech = typelist(NAMEOF(src, origin_tech), origin_tech) if(embed_chance < 0) if(sharp) embed_chance = max(5, round(force/w_class)) diff --git a/code/game/objects/items/devices/spy_bug.dm b/code/game/objects/items/devices/spy_bug.dm index 03d0bdd60c..60ca5cc1a2 100644 --- a/code/game/objects/items/devices/spy_bug.dm +++ b/code/game/objects/items/devices/spy_bug.dm @@ -88,6 +88,14 @@ if(get_dist(user, src) == 0) . += "It has a tiny camera inside. Needs to be both configured and brought in contact with monitor device to be fully functional." +/obj/item/device/camerabug/update_icon() + ..() + + if(anchored) // Standard versions are relatively obvious if not hidden in a container. Anchoring them is advised, to disguise them. + alpha = 50 + else + alpha = 255 + /obj/item/device/camerabug/attackby(obj/item/W as obj, mob/living/user as mob) if(istype(W, /obj/item/device/bug_monitor)) var/obj/item/device/bug_monitor/SM = W @@ -101,6 +109,15 @@ linkedmonitor = null else to_chat(user, "Error: The device is linked to another monitor.") + + else if(W.is_wrench() && user.a_intent != I_HURT) + if(isturf(loc)) + anchored = !anchored + + to_chat(user, "You [anchored ? "" : "un"]secure \the [src].") + + update_icon() + return else if(W.force >= 5) visible_message("\The [src] lens shatters!") diff --git a/code/game/objects/items/paintkit.dm b/code/game/objects/items/paintkit.dm index 223c9a2018..45430a41c9 100644 --- a/code/game/objects/items/paintkit.dm +++ b/code/game/objects/items/paintkit.dm @@ -241,7 +241,7 @@ M.initial_icon = new_icon if(new_icon_file) M.icon = new_icon_file - M.reset_icon() + M.update_icon() use(1, user) /obj/mecha/attackby(var/obj/item/weapon/W, var/mob/user) diff --git a/code/game/objects/items/robot/robot_upgrades_vr.dm b/code/game/objects/items/robot/robot_upgrades_vr.dm index ad2556f810..b31f737e78 100644 --- a/code/game/objects/items/robot/robot_upgrades_vr.dm +++ b/code/game/objects/items/robot/robot_upgrades_vr.dm @@ -31,8 +31,8 @@ return 1 /obj/item/borg/upgrade/bellysizeupgrade - name = "robotic Hound process capacity upgrade Module" - desc = "Used to upgrade a hound belly capacity. This only affects total volume and such, you won't be able to support more than one patient. Usable once." + name = "robohound capacity expansion module" + desc = "Used to double a robohound's belly capacity. This only affects total volume, and won't allow support of more than one patient in case of sleeper bellies. Can only be applied once." icon_state = "cyborg_upgrade2" item_state = "cyborg_upgrade" require_module = 1 diff --git a/code/game/objects/items/sahoc_ch.dm b/code/game/objects/items/sahoc_ch.dm new file mode 100644 index 0000000000..69674eb59b --- /dev/null +++ b/code/game/objects/items/sahoc_ch.dm @@ -0,0 +1,149 @@ +/obj/item/device/buttonofnormal + name = "Chaos button" + desc = "It radiates an aura of chaotic size energy." + icon = 'icons/obj/mobcap.dmi' + icon_state = "mobcap0" + matter = list(DEFAULT_WALL_MATERIAL = 1000) + throwforce = 00 + throw_speed = 4 + throw_range = 20 + force = 0 + var/colorindex = 0 + var/mob/living/capsuleowner = null //taken from Capsule Code + var/sizetouse = 0.25 + + pickup(mob/user) + if(!capsuleowner) + capsuleowner = user + + attack_self(mob/user) + if(colorindex) + nonrandom() + sleep(10) + capsuleowner.resize(sizetouse) + sizetouse = rand(25,200)/100 //randmization occurs after press + + throw_impact(atom/A, speed, mob/user) + ..() + if(isliving(A)) + if(colorindex) + nonrandom() + sleep(5) + var/mob/living/capsulehit = A + capsulehit.resize(sizetouse) + sizetouse = rand(25,200)/100 //randmization occurs after press + + attackby(obj/item/W, mob/user) + if(istype(W, /obj/item/weapon/pen)) + colorindex = (colorindex + 1) % 6 + icon_state = "mobcap[colorindex]" + update_icon() + if(istype(W, /obj/item/weapon/card/id)) + capsuleowner = null + ..() + +/obj/item/device/buttonofnormal/proc/nonrandom() //Secret ball randmoizer rig code + switch(colorindex) + if(1) sizetouse = RESIZE_HUGE + if(2) sizetouse = RESIZE_BIG + if(3) sizetouse = RESIZE_NORMAL + if(4) sizetouse = RESIZE_SMALL + if(5) sizetouse = RESIZE_TINY + +/obj/item/device/daredevice + name = "Dare button" + desc = "A strange button, the only distinguishing feature being an engraved text reading 'Suffer to Gain.'." + icon = 'icons/obj/mobcap.dmi' + icon_state = "mobcap1" + matter = list(DEFAULT_WALL_MATERIAL = 5000) + throwforce = 00 + throw_speed = 2 + throw_range = 20 + force = 0 + var/luckynumber7 = 0 + var/colorindex = 1 + + var/list/winitems = list( + /obj/item/weapon/reagent_containers/food/snacks/cookie, + /obj/item/weapon/spacecasinocash, + /obj/item/weapon/reagent_containers/syringe/drugs, + ) + + attackby(obj/item/W, mob/user) + if(istype(W, /obj/item/weapon/pen)) + colorindex += 1 + if(colorindex >= 6) + colorindex = 0 + icon_state = "mobcap[colorindex]" + update_icon() + ..() + + attack_self(mob/user) + var/mob/living/capsuleowner = user + playsound(src, 'sound/effects/splat.ogg', 30, 1) + var/item = pick(winitems) + sleep(100) + switch(luckynumber7) + if(1) capsuleowner.resize(RESIZE_TINY) //Loss Shrinking! + if(2) capsuleowner.apply_damage(5, BRUTE) //Loss Damaging! + if(3) capsuleowner.Weaken(5) //Loss Knee spaghetti! + if(4) capsuleowner.hallucination += 66 //loss woah, dude. + if(5) new item(capsuleowner.loc) //Win! + if(7) + new /obj/item/weapon/material/butterfly/switchblade(capsuleowner.loc) + capsuleowner.apply_damage(10, BRUTE) //Loss Damaging! WIN KNIVE! + if(9) + new /obj/item/weapon/gun/energy/sizegun/not_advanced(capsuleowner.loc) + qdel(src) + if(777) new /obj/item/weapon/spacecash/c1000(capsuleowner.loc) //for rigging + else luckynumber7 = (rand(0,10)) + luckynumber7 = rand(0,10) + sleep(100) + playsound(src.loc, 'sound/machines/slotmachine.ogg', 25, 1) + +//items literally just made for the above item spawner + +// +//BADvanced size gun +// +/obj/item/weapon/gun/energy/sizegun/not_advanced + name = "Corrupted size gun" + desc = "A highly advanced ray gun with a knob on the side to adjust the size you desire. Or at least that's what it used to be." + projectile_type = /obj/item/projectile/beam/sizelaser/chaos + charge_cost = 60 //1/3 of the base price for a normal one. +// +//CHAOS laser +// +/obj/item/projectile/beam/sizelaser/chaos //The Defintiely not advanced sizeguns laser. + name = "chaos size beam" + light_color = "#FF0000" + light_range = 3 + light_power = 9 //should be plenty visible. + var/list/chaos_colors = list( + "#FF0000", + "#00FF00", + "#0000FF", + "#FFFF00", + "#00FFFF", + "#FF00FF", + "#000000", + "#FFFFFF", + "#F0F0F0", + "#0F0F0F", + ) + + on_hit(var/atom/target) + light_color = pick(chaos_colors) + var/chaos = rand(25,200) + var/mob/living/M = target + if(ishuman(target)) + var/mob/living/carbon/human/H = M + H.resize(chaos/100) + H.show_message(" The beam fires into your body, changing your size!") + H.updateicon() + else if (istype(target, /mob/living/)) + var/mob/living/H = M + H.resize(chaos/100) + H.updateicon() + else + return 1 diff --git a/code/game/objects/items/stacks/matter_synth.dm b/code/game/objects/items/stacks/matter_synth.dm index d92cd5f8dd..02c6518374 100644 --- a/code/game/objects/items/stacks/matter_synth.dm +++ b/code/game/objects/items/stacks/matter_synth.dm @@ -56,3 +56,6 @@ name = "Bandage Synthesizer" max_energy = 10 recharge_rate = 1 + +/datum/matter_synth/cloth + name = "Cloth Synthesizer" diff --git a/code/game/objects/items/stacks/sandbags.dm b/code/game/objects/items/stacks/sandbags.dm new file mode 100644 index 0000000000..c4e755c485 --- /dev/null +++ b/code/game/objects/items/stacks/sandbags.dm @@ -0,0 +1,158 @@ +/obj/item/stack/sandbags + name = "sandbag" + desc = "Filled sandbags. Fortunately pre-filled." + singular_name = "sandbag" + icon = 'icons/obj/sandbags.dmi' + icon_state = "sandbag" + w_class = ITEMSIZE_LARGE + force = 10.0 + throwforce = 20.0 + throw_speed = 5 + throw_range = 3 + drop_sound = 'sound/items/drop/clothing.ogg' + pickup_sound = 'sound/items/pickup/clothing.ogg' + matter = list(MAT_CLOTH = SHEET_MATERIAL_AMOUNT * 2) + max_amount = 30 + attack_verb = list("hit", "bludgeoned", "pillowed") + no_variants = TRUE + stacktype = /obj/item/stack/sandbags + + pass_color = TRUE + + var/bag_material = "cloth" + +/obj/item/stack/sandbags/cyborg + name = "sandbag synthesizer" + desc = "A device that makes filled sandbags. Don't ask how." + gender = NEUTER + matter = null + uses_charge = 1 + charge_costs = list(500) + stacktype = /obj/item/stack/sandbags + + bag_material = MAT_SYNCLOTH + +/obj/item/stack/sandbags/New(var/newloc, var/amt, var/bag_mat) + ..() + recipes = sandbag_recipes + update_icon() + + if(bag_mat) + bag_material = bag_mat + + var/datum/material/M = get_material_by_name("[bag_material]") + if(!M) + qdel(src) + return + + color = M.icon_colour + +/obj/item/stack/sandbags/update_icon() + var/amount = get_amount() + + slowdown = round(amount / 10, 0.1) + +var/global/list/datum/stack_recipe/sandbag_recipes = list( \ + new/datum/stack_recipe("barricade", /obj/structure/barricade/sandbag, 3, time = 5 SECONDS, one_per_turf = 1, on_floor = 1, pass_stack_color = TRUE)) + +/obj/item/stack/sandbags/produce_recipe(datum/stack_recipe/recipe, var/quantity, mob/user) + var/required = quantity*recipe.req_amount + var/produced = min(quantity*recipe.res_amount, recipe.max_res_amount) + + if (!can_use(required)) + if (produced>1) + to_chat(user, "You haven't got enough [src] to build \the [produced] [recipe.title]\s!") + else + to_chat(user, "You haven't got enough [src] to build \the [recipe.title]!") + return + + if (recipe.one_per_turf && (locate(recipe.result_type) in user.loc)) + to_chat(user, "There is another [recipe.title] here!") + return + + if (recipe.on_floor && !isfloor(user.loc)) + to_chat(user, "\The [recipe.title] must be constructed on the floor!") + return + + if (recipe.time) + to_chat(user, "Building [recipe.title] ...") + if (!do_after(user, recipe.time)) + return + + if (use(required)) + var/atom/O = new recipe.result_type(user.loc, bag_material) + + if(istype(O, /obj)) + var/obj/Ob = O + + if(LAZYLEN(Ob.matter)) // Law of equivalent exchange. + Ob.matter.Cut() + + else + Ob.matter = list() + + var/mattermult = istype(Ob, /obj/item) ? min(2000, 400 * Ob.w_class) : 2000 + + Ob.matter[recipe.use_material] = mattermult / produced * required + + O.set_dir(user.dir) + O.add_fingerprint(user) + + if (istype(O, /obj/item/stack)) + var/obj/item/stack/S = O + S.amount = produced + S.add_to_stacks(user) + + if (istype(O, /obj/item/weapon/storage)) //BubbleWrap - so newly formed boxes are empty + for (var/obj/item/I in O) + qdel(I) + + if ((pass_color || recipe.pass_color)) + if(!color) + if(recipe.use_material) + var/datum/material/MAT = get_material_by_name(recipe.use_material) + if(MAT.icon_colour) + O.color = MAT.icon_colour + else + return + else + O.color = color + +// Empty bags. Yes, you need to fill them. + +/obj/item/stack/emptysandbag + name = "sandbag" + desc = "Empty sandbags. You know what must be done." + singular_name = "sandbag" + icon = 'icons/obj/sandbags.dmi' + icon_state = "sandbag_e" + w_class = ITEMSIZE_LARGE + + strict_color_stacking = TRUE + max_amount = 30 + stacktype = /obj/item/stack/emptysandbag + + pass_color = TRUE + + var/bag_material = "cloth" + +/obj/item/stack/emptysandbag/New(var/newloc, var/amt, var/bag_mat) + ..(newloc, amt) + + if(bag_mat) + bag_material = bag_mat + + var/datum/material/M = get_material_by_name("[bag_material]") + if(!M) + qdel(src) + return + + color = M.icon_colour + +/obj/item/stack/emptysandbag/attack_self(var/mob/user) + while(do_after(user, 1 SECOND) && can_use(1) && istype(get_turf(src), /turf/simulated/floor/outdoors)) + use(1) + var/obj/item/stack/sandbags/SB = new (get_turf(src), 1, bag_material) + SB.color = color + if(user) + to_chat(user, "You fill a sandbag.") diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index 5fa718564f..d42d6c0e56 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -163,7 +163,7 @@ if (recipe.time) to_chat(user, "Building [recipe.title] ...") - if (!do_after(user, recipe.time, exclusive = TRUE)) + if (!do_after(user, recipe.time)) return if (use(required)) diff --git a/code/game/objects/items/stacks/tiles/fifty_spawner_tiles.dm b/code/game/objects/items/stacks/tiles/fifty_spawner_tiles.dm index 098926f535..8399fcfca8 100644 --- a/code/game/objects/items/stacks/tiles/fifty_spawner_tiles.dm +++ b/code/game/objects/items/stacks/tiles/fifty_spawner_tiles.dm @@ -8,6 +8,10 @@ name = "stack of sifgrass" type_to_spawn = /obj/item/stack/tile/grass/sif +/obj/fiftyspawner/grass/sif/forest + name = "stack of sifgrass" + type_to_spawn = /obj/item/stack/tile/grass/sif/forest + /obj/fiftyspawner/wood name = "stack of wood" type_to_spawn = /obj/item/stack/tile/wood @@ -62,4 +66,4 @@ /obj/fiftyspawner/bmarble name = "stack of dark marble tiles" - type_to_spawn = /obj/item/stack/tile/bmarble \ No newline at end of file + type_to_spawn = /obj/item/stack/tile/bmarble diff --git a/code/game/objects/items/stacks/tiles/tile_types.dm b/code/game/objects/items/stacks/tiles/tile_types.dm index 1612725741..609400ca36 100644 --- a/code/game/objects/items/stacks/tiles/tile_types.dm +++ b/code/game/objects/items/stacks/tiles/tile_types.dm @@ -52,6 +52,16 @@ singular_name = "sivian grass floor tile" desc = "A patch of grass like those that decorate the plains of Sif." +/obj/item/stack/tile/grass/sif/forest + name = "sivian overgrowth tile" + singular_name = "sivian overgrowth floor tile" + desc = "A patch of dark overgrowth like those that decorate the plains of Sif." + +/obj/item/stack/tile/grass/sif/forest + name = "sivian overgrowth tile" + singular_name = "sivian overgrowth floor tile" + desc = "A patch of dark overgrowth like those that decorate the plains of Sif." + /* * Wood */ diff --git a/code/game/objects/items/toys/toys_vr.dm b/code/game/objects/items/toys/toys_vr.dm index 91c3ed7e06..73f73d8833 100644 --- a/code/game/objects/items/toys/toys_vr.dm +++ b/code/game/objects/items/toys/toys_vr.dm @@ -1,3 +1,9 @@ +/obj/item/toy/mistletoe + name = "mistletoe" + desc = "You are supposed to kiss someone under these" + icon = 'icons/obj/toy_vr.dmi' + icon_state = "mistletoe" + /obj/item/toy/plushie/lizardplushie name = "lizard plushie" desc = "An adorable stuffed toy that resembles a lizardperson." @@ -50,6 +56,14 @@ /obj/item/toy/plushie/borgplushie/scrubpuppy icon_state = "scrubpuppy" +/obj/item/toy/plushie/borgplushie/drakiesec + icon = 'icons/obj/drakietoy_vr.dmi' + icon_state = "secdrake" + +/obj/item/toy/plushie/borgplushie/drakiemed + icon = 'icons/obj/drakietoy_vr.dmi' + icon_state = "meddrake" + /obj/item/toy/plushie/foxbear name = "toy fox" desc = "Issa fox!" @@ -68,3 +82,22 @@ desc = "A perfectly sized snuggable river weasel! Keep away from Clams." icon = 'icons/obj/toy_vr.dmi' icon_state = "plushie_otter" + +/obj/item/toy/plushie/vox + name = "vox plushie" + desc = "A stitched-together vox, fresh from the skipjack. Press its belly to hear it skree!" + icon = 'icons/obj/toy_vr.dmi' + icon_state = "plushie_vox" + var/cooldown = 0 + +/obj/item/toy/plushie/vox/attack_self(mob/user as mob) + if(!cooldown) + playsound(user, 'sound/voice/shriek1.ogg', 10, 0) + src.visible_message("Skreee!") + cooldown = 1 + addtimer(CALLBACK(src, .proc/cooldownreset), 50) + return ..() + +/obj/item/toy/plushie/vox/proc/cooldownreset() + cooldown = 0 + diff --git a/code/game/objects/items/weapons/circuitboards/frame.dm b/code/game/objects/items/weapons/circuitboards/frame.dm index 85f81b1058..d91a25b631 100644 --- a/code/game/objects/items/weapons/circuitboards/frame.dm +++ b/code/game/objects/items/weapons/circuitboards/frame.dm @@ -174,10 +174,14 @@ build_path = /obj/machinery/teleport/hub board_type = new /datum/frame/frame_types/machine //YWEdit makes buildable // origin_tech = list(TECH_DATA = 2, TECH_BLUESPACE = 4) +//CHOMPedit Balance req_components = list( - /obj/item/weapon/stock_parts/scanning_module = 4, - /obj/item/weapon/stock_parts/micro_laser = 4, - /obj/item/stack/cable_coil = 10) + /obj/item/weapon/ore/bluespace_crystal = 2, + /obj/item/weapon/stock_parts/capacitor = 2, + /obj/item/weapon/stock_parts/scanning_module = 2, + /obj/item/weapon/stock_parts/micro_laser =2, + /obj/item/stack/cable_coil = 5) +//End CHOMPedit /obj/item/weapon/circuitboard/teleporter_station name = T_BOARD("teleporter station") diff --git a/code/game/objects/items/weapons/grenades/spawnergrenade_ch.dm b/code/game/objects/items/weapons/grenades/spawnergrenade_ch.dm index 17d271590c..b4e1d7408e 100644 --- a/code/game/objects/items/weapons/grenades/spawnergrenade_ch.dm +++ b/code/game/objects/items/weapons/grenades/spawnergrenade_ch.dm @@ -152,3 +152,13 @@ qdel(src) return + +/obj/item/weapon/grenade/spawnergrenade/clustaur + desc = "It is set to detonate in 5 seconds. It will release a cluster of hydration." + name = "clustaur grenade" + icon = 'icons/obj/grenade_ch.dmi' + icon_state = "clustaur" + item_state = "clustaur" + banglet = 1 + deliveryamt = 10 + spawner_type = /obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle/wataur diff --git a/code/game/objects/items/weapons/implants/implantreagent_ch.dm b/code/game/objects/items/weapons/implants/implantreagent_ch.dm index cb41899841..58fa016775 100644 --- a/code/game/objects/items/weapons/implants/implantreagent_ch.dm +++ b/code/game/objects/items/weapons/implants/implantreagent_ch.dm @@ -23,7 +23,7 @@ /mob/living/carbon/human/proc/use_reagent_implant_egg() set name = "Force Someone Adjacent To Lay An Egg, If Applicable!" set desc = "Force someone adjacent to lay an egg by squeezing into their lower body! Whilst their reaction may vary, this is certainly going to overwhelm them for a moment!" - set category = "Local" + set category = "Object" set src in view(1) //do_reagent_implant(usr) if(!isliving(usr) || !usr.checkClickCooldown()) @@ -93,7 +93,7 @@ set name = "Toggle cascading" set desc = "Toggle whether or not being forced to lay an egg will cause you to lay all others as well, in rapid succession" - set category = "Local" + set category = "Object" var/obj/item/weapon/implant/reagent_generator/egg/rimplant for(var/obj/item/organ/external/E in organs) @@ -138,4 +138,4 @@ /obj/item/weapon/implant/reagent_generator/egg/veryslowlowcap name = "very slow, low capacity egg laying implant" usable_volume = 6000 - transfer_amount = 6000 \ No newline at end of file + transfer_amount = 6000 diff --git a/code/game/objects/items/weapons/material/material_weapons.dm b/code/game/objects/items/weapons/material/material_weapons.dm index 963f1d3683..4948adf425 100644 --- a/code/game/objects/items/weapons/material/material_weapons.dm +++ b/code/game/objects/items/weapons/material/material_weapons.dm @@ -99,6 +99,8 @@ /obj/item/weapon/material/proc/check_health(var/consumed) if(health<=0) + health = 0 + if(fragile) shatter(consumed) else if(!dulled && can_dull) diff --git a/code/game/objects/items/weapons/material/misc.dm b/code/game/objects/items/weapons/material/misc.dm index 754943671e..d8906955a1 100644 --- a/code/game/objects/items/weapons/material/misc.dm +++ b/code/game/objects/items/weapons/material/misc.dm @@ -93,3 +93,118 @@ //icon_state = "reinf-snowball" force_divisor = 0.20 thrown_force_divisor = 0.25 + +/obj/item/weapon/material/whip + name = "whip" + desc = "A tool used to discipline animals, or look cool. Mostly the latter." + description_info = "Help - Standard attack, no modifiers.
\ + Disarm - Disarming strike. Attempts to disarm the target at range, similar to an unarmed disarm. Additionally, will force the target (if possible) to move away from you.
\ + Grab - Grappling strike. Attempts to pull the target toward you. This can also move objects.
\ + Harm - A standard strike with a small chance to disarm." + icon = 'icons/obj/weapons.dmi' + icon_state = "whip" + item_state = "chain" + default_material = MAT_LEATHER + slot_flags = SLOT_BELT + w_class = ITEMSIZE_NORMAL + origin_tech = list(TECH_COMBAT = 2) + attack_verb = list("flogged", "whipped", "lashed", "disciplined") + force_divisor = 0.15 + thrown_force_divisor = 0.25 + reach = 2 + + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_melee.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_melee.dmi', + ) + +/obj/item/weapon/material/whip/afterattack(atom/A as mob|obj|turf|area, mob/user as mob, proximity) + ..() + + if(!proximity) + return + + if(istype(A, /atom/movable)) + var/atom/movable/AM = A + if(AM.anchored) + to_chat(user, "\The [AM] won't budge.") + return + + else + if(!istype(AM, /obj/item)) + user.visible_message("\The [AM] is pulled along by \the [src]!") + AM.Move(get_step(AM, get_dir(AM, src))) + return + + else + user.visible_message("\The [AM] is snatched by \the [src]!") + AM.throw_at(user, reach, 0.1, user) + +/obj/item/weapon/material/whip/apply_hit_effect(mob/living/target, mob/living/user, var/hit_zone) + if(user.a_intent) + switch(user.a_intent) + if(I_HURT) + if(prob(10) && istype(target, /mob/living/carbon/human) && user.zone_sel in list(BP_L_LEG, BP_R_LEG, BP_L_FOOT, BP_R_FOOT, BP_L_ARM, BP_R_ARM, BP_L_HAND, BP_R_HAND)) + to_chat(target, "\The [src] rips at your hands!") + ranged_disarm(target) + if(I_DISARM) + if(prob(min(90, force * 3)) && istype(target, /mob/living/carbon/human) && user.zone_sel in list(BP_L_LEG, BP_R_LEG, BP_L_FOOT, BP_R_FOOT, BP_L_ARM, BP_R_ARM, BP_L_HAND, BP_R_HAND)) + ranged_disarm(target) + else + target.visible_message("\The [src] sends \the [target] stumbling away.") + target.Move(get_step(target,get_dir(user,target))) + if(I_GRAB) + var/turf/STurf = get_turf(target) + spawn(2) + playsound(STurf, 'sound/effects/snap.ogg', 60, 1) + target.visible_message("\The [src] yanks \the [target] towards \the [user]!") + target.throw_at(get_turf(get_step(user,get_dir(user,target))), 2, 1, src) + + ..() + +/obj/item/weapon/material/whip/proc/ranged_disarm(var/mob/living/carbon/human/H, var/mob/living/user) + if(istype(H)) + var/list/holding = list(H.get_active_hand() = 40, H.get_inactive_hand() = 20) + + if(user.zone_sel in list(BP_L_ARM, BP_R_ARM, BP_L_HAND, BP_R_HAND)) + for(var/obj/item/weapon/gun/W in holding) + if(W && prob(holding[W])) + var/list/turfs = list() + for(var/turf/T in view()) + turfs += T + if(turfs.len) + var/turf/target = pick(turfs) + visible_message("[H]'s [W] goes off due to \the [src]!") + return W.afterattack(target,H) + + if(!(H.species.flags & NO_SLIP) && prob(10) && user.zone_sel in list(BP_L_LEG, BP_R_LEG, BP_L_FOOT, BP_R_FOOT)) + var/armor_check = H.run_armor_check(user.zone_sel, "melee") + H.apply_effect(3, WEAKEN, armor_check) + playsound(src, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + if(armor_check < 60) + visible_message("\The [src] has tripped [H]!") + else + visible_message("\The [src] attempted to trip [H]!") + return + + else + if(H.break_all_grabs(user)) + playsound(src, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + return + + if(user.zone_sel in list(BP_L_ARM, BP_R_ARM, BP_L_HAND, BP_R_HAND)) + for(var/obj/item/I in holding) + if(I && prob(holding[I])) + H.drop_from_inventory(I) + visible_message("\The [src] has disarmed [H]!") + playsound(src, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + return + +/obj/item/weapon/material/whip/suicide_act(mob/user) + var/datum/gender/T = gender_datums[user.get_visible_gender()] + user.visible_message(span("danger", "\The [user] [T.is] strangling [T.himself] with \the [src]! It looks like [T.he] [T.is] trying to commit suicide."), span("danger", "You start to strangle yourself with \the [src]!"), span("danger", "You hear the sound of someone choking!")) + return (OXYLOSS) + +/obj/item/weapon/material/whip/attack_self(mob/user) + user.visible_message("\The [user] cracks \the [src]!") + playsound(src, 'sound/effects/snap.ogg', 50, 1) diff --git a/code/game/objects/items/weapons/material/misc_ch.dm b/code/game/objects/items/weapons/material/misc_ch.dm new file mode 100644 index 0000000000..1d6ce411de --- /dev/null +++ b/code/game/objects/items/weapons/material/misc_ch.dm @@ -0,0 +1,3 @@ +//CHOMP Specific overrides +/obj/item/weapon/material/whip + icon = 'icons/obj/weapons_ch.dmi' \ No newline at end of file diff --git a/code/game/objects/items/weapons/melee/misc.dm b/code/game/objects/items/weapons/melee/misc.dm index 4185cf92c2..b7684d6a7f 100644 --- a/code/game/objects/items/weapons/melee/misc.dm +++ b/code/game/objects/items/weapons/melee/misc.dm @@ -9,10 +9,12 @@ origin_tech = list(TECH_COMBAT = 4) attack_verb = list("flogged", "whipped", "lashed", "disciplined") - suicide_act(mob/user) - var/datum/gender/T = gender_datums[user.get_visible_gender()] - user.visible_message(span("danger", "\The [user] [T.is] strangling [T.himself] with \the [src]! It looks like [T.he] [T.is] trying to commit suicide."), span("danger", "You start to strangle yourself with \the [src]!"), span("danger", "You hear the sound of someone choking!")) - return (OXYLOSS) + reach = 2 + +/obj/item/weapon/melee/chainofcommand/suicide_act(mob/user) + var/datum/gender/T = gender_datums[user.get_visible_gender()] + user.visible_message(span("danger", "\The [user] [T.is] strangling [T.himself] with \the [src]! It looks like [T.he] [T.is] trying to commit suicide."), span("danger", "You start to strangle yourself with \the [src]!"), span("danger", "You hear the sound of someone choking!")) + return (OXYLOSS) /obj/item/weapon/melee/umbrella name = "umbrella" diff --git a/code/game/objects/items/weapons/storage/egg_vr.dm b/code/game/objects/items/weapons/storage/egg_vr.dm new file mode 100644 index 0000000000..0ea3b673e1 --- /dev/null +++ b/code/game/objects/items/weapons/storage/egg_vr.dm @@ -0,0 +1,182 @@ +//Item type vorepanel egg release containers. + +/obj/item/weapon/storage/vore_egg + name = "egg" + desc = "It's an egg; it's smooth to the touch." //This is the default egg. + icon = 'icons/obj/egg_new_vr.dmi' + icon_state = "egg" + var/open_egg_icon = 'icons/obj/egg_open_vr.dmi' + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_storage.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_storage.dmi', + ) + w_class = 2 + max_w_class = 0 + show_messages = 0 + allow_quick_empty = TRUE + use_sound = 'sound/items/drop/flesh.ogg' + +/obj/item/weapon/storage/vore_egg/open(mob/user as mob) + icon = open_egg_icon + ..() + +/obj/item/weapon/storage/vore_egg/proc/hatch(mob/living/user as mob) + visible_message("\The [src] begins to shake as something pushes out from within!") + animate_shake() + if(do_after(user, 50)) + if(use_sound) + playsound(src, src.use_sound, 50, 0, -5) + animate_shake() + drop_contents() + icon = open_egg_icon + +/obj/item/weapon/storage/vore_egg/proc/animate_shake() + var/init_px = pixel_x + var/shake_dir = pick(-1, 1) + animate(src, transform=turn(matrix(), 8*shake_dir), pixel_x=init_px + 2*shake_dir, time=1) + animate(transform=null, pixel_x=init_px, time=6, easing=ELASTIC_EASING) + +/obj/item/weapon/storage/vore_egg/unathi + name = "unathi egg" + desc = "Some species of Unathi apparently lay soft-shelled eggs!" + icon_state = "egg_unathi" + +/obj/item/weapon/storage/vore_egg/nevrean + name = "nevrean egg" + desc = "Most Nevreans lay hard-shelled eggs!" + icon_state = "egg_nevrean" + +/obj/item/weapon/storage/vore_egg/human + name = "human egg" + desc = "Some humans lay eggs that are--wait, what?" + icon_state = "egg_human" + +/obj/item/weapon/storage/vore_egg/tajaran + name = "tajaran egg" + desc = "Apparently that's what a Tajaran egg looks like. Weird." + icon_state = "egg_tajaran" + +/obj/item/weapon/storage/vore_egg/skrell + name = "skrell egg" + desc = "Its soft and squishy" + icon_state = "egg_skrell" + +/obj/item/weapon/storage/vore_egg/shark + name = "akula egg" + desc = "Its soft and slimy to the touch" + icon_state = "egg_akula" + +/obj/item/weapon/storage/vore_egg/sergal + name = "sergal egg" + desc = "An egg with a slightly fuzzy exterior, and a hard layer beneath." + icon_state = "egg_sergal" + +/obj/item/weapon/storage/vore_egg/slime + name = "slime egg" + desc = "An egg with a soft and squishy interior, coated with slime." + icon_state = "egg_slime" + +/obj/item/weapon/storage/vore_egg/special //Not actually used, but the sprites are in, and it's there in case any admins need to spawn in the egg for any specific reasons. + name = "special egg" + desc = "This egg has a very unique look to it." + icon_state = "egg_unique" + +/obj/item/weapon/storage/vore_egg/scree + name = "Chimera egg" + desc = "...You don't know what type of creature laid this egg." + icon_state = "egg_scree" + +/obj/item/weapon/storage/vore_egg/xenomorph + name = "Xenomorph egg" + desc = "Some type of pitch black egg. It has a slimy exterior coating." + icon_state = "egg_xenomorph" + +/obj/item/weapon/storage/vore_egg/chocolate + name = "chocolate egg" + desc = "Delicious. May contain a choking hazard." + icon_state = "egg_chocolate" + +/obj/item/weapon/storage/vore_egg/owlpellet + name = "boney egg" + desc = "Can an egg shell be made of bones and hair?" + icon_state = "egg_pellet" + +/obj/item/weapon/storage/vore_egg/slimeglob + name = "glob of slime" + desc = "Very squishy." + icon_state = "egg_slimeglob" + +/obj/item/weapon/storage/vore_egg/chicken + name = "chicken egg" + desc = "Looks like chickens come in all sizes and shapes." + icon_state = "egg_chicken" + +/obj/item/weapon/storage/vore_egg/synthetic + name = "synthetic egg" + desc = "Can robots lay eggs?" + icon_state = "egg_synthetic" + +/obj/item/weapon/storage/vore_egg/badrecipe + name = "Burned mess" + desc = "Someone didn't cook this egg quite right..." + icon_state = "egg_badrecipe" + +/obj/item/weapon/storage/vore_egg/escapepod + name = "small escape pod" + desc = "Someone left in a hurry." + icon_state = "egg_escapepod" + +/obj/item/weapon/storage/vore_egg/cocoon + name = "web cocoon" + desc = "It straight up smells like spiders in here." + icon_state = "egg_cocoon" + +/obj/item/weapon/storage/vore_egg/bugcocoon + name = "bug cocoon" + desc = "Metamorphosis!" + icon_state = "egg_bugcocoon" + +/obj/item/weapon/storage/vore_egg/rock + name = "rock egg" + desc = "It looks like a small boulder." + icon_state = "egg_rock" + +/obj/item/weapon/storage/vore_egg/yellow + name = "yellow egg" + desc = "It is a nice yellow egg." + icon_state = "egg_yellow" + +/obj/item/weapon/storage/vore_egg/blue + name = "blue egg" + desc = "It is a nice blue egg." + icon_state = "egg_blue" + +/obj/item/weapon/storage/vore_egg/green + name = "green egg" + desc = "It is a nice green egg." + icon_state = "egg_green" + +/obj/item/weapon/storage/vore_egg/orange + name = "orange egg" + desc = "It is a nice orange egg." + icon_state = "egg_orange" + +/obj/item/weapon/storage/vore_egg/purple + name = "purple egg" + desc = "It is a nice purple egg." + icon_state = "egg_purple" + +/obj/item/weapon/storage/vore_egg/red + name = "red egg" + desc = "It is a nice red egg." + icon_state = "egg_red" + +/obj/item/weapon/storage/vore_egg/rainbow + name = "rainbow egg" + desc = "It looks so colorful." + icon_state = "egg_rainbow" + +/obj/item/weapon/storage/vore_egg/pinkspots + name = "spotted pink egg" + desc = "It is a cute pink egg with white spots." + icon_state = "egg_pinkspots" diff --git a/code/game/objects/items/weapons/traps.dm b/code/game/objects/items/weapons/traps.dm index 0ec9bc7af3..c583ce1eef 100644 --- a/code/game/objects/items/weapons/traps.dm +++ b/code/game/objects/items/weapons/traps.dm @@ -1,3 +1,9 @@ + +/* + * Beartraps. + * Buckles crossing individuals, doing moderate brute damage. + */ + /obj/item/weapon/beartrap name = "mechanical trap" throw_speed = 2 @@ -158,3 +164,238 @@ color = "#C9DCE1" origin_tech = list(TECH_MATERIAL = 4, TECH_BLUESPACE = 3, TECH_MAGNET = 4, TECH_PHORON = 2, TECH_ARCANE = 1) + +/* + * Barbed-Wire. + * Slows individuals crossing it. Barefoot individuals will be cut. Can be electrified by placing over a cable node. + */ + +/obj/item/weapon/material/barbedwire + name = "barbed wire" + desc = "A coil of wire." + icon = 'icons/obj/trap.dmi' + icon_state = "barbedwire" + anchored = FALSE + layer = TABLE_LAYER + w_class = ITEMSIZE_LARGE + explosion_resistance = 1 + can_dull = TRUE + fragile = TRUE + force_divisor = 0.20 + thrown_force_divisor = 0.25 + + sharp = TRUE + +/obj/item/weapon/material/barbedwire/set_material(var/new_material) + ..() + + if(!QDELETED(src)) + health = round(material.integrity / 3) + name = (material.get_edge_damage() * force_divisor > 15) ? "[material.display_name] razor wire" : "[material.display_name] [initial(name)]" + +/obj/item/weapon/material/barbedwire/proc/can_use(mob/user) + return (user.IsAdvancedToolUser() && !issilicon(user) && !user.stat && !user.restrained()) + +/obj/item/weapon/material/barbedwire/attack_hand(mob/user as mob) + if(anchored && can_use(user)) + user.visible_message( + "[user] starts to collect \the [src].", + "You begin collecting \the [src]!", + "You hear the sound of rustling [material.name]." + ) + playsound(src, 'sound/machines/click.ogg', 50, 1) + + if(do_after(user, health)) + user.visible_message( + "[user] has collected \the [src].", + "You have collected \the [src]!" + ) + anchored = 0 + update_icon() + else + ..() + +/obj/item/weapon/material/barbedwire/attack_self(mob/user as mob) + ..() + if(!anchored && can_use(user)) + user.visible_message( + "[user] starts to deploy \the [src].", + "You begin deploying \the [src]!", + "You hear the rustling of [material.name]." + ) + + if (do_after(user, 60)) + user.visible_message( + "[user] has deployed \the [src].", + "You have deployed \the [src]!", + "You hear the rustling of [material.name]." + ) + playsound(src, 'sound/items/Wirecutter.ogg',70, 1) + spawn(2) + playsound(src, 'sound/items/Wirecutter.ogg',40, 1) + user.drop_from_inventory(src) + forceMove(get_turf(src)) + anchored = 1 + update_icon() + +/obj/item/weapon/material/barbedwire/attackby(obj/item/W as obj, mob/user as mob) + if(!istype(W)) + return + + if((W.flags & NOCONDUCT) || !shock(user, 70, pick(BP_L_HAND, BP_R_HAND))) + user.setClickCooldown(user.get_attack_speed(W)) + user.do_attack_animation(src) + playsound(src, 'sound/effects/grillehit.ogg', 40, 1) + + var/inc_damage = W.force + + if(W.is_wirecutter()) + if(!shock(user, 100, pick(BP_L_HAND, BP_R_HAND))) + playsound(src, W.usesound, 100, 1) + inc_damage *= 3 + + if(W.damtype != BRUTE) + inc_damage *= 0.3 + + health -= inc_damage + + check_health() + + ..() + +/obj/item/weapon/material/barbedwire/update_icon() + ..() + + if(anchored) + icon_state = "[initial(icon_state)]-out" + else + icon_state = "[initial(icon_state)]" + +/obj/item/weapon/material/barbedwire/Crossed(atom/movable/AM as mob|obj) + if(AM.is_incorporeal()) + return + if(anchored && isliving(AM)) + var/mob/living/L = AM + if(L.m_intent == "run") + L.visible_message( + "[L] steps in \the [src].", + "You step in \the [src]!", + "You hear a sharp rustling!" + ) + attack_mob(L) + update_icon() + ..() + +/obj/item/weapon/material/barbedwire/proc/shock(mob/user as mob, prb, var/target_zone = BP_TORSO) + if(!anchored || health == 0) // anchored/destroyed grilles are never connected + return 0 + if(material.conductivity <= 0) + return 0 + if(!prob(prb)) + return 0 + if(!in_range(src, user))//To prevent TK and mech users from getting shocked + return 0 + var/turf/T = get_turf(src) + var/obj/structure/cable/C = T.get_cable_node() + if(C) + if(C.powernet) + var/datum/powernet/PN = C.powernet + + if(PN) + PN.trigger_warning() + + var/PN_damage = PN.get_electrocute_damage() * (material.conductivity / 50) + + var/drained_energy = PN_damage * 10 / CELLRATE + + PN.draw_power(drained_energy) + + if(ishuman(user)) + var/mob/living/carbon/human/H = user + + var/obj/item/organ/external/affected = H.get_organ(check_zone(target_zone)) + + H.electrocute_act(PN_damage, src, H.get_siemens_coefficient_organ(affected)) + + else + if(isliving(user)) + var/mob/living/L = user + L.electrocute_act(PN_damage, src, 0.8) + + var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread + s.set_up(3, 1, src) + s.start() + if(user.stunned) + return 1 + else + return 0 + return 0 + +/obj/item/weapon/material/barbedwire/proc/attack_mob(mob/living/L) + var/target_zone + if(L.lying) + target_zone = ran_zone() + else + target_zone = pick("l_foot", "r_foot", "l_leg", "r_leg") + + //armour + var/blocked = L.run_armor_check(target_zone, "melee") + var/soaked = L.get_armor_soak(target_zone, "melee") + + if(blocked >= 100) + return + + if(soaked >= 30) + return + + if(L.buckled) //wheelchairs, office chairs, rollerbeds + return + + shock(L, 100, target_zone) + + L.add_modifier(/datum/modifier/entangled, 3 SECONDS) + + if(!L.apply_damage(force * (issilicon(L) ? 0.25 : 1), BRUTE, target_zone, blocked, soaked, src, sharp, edge)) + return + + playsound(src, 'sound/effects/glass_step.ogg', 50, 1) // not sure how to handle metal shards with sounds + if(ishuman(L)) + var/mob/living/carbon/human/H = L + + if(H.species.siemens_coefficient<0.5) //Thick skin. + return + + if( H.shoes || ( H.wear_suit && (H.wear_suit.body_parts_covered & FEET) ) ) + return + + if(H.species.flags & NO_MINOR_CUT) + return + + to_chat(H, "You step directly on \the [src]!") + + var/list/check = list("l_foot", "r_foot") + while(check.len) + var/picked = pick(check) + var/obj/item/organ/external/affecting = H.get_organ(picked) + if(affecting) + if(affecting.robotic >= ORGAN_ROBOT) + return + if(affecting.take_damage(force, 0)) + H.UpdateDamageIcon() + H.updatehealth() + if(affecting.organ_can_feel_pain()) + H.Weaken(3) + return + check -= picked + + if(material.is_brittle() && prob(material.hardness)) + health = 0 + else if(!prob(material.hardness)) + health-- + check_health() + + return + +/obj/item/weapon/material/barbedwire/plastic + name = "snare wire" + default_material = MAT_PLASTIC diff --git a/code/game/objects/random/mapping.dm b/code/game/objects/random/mapping.dm index 16be9dff94..4d40578c1e 100644 --- a/code/game/objects/random/mapping.dm +++ b/code/game/objects/random/mapping.dm @@ -92,6 +92,8 @@ return pick(prob(30);/obj/effect/mine, prob(25);/obj/effect/mine/frag, prob(25);/obj/effect/mine/emp, + prob(15);/obj/effect/mine/camo, + prob(15);/obj/effect/mine/emp/camo, prob(10);/obj/effect/mine/stun, prob(10);/obj/effect/mine/incendiary,) diff --git a/code/game/objects/random/misc.dm b/code/game/objects/random/misc.dm index 9b33ec232f..13568c27e6 100644 --- a/code/game/objects/random/misc.dm +++ b/code/game/objects/random/misc.dm @@ -674,6 +674,9 @@ /obj/item/toy/plushie/foxbear, /obj/item/toy/plushie/nukeplushie, /obj/item/toy/plushie/otter, + /obj/item/toy/plushie/vox, + /obj/item/toy/plushie/borgplushie/drakiesec, + /obj/item/toy/plushie/borgplushie/drakiemed, //VOREStation Add End //YawnWider Add Start /obj/item/toy/plushie/teshari/_yw, diff --git a/code/game/objects/structures/barricades.dm b/code/game/objects/structures/barricades.dm new file mode 100644 index 0000000000..34ab6025c7 --- /dev/null +++ b/code/game/objects/structures/barricades.dm @@ -0,0 +1,185 @@ +//Barricades! +/obj/structure/barricade + name = "barricade" + desc = "This space is blocked off by a barricade." + icon = 'icons/obj/structures.dmi' + icon_state = "barricade" + anchored = 1.0 + density = 1.0 + var/health = 100 + var/maxhealth = 100 + var/datum/material/material + +/obj/structure/barricade/New(var/newloc, var/material_name) + ..(newloc) + if(!material_name) + material_name = "wood" + material = get_material_by_name("[material_name]") + if(!material) + qdel(src) + return + name = "[material.display_name] barricade" + desc = "This space is blocked off by a barricade made of [material.display_name]." + color = material.icon_colour + maxhealth = material.integrity + health = maxhealth + +/obj/structure/barricade/get_material() + return material + +/obj/structure/barricade/attackby(obj/item/W as obj, mob/user as mob) + user.setClickCooldown(user.get_attack_speed(W)) + if(istype(W, /obj/item/stack)) + var/obj/item/stack/D = W + if(D.get_material_name() != material.name) + return //hitting things with the wrong type of stack usually doesn't produce messages, and probably doesn't need to. + if(health < maxhealth) + if(D.get_amount() < 1) + to_chat(user, "You need one sheet of [material.display_name] to repair \the [src].") + return + visible_message("[user] begins to repair \the [src].") + if(do_after(user,20) && health < maxhealth) + if(D.use(1)) + health = maxhealth + visible_message("[user] repairs \the [src].") + return + return + else + switch(W.damtype) + if("fire") + health -= W.force * 1 + if("brute") + health -= W.force * 0.75 + if(material == (get_material_by_name(MAT_WOOD) || get_material_by_name(MAT_SIFWOOD))) + playsound(src, 'sound/effects/woodcutting.ogg', 100, 1) + else + playsound(src, 'sound/weapons/smash.ogg', 50, 1) + CheckHealth() + ..() + +/obj/structure/barricade/proc/CheckHealth() + if(health <= 0) + dismantle() + + health = min(health, maxhealth) + + return + +/obj/structure/barricade/take_damage(var/damage) + health -= damage + CheckHealth() + return + +/obj/structure/barricade/attack_generic(var/mob/user, var/damage, var/attack_verb) + visible_message("[user] [attack_verb] the [src]!") + if(material == get_material_by_name("resin")) + playsound(src, 'sound/effects/attackblob.ogg', 100, 1) + else if(material == (get_material_by_name(MAT_CLOTH) || get_material_by_name(MAT_SYNCLOTH))) + playsound(src, 'sound/items/drop/clothing.ogg', 100, 1) + else if(material == (get_material_by_name(MAT_WOOD) || get_material_by_name(MAT_SIFWOOD))) + playsound(src, 'sound/effects/woodcutting.ogg', 100, 1) + else + playsound(src, 'sound/weapons/smash.ogg', 50, 1) + user.do_attack_animation(src) + health -= damage + CheckHealth() + return + +/obj/structure/barricade/proc/dismantle() + material.place_dismantled_product(get_turf(src)) + visible_message("\The [src] falls apart!") + qdel(src) + return + +/obj/structure/barricade/ex_act(severity) + switch(severity) + if(1.0) + dismantle() + if(2.0) + health -= 25 + CheckHealth() + +/obj/structure/barricade/CanPass(atom/movable/mover, turf/target)//So bullets will fly over and stuff. + if(istype(mover) && mover.checkpass(PASSTABLE)) + return TRUE + return FALSE + +/obj/structure/barricade/sandbag + name = "sandbags" + desc = "Bags. Bags of sand. It's rough and coarse and somehow stays in the bag." + icon = 'icons/obj/sandbags.dmi' + icon_state = "blank" + +/obj/structure/barricade/sandbag/New(var/newloc, var/material_name) + if(!material_name) + material_name = "cloth" + ..(newloc, material_name) + material = get_material_by_name("[material_name]") + if(!material) + qdel(src) + return + name = "[material.display_name] [initial(name)]" + desc = "This space is blocked off by a barricade made of [material.display_name]." + color = null + maxhealth = material.integrity * 2 // These things are, commonly, used to stop bullets where possible. + health = maxhealth + update_connections(1) + +/obj/structure/barricade/sandbag/Destroy() + update_connections(1, src) + ..() + +/obj/structure/barricade/sandbag/dismantle() + update_connections(1, src) + material.place_dismantled_product(get_turf(src)) + visible_message("\The [src] falls apart!") + qdel(src) + return + +/obj/structure/barricade/sandbag/update_icon() + if(!material) + return + + cut_overlays() + var/image/I + + for(var/i = 1 to 4) + I = image('icons/obj/sandbags.dmi', "sandbags[connections[i]]", dir = 1<<(i-1)) + I.color = material.icon_colour + add_overlay(I) + + return + +/obj/structure/barricade/sandbag/update_connections(propagate = 0, var/obj/structure/barricade/sandbag/ignore = null) + if(!material) + return + var/list/dirs = list() + for(var/obj/structure/barricade/sandbag/S in orange(src, 1)) + if(!S.material) + continue + if(S == ignore) + continue + if(propagate >= 1) + S.update_connections(propagate - 1, ignore) + if(can_join_with(S)) + dirs += get_dir(src, S) + + connections = dirs_to_corner_states(dirs) + + update_icon() + +/obj/structure/barricade/sandbag/proc/can_join_with(var/obj/structure/barricade/sandbag/S) + if(material == S.material) + return 1 + return 0 + +/obj/structure/barricade/sandbag/CanPass(atom/movable/mover, turf/target) + . = ..() + + if(.) + if(istype(mover, /obj/item/projectile)) + var/obj/item/projectile/P = mover + + if(P.firer && get_dist(P.firer, src) > 1) // If you're firing from adjacent turfs, you are unobstructed. + if(P.armor_penetration < (material.protectiveness + material.hardness) || prob(33)) + return FALSE diff --git a/code/game/objects/structures/crates_lockers/closets/egg_vr.dm b/code/game/objects/structures/crates_lockers/closets/egg_vr.dm index ba0809f638..dabc8fd88b 100644 --- a/code/game/objects/structures/crates_lockers/closets/egg_vr.dm +++ b/code/game/objects/structures/crates_lockers/closets/egg_vr.dm @@ -36,11 +36,11 @@ icon_opened = "egg_unathi_open" /obj/structure/closet/secure_closet/egg/nevrean - name = "nevarean egg" - desc = "Most Nevareans lay hard-shelled eggs!" - icon_state = "egg_nevarean" - icon_closed = "egg_nevarean" - icon_opened = "egg_nevarean_open" + name = "nevrean egg" + desc = "Most Nevreans lay hard-shelled eggs!" + icon_state = "egg_nevrean" + icon_closed = "egg_nevrean" + icon_opened = "egg_nevrean_open" /obj/structure/closet/secure_closet/egg/human name = "human egg" diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm index 7372c980ff..b5245eb5a9 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm @@ -152,7 +152,9 @@ /obj/item/clothing/mask/gas/half, /obj/item/weapon/gun/projectile/revolvershotgun, /obj/item/ammo_magazine/m12gdrumjack/beanbag, - /obj/item/ammo_magazine/m12gdrumjack/beanbag) + /obj/item/ammo_magazine/m12gdrumjack/beanbag, + /obj/item/device/retail_scanner/security //CHOMPStation addition + ) /obj/structure/closet/secure_closet/warden/Initialize() if(prob(50)) @@ -191,7 +193,11 @@ /obj/item/weapon/cell/device/weapon, /obj/item/clothing/suit/storage/hooded/wintercoat/security, /obj/item/clothing/shoes/boots/winter/security, - /obj/item/device/flashlight/maglight) + /obj/item/device/flashlight/maglight, + /obj/item/device/holowarrant, //CHOMPStation addition + /obj/item/device/retail_scanner/security, //CHOMPStation addition + /obj/item/clothing/glasses/hud/security //CHOMPStation addition + ) /obj/structure/closet/secure_closet/security/Initialize() if(prob(50)) @@ -232,8 +238,8 @@ starts_with = list( /obj/item/clothing/accessory/badge/holo/detective, - /obj/item/clothing/gloves/black, - ///obj/item/gunbox, //VOREStation Removal, + /obj/item/clothing/gloves/forensic, //CHOMP Edit replaces black gloves + /obj/item/gunbox, //CHOMP Edit undoes vorestation removal and adds back gunbox /obj/item/weapon/storage/belt/detective, /obj/item/weapon/storage/box/evidence, /obj/item/device/radio/headset/headset_sec, @@ -246,7 +252,10 @@ /obj/item/weapon/storage/briefcase/crimekit, /obj/item/device/taperecorder, /obj/item/weapon/storage/bag/detective, - /obj/item/device/tape/random = 3) + /obj/item/device/tape/random = 3, + /obj/item/device/retail_scanner/security, //CHOMPStation addition + /obj/item/clothing/glasses/hud/security //CHOMPStation addition + ) /obj/structure/closet/secure_closet/injection name = "lethal injections locker" diff --git a/code/game/objects/structures/ghost_pods/event_vr.dm b/code/game/objects/structures/ghost_pods/event_vr.dm new file mode 100644 index 0000000000..c724b9bd80 --- /dev/null +++ b/code/game/objects/structures/ghost_pods/event_vr.dm @@ -0,0 +1,101 @@ +/obj/structure/ghost_pod/ghost_activated/maintpred + name = "maintenance hole" + desc = "Looks like some creature dug its way into station's maintenance..." + icon = 'icons/effects/effects.dmi' + icon_state = "tunnel_hole" + icon_state_opened = "tunnel_hole" + density = FALSE + ghost_query_type = /datum/ghost_query/maints_pred + anchored = TRUE + invisibility = INVISIBILITY_OBSERVER + spawn_active = TRUE + var/announce_prob = 35 + var/list/possible_mobs = list("Space Bumblebee" = /mob/living/simple_mob/vore/bee, + "Voracious Lizard" = /mob/living/simple_mob/vore/aggressive/dino, + "Giant Frog" = /mob/living/simple_mob/vore/aggressive/frog, + "Giant Rat" = /mob/living/simple_mob/vore/aggressive/rat, + "Juvenile Solargrub" = /mob/living/simple_mob/vore/solargrub, + "Red Panda" = /mob/living/simple_mob/vore/redpanda, + "Fennec" = /mob/living/simple_mob/vore/fennec, + "Fennix" = /mob/living/simple_mob/vore/fennix, + "Jelly Blob" = /mob/living/simple_mob/animal/space/jelly, + "Wolf" = /mob/living/simple_mob/animal/wolf, + "Sect Queen" = /mob/living/simple_mob/vore/sect_queen, + "Defanged Xenomorph" = /mob/living/simple_mob/vore/xeno_defanged, + ) + +/obj/structure/ghost_pod/ghost_activated/maintpred/create_occupant(var/mob/M) + ..() + var/choice + var/randomize + var/finalized = "No" + + while(finalized == "No" && M.client) + choice = input(M,"What type of predator do you want to play as?") as null|anything in possible_mobs + if(!choice) + randomize = TRUE + break + + if(choice) + finalized = alert(M, "Are you sure you want to play as [choice]?","Confirmation","No","Yes") + + if(randomize) + choice = pick(possible_mobs) + + var/mobtype = possible_mobs[choice] + var/mob/living/simple_mob/newPred = new mobtype(get_turf(src)) + qdel(newPred.ai_holder) + newPred.ai_holder = null + //newPred.movement_cooldown = 0 // The "needless artificial speed cap" exists for a reason + if(M.mind) + M.mind.transfer_to(newPred) + to_chat(M, "You are [newPred], somehow having gotten aboard the station in search of food. \ + You are wary of environment around you, but you do feel rather peckish. Stick around dark, secluded places to avoid danger or, \ + if you are cute enough, try to make friends with this place's inhabitants.") + newPred.ckey = M.ckey + newPred.visible_message("[newPred] emerges from somewhere!") + + if(prob(announce_prob)) + spawn(2 MINUTES) + command_announcement.Announce("Unexpected biosignature detected in the maintenance tunnels of [station_name()].", "Lifesign Alert") + + qdel(src) + +/obj/structure/ghost_pod/ghost_activated/maintpred/no_announce + announce_prob = 0 + +/obj/structure/ghost_pod/ghost_activated/morphspawn + name = "weird goo" + desc = "A pile of weird gunk... Wait, is it actually moving?" + icon = 'icons/mob/animal_vr.dmi' + icon_state = "morph" + icon_state_opened = "morph_dead" + density = FALSE + ghost_query_type = /datum/ghost_query/morph + anchored = TRUE + invisibility = INVISIBILITY_OBSERVER + spawn_active = TRUE + var/announce_prob = 50 + +/obj/structure/ghost_pod/ghost_activated/morphspawn/create_occupant(var/mob/M) + ..() + var/mob/living/simple_mob/vore/hostile/morph/newMorph = new /mob/living/simple_mob/vore/hostile/morph(get_turf(src)) + if(M.mind) + M.mind.transfer_to(newMorph) + to_chat(M, "You are a Morph, somehow having gotten aboard the station in your wandering. \ + You are wary of environment around you, but your primal hunger still calls for you to find prey. Seek a convincing disguise, \ + using your amorphous form to traverse vents to find and consume weak prey.") + to_chat(M, "You can use shift + click on objects to disguise yourself as them, but your strikes are nearly useless when you are disguised. \ + You can undisguise yourself by shift + clicking yourself, but disguise being switched, or turned on and off has a short cooldown. You can also ventcrawl, \ + by using alt + click on the vent or scrubber.") + newMorph.ckey = M.ckey + newMorph.visible_message("A morph appears to crawl out of somewhere.") + + if(prob(announce_prob)) + spawn(2 MINUTES) + command_announcement.Announce("Unexpected biosignature detected in the maintenance tunnels of [station_name()].", "Lifesign Alert") + + qdel(src) + +/obj/structure/ghost_pod/ghost_activated/morphspawn/no_announce + announce_prob = 0 \ No newline at end of file diff --git a/code/game/objects/structures/ghost_pods/ghost_pods.dm b/code/game/objects/structures/ghost_pods/ghost_pods.dm index 12cfe24dc2..386d493d2d 100644 --- a/code/game/objects/structures/ghost_pods/ghost_pods.dm +++ b/code/game/objects/structures/ghost_pods/ghost_pods.dm @@ -36,6 +36,10 @@ // Override this to create whatever mob you need. Be sure to call ..() if you don't want it to make infinite mobs. /obj/structure/ghost_pod/proc/create_occupant(var/mob/M) used = TRUE + //VOREStation Addition Start + if(src in active_ghost_pods) + active_ghost_pods -= src + //VOREStation Addition End return TRUE @@ -52,6 +56,7 @@ // VOREStation Addition Start if(!used) activated = TRUE + ghostpod_startup(FALSE) // VOREStation Addition End /obj/structure/ghost_pod/manual/attack_ai(var/mob/living/silicon/user) diff --git a/code/game/objects/structures/ghost_pods/ghost_pods_vr.dm b/code/game/objects/structures/ghost_pods/ghost_pods_vr.dm index 9eedbb453c..2d8f8198c5 100644 --- a/code/game/objects/structures/ghost_pods/ghost_pods_vr.dm +++ b/code/game/objects/structures/ghost_pods/ghost_pods_vr.dm @@ -1,3 +1,11 @@ +/obj/structure/ghost_pod/Destroy() + if(src in active_ghost_pods) + active_ghost_pods -= src + ..() + +/obj/structure/ghost_pod + var/spawn_active = FALSE + /obj/structure/ghost_pod/manual var/remains_active = FALSE var/activated = FALSE @@ -28,4 +36,14 @@ busy = FALSE - create_occupant(user) \ No newline at end of file + create_occupant(user) + +/obj/structure/ghost_pod/proc/ghostpod_startup(var/notify = FALSE) + if(!(src in active_ghost_pods)) + active_ghost_pods += src + if(notify) + trigger() + +/obj/structure/ghost_pod/ghost_activated/Initialize() + ..() + ghostpod_startup(spawn_active) \ No newline at end of file diff --git a/code/game/objects/structures/trash_pile_vr.dm b/code/game/objects/structures/trash_pile_vr.dm index 8d2126c289..60326d9bbf 100644 --- a/code/game/objects/structures/trash_pile_vr.dm +++ b/code/game/objects/structures/trash_pile_vr.dm @@ -221,7 +221,8 @@ prob(1);/obj/item/weapon/spacecash/c50, prob(1);/obj/item/weapon/storage/backpack/dufflebag/syndie, prob(1);/obj/item/weapon/storage/box/cups, - prob(1);/obj/item/pizzavoucher) + prob(1);/obj/item/pizzavoucher, + prob(1);/obj/item/weapon/grenade/spawnergrenade/clustaur)// CHOMPStation edit var/obj/item/I = new path() return I diff --git a/code/game/objects/structures/trash_pile_vr_ch.dm b/code/game/objects/structures/trash_pile_vr_ch.dm new file mode 100644 index 0000000000..5db5a88f01 --- /dev/null +++ b/code/game/objects/structures/trash_pile_vr_ch.dm @@ -0,0 +1,59 @@ +//Snowflake customizable trashpules, these can be map eddited to be unique TM or you can just make new sub objects that change the vars -shark +//They are called sharkpiles because i cant think of another name, but do feel free to make them actually spawn sharks. +/obj/structure/trash_pile/sharkpile + var/destroychance = 0 //People too used to static pilespawns? Add randomness to it. + + //Lists use better weights that add together so in the below example the sum of weight sis 6 so a 3 is 50% and a 1 is 16% + var/overridechancealpha = 90 //how likely the piles is to give its unique objects for alpha spawns + var/list/alphapicks = list( + /obj/item/weapon/storage/pill_bottle/happy = 1, + /obj/item/weapon/storage/pill_bottle/zoom = 2, + /obj/item/weapon/storage/pill_bottle/paracetamol = 3, + ) //override pick list alpha + + var/overridechancebeta = 90 //how likely the piles is to give its unique objects for beta spawns + var/list/betapicks = list( + /obj/item/weapon/storage/pill_bottle/happy = 3, + /obj/item/weapon/storage/pill_bottle/zoom = 2, + /obj/item/weapon/storage/pill_bottle/paracetamol = 1, + ) //override pick list beta + + var/overridechancegamma = 90 //how likely the piles is to give its unique objects for gamma spawns + var/list/gammapicks = list( + /obj/item/weapon/storage/pill_bottle/happy = 3, + /obj/item/weapon/storage/pill_bottle/zoom = 2, + /obj/item/weapon/storage/pill_bottle/paracetamol = 1, + ) //override pick list gamma + + var/gammaunique = 1 + + + Initialize() + ..() + if(prob(destroychance)) + qdel(src) + +//^X% chance to use our own list, otherwise default pool. +//Here we could also add a % chance to spawn a mob for trash pandas or such, + produce_alpha_item() + if(prob(overridechancealpha)) + var/path = pick(alphapicks) + var/obj/item/I = new path() + return I + return ..() + + produce_beta_item() + if(prob(overridechancebeta)) + var/path = pick(betapicks) + var/obj/item/I = new path() + return I + return ..() + + produce_gamma_item() + if(prob(overridechancegamma)&& gammaunique!=2) + var/path = pick(gammapicks) + var/obj/item/I = new path() + if(gammaunique!=0) + gammaunique++ + return I + return ..() diff --git a/code/game/turfs/flooring/flooring.dm b/code/game/turfs/flooring/flooring.dm index 21bb1c9e8a..3fa9e921cb 100644 --- a/code/game/turfs/flooring/flooring.dm +++ b/code/game/turfs/flooring/flooring.dm @@ -148,6 +148,26 @@ var/list/flooring_types icon_base = "grass_sif" build_type = /obj/item/stack/tile/grass/sif has_base_range = 1 + +/decl/flooring/grass/sif/forest + name = "thick growth" + desc = "A natural moss that has adapted to the sheer cold climate." + flags = TURF_REMOVE_SHOVEL + icon = 'icons/turf/outdoors.dmi' + icon_base = "grass_sif_dark" + build_type = /obj/item/stack/tile/grass/sif/forest + has_base_range = 1 + +//CHOMPedit: sif/forest decl. If this ends up upstream just accept the upstream version. +/decl/flooring/grass/sif/forest + name = "thick growth" + desc = "A natural moss that has adapted to the sheer cold climate." + flags = TURF_REMOVE_SHOVEL + icon = 'icons/turf/outdoors.dmi' + icon_base = "grass_sif_dark" + build_type = /obj/item/stack/tile/grass/sif/forest + has_base_range = 1 +//CHOMPedit end /decl/flooring/water name = "water" diff --git a/code/game/turfs/simulated/outdoors/grass.dm b/code/game/turfs/simulated/outdoors/grass.dm index 57615f49b9..2b7e17202f 100644 --- a/code/game/turfs/simulated/outdoors/grass.dm +++ b/code/game/turfs/simulated/outdoors/grass.dm @@ -89,6 +89,7 @@ var/list/grass_types = list( /turf/simulated/floor/outdoors/grass/sif/forest name = "thick growth" icon_state = "grass_sif_dark0" + initial_flooring = /decl/flooring/grass/sif/forest edge_blending_priority = 5 tree_chance = 4 grass_chance = 1 @@ -99,3 +100,18 @@ var/list/grass_types = list( /obj/structure/flora/sif/tendrils = 30 ) +//CHOMPedit: animal spawning for sif rocks. This probably doesn't belong in grass.dm but it's where there other Sif spawns are, sue me. +/turf/simulated/floor/outdoors/rocks/sif + var/animal_chance = 0.3 //Should spawn around... 0-7 per round? Tweak as needed. + + var/animal_types = list( + /mob/living/simple_mob/vore/slug = 1 + ) + +/turf/simulated/floor/outdoors/rocks/sif/Initialize() + if(animal_chance && prob(animal_chance) && !check_density()) + var/animal_type = pickweight(animal_types) + new animal_type(src) + + . = ..() +//CHOMPedit end diff --git a/code/game/world.dm b/code/game/world.dm index 5c5eaff9e5..92f0359913 100644 --- a/code/game/world.dm +++ b/code/game/world.dm @@ -564,13 +564,30 @@ var/failed_old_db_connections = 0 /hook/startup/proc/connectDB() if(!config.sql_enabled) to_world_log("SQL connection disabled in config.") - else if(!setup_database_connection()) - to_world_log("Your server failed to establish a connection with the feedback database.") - else + else if(establish_db_connection())//CHOMPEdit Begin to_world_log("Feedback database connection established.") + var/DBQuery/query_truncate = SSdbcore.NewQuery("TRUNCATE erro_dialog") + var/num_tries = 0 + while(!query_truncate.Execute() && num_tries<5) + num_tries++ + + if(num_tries==5) + log_admin("ERROR TRYING TO CLEAR erro_dialog") + qdel(query_truncate) + var/DBQuery/query_truncate2 = SSdbcore.NewQuery("TRUNCATE erro_attacklog") + num_tries = 0 + while(!query_truncate2.Execute() && num_tries<5) + num_tries++ + + if(num_tries==5) + log_admin("ERROR TRYING TO CLEAR erro_attacklog") + qdel(query_truncate2) + else + to_world_log("Feedback database connection failed.") + //CHOMPEdit End return 1 -proc/setup_database_connection() +/*proc/setup_database_connection() CHOMPEdit TGSQL if(failed_db_connections > FAILED_DB_CONNECTION_CUTOFF) //If it failed to establish a connection more than 5 times in a row, don't bother attempting to conenct anymore. return 0 @@ -588,34 +605,38 @@ proc/setup_database_connection() . = dbcon.IsConnected() if ( . ) failed_db_connections = 0 //If this connection succeeded, reset the failed connections counter. + //CHOMPEdit Begin + var/DBQuery/query_truncate = dbcon.NewQuery("TRUNCATE erro_dialog") + var/num_tries = 0 + while(!query_truncate.Execute() && num_tries<5) + num_tries++ + + if(num_tries==5) + log_admin("ERROR TRYING TO CLEAR erro_dialog") + //CHOMPEdit End else failed_db_connections++ //If it failed, increase the failed connections counter. to_world_log(dbcon.ErrorMsg()) - return . + return .*/ //This proc ensures that the connection to the feedback database (global variable dbcon) is established -proc/establish_db_connection() - if(failed_db_connections > FAILED_DB_CONNECTION_CUTOFF) - return 0 - - if(!dbcon || !dbcon.IsConnected()) - return setup_database_connection() - else - return 1 +proc/establish_db_connection() //CHOMPEdit TGSQL + return SSdbcore.Connect() /hook/startup/proc/connectOldDB() if(!config.sql_enabled) to_world_log("SQL connection disabled in config.") - else if(!setup_old_database_connection()) - to_world_log("Your server failed to establish a connection with the SQL database.") - else + else if(establish_old_db_connection()) //CHOMPEdit Begin to_world_log("SQL database connection established.") + else + to_world_log("SQL database connection failed") + //CHOMPEdit End return 1 //These two procs are for the old database, while it's being phased out. See the tgstation.sql file in the SQL folder for more information. -proc/setup_old_database_connection() +/*proc/setup_old_database_connection() //CHOMPStation TGSQL if(failed_old_db_connections > FAILED_DB_CONNECTION_CUTOFF) //If it failed to establish a connection more than 5 times in a row, don't bother attempting to conenct anymore. return 0 @@ -637,17 +658,11 @@ proc/setup_old_database_connection() failed_old_db_connections++ //If it failed, increase the failed connections counter. to_world_log(dbcon.ErrorMsg()) - return . + return .*/ //This proc ensures that the connection to the feedback database (global variable dbcon) is established proc/establish_old_db_connection() - if(failed_old_db_connections > FAILED_DB_CONNECTION_CUTOFF) - return 0 - - if(!dbcon_old || !dbcon_old.IsConnected()) - return setup_old_database_connection() - else - return 1 + return SSdbcore.Connect() // Things to do when a new z-level was just made. /world/proc/max_z_changed() diff --git a/code/global.dm b/code/global.dm index 3dc4e9f7c2..750d0272b8 100644 --- a/code/global.dm +++ b/code/global.dm @@ -131,8 +131,8 @@ var/custom_event_msg = null // Database connections. A connection is established on world creation. // Ideally, the connection dies when the server restarts (After feedback logging.). -var/DBConnection/dbcon = new() // Feedback database (New database) -var/DBConnection/dbcon_old = new() // /tg/station database (Old database) -- see the files in the SQL folder for information on what goes where. +//var/DBConnection/dbcon = new() // Feedback database (New database) //CHOMPEdit Switching to TG SQL +//var/DBConnection/dbcon_old = new() // /tg/station database (Old database) -- see the files in the SQL folder for information on what goes where. //CHOMPEdit Switching to TG SQL // Added for Xenoarchaeology, might be useful for other stuff. var/global/list/alphabet_uppercase = list("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z") diff --git a/code/global_vr.dm b/code/global_vr.dm index 3b7ea08384..3735227b3f 100644 --- a/code/global_vr.dm +++ b/code/global_vr.dm @@ -34,6 +34,7 @@ var/global/list/acceptable_fruit_types= list( "durian", "eggplant", "grapes", + "grass", // CH changes "greengrapes", "harebells", "lavender", @@ -46,14 +47,17 @@ var/global/list/acceptable_fruit_types= list( "poppies", "potato", "pumpkin", + "reishi", // CH changes "rice", "rose", "rhubarb", + "shand", // CH changes "soybean", "spineapple", "sugarcane", "sunflowers", "tomato", + "towercap", // CH changes "vanilla", "watermelon", "wheat", diff --git a/code/modules/admin/DB ban/functions.dm b/code/modules/admin/DB ban/functions.dm index 9edad6c4d0..3dbfd191d3 100644 --- a/code/modules/admin/DB ban/functions.dm +++ b/code/modules/admin/DB ban/functions.dm @@ -5,7 +5,7 @@ datum/admins/proc/DB_ban_record(var/bantype, var/mob/banned_mob, var/duration = if(!check_rights(R_MOD,0) && !check_rights(R_BAN)) return establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL return var/serverip = "[world.internet_address]:[world.port]" @@ -44,11 +44,12 @@ datum/admins/proc/DB_ban_record(var/bantype, var/mob/banned_mob, var/duration = computerid = bancid ip = banip - var/DBQuery/query = dbcon.NewQuery("SELECT id FROM erro_player WHERE ckey = '[ckey]'") + var/DBQuery/query = SSdbcore.NewQuery("SELECT id FROM erro_player WHERE ckey = :t_ckey", list("t_ckey",ckey)) //CHOMPEdit TGSQL query.Execute() var/validckey = 0 if(query.NextRow()) validckey = 1 + qdel(query) //CHOMPEdit TGSQL if(!validckey) if(!banned_mob || (banned_mob && !IsGuestKey(banned_mob.key))) //VOREStation Edit Start. var/confirm = alert(usr, "This ckey hasn't been seen, are you sure?", "Confirm Badmin" , "Yes", "No") @@ -79,13 +80,14 @@ datum/admins/proc/DB_ban_record(var/bantype, var/mob/banned_mob, var/duration = adminwho += ", [C]" reason = sql_sanitize_text(reason) - - var/sql = "INSERT INTO erro_ban (`id`,`bantime`,`serverip`,`bantype`,`reason`,`job`,`duration`,`rounds`,`expiration_time`,`ckey`,`computerid`,`ip`,`a_ckey`,`a_computerid`,`a_ip`,`who`,`adminwho`,`edits`,`unbanned`,`unbanned_datetime`,`unbanned_ckey`,`unbanned_computerid`,`unbanned_ip`) VALUES (null, Now(), '[serverip]', '[bantype_str]', '[reason]', '[job]', [(duration)?"[duration]":"0"], [(rounds)?"[rounds]":"0"], Now() + INTERVAL [(duration>0) ? duration : 0] MINUTE, '[ckey]', '[computerid]', '[ip]', '[a_ckey]', '[a_computerid]', '[a_ip]', '[who]', '[adminwho]', '', null, null, null, null, null)" - var/DBQuery/query_insert = dbcon.NewQuery(sql) + var/list/sqlargs = list("t_bantype" = bantype_str, "t_reason" = reason, "t_job" = job, "t_ckey" = ckey, "t_a_ckey" = a_ckey, "t_who" = who, "t_adminwho" = adminwho) //CHOMPEdit TGSQL + var/sql = "INSERT INTO erro_ban (`id`,`bantime`,`serverip`,`bantype`,`reason`,`job`,`duration`,`rounds`,`expiration_time`,`ckey`,`computerid`,`ip`,`a_ckey`,`a_computerid`,`a_ip`,`who`,`adminwho`,`edits`,`unbanned`,`unbanned_datetime`,`unbanned_ckey`,`unbanned_computerid`,`unbanned_ip`) VALUES (null, Now(), '[serverip]', :t_bantype, :t_reason, :t_job, [(duration)?"[duration]":"0"], [(rounds)?"[rounds]":"0"], Now() + INTERVAL [(duration>0) ? duration : 0] MINUTE, :t_ckey, '[computerid]', '[ip]', :t_a_ckey, '[a_computerid]', '[a_ip]', :t_who, :t_adminwho, '', null, null, null, null, null)" //CHOMPEdit TGSQL + + var/DBQuery/query_insert = SSdbcore.NewQuery(sql,sqlargs) //CHOMPEdit TGSQL query_insert.Execute() to_chat(usr, "Ban saved to database.") message_admins("[key_name_admin(usr)] has added a [bantype_str] for [ckey] [(job)?"([job])":""] [(duration > 0)?"([duration] minutes)":""] with the reason: \"[reason]\" to the ban database.",1) - + qdel(query_insert) //CHOMPEdit TGSQL datum/admins/proc/DB_ban_unban(var/ckey, var/bantype, var/job = "") @@ -119,23 +121,23 @@ datum/admins/proc/DB_ban_unban(var/ckey, var/bantype, var/job = "") else bantype_sql = "bantype = '[bantype_str]'" - var/sql = "SELECT id FROM erro_ban WHERE ckey = '[ckey]' AND [bantype_sql] AND (unbanned is null OR unbanned = false)" + var/sql = "SELECT id FROM erro_ban WHERE ckey = :t_ckey AND [bantype_sql] AND (unbanned is null OR unbanned = false)" //CHOMPEdit TGSQL if(job) sql += " AND job = '[job]'" establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL return var/ban_id var/ban_number = 0 //failsafe - var/DBQuery/query = dbcon.NewQuery(sql) + var/DBQuery/query = SSdbcore.NewQuery(sql, list("t_ckey" = ckey)) //CHOMPEdit TGSQL query.Execute() while(query.NextRow()) ban_id = query.item[1] ban_number++; - + qdel(query) //CHOMPEdit TGSQL if(ban_number == 0) to_chat(usr, "Database update failed due to no bans fitting the search criteria. If this is not a legacy ban you should contact the database admin.") return @@ -160,7 +162,7 @@ datum/admins/proc/DB_ban_edit(var/banid = null, var/param = null) to_chat(usr, "Cancelled") return - var/DBQuery/query = dbcon.NewQuery("SELECT ckey, duration, reason FROM erro_ban WHERE id = [banid]") + var/DBQuery/query = SSdbcore.NewQuery("SELECT ckey, duration, reason FROM erro_ban WHERE id = [banid]") //CHOMPEdit TGSQL query.Execute() var/eckey = usr.ckey //Editing admin ckey @@ -175,7 +177,7 @@ datum/admins/proc/DB_ban_edit(var/banid = null, var/param = null) else to_chat(usr, "Invalid ban id. Contact the database admin") return - + qdel(query) //CHOMPEdit TGSQL reason = sql_sanitize_text(reason) var/value @@ -187,20 +189,22 @@ datum/admins/proc/DB_ban_edit(var/banid = null, var/param = null) if(!value) to_chat(usr, "Cancelled") return - - var/DBQuery/update_query = dbcon.NewQuery("UPDATE erro_ban SET reason = '[value]', edits = CONCAT(edits,'- [eckey] changed ban reason from \\\"[reason]\\\" to \\\"[value]\\\"
') WHERE id = [banid]") + var/list/sqlargs = list("t_reason" = value, "t_edits" = "- [eckey] changed ban reason from \\\"[reason]\\\" to \\\"[value]\\\"
") //CHOMPEdit TGSQL + var/DBQuery/update_query = SSdbcore.NewQuery("UPDATE erro_ban SET reason = '[value]', edits = CONCAT(edits,:t_edits) WHERE id = [banid]", sqlargs) //CHOMPEdit TGSQL update_query.Execute() message_admins("[key_name_admin(usr)] has edited a ban for [pckey]'s reason from [reason] to [value]",1) + qdel(update_query) //CHOMPEdit TGSQL if("duration") if(!value) value = input("Insert the new duration (in minutes) for [pckey]'s ban", "New Duration", "[duration]", null) as null|num if(!isnum(value) || !value) to_chat(usr, "Cancelled") return - - var/DBQuery/update_query = dbcon.NewQuery("UPDATE erro_ban SET duration = [value], edits = CONCAT(edits,'- [eckey] changed ban duration from [duration] to [value]
'), expiration_time = DATE_ADD(bantime, INTERVAL [value] MINUTE) WHERE id = [banid]") + var/list/sqlargs = list("t_edits" = "- [eckey] changed ban duration from [duration] to [value]
") //CHOMPEdit TGSQL + var/DBQuery/update_query = SSdbcore.NewQuery("UPDATE erro_ban SET duration = [value], edits = CONCAT(edits,:t_edits), expiration_time = DATE_ADD(bantime, INTERVAL [value] MINUTE) WHERE id = [banid]",sqlargs) //CHOMPEdit TGSQL message_admins("[key_name_admin(usr)] has edited a ban for [pckey]'s duration from [duration] to [value]",1) update_query.Execute() + qdel(update_query) //CHOMPEdit TGSQL if("unban") if(alert("Unban [pckey]?", "Unban?", "Yes", "No") == "Yes") DB_ban_unban_by_id(banid) @@ -215,18 +219,18 @@ datum/admins/proc/DB_ban_unban_by_id(var/id) var/sql = "SELECT ckey FROM erro_ban WHERE id = [id]" establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL return var/ban_number = 0 //failsafe var/pckey - var/DBQuery/query = dbcon.NewQuery(sql) + var/DBQuery/query = SSdbcore.NewQuery(sql) //CHOMPEdit TGSQL query.Execute() while(query.NextRow()) pckey = query.item[1] ban_number++; - + qdel(query) //CHOMPEdit TGSQL if(ban_number == 0) to_chat(usr, "Database update failed due to a ban id not being present in the database.") return @@ -241,13 +245,13 @@ datum/admins/proc/DB_ban_unban_by_id(var/id) var/unban_ckey = src.owner:ckey var/unban_computerid = src.owner:computer_id var/unban_ip = src.owner:address - - var/sql_update = "UPDATE erro_ban SET unbanned = 1, unbanned_datetime = Now(), unbanned_ckey = '[unban_ckey]', unbanned_computerid = '[unban_computerid]', unbanned_ip = '[unban_ip]' WHERE id = [id]" + var/list/sqlargs = list("t_ckey" = unban_ckey) //CHOMPEdit TGSQL + var/sql_update = "UPDATE erro_ban SET unbanned = 1, unbanned_datetime = Now(), unbanned_ckey = :t_ckey, unbanned_computerid = '[unban_computerid]', unbanned_ip = '[unban_ip]' WHERE id = [id]" //CHOMPEdit TGSQL message_admins("[key_name_admin(usr)] has lifted [pckey]'s ban.",1) - var/DBQuery/query_update = dbcon.NewQuery(sql_update) + var/DBQuery/query_update = SSdbcore.NewQuery(sql_update,sqlargs) //CHOMPEdit TGSQL query_update.Execute() - + qdel(query_update) //CHOMPEdit TGSQL /client/proc/DB_ban_panel() set category = "Admin" @@ -267,7 +271,7 @@ datum/admins/proc/DB_ban_unban_by_id(var/id) if(!check_rights(R_BAN)) return establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL to_chat(usr, "Failed to establish database connection") return @@ -363,21 +367,26 @@ datum/admins/proc/DB_ban_unban_by_id(var/id) var/ipsearch = "" var/cidsearch = "" var/bantypesearch = "" - + //CHOMPEdit Begin + var/list/sqlargs = list() if(!match) if(adminckey) - adminsearch = "AND a_ckey = '[adminckey]' " + adminsearch = "AND a_ckey = :t_adminckey " + sqlargs["t_adminckey"] = adminckey if(playerckey) - playersearch = "AND ckey = '[playerckey]' " + playersearch = "AND ckey = :t_playerckey " + sqlargs["t_playerckey"] = playerckey //CHOMPEdit End if(playerip) ipsearch = "AND ip = '[playerip]' " if(playercid) cidsearch = "AND computerid = '[playercid]' " else - if(adminckey && length(adminckey) >= 3) - adminsearch = "AND a_ckey LIKE '[adminckey]%' " + if(adminckey && length(adminckey) >= 3) //CHOMPEdit Begin + adminsearch = "AND a_ckey LIKE CONCAT(:t_adminckey,'%') " + sqlargs["t_adminckey"] = adminckey if(playerckey && length(playerckey) >= 3) - playersearch = "AND ckey LIKE '[playerckey]%' " + playersearch = "AND ckey LIKE CONCAT(:t_playerckey,'%') " + sqlargs["t_playerckey"] = playerckey //CHOMPEdit End if(playerip && length(playerip) >= 3) ipsearch = "AND ip LIKE '[playerip]%' " if(playercid && length(playercid) >= 7) @@ -396,7 +405,7 @@ datum/admins/proc/DB_ban_unban_by_id(var/id) else bantypesearch += "'PERMABAN' " - var/DBQuery/select_query = dbcon.NewQuery("SELECT id, bantime, bantype, reason, job, duration, expiration_time, ckey, a_ckey, unbanned, unbanned_ckey, unbanned_datetime, edits, ip, computerid FROM erro_ban WHERE 1 [playersearch] [adminsearch] [ipsearch] [cidsearch] [bantypesearch] ORDER BY bantime DESC LIMIT 100") + var/DBQuery/select_query = SSdbcore.NewQuery("SELECT id, bantime, bantype, reason, job, duration, expiration_time, ckey, a_ckey, unbanned, unbanned_ckey, unbanned_datetime, edits, ip, computerid FROM erro_ban WHERE 1 [playersearch] [adminsearch] [ipsearch] [cidsearch] [bantypesearch] ORDER BY bantime DESC LIMIT 100", sqlargs) //CHOMPEdit TGSQL select_query.Execute() var/now = time2text(world.realtime, "YYYY-MM-DD hh:mm:ss") // MUST BE the same format as SQL gives us the dates in, and MUST be least to most specific (i.e. year, month, day not day, month, year) @@ -475,5 +484,6 @@ datum/admins/proc/DB_ban_unban_by_id(var/id) output += "" output += "" + qdel(select_query) //CHOMPEdit TGSQL usr << browse(output,"window=lookupbans;size=900x700") diff --git a/code/modules/admin/IsBanned.dm b/code/modules/admin/IsBanned.dm index e28c4fd570..56a6e71114 100644 --- a/code/modules/admin/IsBanned.dm +++ b/code/modules/admin/IsBanned.dm @@ -52,7 +52,7 @@ world/IsBanned(key,address,computer_id) failedcid = 0 cidquery = " OR computerid = '[computer_id]' " - var/DBQuery/query = dbcon.NewQuery("SELECT ckey, ip, computerid, a_ckey, reason, expiration_time, duration, bantime, bantype FROM erro_ban WHERE (ckey = '[ckeytext]' [ipquery] [cidquery]) AND (bantype = 'PERMABAN' OR (bantype = 'TEMPBAN' AND expiration_time > Now())) AND isnull(unbanned)") + var/DBQuery/query = SSdbcore.NewQuery("SELECT ckey, ip, computerid, a_ckey, reason, expiration_time, duration, bantime, bantype FROM erro_ban WHERE (ckey = :t_ckey [ipquery] [cidquery]) AND (bantype = 'PERMABAN' OR (bantype = 'TEMPBAN' AND expiration_time > Now())) AND isnull(unbanned)", list("t_ckey" = ckeytext)) //CHOMPEdit TGSQL query.Execute() @@ -72,9 +72,9 @@ world/IsBanned(key,address,computer_id) expires = " The ban is for [duration] minutes and expires on [expiration] (server time)." var/desc = "\nReason: You, or another user of this computer or connection ([pckey]) is banned from playing here. The ban reason is:\n[reason]\nThis ban was applied by [ackey] on [bantime], [expires]" - + qdel(query) //CHOMPEdit TGSQL return list("reason"="[bantype]", "desc"="[desc]") - + qdel(query) //CHOMPEdit TGSQL if (failedcid) message_admins("[key] has logged in with a blank computer id in the ban check.") if (failedip) diff --git a/code/modules/admin/admin_ranks.dm b/code/modules/admin/admin_ranks.dm index d1696839bc..c5cfdc06c2 100644 --- a/code/modules/admin/admin_ranks.dm +++ b/code/modules/admin/admin_ranks.dm @@ -112,14 +112,14 @@ var/list/admin_ranks = list() //list of all ranks with associated rights //The current admin system uses SQL establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL error("Failed to connect to database in load_admins(). Reverting to legacy system.") log_misc("Failed to connect to database in load_admins(). Reverting to legacy system.") config.admin_legacy_system = 1 load_admins() return - var/DBQuery/query = dbcon.NewQuery("SELECT ckey, rank, level, flags FROM erro_admin") + var/DBQuery/query = SSdbcore.NewQuery("SELECT ckey, rank, level, flags FROM erro_admin") //CHOMPEdit TGSQL query.Execute() while(query.NextRow()) var/ckey = query.item[1] @@ -135,6 +135,7 @@ var/list/admin_ranks = list() //list of all ranks with associated rights //find the client for a ckey if they are connected and associate them with the new admin datum D.associate(GLOB.directory[ckey]) + qdel(query) //CHOMPEdit TGSQL if(!admin_datums) error("The database query in load_admins() resulted in no admins being added to the list. Reverting to legacy system.") log_misc("The database query in load_admins() resulted in no admins being added to the list. Reverting to legacy system.") diff --git a/code/modules/admin/admin_tools.dm b/code/modules/admin/admin_tools.dm index 8b4e1ae44c..42ab6aae9a 100644 --- a/code/modules/admin/admin_tools.dm +++ b/code/modules/admin/admin_tools.dm @@ -9,17 +9,25 @@ if(M.mind) dat += "Current Antag?: [(M.mind.special_role)?"Yes":"No"]
" dat += "
Note: This is arranged from earliest to latest.

" - - - if(!isemptylist(M.attack_log)) - dat += "
" - for(var/l in M.attack_log) - dat += "[l]
" - - dat += "
" - + //CHOMPEdit Begin + /*for(var/d in M.dialogue_log) + dat += "[d]
"*/ + var/DBQuery/query = SSdbcore.NewQuery("SELECT id,time,ckey,mob,message from erro_attacklog WHERE ckey = :t_ckey", list("t_ckey" = M.ckey)) + if(!query.Execute()) + dat += "Database query error" else - dat += "No attack logs found for [M]." + var/messages = "" + while(query.NextRow()) + messages += "([query.item[2]]) (ckey:[query.item[3]] real_name:[query.item[4]]) [query.item[5]]
" + + if(messages=="") + dat+="Query returned nothing." + else + dat += "
" + dat += messages + dat += "
" + qdel(query) + //CHOMPEdit End var/datum/browser/popup = new(usr, "admin_attack_log", "[src]", 650, 650, src) popup.set_content(jointext(dat,null)) @@ -41,15 +49,26 @@ dat += "Current Antag?: [(M.mind.special_role)?"Yes":"No"]
" dat += "
Note: This is arranged from earliest to latest.

" - if(!isemptylist(M.dialogue_log)) - dat += "
" - - for(var/d in M.dialogue_log) - dat += "[d]
" - - dat += "
" + + //CHOMPEdit Begin + /*for(var/d in M.dialogue_log) + dat += "[d]
"*/ + var/DBQuery/query = SSdbcore.NewQuery("SELECT mid,time,ckey,mob,type,message from erro_dialog WHERE ckey = :t_ckey", list("t_ckey" = M.ckey)) + if(!query.Execute()) + dat += "Database query error" else - dat += "No dialogue logs found for [M]." + var/messages = "" + while(query.NextRow()) + messages += "([query.item[2]]) (ckey:[query.item[3]] real_name:[query.item[4]] type:[query.item[5]]) [query.item[6]]
" + + if(messages=="") + dat+="Query returned nothing." + else + dat += "
" + dat += messages + dat += "
" + qdel(query) + //CHOMPEdit End var/datum/browser/popup = new(usr, "admin_dialogue_log", "[src]", 650, 650, src) popup.set_content(jointext(dat,null)) popup.open() diff --git a/code/modules/admin/banjob.dm b/code/modules/admin/banjob.dm index 0bfa4e516a..e742222402 100644 --- a/code/modules/admin/banjob.dm +++ b/code/modules/admin/banjob.dm @@ -77,7 +77,7 @@ DEBUG return //Job permabans - var/DBQuery/query = dbcon.NewQuery("SELECT ckey, job FROM erro_ban WHERE bantype = 'JOB_PERMABAN' AND isnull(unbanned)") + var/DBQuery/query = SSdbcore.NewQuery("SELECT ckey, job FROM erro_ban WHERE bantype = 'JOB_PERMABAN' AND isnull(unbanned)") //CHOMPEdit TGSQL query.Execute() while(query.NextRow()) @@ -85,9 +85,9 @@ DEBUG var/job = query.item[2] jobban_keylist.Add("[ckey] - [job]") - + qdel(query) //CHOMPEdit TGSQL //Job tempbans - var/DBQuery/query1 = dbcon.NewQuery("SELECT ckey, job FROM erro_ban WHERE bantype = 'JOB_TEMPBAN' AND isnull(unbanned) AND expiration_time > Now()") + var/DBQuery/query1 = SSdbcore.NewQuery("SELECT ckey, job FROM erro_ban WHERE bantype = 'JOB_TEMPBAN' AND isnull(unbanned) AND expiration_time > Now()") //CHOMPEdit TGSQL query1.Execute() while(query1.NextRow()) @@ -95,6 +95,7 @@ DEBUG var/job = query1.item[2] jobban_keylist.Add("[ckey] - [job]") + qdel(query1) //CHOMPEdit TGSQL /proc/jobban_savebanfile() var/savefile/S=new("data/job_full.ban") diff --git a/code/modules/admin/permissionverbs/permissionedit.dm b/code/modules/admin/permissionverbs/permissionedit.dm index 6a579b96af..549f537d67 100644 --- a/code/modules/admin/permissionverbs/permissionedit.dm +++ b/code/modules/admin/permissionverbs/permissionedit.dm @@ -56,7 +56,7 @@ establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL to_chat(usr, "Failed to establish database connection") return @@ -71,7 +71,7 @@ if(!istext(adm_ckey) || !istext(new_rank)) return - var/DBQuery/select_query = dbcon.NewQuery("SELECT id FROM erro_admin WHERE ckey = '[adm_ckey]'") + var/DBQuery/select_query = SSdbcore.NewQuery("SELECT id FROM erro_admin WHERE ckey = '[adm_ckey]'") //CHOMPEdit TGSQL select_query.Execute() var/new_admin = 1 @@ -79,19 +79,23 @@ while(select_query.NextRow()) new_admin = 0 admin_id = text2num(select_query.item[1]) - + qdel(select_query) //CHOMPEdit TGSQL if(new_admin) - var/DBQuery/insert_query = dbcon.NewQuery("INSERT INTO `erro_admin` (`id`, `ckey`, `rank`, `level`, `flags`) VALUES (null, '[adm_ckey]', '[new_rank]', -1, 0)") + var/DBQuery/insert_query = SSdbcore.NewQuery("INSERT INTO `erro_admin` (`id`, `ckey`, `rank`, `level`, `flags`) VALUES (null, '[adm_ckey]', '[new_rank]', -1, 0)") //CHOMPEdit TGSQL insert_query.Execute() - var/DBQuery/log_query = dbcon.NewQuery("INSERT INTO `test`.`erro_admin_log` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Added new admin [adm_ckey] to rank [new_rank]');") + qdel(insert_query) //CHOMPEdit TGSQL + var/DBQuery/log_query = SSdbcore.NewQuery("INSERT INTO `test`.`erro_admin_log` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Added new admin [adm_ckey] to rank [new_rank]');") //CHOMPEdit TGSQL log_query.Execute() + qdel(log_query) //CHOMPEdit TGSQL to_chat(usr, "New admin added.") else if(!isnull(admin_id) && isnum(admin_id)) - var/DBQuery/insert_query = dbcon.NewQuery("UPDATE `erro_admin` SET rank = '[new_rank]' WHERE id = [admin_id]") + var/DBQuery/insert_query = SSdbcore.NewQuery("UPDATE `erro_admin` SET rank = '[new_rank]' WHERE id = [admin_id]") //CHOMPEdit TGSQL insert_query.Execute() - var/DBQuery/log_query = dbcon.NewQuery("INSERT INTO `test`.`erro_admin_log` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Edited the rank of [adm_ckey] to [new_rank]');") + qdel(insert_query) //CHOMPEdit TGSQL + var/DBQuery/log_query = SSdbcore.NewQuery("INSERT INTO `test`.`erro_admin_log` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Edited the rank of [adm_ckey] to [new_rank]');") //CHOMPEdit TGSQL log_query.Execute() + qdel(log_query) //CHOMPEdit TGSQL to_chat(usr, "Admin rank changed.") /datum/admins/proc/log_admin_permission_modification(var/adm_ckey, var/new_permission) @@ -105,7 +109,7 @@ return establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL to_chat(usr, "Failed to establish database connection") return @@ -123,7 +127,7 @@ if(!istext(adm_ckey) || !isnum(new_permission)) return - var/DBQuery/select_query = dbcon.NewQuery("SELECT id, flags FROM erro_admin WHERE ckey = '[adm_ckey]'") + var/DBQuery/select_query = SSdbcore.NewQuery("SELECT id, flags FROM erro_admin WHERE ckey = '[adm_ckey]'") //CHOMPEdit TGSQL select_query.Execute() var/admin_id @@ -131,19 +135,23 @@ while(select_query.NextRow()) admin_id = text2num(select_query.item[1]) admin_rights = text2num(select_query.item[2]) - + qdel(select_query) //CHOMPEdit TGSQL if(!admin_id) return if(admin_rights & new_permission) //This admin already has this permission, so we are removing it. - var/DBQuery/insert_query = dbcon.NewQuery("UPDATE `erro_admin` SET flags = [admin_rights & ~new_permission] WHERE id = [admin_id]") + var/DBQuery/insert_query = SSdbcore.NewQuery("UPDATE `erro_admin` SET flags = [admin_rights & ~new_permission] WHERE id = [admin_id]") //CHOMPEdit TGSQL insert_query.Execute() - var/DBQuery/log_query = dbcon.NewQuery("INSERT INTO `test`.`erro_admin_log` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Removed permission [rights2text(new_permission)] (flag = [new_permission]) to admin [adm_ckey]');") + qdel(insert_query) //CHOMPEdit TGSQL + var/DBQuery/log_query = SSdbcore.NewQuery("INSERT INTO `test`.`erro_admin_log` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Removed permission [rights2text(new_permission)] (flag = [new_permission]) to admin [adm_ckey]');") //CHOMPEdit TGSQL log_query.Execute() + qdel(log_query) //CHOMPEdit TGSQL to_chat(usr, "Permission removed.") else //This admin doesn't have this permission, so we are adding it. - var/DBQuery/insert_query = dbcon.NewQuery("UPDATE `erro_admin` SET flags = '[admin_rights | new_permission]' WHERE id = [admin_id]") + var/DBQuery/insert_query = SSdbcore.NewQuery("UPDATE `erro_admin` SET flags = '[admin_rights | new_permission]' WHERE id = [admin_id]") //CHOMPEdit TGSQL insert_query.Execute() - var/DBQuery/log_query = dbcon.NewQuery("INSERT INTO `test`.`erro_admin_log` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Added permission [rights2text(new_permission)] (flag = [new_permission]) to admin [adm_ckey]')") + qdel(insert_query) //CHOMPEdit TGSQL + var/DBQuery/log_query = SSdbcore.NewQuery("INSERT INTO `test`.`erro_admin_log` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Added permission [rights2text(new_permission)] (flag = [new_permission]) to admin [adm_ckey]')") //CHOMPEdit TGSQL log_query.Execute() + qdel(log_query) //CHOMPEdit TGSQL to_chat(usr, "Permission added.") \ No newline at end of file diff --git a/code/modules/admin/verbs/check_customitem_activity.dm b/code/modules/admin/verbs/check_customitem_activity.dm index 80bbfccc12..eb1879e656 100644 --- a/code/modules/admin/verbs/check_customitem_activity.dm +++ b/code/modules/admin/verbs/check_customitem_activity.dm @@ -30,7 +30,7 @@ var/inactive_keys = "None
" return establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL return //grab all ckeys associated with custom items @@ -55,7 +55,7 @@ var/inactive_keys = "None
" //run a query to get all ckeys inactive for over 2 months var/list/inactive_ckeys = list() if(ckeys_with_customitems.len) - var/DBQuery/query_inactive = dbcon.NewQuery("SELECT ckey, lastseen FROM erro_player WHERE datediff(Now(), lastseen) > 60") + var/DBQuery/query_inactive = SSdbcore.NewQuery("SELECT ckey, lastseen FROM erro_player WHERE datediff(Now(), lastseen) > 60") //CHOMPEdit TGSQL query_inactive.Execute() while(query_inactive.NextRow()) var/cur_ckey = query_inactive.item[1] @@ -63,15 +63,16 @@ var/inactive_keys = "None
" if(ckeys_with_customitems.Find(cur_ckey)) ckeys_with_customitems.Remove(cur_ckey) inactive_ckeys[cur_ckey] = "last seen on [query_inactive.item[2]]" + qdel(query_inactive) //CHOMPEdit TGSQL //if there are ckeys left over, check whether they have a database entry at all if(ckeys_with_customitems.len) for(var/cur_ckey in ckeys_with_customitems) - var/DBQuery/query_inactive = dbcon.NewQuery("SELECT ckey FROM erro_player WHERE ckey = '[cur_ckey]'") + var/DBQuery/query_inactive = SSdbcore.NewQuery("SELECT ckey FROM erro_player WHERE ckey = :t_ckey", list("t_ckey" = cur_ckey)) //CHOMPEdit TGSQL query_inactive.Execute() if(!query_inactive.RowCount()) inactive_ckeys += cur_ckey - + qdel(query_inactive) //CHOMPEdit TGSQL if(inactive_ckeys.len) inactive_keys = "" for(var/cur_key in inactive_ckeys) diff --git a/code/modules/admin/verbs/panicbunker.dm b/code/modules/admin/verbs/panicbunker.dm index 85ca43f447..497e1db7b8 100644 --- a/code/modules/admin/verbs/panicbunker.dm +++ b/code/modules/admin/verbs/panicbunker.dm @@ -12,7 +12,7 @@ config.panic_bunker = (!config.panic_bunker) log_and_message_admins("[key_name(usr)] has toggled the Panic Bunker, it is now [(config.panic_bunker?"on":"off")].") - if (config.panic_bunker && (!dbcon || !dbcon.IsConnected())) + if (config.panic_bunker && (!SSdbcore.IsConnected())) //CHOMPEdit TGSQL message_admins("The database is not connected! Panic bunker will not work until the connection is reestablished.") feedback_add_details("admin_verb","PANIC") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -26,7 +26,7 @@ config.paranoia_logging = (!config.paranoia_logging) log_and_message_admins("[key_name(usr)] has toggled Paranoia Logging, it is now [(config.paranoia_logging?"on":"off")].") - if (config.paranoia_logging && (!dbcon || !dbcon.IsConnected())) + if (config.paranoia_logging && (!SSdbcore.IsConnected())) //CHOMPEdit TGSQL message_admins("The database is not connected! Paranoia logging will not be able to give 'player age' (time since first connection) warnings, only Byond account warnings.") feedback_add_details("admin_verb","PARLOG") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -40,6 +40,6 @@ config.ip_reputation = (!config.ip_reputation) log_and_message_admins("[key_name(usr)] has toggled IP reputation checks, it is now [(config.ip_reputation?"on":"off")].") - if (config.ip_reputation && (!dbcon || !dbcon.IsConnected())) + if (config.ip_reputation && (!SSdbcore.IsConnected())) //CHOMPEdit TGSQL message_admins("The database is not connected! IP reputation logging will not be able to allow existing players to bypass the reputation checks (if that is enabled).") feedback_add_details("admin_verb","IPREP") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! diff --git a/code/modules/awaymissions/corpse.dm b/code/modules/awaymissions/corpse.dm index 7ec68e40f6..6aa06ef4ec 100644 --- a/code/modules/awaymissions/corpse.dm +++ b/code/modules/awaymissions/corpse.dm @@ -23,7 +23,11 @@ var/corpseidjob = null // Needs to be in quotes, such as "Clown" or "Chef." This just determines what the ID reads as, not their access var/corpseidaccess = null //This is for access. See access.dm for which jobs give what access. Again, put in quotes. Use "Captain" if you want it to be all access. var/corpseidicon = null //For setting it to be a gold, silver, CentCom etc ID - var/species = SPECIES_HUMAN + var/species = SPECIES_HUMAN //defaults to generic-ass humans + var/random_species = FALSE //flip to TRUE to randomize species from the list below + var/list/random_species_list = list(SPECIES_HUMAN,SPECIES_TAJ,SPECIES_UNATHI,SPECIES_SKRELL) //preset list that can be overriden downstream. only includes common humanoids for voidsuit compatibility's sake. +// var/random_appearance = FALSE //TODO: make this work +// var/cause_of_death = null //TODO: set up a cause-of-death system. needs to support both damage types and actual wound types, so a body can have been bitten/stabbed/clawed/shot/burned/lasered/etc. to death delete_me = TRUE /obj/effect/landmark/corpse/Initialize() @@ -33,13 +37,20 @@ /obj/effect/landmark/corpse/proc/createCorpse() //Creates a mob and checks for gear in each slot before attempting to equip it. var/mob/living/carbon/human/M = new /mob/living/carbon/human (src.loc) - M.set_species(species) + if(random_species) + var/random_pick = pick(random_species_list) + M.set_species(random_pick) + src.species = random_pick + else + M.set_species(species) + //TODO: insert appearance randomization, needs to be species-based M.real_name = src.name M.death(1) //Kills the new mob + //TODO: insert cause of death handling/wound simulation here if(src.corpseuniform) M.equip_to_slot_or_del(new src.corpseuniform(M), slot_w_uniform) if(src.corpsesuit) - M.equip_to_slot_or_del(new src.corpsesuit(M), slot_wear_suit) + M.equip_voidsuit_to_slot_or_del_with_refit(new src.corpsesuit(M), slot_wear_suit, src.species) if(src.corpseshoes) M.equip_to_slot_or_del(new src.corpseshoes(M), slot_shoes) if(src.corpsegloves) @@ -51,7 +62,7 @@ if(src.corpsemask) M.equip_to_slot_or_del(new src.corpsemask(M), slot_wear_mask) if(src.corpsehelmet) - M.equip_to_slot_or_del(new src.corpsehelmet(M), slot_head) + M.equip_voidhelm_to_slot_or_del_with_refit(new src.corpsehelmet(M), slot_head, src.species) if(src.corpsebelt) M.equip_to_slot_or_del(new src.corpsebelt(M), slot_belt) if(src.corpsepocket1) @@ -84,10 +95,6 @@ // I'll work on making a list of corpses people request for maps, or that I think will be commonly used. Syndicate operatives for example. - - - - /obj/effect/landmark/corpse/syndicatesoldier name = "Mercenary" corpseuniform = /obj/item/clothing/under/syndicate @@ -102,8 +109,6 @@ corpseidjob = "Operative" corpseidaccess = "Syndicate" - - /obj/effect/landmark/corpse/syndicatecommando name = "Syndicate Commando" corpseuniform = /obj/item/clothing/under/syndicate @@ -119,10 +124,14 @@ corpseidjob = "Operative" corpseidaccess = "Syndicate" - - ///////////Civilians////////////////////// +/obj/effect/landmark/corpse/random_civ + name = "Civilian" + corpseuniform = /obj/item/clothing/under/color/grey + corpseshoes = /obj/item/clothing/shoes/black + random_species = TRUE + /obj/effect/landmark/corpse/chef name = "Chef" corpseuniform = /obj/item/clothing/under/rank/chef @@ -165,6 +174,7 @@ corpsesuit = /obj/item/clothing/suit/space/void/engineering corpsemask = /obj/item/clothing/mask/breath corpsehelmet = /obj/item/clothing/head/helmet/space/void/engineering + corpseback = /obj/item/weapon/tank/oxygen /obj/effect/landmark/corpse/clown name = "Clown" @@ -188,6 +198,39 @@ corpseid = 1 corpseidjob = "Scientist" corpseidaccess = "Scientist" + +/obj/effect/landmark/corpse/security + name = "Security Officer" + corpseradio = /obj/item/device/radio/headset/headset_sec + corpseuniform = /obj/item/clothing/under/rank/security + corpsesuit = /obj/item/clothing/suit/armor/vest + corpseback = /obj/item/weapon/storage/backpack/security + corpseshoes = /obj/item/clothing/shoes/boots/jackboots + corpseglasses = /obj/item/clothing/glasses/sunglasses/sechud + corpsegloves = /obj/item/clothing/gloves/black + corpsehelmet = /obj/item/clothing/head/helmet + corpseid = 1 + corpseidjob = "Security Officer" + corpseidaccess = "Security Officer" + +/obj/effect/landmark/corpse/security/rig + corpsesuit = /obj/item/clothing/suit/space/void/security + corpsemask = /obj/item/clothing/mask/breath + corpsehelmet = /obj/item/clothing/head/helmet/space/void/security + corpseback = /obj/item/weapon/tank/jetpack/oxygen + +/obj/effect/landmark/corpse/security/rig/eva + corpsesuit = /obj/item/clothing/suit/space/void/security/alt + corpsehelmet = /obj/item/clothing/head/helmet/space/void/security/alt + corpseidjob = "Starship Security Officer" + +/obj/effect/landmark/corpse/prisoner + name = "Unknown Prisoner" + corpseuniform = /obj/item/clothing/under/color/prison + corpseshoes = /obj/item/clothing/shoes/orange + corpseid = 1 + corpseidjob = "Prisoner" + random_species = TRUE /obj/effect/landmark/corpse/miner corpseradio = /obj/item/device/radio/headset/headset_cargo @@ -203,17 +246,69 @@ corpsesuit = /obj/item/clothing/suit/space/void/mining corpsemask = /obj/item/clothing/mask/breath corpsehelmet = /obj/item/clothing/head/helmet/space/void/mining + corpseback = /obj/item/weapon/tank/oxygen -//VORESTATION ADD START +/////////////////Vintage////////////////////// + +//define the basic props at this level and only change specifics for variants, e.z. +/obj/effect/landmark/corpse/vintage + name = "Unknown Crewmate" + corpseuniform = /obj/item/clothing/under/utility + corpsesuit = /obj/item/clothing/suit/space/void/refurb + corpsehelmet = /obj/item/clothing/head/helmet/space/void/refurb + corpsemask = /obj/item/clothing/mask/breath + corpseback = /obj/item/weapon/tank/oxygen + corpseid = 1 + corpseidjob = "Crewmate" + +/obj/effect/landmark/corpse/vintage/engineering + name = "Unknown Engineer" + corpsesuit = /obj/item/clothing/suit/space/void/refurb/engineering + corpsehelmet = /obj/item/clothing/head/helmet/space/void/refurb/engineering + corpsebelt = /obj/item/weapon/storage/belt/utility/full + corpseback = /obj/item/weapon/tank/oxygen/yellow + corpseidjob = "Engineer" + +/obj/effect/landmark/corpse/vintage/marine + name = "Unknown Marine" + corpsesuit = /obj/item/clothing/suit/space/void/refurb/marine + corpsehelmet = /obj/item/clothing/head/helmet/space/void/refurb/marine + corpsebelt = /obj/item/weapon/storage/belt/security/tactical + corpseidjob = "Marine" + +/obj/effect/landmark/corpse/vintage/medical + name = "Unknown Medic" + corpsesuit = /obj/item/clothing/suit/space/void/refurb/medical + corpsehelmet = /obj/item/clothing/head/helmet/space/void/refurb/medical + corpsebelt = /obj/item/weapon/storage/belt/medical + corpseidjob = "Medic" + +/obj/effect/landmark/corpse/vintage/mercenary + name = "Unknown Mercenary" + corpsesuit = /obj/item/clothing/suit/space/void/refurb/mercenary + corpsehelmet = /obj/item/clothing/head/helmet/space/void/refurb/mercenary + corpsebelt = /obj/item/weapon/storage/belt/security/tactical + corpseback = /obj/item/weapon/tank/oxygen/red + corpseidjob = "Mercenary" + +/obj/effect/landmark/corpse/vintage/officer + name = "Unknown Captain" + corpsesuit = /obj/item/clothing/suit/space/void/refurb/officer + corpsehelmet = /obj/item/clothing/head/helmet/space/void/refurb/officer + corpseback = /obj/item/weapon/tank/oxygen/yellow + corpseidjob = "Captain" + /obj/effect/landmark/corpse/vintage/pilot - name = "Pilot" - corpseuniform = /obj/item/clothing/under/color/grey + name = "Unknown Pilot" corpsesuit = /obj/item/clothing/suit/space/void/refurb/pilot corpsehelmet = /obj/item/clothing/head/helmet/space/void/refurb/pilot - corpseshoes = /obj/item/clothing/shoes/black - corpseback = /obj/item/weapon/tank/oxygen -//VORESTATION ADD END + corpseidjob = "Pilot" +/obj/effect/landmark/corpse/vintage/research + name = "Unknown Researcher" + corpsesuit = /obj/item/clothing/suit/space/void/refurb/research + corpsehelmet = /obj/item/clothing/head/helmet/space/void/refurb/research + corpseidjob = "Researcher" /////////////////Officers////////////////////// diff --git a/code/modules/awaymissions/gateway.dm b/code/modules/awaymissions/gateway.dm index 987d395992..22ae47b4c4 100644 --- a/code/modules/awaymissions/gateway.dm +++ b/code/modules/awaymissions/gateway.dm @@ -133,14 +133,17 @@ obj/machinery/gateway/centerstation/process() M.set_dir(SOUTH) return else - //VOREStation Addition Start: Prevent taurriding abuse + //VOREStation Addition Start: Prevent abuse + if(istype(M, /obj/item/device/uav)) + var/obj/item/device/uav/L = M + L.power_down() if(istype(M, /mob/living)) var/mob/living/L = M if(LAZYLEN(L.buckled_mobs)) var/datum/riding/R = L.riding_datum for(var/rider in L.buckled_mobs) R.force_dismount(rider) - //VOREStation Addition End: Prevent taurriding abuse + //VOREStation Addition End: Prevent abuse var/obj/effect/landmark/dest = pick(awaydestinations) if(dest) M.forceMove(dest.loc) diff --git a/code/modules/blob2/blobs/base_blob.dm b/code/modules/blob2/blobs/base_blob.dm index 71d4ad7254..f9c9eb588d 100644 --- a/code/modules/blob2/blobs/base_blob.dm +++ b/code/modules/blob2/blobs/base_blob.dm @@ -22,6 +22,7 @@ GLOBAL_LIST_EMPTY(all_blobs) /obj/structure/blob/Initialize(newloc, new_overmind) if(new_overmind) overmind = new_overmind + faction = overmind.blob_type.faction update_icon() if(!integrity) integrity = max_integrity @@ -47,19 +48,24 @@ GLOBAL_LIST_EMPTY(all_blobs) color = null set_light(0) +/obj/structure/blob/update_transform() + var/matrix/M = matrix() + M.Scale(icon_scale_x, icon_scale_y) + animate(src, transform = M, time = 10) + // Blob tiles are not actually dense so we need Special Code(tm). /obj/structure/blob/CanPass(atom/movable/mover, turf/target) if(istype(mover) && mover.checkpass(PASSBLOB)) return TRUE else if(istype(mover, /mob/living)) var/mob/living/L = mover - if(L.faction == "blob") + if(L.faction == faction) return TRUE else if(istype(mover, /obj/item/projectile)) var/obj/item/projectile/P = mover if(istype(P.firer, /obj/structure/blob)) return TRUE - if(istype(P.firer) && P.firer.faction == "blob") + if(istype(P.firer) && P.firer.faction == faction) return TRUE return FALSE @@ -88,6 +94,7 @@ GLOBAL_LIST_EMPTY(all_blobs) update_icon() pulse_timestamp = world.time + 1 SECOND if(overmind) + faction = overmind.blob_type.faction overmind.blob_type.on_pulse(src) return TRUE //we did it, we were pulsed! return FALSE //oh no we failed @@ -106,6 +113,9 @@ GLOBAL_LIST_EMPTY(all_blobs) for(var/L in blobs_to_affect) var/obj/structure/blob/B = L + if(B.faction != faction) + continue + if(!B.overmind && !istype(B, /obj/structure/blob/core) && prob(30)) B.overmind = pulsing_overmind //reclaim unclaimed, non-core blobs. B.update_icon() @@ -138,7 +148,8 @@ GLOBAL_LIST_EMPTY(all_blobs) var/dirn = pick(dirs) dirs.Remove(dirn) T = get_step(src, dirn) - if(!(locate(/obj/structure/blob) in T)) + var/obj/structure/blob/B = locate(/obj/structure/blob) in T + if(!B || B.faction != faction) // Allow opposing blobs to fight. break else T = null @@ -164,6 +175,7 @@ GLOBAL_LIST_EMPTY(all_blobs) if(make_blob) //well, can we? var/obj/structure/blob/B = new /obj/structure/blob/normal(src.loc) + B.faction = faction if(controller) B.overmind = controller else @@ -340,7 +352,7 @@ GLOBAL_LIST_EMPTY(all_blobs) if(!P) return - if(istype(P.firer) && P.firer.faction == "blob") + if(istype(P.firer) && P.firer.faction == faction) return var/damage = P.get_structure_damage() // So tasers don't hurt the blob. @@ -366,6 +378,31 @@ GLOBAL_LIST_EMPTY(all_blobs) if(overmind) overmind.blob_type.on_water(src, amount) +/obj/structure/blob/blob_act(var/obj/structure/blob/B) + . = ..() + + if(B) + + if(!B.overmind) + return + + if(B.faction != faction) + var/damage = rand(B.overmind.blob_type.damage_lower, B.overmind.blob_type.damage_upper) + var/inc_damage_type = B.overmind.blob_type.damage_type + + if(overmind) + damage = overmind.blob_type.on_received_damage(src, damage, inc_damage_type, B) + + else + faction = B.faction + overmind = B.overmind + update_icon() + return + + adjust_integrity(-1 * damage) + + return + /obj/structure/blob/proc/adjust_integrity(amount) integrity = between(0, integrity + amount, max_integrity) if(integrity == 0) diff --git a/code/modules/blob2/blobs/factory.dm b/code/modules/blob2/blobs/factory.dm index f9415a6e66..464f89f760 100644 --- a/code/modules/blob2/blobs/factory.dm +++ b/code/modules/blob2/blobs/factory.dm @@ -35,7 +35,7 @@ var/mob/living/simple_mob/blob/spore/S = null if(overmind) S = new overmind.blob_type.spore_type(src.loc, src) - S.faction = "blob" + S.faction = overmind.blob_type.faction if(istype(S)) S.overmind = overmind overmind.blob_mobs.Add(S) diff --git a/code/modules/blob2/blobs/normal.dm b/code/modules/blob2/blobs/normal.dm index a6e841d4dd..cf25ff5c1b 100644 --- a/code/modules/blob2/blobs/normal.dm +++ b/code/modules/blob2/blobs/normal.dm @@ -19,4 +19,13 @@ if(overmind) name = "[overmind.blob_type.name]" else - name = "inert [base_name]" \ No newline at end of file + name = "inert [base_name]" + +/obj/structure/blob/normal/pulsed() + ..() + + if(prob(30)) + adjust_scale((rand(10, 13) / 10), (rand(10, 13) / 10)) + + else + adjust_scale(1) diff --git a/code/modules/blob2/core_chunk.dm b/code/modules/blob2/core_chunk.dm index 7d8f588568..4abc06843e 100644 --- a/code/modules/blob2/core_chunk.dm +++ b/code/modules/blob2/core_chunk.dm @@ -5,6 +5,7 @@ description_info = "Some blob types will have core effects when the chunk is used in-hand, toggled with an alt click, or constantly active." icon = 'icons/mob/blob.dmi' icon_state = "blobcore" + flags = OPENCONTAINER var/datum/blob_type/blob_type // The blob type this dropped from. var/active_ability_cooldown = 20 SECONDS @@ -15,11 +16,17 @@ var/passive_ability_cooldown = 5 SECONDS var/last_passive_use = 0 + var/can_genesis = TRUE // Can the core chunk be used to grow a new blob? + drop_sound = 'sound/effects/slime_squish.ogg' +/obj/item/weapon/blobcore_chunk/is_open_container() + return 1 + /obj/item/weapon/blobcore_chunk/New(var/atom/newloc, var/datum/blob_type/parentblob = null) ..(newloc) + create_reagents(120) setup_blobtype(parentblob) /obj/item/weapon/blobcore_chunk/Destroy() @@ -91,10 +98,57 @@ blob_type.on_chunk_tick(src) /obj/item/weapon/blobcore_chunk/AltClick(mob/living/carbon/user) - if(blob_type &&blob_type.chunk_active_type == BLOB_CHUNK_TOGGLE) + if(blob_type && blob_type.chunk_active_type == BLOB_CHUNK_TOGGLE) should_tick = !should_tick if(should_tick) to_chat(user, "\The [src] shudders with life.") else to_chat(user, "\The [src] stills, returning to a death-like state.") + +/obj/item/weapon/blobcore_chunk/proc/regen(var/newfaction = null) + if(istype(blob_type)) + if(newfaction) + blob_type.faction = newfaction + + var/obj/structure/blob/core/NC = new (get_turf(src)) + NC.overmind.blob_type = blob_type + NC.overmind.blob_core.update_icon() + return TRUE + + return FALSE + +/datum/chemical_reaction/blob_reconstitution + name = "Hostile Blob Revival" + id = "blob_revival" + result = null + required_reagents = list("phoron" = 60) + result_amount = 1 + +/datum/chemical_reaction/blob_reconstitution/can_happen(var/datum/reagents/holder) + if(holder.my_atom && istype(holder.my_atom, /obj/item/weapon/blobcore_chunk)) + return ..() + return FALSE + +/datum/chemical_reaction/blob_reconstitution/on_reaction(var/datum/reagents/holder) + var/obj/item/weapon/blobcore_chunk/chunk = holder.my_atom + if(chunk.can_genesis && chunk.regen()) + chunk.visible_message("[chunk] bubbles, surrounding itself with a rapidly expanding mass of [chunk.blob_type.name]!") + chunk.can_genesis = FALSE + else + chunk.visible_message("[chunk] shifts strangely, but falls still.") + +/datum/chemical_reaction/blob_reconstitution/domination + name = "Allied Blob Revival" + id = "blob_friend" + result = null + required_reagents = list("hydrophoron" = 40, "peridaxon" = 20, "mutagen" = 20) + result_amount = 1 + +/datum/chemical_reaction/blob_reconstitution/domination/on_reaction(var/datum/reagents/holder) + var/obj/item/weapon/blobcore_chunk/chunk = holder.my_atom + if(chunk.can_genesis && chunk.regen("neutral")) + chunk.visible_message("[chunk] bubbles, surrounding itself with a rapidly expanding mass of [chunk.blob_type.name]!") + chunk.can_genesis = FALSE + else + chunk.visible_message("[chunk] shifts strangely, but falls still.") diff --git a/code/modules/blob2/overmind/overmind.dm b/code/modules/blob2/overmind/overmind.dm index ffcd347dd8..6df0cba629 100644 --- a/code/modules/blob2/overmind/overmind.dm +++ b/code/modules/blob2/overmind/overmind.dm @@ -23,6 +23,14 @@ var/list/overminds = list() var/ai_controlled = TRUE var/auto_pilot = FALSE // If true, and if a client is attached, the AI routine will continue running. + universal_understand = TRUE + + var/list/has_langs = list(LANGUAGE_BLOB) + var/datum/language/default_language = null + +/mob/observer/blob/get_default_language() + return default_language + /mob/observer/blob/Initialize(newloc, pre_placed = 0, starting_points = 60, desired_blob_type = null) blob_points = starting_points if(pre_placed) //we already have a core! @@ -41,6 +49,11 @@ var/list/overminds = list() if(blob_core) blob_core.update_icon() + for(var/L in has_langs) + languages |= GLOB.all_languages[L] + if(languages.len) + default_language = languages[1] + return ..(newloc) /mob/observer/blob/Destroy() @@ -67,9 +80,9 @@ var/list/overminds = list() stat(null, "Power Stored: [blob_points]/[max_blob_points]") stat(null, "Total Blobs: [GLOB.all_blobs.len]") -/mob/observer/blob/Move(NewLoc, Dir = 0) +/mob/observer/blob/Move(var/atom/NewLoc, Dir = 0) if(placed) - var/obj/structure/blob/B = locate() in range("3x3", NewLoc) + var/obj/structure/blob/B = (locate() in view("5x5", NewLoc)) if(B) forceMove(NewLoc) return TRUE @@ -93,3 +106,62 @@ var/list/overminds = list() if(blob_points >= 100) if(!auto_factory() && !auto_resource()) auto_node() + +/mob/observer/blob/say(var/message, var/datum/language/speaking = null, var/whispering = 0) + message = sanitize(message) + + if(!message) + return + + //If you're muted for IC chat + if(client) + if(message) + client.handle_spam_prevention(MUTE_IC) + if((client.prefs.muted & MUTE_IC) || say_disabled) + to_chat(src, "You cannot speak in IC (Muted).") + return + + //These will contain the main receivers of the message + var/list/listening = list() + var/list/listening_obj = list() + + var/turf/T = get_turf(src) + if(T) + //Obtain the mobs and objects in the message range + var/list/results = get_mobs_and_objs_in_view_fast(T, world.view, remote_ghosts = client ? TRUE : FALSE) + listening = results["mobs"] + listening_obj = results["objs"] + else + return 1 //If we're in nullspace, then forget it. + + var/list/message_pieces = parse_languages(message) + if(istype(message_pieces, /datum/multilingual_say_piece)) // Little quirk for dealing with hivemind/signlang languages. + var/datum/multilingual_say_piece/S = message_pieces // Yay for BYOND's hilariously broken typecasting for allowing us to do this. + S.speaking.broadcast(src, S.message) + return 1 + + if(!LAZYLEN(message_pieces)) + log_runtime(EXCEPTION("Message failed to generate pieces. [message] - [json_encode(message_pieces)]")) + return 0 + + //Handle nonverbal languages here + for(var/datum/multilingual_say_piece/S in message_pieces) + if(S.speaking.flags & NONVERBAL) + custom_emote(1, "[pick(S.speaking.signlang_verb)].") + + for(var/mob/M in listening) + spawn() + if(M && src) + if(get_dist(M, src) <= world.view || (M.stat == DEAD && !forbid_seeing_deadchat)) + M.hear_say(message_pieces, "conveys", (M.faction == blob_type.faction), src) + + //Object message delivery + for(var/obj/O in listening_obj) + spawn(0) + if(O && src) //If we still exist, when the spawn processes + var/dst = get_dist(get_turf(O),get_turf(src)) + if(dst <= world.view) + O.hear_talk(src, message_pieces, "conveys") + + log_say(message, src) + return 1 diff --git a/code/modules/blob2/overmind/powers.dm b/code/modules/blob2/overmind/powers.dm index b307ab1ac8..b84af47fae 100644 --- a/code/modules/blob2/overmind/powers.dm +++ b/code/modules/blob2/overmind/powers.dm @@ -80,8 +80,8 @@ potential_blobs -= temp // Don't take up the core's shield spot. else if(!istype(temp, /obj/structure/blob/normal)) potential_blobs -= temp // Not a normal blob. - else if(temp.overmind != src) - potential_blobs -= temp // Not our blob. + else if(temp.overmind != src || temp.overmind.blob_type.faction != blob_type.faction) + potential_blobs -= temp // Not our blob, or even an ally. else B = temp break @@ -123,8 +123,8 @@ potential_blobs -= temp // Don't take up the core's shield spot. else if(!istype(temp, /obj/structure/blob/normal)) potential_blobs -= temp // Not a normal blob. - else if(temp.overmind != src) - potential_blobs -= temp // Not our blob. + else if(temp.overmind != src || temp.overmind.blob_type.faction != blob_type.faction) + potential_blobs -= temp // Not our blob, or even an ally else B = temp break @@ -165,8 +165,8 @@ potential_blobs -= temp else if(!istype(temp, /obj/structure/blob/normal)) potential_blobs -= temp - else if(temp.overmind != src) - potential_blobs -= temp // Not our blob. + else if(temp.overmind != src || temp.overmind.blob_type.faction != blob_type.faction) + potential_blobs -= temp // Not our blob, or even our ally. else B = temp break @@ -216,7 +216,7 @@ for(var/mob/living/L in view(src)) if(L.stat == DEAD) continue // Already dying or dead. - if(L.faction == "blob") + if(L.faction == blob_type.faction) continue // No friendly fire. if(locate(/obj/structure/blob) in L.loc) continue // Already has a blob over them. diff --git a/code/modules/blob2/overmind/types.dm b/code/modules/blob2/overmind/types.dm index 79df541aae..8fffbcdbca 100644 --- a/code/modules/blob2/overmind/types.dm +++ b/code/modules/blob2/overmind/types.dm @@ -9,6 +9,8 @@ var/color = "#FFFFFF" // The actual blob's color. var/complementary_color = "#000000" //a color that's complementary to the normal blob color. Blob mobs are colored in this. + var/faction = "blob" // The blob's faction. + var/attack_message = "The blob attacks you" // Base message the mob gets when blob_act() gets called on them by the blob. An exclaimation point is added to the end. var/attack_message_living = null // Appended to attack_message, if the target fails isSynthetic() check. var/attack_message_synth = null // Ditto, but if they pass isSynthetic(). diff --git a/code/modules/blob2/overmind/types/blazing_oil.dm b/code/modules/blob2/overmind/types/blazing_oil.dm index 094083e778..7d8c9f307d 100644 --- a/code/modules/blob2/overmind/types/blazing_oil.dm +++ b/code/modules/blob2/overmind/types/blazing_oil.dm @@ -33,6 +33,8 @@ env.add_thermal_energy(10 * 1000) /datum/blob_type/blazing_oil/on_chunk_tick(obj/item/weapon/blobcore_chunk/B) + B.reagents.add_reagent("thermite_v", 0.5) + var/turf/T = get_turf(B) if(!T) return diff --git a/code/modules/blob2/overmind/types/cryogenic_goo.dm b/code/modules/blob2/overmind/types/cryogenic_goo.dm index 32684ed58f..564516a71d 100644 --- a/code/modules/blob2/overmind/types/cryogenic_goo.dm +++ b/code/modules/blob2/overmind/types/cryogenic_goo.dm @@ -46,6 +46,8 @@ env.add_thermal_energy(-10 * 1000) /datum/blob_type/cryogenic_goo/on_chunk_tick(obj/item/weapon/blobcore_chunk/B) + B.reagents.add_reagent("cryoslurry", 0.5) + var/turf/simulated/T = get_turf(B) if(!istype(T)) return diff --git a/code/modules/blob2/overmind/types/ectoplasmic_horror.dm b/code/modules/blob2/overmind/types/ectoplasmic_horror.dm index f7689847cd..a528ce8388 100644 --- a/code/modules/blob2/overmind/types/ectoplasmic_horror.dm +++ b/code/modules/blob2/overmind/types/ectoplasmic_horror.dm @@ -35,7 +35,7 @@ listclearnulls(active_beams) var/atom/movable/beam_origin = B for(var/mob/living/L in oview(world.view, B)) - if(L.stat == DEAD || L.faction == "blob") + if(L.stat == DEAD || L.faction == faction) continue if(prob(5)) var/beamtarget_exists = FALSE @@ -82,7 +82,7 @@ if(nearby_mobs.len) listclearnulls(active_beams) for(var/mob/living/L in nearby_mobs) - if(L.stat == DEAD || L.faction == "blob") + if(L.stat == DEAD || L.faction == faction) continue if(prob(5)) var/beamtarget_exists = FALSE diff --git a/code/modules/blob2/overmind/types/explosive_lattice.dm b/code/modules/blob2/overmind/types/explosive_lattice.dm index d0484c3725..aec6787eab 100644 --- a/code/modules/blob2/overmind/types/explosive_lattice.dm +++ b/code/modules/blob2/overmind/types/explosive_lattice.dm @@ -30,7 +30,7 @@ for(var/mob/living/L in range(get_turf(victim), 1)) // We don't use orange(), in case there is more than one mob on the target tile. if(L == victim) // Already hit. continue - if(L.faction == "blob") // No friendly fire + if(L.faction == faction) // No friendly fire continue L.blob_act() diff --git a/code/modules/blob2/overmind/types/fulminant_organism.dm b/code/modules/blob2/overmind/types/fulminant_organism.dm index 2d940f9359..4f3788b787 100644 --- a/code/modules/blob2/overmind/types/fulminant_organism.dm +++ b/code/modules/blob2/overmind/types/fulminant_organism.dm @@ -24,9 +24,10 @@ var/mob/living/simple_mob/blob/spore/S = new spore_type(T) if(istype(S)) S.overmind = O + S.faction = faction O.blob_mobs.Add(S) else - S.faction = "blob" + S.faction = faction S.update_icons() /datum/blob_type/fulminant_organism/on_death(obj/structure/blob/B) @@ -35,9 +36,10 @@ B.visible_message("\The [S] floats free from the [name]!") if(istype(S)) S.overmind = B.overmind + S.faction = faction B.overmind.blob_mobs.Add(S) else - S.faction = "blob" + S.faction = faction S.update_icons() /datum/blob_type/fulminant_organism/on_chunk_use(obj/item/weapon/blobcore_chunk/B, mob/living/user) diff --git a/code/modules/blob2/overmind/types/grey_goo.dm b/code/modules/blob2/overmind/types/grey_goo.dm index 5c93fb46c8..558f624e96 100644 --- a/code/modules/blob2/overmind/types/grey_goo.dm +++ b/code/modules/blob2/overmind/types/grey_goo.dm @@ -14,6 +14,7 @@ attack_message = "The tide tries to swallow you" attack_message_living = ", and you feel your skin dissolve" attack_message_synth = ", and your external plating dissolves" + faction = "nanomachines" /datum/blob_type/grey_goo/on_emp(obj/structure/blob/B, severity) B.adjust_integrity(-(20 / severity)) diff --git a/code/modules/blob2/overmind/types/roiling_mold.dm b/code/modules/blob2/overmind/types/roiling_mold.dm index e909d06086..4594ad1c9f 100644 --- a/code/modules/blob2/overmind/types/roiling_mold.dm +++ b/code/modules/blob2/overmind/types/roiling_mold.dm @@ -44,7 +44,7 @@ if(!istype(L)) return - if(istype(B, /obj/structure/blob/factory) && L.stat != DEAD && prob(ai_aggressiveness) && L.faction != "blob") + if(istype(B, /obj/structure/blob/factory) && L.stat != DEAD && prob(ai_aggressiveness) && L.faction != faction) var/obj/item/projectile/arc/spore/P = new(get_turf(B)) P.launch_projectile(L, BP_TORSO, B) diff --git a/code/modules/client/client procs.dm b/code/modules/client/client procs.dm index 83542dcc08..7db4d9393a 100644 --- a/code/modules/client/client procs.dm +++ b/code/modules/client/client procs.dm @@ -95,16 +95,18 @@ var/sql_discord = sql_sanitize_text(their_id) var/sql_ckey = sql_sanitize_text(ckey) - var/DBQuery/query = dbcon.NewQuery("UPDATE erro_player SET discord_id = '[sql_discord]' WHERE ckey = '[sql_ckey]'") + var/DBQuery/query = SSdbcore.NewQuery("UPDATE erro_player SET discord_id = :t_discord_id WHERE ckey = :t_ckey", list("t_discord_id" = sql_discord, "t_ckey" = sql_ckey)) //CHOMPEdit TGSQL if(query.Execute()) to_chat(src, "Registration complete! Thank you for taking the time to register your Discord ID.") log_and_message_admins("[ckey] has registered their Discord ID. Their Discord snowflake ID is: [their_id]") //YW EDIT admin_chat_message(message = "[ckey] has registered their Discord ID. Their Discord is: <@[their_id]>", color = "#4eff22") //YW EDIT notes_add(ckey, "Discord ID: [their_id]") world.VgsAddMemberRole(their_id) + qdel(query) //CHOMPEdit TGSQL else to_chat(src, "There was an error registering your Discord ID in the database. Contact an administrator.") log_and_message_admins("[ckey] failed to register their Discord ID. Their Discord snowflake ID is: [their_id]. Is the database connected?") + qdel(query) //CHOMPEdit TGSQL return //VOREStation Add End @@ -227,7 +229,6 @@ if(!void) void = new() - void.MakeGreed() screen += void if((prefs.lastchangelog != changelog_hash) && isnewplayer(src.mob)) //bolds the changelog button on the interface so we know there are updates. @@ -275,18 +276,22 @@ /proc/get_player_age(key) establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL return null var/sql_ckey = sql_sanitize_text(ckey(key)) - var/DBQuery/query = dbcon.NewQuery("SELECT datediff(Now(),firstseen) as age FROM erro_player WHERE ckey = '[sql_ckey]'") + var/DBQuery/query = SSdbcore.NewQuery("SELECT datediff(Now(),firstseen) as age FROM erro_player WHERE ckey = :t_ckey", list("t_ckey" = sql_ckey)) //CHOMPEdit TGSQL query.Execute() - + //CHOMPEdit Begin if(query.NextRow()) - return text2num(query.item[1]) + var/outp = text2num(query.item[1]) + qdel(query) + return outp else + qdel(query) return -1 + //CHOMPEdit End /client/proc/log_client_to_db() @@ -295,12 +300,12 @@ return establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL return var/sql_ckey = sql_sanitize_text(src.ckey) - var/DBQuery/query = dbcon.NewQuery("SELECT id, datediff(Now(),firstseen) as age FROM erro_player WHERE ckey = '[sql_ckey]'") + var/DBQuery/query = SSdbcore.NewQuery("SELECT id, datediff(Now(),firstseen) as age FROM erro_player WHERE ckey = :t_ckey", list("t_ckey" = sql_ckey)) //CHOMPEdit TGSQL query.Execute() var/sql_id = 0 player_age = 0 // New players won't have an entry so knowing we have a connection we set this to zero to be updated if their is a record. @@ -308,27 +313,28 @@ sql_id = query.item[1] player_age = text2num(query.item[2]) break - + qdel(query) //CHOMPEdit TGSQL account_join_date = sanitizeSQL(findJoinDate()) - if(account_join_date && dbcon.IsConnected()) - var/DBQuery/query_datediff = dbcon.NewQuery("SELECT DATEDIFF(Now(),'[account_join_date]')") + if(account_join_date && SSdbcore.IsConnected()) //CHOMPEdit TGSQL + var/DBQuery/query_datediff = SSdbcore.NewQuery("SELECT DATEDIFF(Now(),'[account_join_date]')") //CHOMPEdit TGSQL if(query_datediff.Execute() && query_datediff.NextRow()) account_age = text2num(query_datediff.item[1]) + qdel(query_datediff) //CHOMPEdit TGSQL - var/DBQuery/query_ip = dbcon.NewQuery("SELECT ckey FROM erro_player WHERE ip = '[address]'") + var/DBQuery/query_ip = SSdbcore.NewQuery("SELECT ckey FROM erro_player WHERE ip = '[address]'") //CHOMPEdit TGSQL query_ip.Execute() related_accounts_ip = "" while(query_ip.NextRow()) related_accounts_ip += "[query_ip.item[1]], " break - - var/DBQuery/query_cid = dbcon.NewQuery("SELECT ckey FROM erro_player WHERE computerid = '[computer_id]'") + qdel(query_ip) //CHOMPEdit TGSQL + var/DBQuery/query_cid = SSdbcore.NewQuery("SELECT ckey FROM erro_player WHERE computerid = '[computer_id]'") //CHOMPEdit TGSQL query_cid.Execute() related_accounts_cid = "" while(query_cid.NextRow()) related_accounts_cid += "[query_cid.item[1]], " break - + qdel(query_cid) //CHOMPEdit TGSQL //Just the standard check to see if it's actually a number if(sql_id) if(istext(sql_id)) @@ -377,7 +383,7 @@ log_admin("Couldn't perform IP check on [key] with [address]") // VOREStation Edit Start - Department Hours - var/DBQuery/query_hours = dbcon.NewQuery("SELECT department, hours, total_hours FROM vr_player_hours WHERE ckey = '[sql_ckey]'") + var/DBQuery/query_hours = SSdbcore.NewQuery("SELECT department, hours, total_hours FROM vr_player_hours WHERE ckey = :t_ckey", list("t_ckey" = sql_ckey)) //CHOMPEdit TGSQL if(query_hours.Execute()) while(query_hours.NextRow()) department_hours[query_hours.item[1]] = text2num(query_hours.item[2]) @@ -388,20 +394,23 @@ spawn(0) alert(src, "The query to load your existing playtime failed. Screenshot this, give the screenshot to a developer, and reconnect, otherwise you may lose any recorded play hours (which may limit access to jobs). ERROR: [error_message]", "PROBLEMS!!") // VOREStation Edit End - Department Hours - + qdel(query_hours) //CHOMPEdit TGSQL if(sql_id) //Player already identified previously, we need to just update the 'lastseen', 'ip' and 'computer_id' variables - var/DBQuery/query_update = dbcon.NewQuery("UPDATE erro_player SET lastseen = Now(), ip = '[sql_ip]', computerid = '[sql_computerid]', lastadminrank = '[sql_admin_rank]' WHERE id = [sql_id]") + var/DBQuery/query_update = SSdbcore.NewQuery("UPDATE erro_player SET lastseen = Now(), ip = '[sql_ip]', computerid = '[sql_computerid]', lastadminrank = '[sql_admin_rank]' WHERE id = [sql_id]") //CHOMPEdit TGSQL query_update.Execute() + qdel(query_update) //CHOMPEdit TGSQL else //New player!! Need to insert all the stuff - var/DBQuery/query_insert = dbcon.NewQuery("INSERT INTO erro_player (id, ckey, firstseen, lastseen, ip, computerid, lastadminrank) VALUES (null, '[sql_ckey]', Now(), Now(), '[sql_ip]', '[sql_computerid]', '[sql_admin_rank]')") + var/DBQuery/query_insert = SSdbcore.NewQuery("INSERT INTO erro_player (id, ckey, firstseen, lastseen, ip, computerid, lastadminrank) VALUES (null, :t_ckey, Now(), Now(), '[sql_ip]', '[sql_computerid]', '[sql_admin_rank]')", list("t_ckey" = sql_ckey)) //CHOMPEdit TGSQL query_insert.Execute() + qdel(query_insert) //CHOMPEdit TGSQL //Logging player access var/serverip = "[world.internet_address]:[world.port]" - var/DBQuery/query_accesslog = dbcon.NewQuery("INSERT INTO `erro_connection_log`(`id`,`datetime`,`serverip`,`ckey`,`ip`,`computerid`) VALUES(null,Now(),'[serverip]','[sql_ckey]','[sql_ip]','[sql_computerid]');") + var/DBQuery/query_accesslog = SSdbcore.NewQuery("INSERT INTO `erro_connection_log`(`id`,`datetime`,`serverip`,`ckey`,`ip`,`computerid`) VALUES(null,Now(),'[serverip]',:t_ckey,'[sql_ip]','[sql_computerid]');", list("t_ckey" = sql_ckey)) //CHOMPEdit TGSQL query_accesslog.Execute() + qdel(query_accesslog) //CHOMPEdit TGSQL #undef TOPIC_SPAM_DELAY #undef UPLOAD_LIMIT diff --git a/code/modules/client/preference_setup/loadout/loadout_eyes.dm b/code/modules/client/preference_setup/loadout/loadout_eyes.dm index d9eb426499..09e0fcdc47 100644 --- a/code/modules/client/preference_setup/loadout/loadout_eyes.dm +++ b/code/modules/client/preference_setup/loadout/loadout_eyes.dm @@ -27,6 +27,14 @@ ..() gear_tweaks += gear_tweak_free_color_choice +/datum/gear/eyes/thinblindfold + display_name = "blindfold, thin white (recolorable)" + path = /obj/item/clothing/glasses/sunglasses/thinblindfold + +/datum/gear/eyes/thinblindfold/New() + ..() + gear_tweaks += gear_tweak_free_color_choice + /datum/gear/eyes/glasses display_name = "Glasses, prescription" path = /obj/item/clothing/glasses/regular diff --git a/code/modules/client/preference_setup/loadout/loadout_head_ch.dm b/code/modules/client/preference_setup/loadout/loadout_head_ch.dm new file mode 100644 index 0000000000..d77cafc5a3 --- /dev/null +++ b/code/modules/client/preference_setup/loadout/loadout_head_ch.dm @@ -0,0 +1,27 @@ +/datum/gear/head/bearpelt + display_name = "brown bear pelt" + path = /obj/item/clothing/head/pelt + +/datum/gear/head/bearpeltblack + display_name = "black bear pelt" + path = /obj/item/clothing/head/pelt/black + +/datum/gear/head/wolfpelt + display_name = "brown wolf pelt" + path = /obj/item/clothing/head/pelt/wolfpelt + +/datum/gear/head/wolfpeltblack + display_name = "black wolf pelt" + path = /obj/item/clothing/head/pelt/wolfpeltblack + +/datum/gear/head/tigerpelt + display_name = "shiny tiger pelt" + path = /obj/item/clothing/head/pelt/tigerpelt + +/datum/gear/head/tigerpeltsnow + display_name = "snow tiger pelt" + path = /obj/item/clothing/head/pelt/tigerpeltsnow + +/datum/gear/head/tigerpeltpink + display_name = "pink tiger pelt" + path = /obj/item/clothing/head/pelt/tigerpeltpink diff --git a/code/modules/client/preference_setup/loadout/loadout_uniform.dm b/code/modules/client/preference_setup/loadout/loadout_uniform.dm index 806ce0f42b..aa6ae67d3e 100644 --- a/code/modules/client/preference_setup/loadout/loadout_uniform.dm +++ b/code/modules/client/preference_setup/loadout/loadout_uniform.dm @@ -65,7 +65,7 @@ ..() var/list/skirts = list() for(var/skirt in (typesof(/obj/item/clothing/under/skirt))) - if(skirt in typesof(/obj/item/clothing/under/skirt/fluff)) //VOREStation addition + if((skirt in typesof(/obj/item/clothing/under/skirt/fluff)) || (skirt in typesof(/obj/item/clothing/under/skirt/outfit/fluff))) //VOREStation addition continue //VOREStation addition var/obj/item/clothing/under/skirt/skirt_type = skirt skirts[initial(skirt_type.name)] = skirt_type diff --git a/code/modules/client/preference_setup/vore/03_egg.dm b/code/modules/client/preference_setup/vore/03_egg.dm index 648b31b399..6c090478d5 100644 --- a/code/modules/client/preference_setup/vore/03_egg.dm +++ b/code/modules/client/preference_setup/vore/03_egg.dm @@ -1,15 +1,3 @@ -var/UNATHI_EGG = "Unathi" -var/TAJARAN_EGG = "Tajaran" -var/AKULA_EGG = "Akula" -var/SKRELL_EGG = "Skrell" -var/SERGAL_EGG = "Sergal" -var/HUMAN_EGG = "Human" -var/NEVREAN_EGG = "nevrean" -var/SLIME_EGG = "Slime" -var/EGG_EGG = "Egg" -var/XENOCHIMERA_EGG = "Xenochimera" -var/XENOMORPH_EGG = "Xenomorph" - // Define a place to save appearance in character setup /datum/preferences var/vore_egg_type = "Egg" //The egg type they have. @@ -26,8 +14,7 @@ var/XENOMORPH_EGG = "Xenomorph" S["vore_egg_type"] << pref.vore_egg_type /datum/category_item/player_setup_item/vore/egg/sanitize_character() - var/valid_vore_egg_types = global_vore_egg_types - pref.vore_egg_type = sanitize_inlist(pref.vore_egg_type, valid_vore_egg_types, initial(pref.vore_egg_type)) + pref.vore_egg_type = sanitize_inlist(pref.vore_egg_type, global_vore_egg_types, initial(pref.vore_egg_type)) /datum/category_item/player_setup_item/vore/egg/copy_to_mob(var/mob/living/carbon/human/character) character.vore_egg_type = pref.vore_egg_type @@ -44,7 +31,7 @@ var/XENOMORPH_EGG = "Xenomorph" var/list/vore_egg_types = global_vore_egg_types var/selection = input(user, "Choose your character's egg type:", "Character Preference", pref.vore_egg_type) as null|anything in vore_egg_types if(selection) - pref.vore_egg_type = vore_egg_types[selection] + pref.vore_egg_type = selection return TOPIC_REFRESH else return diff --git a/code/modules/client/preference_setup/vore/07_traits.dm b/code/modules/client/preference_setup/vore/07_traits.dm index ff6db5f9ef..782111c161 100644 --- a/code/modules/client/preference_setup/vore/07_traits.dm +++ b/code/modules/client/preference_setup/vore/07_traits.dm @@ -58,21 +58,21 @@ if(pref.species != SPECIES_CUSTOM) pref.pos_traits.Cut() - pref.neu_traits.Cut() pref.neg_traits.Cut() - else - // Clean up positive traits - for(var/path in pref.pos_traits) - if(!(path in positive_traits)) - pref.pos_traits -= path - //Neutral traits - for(var/path in pref.neu_traits) - if(!(path in neutral_traits)) - pref.neu_traits -= path - //Negative traits - for(var/path in pref.neg_traits) - if(!(path in negative_traits)) - pref.neg_traits -= path + // Clean up positive traits + for(var/path in pref.pos_traits) + if(!(path in positive_traits)) + pref.pos_traits -= path + //Neutral traits + for(var/path in pref.neu_traits) + if(!(path in neutral_traits)) + pref.neu_traits -= path + if(!(pref.species == SPECIES_CUSTOM) && !(path in everyone_traits)) + pref.neu_traits -= path + //Negative traits + for(var/path in pref.neg_traits) + if(!(path in negative_traits)) + pref.neg_traits -= path var/datum/species/selected_species = GLOB.all_species[pref.species] if(selected_species.selects_bodytype) @@ -82,25 +82,32 @@ /datum/category_item/player_setup_item/vore/traits/copy_to_mob(var/mob/living/carbon/human/character) character.custom_species = pref.custom_species - var/datum/species/selected_species = GLOB.all_species[pref.species] if(character.isSynthetic()) //Checking if we have a synth on our hands, boys. pref.dirty_synth = 1 else //CHOMPEdit pref.dirty_synth = 0 //CHOMPEdit - if(selected_species.selects_bodytype) - var/datum/species/custom/CS = character.species - var/S = pref.custom_base ? pref.custom_base : "Human" - var/datum/species/custom/new_CS = CS.produceCopy(S, pref.pos_traits + pref.neu_traits + pref.neg_traits, character) + var/datum/species/S = character.species + var/SB + if(S.selects_bodytype) + SB = pref.custom_base ? pref.custom_base : "Human" + else + SB = S.name + var/datum/species/new_S = S.produceCopy(SB, pref.pos_traits + pref.neu_traits + pref.neg_traits, character) - //Any additional non-trait settings can be applied here - new_CS.blood_color = pref.blood_color + //Any additional non-trait settings can be applied here + new_S.blood_color = pref.blood_color + + //Any additional non-trait settings can be applied here + new_S.blood_color = pref.blood_color + + if(pref.species == SPECIES_CUSTOM) + //Statistics for this would be nice + var/english_traits = english_list(new_S.traits, and_text = ";", comma_text = ";") + log_game("TRAITS [pref.client_ckey]/([character]) with: [english_traits]") //Terrible 'fake' key_name()... but they aren't in the same entity yet + else - if(pref.species == SPECIES_CUSTOM) - //Statistics for this would be nice - var/english_traits = english_list(new_CS.traits, and_text = ";", comma_text = ";") - log_game("TRAITS [pref.client_ckey]/([character]) with: [english_traits]") //Terrible 'fake' key_name()... but they aren't in the same entity yet /datum/category_item/player_setup_item/vore/traits/content(var/mob/user) . += "Custom Species Name: " @@ -111,15 +118,16 @@ . += "Icon Base: " . += "[pref.custom_base ? pref.custom_base : "Human"]
" + var/traits_left = pref.max_traits + . += "Traits Left: [traits_left]
" if(pref.species == SPECIES_CUSTOM) var/points_left = pref.starting_trait_points - var/traits_left = pref.max_traits + for(var/T in pref.pos_traits + pref.neg_traits) points_left -= traits_costs[T] traits_left-- . += "Points Left: [points_left]
" - . += "Traits Left: [traits_left]
" if(points_left < 0 || traits_left < 0 || !pref.custom_species) . += "^ Fix things! ^
" @@ -130,19 +138,18 @@ . += "
  • - [trait.name] ([trait.cost])
  • " . += "" - . += "Neutral Trait +
    " - . += "" - . += "Negative Trait +
    " . += "" + . += "Neutral Trait +
    " + . += "" . += "Blood Color: " //People that want to use a certain species to have that species traits (xenochimera/promethean/spider) should be able to set their own blood color. . += "Set Color" . += "R
    " @@ -218,8 +225,12 @@ picklist = positive_traits.Copy() - pref.pos_traits mylist = pref.pos_traits if(NEUTRAL_MODE) - picklist = neutral_traits.Copy() - pref.neu_traits - mylist = pref.neu_traits + if(pref.species == SPECIES_CUSTOM) + picklist = neutral_traits.Copy() - pref.neu_traits + mylist = pref.neu_traits + else + picklist = everyone_traits.Copy() - pref.neu_traits + mylist = pref.neu_traits if(NEGATIVE_MODE) picklist = negative_traits.Copy() - pref.neg_traits mylist = pref.neg_traits diff --git a/code/modules/client/preferences_spawnpoints_ch.dm b/code/modules/client/preferences_spawnpoints_ch.dm index bcea0c153f..8cd1eeb71b 100644 --- a/code/modules/client/preferences_spawnpoints_ch.dm +++ b/code/modules/client/preferences_spawnpoints_ch.dm @@ -4,4 +4,12 @@ /datum/spawnpoint/stationgateway/New() ..() - turfs = latejoin_gatewaystation \ No newline at end of file + turfs = latejoin_gatewaystation + +/datum/spawnpoint/vore + display_name = "Vore Belly" + msg = "has arrived on the station" + +/datum/spawnpoint/vore/New() + ..() + turfs = latejoin \ No newline at end of file diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm index 56577053b0..c02bca7e13 100644 --- a/code/modules/clothing/glasses/glasses.dm +++ b/code/modules/clothing/glasses/glasses.dm @@ -399,6 +399,13 @@ BLIND // can't see anything desc = "A white blindfold that covers the eyes, preventing sight." icon_state = "blindfoldwhite" +/obj/item/clothing/glasses/sunglasses/thinblindfold + name = "thin white blindfold" + desc = "A thin blindfold to help protect sensitive eyes while still allowing some sight" + icon_state = "blindfoldwhite" + flash_protection = FLASH_PROTECTION_MODERATE //not as thick, only offers some protection + tint = TINT_HEAVY + /obj/item/clothing/glasses/sunglasses/blindfold/tape name = "length of tape" desc = "It's a robust DIY blindfold!" diff --git a/code/modules/clothing/head/misc_ch.dm b/code/modules/clothing/head/misc_ch.dm index 8f8c5b8757..f063fe4dec 100644 --- a/code/modules/clothing/head/misc_ch.dm +++ b/code/modules/clothing/head/misc_ch.dm @@ -54,4 +54,48 @@ /obj/item/clothing/head/crown/goose_queen/christmas name = "Crown of the Goose Queen of Holiday Cheer" - desc = "It's the crown from the golden goose casino of the Goose Queen! Given to the one to spread christmas cheer on Southern Cross, happy holidays!" \ No newline at end of file + desc = "It's the crown from the golden goose casino of the Goose Queen! Given to the one to spread christmas cheer on Southern Cross, happy holidays!" + +/obj/item/clothing/head/pelt + name = "Bear pelt" + desc = "A luxurious bear pelt, good to keep warm in winter. Or to sleep through winter." + icon = 'icons/obj/clothing/hats_ch.dmi' + icon_override = 'icons/mob/head_ch.dmi' + icon_state = "bearpelt_brown" + item_state = "bearpelt_brown" + +/obj/item/clothing/head/pelt/black + icon_state = "bearpelt_black" + item_state = "bearpelt_black" + +/obj/item/clothing/head/pelt/wolfpelt + name = "Wolf pelt" + desc = "A fuzzy wolf pelt, demanding respect as a hunter, well if it isn't synthetic or anything at least. Or bought." + icon_override = 'icons/mob/wolfpelt_ch.dmi' + icon_state = "wolfpelt_brown" + item_state = "wolfpelt_brown" + +/obj/item/clothing/head/pelt/wolfpeltblack + name = "Wolf pelt" + desc = "A fuzzy wolf pelt, demanding respect as a hunter, well if it isn't synthetic or anything at least. Or bought." + icon_override = 'icons/mob/wolfpelt_ch.dmi' + icon_state = "wolfpelt_gray" + item_state = "wolfpelt_gray" + +/obj/item/clothing/head/pelt/tigerpelt + name = "Shiny tiger pelt" + desc = "A vibrant tiger pelt, particularly fabulous." + icon_state = "tigerpelt_shiny" + item_state = "tigerpelt_shiny" + +/obj/item/clothing/head/pelt/tigerpeltsnow + name = "Snow tiger pelt" + desc = "A pelt of a less vibrant tiger, but rather warm." + icon_state = "tigerpelt_snow" + item_state = "tigerpelt_snow" + +/obj/item/clothing/head/pelt/tigerpeltpink + name = "Pink tiger pelt" + desc = "A particularly vibrant tiger pelt, for those who want to be the most fabulous at parties." + icon_state = "tigerpelt_pink" + item_state = "tigerpelt_pink" \ No newline at end of file diff --git a/code/modules/clothing/spacesuits/rig/suits/ert.dm b/code/modules/clothing/spacesuits/rig/suits/ert.dm index 0edd36c1d2..35fe19d93b 100644 --- a/code/modules/clothing/spacesuits/rig/suits/ert.dm +++ b/code/modules/clothing/spacesuits/rig/suits/ert.dm @@ -89,7 +89,12 @@ armor = list(melee = 60, bullet = 50, laser = 50,energy = 40, bomb = 40, bio = 100, rad = 100) siemens_coefficient= 0.3 glove_type = /obj/item/clothing/gloves/gauntlets/rig/eva - + //CHOMPEdit Begin + rigsuit_max_pressure = 20 * ONE_ATMOSPHERE + rigsuit_min_pressure = 0 + max_heat_protection_temperature = FIRE_HELMET_MAX_HEAT_PROTECTION_TEMPERATURE + //CHOMPEdit End + initial_modules = list( /obj/item/rig_module/ai_container, /obj/item/rig_module/maneuvering_jets, @@ -100,4 +105,10 @@ /obj/item/rig_module/device/plasmacutter, /obj/item/rig_module/device/rcd, /obj/item/rig_module/datajack - ) \ No newline at end of file + ) + +/obj/item/weapon/rig/ert/assetprotection/antiareli + name = "Heavy Asset Protection Special Agent control module" + desc = "A heavy suit worn by the highest level of the highest level of Asset Protection, don't mess with the person wearing this. Armoured and space ready and protected against almost fucking everything" + armor = list(melee = 80, bullet = 80, laser = 80,energy = 80, bomb = 100, bio = 100, rad = 100) + siemens_coefficient= 0 diff --git a/code/modules/events/event_container_vr.dm b/code/modules/events/event_container_vr.dm index fab6cc4760..18c14d8536 100644 --- a/code/modules/events/event_container_vr.dm +++ b/code/modules/events/event_container_vr.dm @@ -70,7 +70,6 @@ new /datum/event_meta(EVENT_LEVEL_MODERATE, "Appendicitis", /datum/event/spontaneous_appendicitis, -30, list(ASSIGNMENT_MEDICAL = 30), 1), new /datum/event_meta(EVENT_LEVEL_MODERATE, "Atmos Leak", /datum/event/atmos_leak, 30, list(ASSIGNMENT_ENGINEER = 25), 1), new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Camera Damage", /datum/event/camera_damage, 20, list(ASSIGNMENT_ENGINEER = 20)), - new /datum/event_meta(EVENT_LEVEL_MODERATE, "Carp School", /datum/event/carp_migration, -20, list(ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_SECURITY = 30, ASSIGNMENT_HOS = 10, ASSIGNMENT_WARDEN = 5), 1), // Just disables comms for a short while. new /datum/event_meta(EVENT_LEVEL_MODERATE, "Communication Blackout", /datum/event/communications_blackout, 500, list(ASSIGNMENT_AI = 150, ASSIGNMENT_SECURITY = 120), 1), @@ -102,7 +101,7 @@ add_disabled_events(list( new /datum/event_meta(EVENT_LEVEL_MODERATE, "Meteor Shower", /datum/event/meteor_wave, 30, list(ASSIGNMENT_ENGINEER = 20)), new /datum/event_meta(EVENT_LEVEL_MODERATE, "Random Antagonist", /datum/event/random_antag, 2.5, list(ASSIGNMENT_SECURITY = 1), 1, 0, 5), - new /datum/event_meta(EVENT_LEVEL_MODERATE, "Carp School", /datum/event/carp_migration, 0, list(ASSIGNMENT_SECURITY = 30), 1), + new /datum/event_meta(EVENT_LEVEL_MODERATE, "Carp School", /datum/event/carp_migration, -20, list(ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_SECURITY = 30, ASSIGNMENT_HOS = 10, ASSIGNMENT_WARDEN = 5), 1), //Commenting this event out, the pod is not mapped in. //new /datum/event_meta(EVENT_LEVEL_MODERATE, "Drone Pod Drop", /datum/event/drone_pod_drop, 10, list(ASSIGNMENT_SCIENTIST = 40), 1), //Spacedust doesn't work, commenting this out. diff --git a/code/modules/events/maintenance_predator_vr.dm b/code/modules/events/maintenance_predator_vr.dm index 6aa505a2a9..b9b370f7e0 100644 --- a/code/modules/events/maintenance_predator_vr.dm +++ b/code/modules/events/maintenance_predator_vr.dm @@ -1,21 +1,6 @@ /datum/event/maintenance_predator startWhen = 1 - announceWhen = 50 - endWhen = 100 - var/announceProb = 35 - var/list/possible_mobs = list("Space Bumblebee" = /mob/living/simple_mob/vore/bee, - "Voracious Lizard" = /mob/living/simple_mob/vore/aggressive/dino, - "Giant Frog" = /mob/living/simple_mob/vore/aggressive/frog, - "Giant Rat" = /mob/living/simple_mob/vore/aggressive/rat, - "Juvenile Solargrub" = /mob/living/simple_mob/vore/solargrub, - "Red Panda" = /mob/living/simple_mob/vore/redpanda, - "Fennec" = /mob/living/simple_mob/vore/fennec, - "Fennix" = /mob/living/simple_mob/vore/fennix, - "Jelly Blob" = /mob/living/simple_mob/animal/space/jelly, - "Wolf" = /mob/living/simple_mob/animal/wolf, - "Sect Queen" = /mob/living/simple_mob/vore/sect_queen, - "Defanged Xenomorph" = /mob/living/simple_mob/vore/xeno_defanged, - ) + endWhen = 30 /datum/event/maintenance_predator/start() @@ -34,44 +19,4 @@ kill() // To prevent fake announcements return - var/datum/ghost_query/Q = new /datum/ghost_query/maints_pred() - var/list/winner = Q.query() - - if(winner.len) - var/mob/observer/dead/D = winner[1] - var/choice - var/randomize - var/finalized = "No" - - while(finalized == "No" && D.client) - choice = input(D,"What type of predator do you want to play as?") as null|anything in possible_mobs - if(!choice) - randomize = TRUE - break - - if(choice) - finalized = alert(D, "Are you sure you want to play as [choice]?","Confirmation","No","Yes") - - if(randomize) - choice = pick(possible_mobs) - - var/mobtype = possible_mobs[choice] - var/mob/living/simple_mob/newPred = new mobtype(get_turf(spawnspot)) - qdel(newPred.ai_holder) - newPred.ai_holder = null - //newPred.movement_cooldown = 0 // The "needless artificial speed cap" exists for a reason - if(D.mind) - D.mind.transfer_to(newPred) - to_chat(D, "You are [newPred], somehow having gotten aboard the station in search of food. \ - You are wary of environment around you, but you do feel rather peckish. Stick around dark, secluded places to avoid danger or, \ - if you are cute enough, try to make friends with this place's inhabitants.") - newPred.ckey = D.ckey - newPred.visible_message("[newPred] emerges from somewhere!") - else - kill() // To prevent fake announcements - return - - -/datum/event/maintenance_predator/announce() - if(prob(announceProb)) - command_announcement.Announce("Unexpected biosignature detected in the maintenance tunnels of [station_name()].", "Lifesign Alert") + new /obj/structure/ghost_pod/ghost_activated/maintpred(get_turf(spawnspot)) diff --git a/code/modules/events/morph_spawn_vr.dm b/code/modules/events/morph_spawn_vr.dm index 04b3b63898..82dfe2e2e0 100644 --- a/code/modules/events/morph_spawn_vr.dm +++ b/code/modules/events/morph_spawn_vr.dm @@ -1,8 +1,6 @@ /datum/event/morph_spawn startWhen = 1 - announceWhen = 20 endWhen = 30 - var/announceProb = 50 /datum/event/morph_spawn/start() @@ -21,31 +19,9 @@ kill() // To prevent fake announcements return - var/datum/ghost_query/Q = new /datum/ghost_query/morph() - var/list/winner = Q.query() + new /obj/structure/ghost_pod/ghost_activated/morphspawn(get_turf(spawnspot)) - if(winner.len) - var/mob/living/simple_mob/vore/hostile/morph/newMorph = new /mob/living/simple_mob/vore/hostile/morph(get_turf(spawnspot)) - var/mob/observer/dead/D = winner[1] - if(D.mind) - D.mind.transfer_to(newMorph) - to_chat(D, "You are a Morph, somehow having gotten aboard the station in your wandering. \ - You are wary of environment around you, but your primal hunger still calls for you to find prey. Seek a convincing disguise, \ - using your amorphous form to traverse vents to find and consume weak prey.") - to_chat(D, "You can use shift + click on objects to disguise yourself as them, but your strikes are nearly useless when you are disguised. \ - You can undisguise yourself by shift + clicking yourself, but disguise being switched, or turned on and off has a short cooldown. You can also ventcrawl, \ - by using alt + click on the vent or scrubber.") - newMorph.ckey = D.ckey - newMorph.visible_message("A morph appears to crawl out of somewhere.") - else - kill() // To prevent fake announcements - return - - -/datum/event/morph_spawn/announce() - if(prob(announceProb)) - command_announcement.Announce("Unknown entitity detected boarding [station_name()]. Exercise extra caution.", "Lifesign Alert", new_sound = 'sound/AI/aliens.ogg') //YW Addition: Adding named landmark for events /obj/effect/landmark/event_spawn/morphspawn - name = "morphspawn" \ No newline at end of file + name = "morphspawn" diff --git a/code/modules/food/food/snacks.dm b/code/modules/food/food/snacks.dm index db2322e1e8..60c1a6cb14 100644 --- a/code/modules/food/food/snacks.dm +++ b/code/modules/food/food/snacks.dm @@ -6055,6 +6055,40 @@ reagents.add_reagent("protein", 8) bitesize = 3 +/obj/item/weapon/reagent_containers/food/snacks/chickennoodlesoup + name = "chicken noodle soup" + gender = PLURAL + desc = "A bright bowl of yellow broth with cuts of meat, noodles and carrots." + icon = 'icons/obj/food_custom.dmi' + icon_state = "chickennoodlesoup" + filling_color = "#ead90c" + nutriment_amt = 6 + nutriment_desc = list("warm soup" = 6) + center_of_mass = list("x"=16, "y"=5) + +/obj/item/weapon/reagent_containers/food/snacks/chickennoodlesoup/Initialize() + . = ..() + reagents.add_reagent("protein", 4) + reagents.add_reagent("water", 5) + bitesize = 6 + +/obj/item/weapon/reagent_containers/food/snacks/chickennoodlesoup + name = "chicken noodle soup" + gender = PLURAL + desc = "A bright bowl of yellow broth with cuts of meat, noodles and carrots." + icon = 'icons/obj/food_custom.dmi' + icon_state = "chickennoodlesoup" + filling_color = "#ead90c" + nutriment_amt = 6 + nutriment_desc = list("warm soup" = 6) + center_of_mass = list("x"=16, "y"=5) + +/obj/item/weapon/reagent_containers/food/snacks/chickennoodlesoup/Initialize() + . = ..() + reagents.add_reagent("protein", 4) + reagents.add_reagent("water", 5) + bitesize = 6 + /obj/item/weapon/reagent_containers/food/snacks/chilicheesefries name = "chili cheese fries" gender = PLURAL @@ -6410,8 +6444,8 @@ reagents.add_reagent("protein", 2) //For meaty things. /obj/item/weapon/reagent_containers/food/snacks/gigapuddi - name = "Giga Puddi" - desc = "A large crème caramel" + name = "Astro-Pudding" + desc = "A crème caramel of astronomical size." icon = 'icons/obj/food.dmi' icon_state = "gigapuddi" trash = /obj/item/trash/plate @@ -6422,17 +6456,17 @@ bitesize = 2 /obj/item/weapon/reagent_containers/food/snacks/gigapuddi/happy - desc = "A large crème caramel made with extra love" + desc = "A crème caramel of astronomical size, made with extra love." icon = 'icons/obj/food.dmi' icon_state = "happypuddi" /obj/item/weapon/reagent_containers/food/snacks/gigapuddi/anger - desc = "A large crème caramel made with extra hate" + desc = "A crème caramel of astronomical size, made with extra hate." icon_state = "angerpuddi" - + /obj/item/weapon/reagent_containers/food/snacks/sliceable/buchedenoel name = "\improper Buche de Noel" - desc = "Merry Christmas" + desc = "Yule love it!" icon = 'icons/obj/food.dmi' icon_state = "buche" slice_path = /obj/item/weapon/reagent_containers/food/snacks/bucheslice @@ -6457,7 +6491,7 @@ /obj/item/weapon/reagent_containers/food/snacks/sliceable/turkey name = "turkey" - desc = "Tastes like chicken" + desc = "Tastes like chicken." icon = 'icons/obj/food.dmi' icon_state = "turkey" slice_path = /obj/item/weapon/reagent_containers/food/snacks/turkeyslice @@ -6475,12 +6509,12 @@ /obj/item/weapon/reagent_containers/food/snacks/turkeyslice name = "turkey drumstick" - desc = "Guaranteed vox-free" + desc = "Forsooth!" icon = 'icons/obj/food.dmi' icon_state = "turkey_drumstick" trash = /obj/item/trash/plate bitesize = 2 - + /obj/item/weapon/reagent_containers/food/snacks/sliceable/suppermatter name = "suppermatter" desc = "Extremely dense and powerful food." @@ -6554,7 +6588,7 @@ /obj/item/weapon/reagent_containers/food/snacks/omurice/face icon = 'icons/obj/food.dmi' icon_state = "omuriceface" - + /obj/item/weapon/reagent_containers/food/snacks/cinnamonbun name = "cinnamon bun" desc = "Life needs frosting!" @@ -6565,4 +6599,4 @@ /obj/item/weapon/reagent_containers/food/snacks/cinnamonbun/New() ..() reagents.add_reagent("nutriment", 8) - bitesize = 1 \ No newline at end of file + bitesize = 1 diff --git a/code/modules/food/recipes_microwave.dm b/code/modules/food/recipes_microwave.dm index 7c19a2a310..216eb0303c 100644 --- a/code/modules/food/recipes_microwave.dm +++ b/code/modules/food/recipes_microwave.dm @@ -940,6 +940,20 @@ I said no! /obj/item/weapon/reagent_containers/food/snacks/bun ) result = /obj/item/weapon/reagent_containers/food/snacks/chickenfillet + +/datum/recipe/chickennoodlesoup + fruit = list("carrot" = 1) + reagents = list("water" = 10) + items = list( /obj/item/weapon/reagent_containers/food/snacks/spagetti, /obj/item/weapon/reagent_containers/food/snacks/rawcutlet) + reagent_mix = RECIPE_REAGENT_REPLACE //Simplify end product + result = /obj/item/weapon/reagent_containers/food/snacks/chickennoodlesoup + +/datum/recipe/chickennoodlesoup + fruit = list("carrot" = 1) + reagents = list("water" = 10) + items = list( /obj/item/weapon/reagent_containers/food/snacks/spagetti, /obj/item/weapon/reagent_containers/food/snacks/rawcutlet) + reagent_mix = RECIPE_REAGENT_REPLACE //Simplify end product + result = /obj/item/weapon/reagent_containers/food/snacks/chickennoodlesoup /datum/recipe/chilicheesefries items = list( @@ -1436,4 +1450,4 @@ I said no! /obj/item/weapon/reagent_containers/food/snacks/dough ) result = /obj/item/weapon/reagent_containers/food/snacks/cinnamonbun - result_quantity = 4 \ No newline at end of file + result_quantity = 4 diff --git a/code/modules/gamemaster/event2/events/engineering/brand_intelligence.dm b/code/modules/gamemaster/event2/events/engineering/brand_intelligence.dm index 85f51df192..d3478bb333 100644 --- a/code/modules/gamemaster/event2/events/engineering/brand_intelligence.dm +++ b/code/modules/gamemaster/event2/events/engineering/brand_intelligence.dm @@ -33,8 +33,8 @@ /datum/event2/event/brand_intelligence/announce() if(prob(90)) - command_announcement.Announce("An ongoing mass upload of malware for venders has been detected onboard \the [location_name()], \ - which appears to transmit to nearby vendors. The original infected machine is believed to be \a [vender_zero].", "Vender Service Alert") + command_announcement.Announce("An ongoing mass upload of malware for vendors has been detected onboard \the [location_name()], \ + which appears to transmit to nearby vendors. The original infected machine is believed to be \a [vender_zero].", "Vendor Service Alert") /datum/event2/event/brand_intelligence/start() infect_vender(vender_zero) diff --git a/code/modules/games/cards.dm b/code/modules/games/cards.dm index ce13864e03..b3909968ba 100644 --- a/code/modules/games/cards.dm +++ b/code/modules/games/cards.dm @@ -343,7 +343,8 @@ H.update_icon() src.update_icon() usr.visible_message("\The [usr] plays \the [discarding].") - H.loc = get_step(usr,usr.dir) + H.loc = get_turf(usr) + H.Move(get_step(usr,usr.dir)) if(!cards.len) qdel(src) diff --git a/code/modules/integrated_electronics/subtypes/z_mixed_ch.dm b/code/modules/integrated_electronics/subtypes/z_mixed_ch.dm new file mode 100644 index 0000000000..6f2e243af5 --- /dev/null +++ b/code/modules/integrated_electronics/subtypes/z_mixed_ch.dm @@ -0,0 +1,127 @@ +//set_pin_data() +//This sets Data of a pin, You can use IC_INPUT to target the input side, second argument to select which input, thied Argument is the data to push +//get_pin_data() +//Same as above but fetches data instead, This literally does all the work for you. +//do:work() +//This happens when the wire is pulsed. +//pins start at 1 not 0, lists always start at 1 in this. + +//Activators (pulsing stuff) seems to work similiarly im gonna add some conditional pulsing to mine as an example +//All of the behaviour of these procs is defined in core/helpers.dm + +//push_data() makes sure any connections actually update + +/obj/item/integrated_circuit/logic/conditional + name = "conditional operator" + desc = "This operator checks a boolean and based on its state either outputs the first or second inputs value, this is also known as the ?: operator." + icon_state = "equal" + spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH + inputs = list("Condition"= IC_PINTYPE_BOOLEAN,"True","False") + outputs = list("Result" = IC_PINTYPE_ANY) + activators = list("compare" = IC_PINTYPE_PULSE_IN, "on true" = IC_PINTYPE_PULSE_OUT, "on false" = IC_PINTYPE_PULSE_OUT) + +/obj/item/integrated_circuit/logic/conditional/do_work() + pull_data() + if(get_pin_data(IC_INPUT, 1)) + set_pin_data(IC_OUTPUT, 1,get_pin_data(IC_INPUT, 2)) + activate_pin(2) + else + set_pin_data(IC_OUTPUT, 1,get_pin_data(IC_INPUT, 3)) + activate_pin(3) + return push_data() + +/obj/item/integrated_circuit/logic/boollatch + name = "boolean latch" + desc = "A boolean latch is essentially a toggle swapping between true and false on being pulsed." + icon_state = "equal" + spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH + inputs = list() + outputs = list("State" = IC_PINTYPE_BOOLEAN) + activators = list("Toggle" = IC_PINTYPE_PULSE_IN, "on true" = IC_PINTYPE_PULSE_OUT, "on false" = IC_PINTYPE_PULSE_OUT) + +/obj/item/integrated_circuit/logic/boollatch/do_work() + if(get_pin_data(IC_OUTPUT, 1)) + set_pin_data(IC_OUTPUT, 1,FALSE) + activate_pin(3) + else + set_pin_data(IC_OUTPUT, 1,TRUE) + activate_pin(2) + return push_data() + +//FIXES fr pads below because i dont want to edit the actual files, YES this removes checks for if user is close to the machine,, no they werent working anyway. +/obj/item/integrated_circuit/input/textpad/ask_for_input(mob/user) + var/new_input = input(user, "Enter some words, please.","Number pad", get_pin_data(IC_OUTPUT, 1)) as null|text + if(istext(new_input)) + set_pin_data(IC_OUTPUT, 1, new_input) + push_data() + activate_pin(1) + +/obj/item/integrated_circuit/input/numberpad/ask_for_input(mob/user) + var/new_input = input(user, "Enter a number, please.","Number pad", get_pin_data(IC_OUTPUT, 1)) as null|num + if(isnum(new_input)) + set_pin_data(IC_OUTPUT, 1, new_input) + push_data() + activate_pin(1) + +/obj/item/integrated_circuit/input/colorpad/ask_for_input(mob/user) + var/new_color = input(user, "Enter a color, please.", "Color pad", get_pin_data(IC_OUTPUT, 1)) as color|null + if(new_color) + set_pin_data(IC_OUTPUT, 1, new_color) + push_data() + activate_pin(1) + +//Racial addition for medscanner circuitry. +//Because if we die from water, probably shouldn't feed em protein shakes yknow or if you are an antag this can be useful info too + +/obj/item/integrated_circuit/input/adv_med_scanner + + name = "integrated advanced medical analyzer" + desc = "A very small version of the medibot's medical analyzer. This allows the machine to know how healthy someone is. \ + + This type is much more precise, allowing the machine to know much more about the target than a normal analyzer." + icon_state = "medscan_adv" + complexity = 12 + inputs = list("target" = IC_PINTYPE_REF) + outputs = list( + "total health %" = IC_PINTYPE_NUMBER, + "total missing health" = IC_PINTYPE_NUMBER, + "brute damage" = IC_PINTYPE_NUMBER, + "burn damage" = IC_PINTYPE_NUMBER, + "tox damage" = IC_PINTYPE_NUMBER, + "oxy damage" = IC_PINTYPE_NUMBER, + "clone damage" = IC_PINTYPE_NUMBER, + "species" = IC_PINTYPE_STRING, + "size %" = IC_PINTYPE_NUMBER + ) + activators = list("scan" = IC_PINTYPE_PULSE_IN, "on scanned" = IC_PINTYPE_PULSE_OUT) + spawn_flags = IC_SPAWN_RESEARCH + origin_tech = list(TECH_ENGINEERING = 3, TECH_DATA = 3, TECH_BIO = 4) + power_draw_per_use = 80 + +/obj/item/integrated_circuit/input/adv_med_scanner/do_work() + var/mob/living/carbon/human/H = get_pin_data_as_type(IC_INPUT, 1, /mob/living/carbon/human) + if(!istype(H)) //Invalid input + return + + if(H in view(get_turf(H))) // Like medbot's analyzer it can be used in range.. + + var/total_health = round(H.health/H.getMaxHealth(), 0.01)*100 + var/missing_health = H.getMaxHealth() - H.health + + set_pin_data(IC_OUTPUT, 1, total_health) + set_pin_data(IC_OUTPUT, 2, missing_health) + set_pin_data(IC_OUTPUT, 3, H.getBruteLoss()) + set_pin_data(IC_OUTPUT, 4, H.getFireLoss()) + set_pin_data(IC_OUTPUT, 5, H.getToxLoss()) + set_pin_data(IC_OUTPUT, 6, H.getOxyLoss()) + set_pin_data(IC_OUTPUT, 7, H.getCloneLoss()) + set_pin_data(IC_OUTPUT, 8, H.species.name) + set_pin_data(IC_OUTPUT, 9, H.size_multiplier *100) + + push_data() + activate_pin(2) + +/obj/item/device/electronic_assembly/drone + w_class = ITEMSIZE_NORMAL + max_components = IC_COMPONENTS_BASE * 6 + max_complexity = IC_COMPLEXITY_BASE * 6 \ No newline at end of file diff --git a/code/modules/library/lib_machines.dm b/code/modules/library/lib_machines.dm index 9a226b836d..bd6fe27a94 100644 --- a/code/modules/library/lib_machines.dm +++ b/code/modules/library/lib_machines.dm @@ -31,6 +31,7 @@ datum/borrowbook // Datum used to keep track of who has borrowed what when and f var/category = "Any" var/author var/SQLquery + var/list/SQLargs //CHOMPEdit TGSQL /obj/machinery/librarypubliccomp/attack_hand(var/mob/user as mob) usr.set_machine(src) @@ -44,7 +45,7 @@ datum/borrowbook // Datum used to keep track of who has borrowed what when and f \[Start Search\]
    "} if(1) establish_old_db_connection() - if(!dbcon_old.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL dat += "ERROR: Unable to contact External Archive. Please contact your system administrator for assistance.
    " else if(!SQLquery) dat += "ERROR: Malformed search request. Please contact your system administrator for assistance.
    " @@ -52,7 +53,7 @@ datum/borrowbook // Datum used to keep track of who has borrowed what when and f dat += {""} - var/DBQuery/query = dbcon_old.NewQuery(SQLquery) + var/DBQuery/query = SSdbcore.NewQuery(SQLquery, SQLargs) //CHOMPEdit TGSQL query.Execute() while(query.NextRow()) @@ -61,6 +62,7 @@ datum/borrowbook // Datum used to keep track of who has borrowed what when and f var/category = query.item[3] var/id = query.item[4] dat += "" + qdel(query) dat += "
    AUTHORTITLECATEGORYSS13BN
    [author][title][category][id]

    " dat += "\[Go Back\]
    " user << browse(dat, "window=publiclibrary") @@ -95,10 +97,16 @@ datum/borrowbook // Datum used to keep track of who has borrowed what when and f author = sanitizeSQL(author) if(href_list["search"]) SQLquery = "SELECT author, title, category, id FROM library WHERE " + SQLargs = list() //CHOMPEdit begin if(category == "Any") - SQLquery += "author LIKE '%[author]%' AND title LIKE '%[title]%'" + SQLquery += "author LIKE '%:t_author%' AND title LIKE '%:t_title%'" + SQLargs["t_author"] = author + SQLargs["t_title"] = title else - SQLquery += "author LIKE '%[author]%' AND title LIKE '%[title]%' AND category='[category]'" + SQLquery += "author LIKE CONCAT('%',:t_author,'%') AND title LIKE CONCAT('%',:t_title,'%') AND category=:t_category" + SQLargs["t_author"] = author + SQLargs["t_title"] = title + SQLargs["t_category"] = category //CHOMPEdit End screenstate = 1 if(href_list["back"]) @@ -277,13 +285,13 @@ datum/borrowbook // Datum used to keep track of who has borrowed what when and f //dat += "

    Warning: System Administrator has slated this archive for removal. Personal uploads should be taken to the NT board of internal literature.

    " //VOREStation Removal - if(!dbcon_old.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL dat += "ERROR: Unable to contact External Archive. Please contact your system administrator for assistance." else dat += {"(Order book by SS13BN)

    " + qdel(query) //CHOMPEdit TGSQL dat += "
    TITLE\[Order\]
    " dat += "
    (Return to main menu)
    " @@ -402,7 +411,7 @@ datum/borrowbook // Datum used to keep track of who has borrowed what when and f alert("This book has been rejected from the database. Aborting!") else establish_old_db_connection() - if(!dbcon_old.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL alert("Connection to Archive has been severed. Aborting.") else /* @@ -411,22 +420,24 @@ datum/borrowbook // Datum used to keep track of who has borrowed what when and f var/sqlcontent = dbcon.Quote(scanner.cache.dat) var/sqlcategory = dbcon.Quote(upload_category) */ - var/sqltitle = sanitizeSQL(scanner.cache.name) + var/list/sql_args = list("t_title" = scanner.cache.name, "t_author" = scanner.cache.author, "t_content" = scanner.cache.dat, "t_category" = upload_category) //CHOMPEdit TGSQL + /*var/sqltitle = sanitizeSQL(scanner.cache.name) CHOMPEdit TGSQL var/sqlauthor = sanitizeSQL(scanner.cache.author) var/sqlcontent = sanitizeSQL(scanner.cache.dat) - var/sqlcategory = sanitizeSQL(upload_category) - var/DBQuery/query = dbcon_old.NewQuery("INSERT INTO library (author, title, content, category) VALUES ('[sqlauthor]', '[sqltitle]', '[sqlcontent]', '[sqlcategory]')") + var/sqlcategory = sanitizeSQL(upload_category)*/ + var/DBQuery/query = SSdbcore.NewQuery("INSERT INTO library (author, title, content, category) VALUES (:t_author, :t_title, :t_content, :t_category)", sql_args) //CHOMPEdit TGSQL if(!query.Execute()) to_chat(usr,query.ErrorMsg()) else log_game("[usr.name]/[usr.key] has uploaded the book titled [scanner.cache.name], [length(scanner.cache.dat)] signs") alert("Upload Complete.") + qdel(query) //CHOMPEdit TGSQL //VOREStation Edit End if(href_list["targetid"]) var/sqlid = sanitizeSQL(href_list["targetid"]) establish_old_db_connection() - if(!dbcon_old.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL alert("Connection to Archive has been severed. Aborting.") if(bibledelay) for (var/mob/V in hearers(src)) @@ -435,7 +446,7 @@ datum/borrowbook // Datum used to keep track of who has borrowed what when and f bibledelay = 1 spawn(6) bibledelay = 0 - var/DBQuery/query = dbcon_old.NewQuery("SELECT * FROM library WHERE id=[sqlid]") + var/DBQuery/query = SSdbcore.NewQuery("SELECT * FROM library WHERE id=[sqlid]") //CHOMPEdit TGSQL query.Execute() while(query.NextRow()) @@ -451,6 +462,7 @@ datum/borrowbook // Datum used to keep track of who has borrowed what when and f B.item_state = B.icon_state src.visible_message("[src]'s printer hums as it produces a completely bound book. How did it do that?") break + qdel(query) //CHOMPEdit TGSQL if(href_list["orderbyid"]) var/orderid = input("Enter your order:") as num|null if(orderid) diff --git a/code/modules/materials/material_recipes.dm b/code/modules/materials/material_recipes.dm index ab128cc2e3..4278436a97 100644 --- a/code/modules/materials/material_recipes.dm +++ b/code/modules/materials/material_recipes.dm @@ -28,6 +28,7 @@ recipes += new/datum/stack_recipe("[display_name] fork", /obj/item/weapon/material/kitchen/utensil/fork/plastic, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE) recipes += new/datum/stack_recipe("[display_name] knife", /obj/item/weapon/material/knife/plastic, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE) recipes += new/datum/stack_recipe("[display_name] blade", /obj/item/weapon/material/butterflyblade, 6, time = 20, one_per_turf = 0, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE) + recipes += new/datum/stack_recipe("[display_name] defense wire", /obj/item/weapon/material/barbedwire, 10, time = 1 MINUTE, one_per_turf = 0, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE) /datum/material/steel/generate_recipes() ..() @@ -223,7 +224,7 @@ /datum/material/cloth/generate_recipes() recipes = list() - recipes += new/datum/stack_recipe("woven net", /obj/item/weapon/material/fishing_net, 10, time = 30 SECONDS, pass_stack_color = TRUE) + recipes += new/datum/stack_recipe("woven net", /obj/item/weapon/material/fishing_net, 10, time = 30 SECONDS, pass_stack_color = TRUE, supplied_material = "[name]") recipes += new/datum/stack_recipe("bedsheet", /obj/item/weapon/bedsheet, 10, time = 30 SECONDS, pass_stack_color = TRUE) recipes += new/datum/stack_recipe("uniform", /obj/item/clothing/under/color/white, 8, time = 15 SECONDS, pass_stack_color = TRUE) recipes += new/datum/stack_recipe("foot wraps", /obj/item/clothing/shoes/footwraps, 2, time = 5 SECONDS, pass_stack_color = TRUE) @@ -238,6 +239,7 @@ recipes += new/datum/stack_recipe("baggy pants", /obj/item/clothing/under/pants/baggy/white, 8, time = 10 SECONDS, pass_stack_color = TRUE) recipes += new/datum/stack_recipe("belt pouch", /obj/item/weapon/storage/belt/fannypack/white, 25, time = 1 MINUTE, pass_stack_color = TRUE) recipes += new/datum/stack_recipe("crude bandage", /obj/item/stack/medical/crude_pack, 1, time = 2 SECONDS, pass_stack_color = TRUE) + recipes += new/datum/stack_recipe("empty sandbag", /obj/item/stack/emptysandbag, 2, time = 2 SECONDS, pass_stack_color = TRUE, supplied_material = "[name]") /datum/material/resin/generate_recipes() recipes = list() @@ -270,3 +272,5 @@ recipes += new/datum/stack_recipe("[display_name] ring", /obj/item/clothing/gloves/ring/material, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE) recipes += new/datum/stack_recipe("[display_name] bracelet", /obj/item/clothing/accessory/bracelet/material, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE) recipes += new/datum/stack_recipe("[display_name] armor plate", /obj/item/weapon/material/armor_plating, 1, time = 20, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE) + recipes += new/datum/stack_recipe("empty sandbag", /obj/item/stack/emptysandbag, 2, time = 2 SECONDS, pass_stack_color = TRUE, supplied_material = "[name]") + recipes += new/datum/stack_recipe("whip", /obj/item/weapon/material/whip, 5, time = 15 SECONDS, pass_stack_color = TRUE, supplied_material = "[name]") diff --git a/code/modules/materials/materials.dm b/code/modules/materials/materials.dm index c93c872672..2bac6e23d0 100644 --- a/code/modules/materials/materials.dm +++ b/code/modules/materials/materials.dm @@ -1010,6 +1010,19 @@ var/list/name_to_material pass_stack_colors = TRUE supply_conversion_value = 2 +/datum/material/cloth/syncloth + name = "syncloth" + stack_origin_tech = list(TECH_MATERIAL = 3, TECH_BIO = 2) + door_icon_base = "wood" + ignition_point = T0C+532 + melting_point = T0C+600 + integrity = 200 + protectiveness = 15 // 4% + flags = MATERIAL_PADDING + conductive = 0 + pass_stack_colors = TRUE + supply_conversion_value = 3 + /datum/material/cult name = "cult" display_name = "disturbing stone" diff --git a/code/modules/materials/materials_ch.dm b/code/modules/materials/materials_ch.dm index efad561c7a..aa583c9f53 100644 --- a/code/modules/materials/materials_ch.dm +++ b/code/modules/materials/materials_ch.dm @@ -1,3 +1,15 @@ +//Red Color Fix +/datum/material/cloth_red + name = "carpet" //This is the easiest fix but god do i hate it -shark + display_name = "red" + use_name = "red cloth" + icon_colour = "#DA020A" + flags = MATERIAL_PADDING + ignition_point = T0C+232 + melting_point = T0C+300 + protectiveness = 1 // 4% + conductive = 0 + //CARPET materials /datum/material/carpet @@ -52,4 +64,4 @@ /datum/material/carpet/oracarpet name = MAT_CARPET_ORANGE icon_colour = "#D1D000" - stack_type = /obj/item/stack/tile/carpet/oracarpet \ No newline at end of file + stack_type = /obj/item/stack/tile/carpet/oracarpet diff --git a/code/modules/mob/_modifiers/modifiers_misc.dm b/code/modules/mob/_modifiers/modifiers_misc.dm index 3b9663d855..fee761cf30 100644 --- a/code/modules/mob/_modifiers/modifiers_misc.dm +++ b/code/modules/mob/_modifiers/modifiers_misc.dm @@ -426,4 +426,14 @@ the artifact triggers the rage. heat_protection = -0.5 cold_protection = -0.5 - siemens_coefficient = 1.5 \ No newline at end of file + siemens_coefficient = 1.5 + +/datum/modifier/entangled + name = "entangled" + desc = "Its hard to move." + + on_created_text = "You're caught in something! It's hard to move." + on_expired_text = "Your movement is freed." + stacks = MODIFIER_STACK_EXTEND + + slowdown = 2 diff --git a/code/modules/mob/dead/observer/observer_vr.dm b/code/modules/mob/dead/observer/observer_vr.dm index 2be0c90b80..7abad3ef09 100644 --- a/code/modules/mob/dead/observer/observer_vr.dm +++ b/code/modules/mob/dead/observer/observer_vr.dm @@ -73,4 +73,31 @@ record.last_notification = world.time to_chat(src, "New notification has been sent.") else - to_chat(src, "No mind record found!") \ No newline at end of file + to_chat(src, "No mind record found!") + +/mob/observer/dead/verb/findghostpod() //Moves the ghost instead of just changing the ghosts's eye -Nodrak + set category = "Ghost" + set name = "Find Ghost Pod" + set desc = "Find an active ghost pod" + set popup_menu = FALSE + + if(!istype(usr, /mob/observer/dead)) //Make sure they're an observer! + return + + var/input = input(usr, "Select a ghost pod:", "Ghost Jump") as null|anything in observe_list_format(active_ghost_pods) + if(!input) + to_chat(src, "No active ghost pods detected.") + return + + var/target = observe_list_format(active_ghost_pods)[input] + if (!target)//Make sure we actually have a target + return + else + var/obj/O = target //Destination mob + var/turf/T = get_turf(O) //Turf of the destination mob + + if(T && isturf(T)) //Make sure the turf exists, then move the source to that destination. + forceMove(T) + stop_following() + else + to_chat(src, "This ghost pod is not located in the game world.") \ No newline at end of file diff --git a/code/modules/mob/inventory.dm b/code/modules/mob/inventory.dm index e6a618272e..376a1fafa7 100644 --- a/code/modules/mob/inventory.dm +++ b/code/modules/mob/inventory.dm @@ -71,6 +71,15 @@ var/list/slot_equipment_priority = list( \ /mob/proc/equip_to_slot_or_del(obj/item/W as obj, slot) return equip_to_slot_if_possible(W, slot, 1, 1, 0) +//hurgh. these feel hacky, but they're the only way I could get the damn thing to work. I guess they could be handy for antag spawners too? +/mob/proc/equip_voidsuit_to_slot_or_del_with_refit(obj/item/clothing/suit/space/void/W as obj, slot, species = SPECIES_HUMAN) + W.refit_for_species(species) + return equip_to_slot_if_possible(W, slot, 1, 1, 0) + +/mob/proc/equip_voidhelm_to_slot_or_del_with_refit(obj/item/clothing/head/helmet/space/void/W as obj, slot, species = SPECIES_HUMAN) + W.refit_for_species(species) + return equip_to_slot_if_possible(W, slot, 1, 1, 0) + //Checks if a given slot can be accessed at this time, either to equip or unequip I /mob/proc/slot_is_accessible(var/slot, var/obj/item/I, mob/user=null) return 1 diff --git a/code/modules/mob/language/outsider.dm b/code/modules/mob/language/outsider.dm index 91ba6e6080..649c9814d6 100644 --- a/code/modules/mob/language/outsider.dm +++ b/code/modules/mob/language/outsider.dm @@ -154,3 +154,31 @@ key = "]" flags = RESTRICTED syllables = list("chan","ange","thi","se") + +//Bloblang. +/datum/language/blob + name = LANGUAGE_BLOB + desc = "The massive processing power of the Blob's core gives the overmind finely tuned abilities to transmit messages to nearby life-forms through chemical signals." + speech_verb = "resonates" + ask_verb = "reverberates" + exclaim_verb = "shudders" + colour = "blob" + key = "}" + machine_understands = TRUE + flags = RESTRICTED + + syllables = list("^", "˅", "-", "°", "~") + +/datum/language/corticalborer/broadcast(var/mob/living/speaker,var/message,var/speaker_mask) + + var/mob/living/simple_mob/animal/borer/B + + if(istype(speaker,/mob/living/carbon)) + var/mob/living/carbon/M = speaker + B = M.has_brain_worms() + else if(istype(speaker,/mob/living/simple_mob/animal/borer)) + B = speaker + + if(B) + speaker_mask = B.true_name + ..(speaker,message,speaker_mask) diff --git a/code/modules/mob/language/station_vr.dm b/code/modules/mob/language/station_vr.dm index f9bfecb6e6..a68a94bf25 100644 --- a/code/modules/mob/language/station_vr.dm +++ b/code/modules/mob/language/station_vr.dm @@ -101,7 +101,7 @@ colour = "changeling" key = "M" machine_understands = FALSE - flags = WHITELISTED | HIVEMIND + flags = RESTRICTED | HIVEMIND //CHOMPstation Edit: Changining from WHITELISTED to RESTRICTED | Empathy should be shadekin exclusive. This probably breaks carbon shadekins ability to use emptathy, we dont use them and if it does it should be implemented like DIONA root talk. -shark /datum/language/slavic name = LANGUAGE_SLAVIC diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index 4953ec72c3..5ca8530208 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -721,6 +721,10 @@ message = "snaps [T.his] fingers." playsound(src, 'sound/effects/fingersnap.ogg', 50, 1, -3, preference = /datum/client_preference/emote_noises) //VOREStation Add + if(prob(0.0000000001)) // CHOMPStation edit + src.say("I don't feel so good...") + sleep(5 SECONDS) + src.gib() if("swish") animate_tail_once() diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 6f9242bf85..bce7209e18 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -1338,6 +1338,8 @@ if(!O.up) found_welder = 1 if(!found_welder && nif && nif.flag_check(NIF_V_UVFILTER,NIF_FLAGS_VISION)) found_welder = 1 //VOREStation Add - NIF + if(istype(glasses, /obj/item/clothing/glasses/sunglasses/thinblindfold)) + found_welder = 1 if(!found_welder && istype(head, /obj/item/clothing/head/welding)) var/obj/item/clothing/head/welding/O = head if(!O.up) diff --git a/code/modules/mob/living/carbon/human/species/shadekin/shadekin.dm b/code/modules/mob/living/carbon/human/species/shadekin/shadekin.dm index f87970b59c..c7871db8aa 100644 --- a/code/modules/mob/living/carbon/human/species/shadekin/shadekin.dm +++ b/code/modules/mob/living/carbon/human/species/shadekin/shadekin.dm @@ -58,8 +58,6 @@ base_color = "#f0f0f0" color_mult = 1 - inherent_verbs = list(/mob/living/proc/shred_limb) - has_glowing_eyes = TRUE death_message = "phases to somewhere far away!" @@ -70,8 +68,7 @@ speech_bubble_appearance = "ghost" - genders = list(PLURAL, NEUTER) //no sexual dymorphism - ambiguous_genders = TRUE //but just in case + genders = list(MALE, FEMALE, PLURAL, NEUTER) virus_immune = 1 diff --git a/code/modules/mob/living/carbon/human/species/species_vr.dm b/code/modules/mob/living/carbon/human/species/species_vr.dm index 353946d976..7c62d02b25 100644 --- a/code/modules/mob/living/carbon/human/species/species_vr.dm +++ b/code/modules/mob/living/carbon/human/species/species_vr.dm @@ -21,6 +21,8 @@ var/icon_height = 32 var/agility = 20 //prob() to do agile things + var/list/traits = list() + /datum/species/proc/update_attack_types() unarmed_attacks = list() for(var/u_type in unarmed_types) @@ -44,3 +46,29 @@ nif.nifsofts = nifsofts else ..() +/datum/species/proc/produceCopy(var/datum/species/to_copy,var/list/traits,var/mob/living/carbon/human/H) + ASSERT(to_copy) + ASSERT(istype(H)) + + if(ispath(to_copy)) + to_copy = "[initial(to_copy.name)]" + if(istext(to_copy)) + to_copy = GLOB.all_species[to_copy] + + var/datum/species/new_copy = new to_copy.type() + + new_copy.traits = traits + + //If you had traits, apply them + if(new_copy.traits) + for(var/trait in new_copy.traits) + var/datum/trait/T = all_traits[trait] + T.apply(new_copy,H) + + //Set up a mob + H.species = new_copy + + if(H.dna) + H.dna.ready_dna(H) + + return new_copy \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/species/station/alraune.dm b/code/modules/mob/living/carbon/human/species/station/alraune.dm index 106072dc07..434fd8add6 100644 --- a/code/modules/mob/living/carbon/human/species/station/alraune.dm +++ b/code/modules/mob/living/carbon/human/species/station/alraune.dm @@ -50,10 +50,6 @@ appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR inherent_verbs = list( - /mob/living/carbon/human/proc/succubus_drain, - /mob/living/carbon/human/proc/succubus_drain_finalize, - /mob/living/carbon/human/proc/succubus_drain_lethal, - /mob/living/carbon/human/proc/bloodsuck, /mob/living/carbon/human/proc/alraune_fruit_select) //Give them the voremodes related to wrapping people in vines and sapping their fluids color_mult = 1 @@ -62,7 +58,7 @@ flesh_color = "#9ee02c" blood_color = "#edf4d0" //sap! base_color = "#1a5600" - + reagent_tag = IS_ALRAUNE blurb = "Alraunes are a rare sight in space. Their bodies are reminiscent of that of plants, and yet they share many\ @@ -401,7 +397,7 @@ if(selection) fruit_gland.fruit_type = selection verbs |= /mob/living/carbon/human/proc/alraune_fruit_pick - verbs -= /mob/living/carbon/human/proc/alraune_fruit_select + //verbs -= /mob/living/carbon/human/proc/alraune_fruit_select // Chomp Edit fruit_gland.organ_owner = src fruit_gland.emote_descriptor = list("fruit right off of [fruit_gland.organ_owner]!", "a fruit from [fruit_gland.organ_owner]!") @@ -451,7 +447,7 @@ //End of fruit gland code. -/datum/species/alraune/proc/produceCopy(var/datum/species/to_copy,var/list/traits,var/mob/living/carbon/human/H) +/datum/species/alraune/produceCopy(var/datum/species/to_copy,var/list/traits,var/mob/living/carbon/human/H) ASSERT(to_copy) ASSERT(istype(H)) @@ -477,6 +473,13 @@ new_copy.blood_mask = to_copy.blood_mask new_copy.damage_mask = to_copy.damage_mask new_copy.damage_overlays = to_copy.damage_overlays + new_copy.traits = traits + + //If you had traits, apply them + if(new_copy.traits) + for(var/trait in new_copy.traits) + var/datum/trait/T = all_traits[trait] + T.apply(new_copy,H) //Set up a mob H.species = new_copy diff --git a/code/modules/mob/living/carbon/human/species/station/blank_vr.dm b/code/modules/mob/living/carbon/human/species/station/blank_vr.dm index edcadfc1bd..84b3a6c948 100644 --- a/code/modules/mob/living/carbon/human/species/station/blank_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/blank_vr.dm @@ -32,11 +32,11 @@ num_alternate_languages = 3 assisted_langs = list(LANGUAGE_EAL, LANGUAGE_ROOTLOCAL, LANGUAGE_ROOTGLOBAL, LANGUAGE_VOX) + genders = list(MALE, FEMALE, PLURAL, NEUTER) + spawn_flags = SPECIES_CAN_JOIN appearance_flags = HAS_HAIR_COLOR | HAS_SKIN_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_EYE_COLOR - var/list/traits = list() - has_limbs = list( BP_TORSO = list("path" = /obj/item/organ/external/chest, "descriptor" = "torso"), BP_GROIN = list("path" = /obj/item/organ/external/groin, "descriptor" = "groin"), @@ -58,7 +58,7 @@ var/datum/species/real = GLOB.all_species[base_species] return real.race_key -/datum/species/custom/proc/produceCopy(var/datum/species/to_copy,var/list/traits,var/mob/living/carbon/human/H) +/datum/species/custom/produceCopy(var/datum/species/to_copy,var/list/traits,var/mob/living/carbon/human/H) ASSERT(to_copy) ASSERT(istype(H)) diff --git a/code/modules/mob/living/carbon/human/species/station/prometheans_vr.dm b/code/modules/mob/living/carbon/human/species/station/prometheans_vr.dm index 4c4be10cbd..cb0b86abe8 100644 --- a/code/modules/mob/living/carbon/human/species/station/prometheans_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/prometheans_vr.dm @@ -13,6 +13,10 @@ "Rapala", "Neaera", "Stok", "Farwa", "Sobaka", "Wolpin", "Saru", "Sparra") + spawn_flags = SPECIES_CAN_JOIN + wikilink="https://wiki.vore-station.net/Promethean" + genders = list(MALE, FEMALE, PLURAL, NEUTER) + color_mult = 1 mob_size = MOB_MEDIUM //As of writing, original was MOB_SMALL - Allows normal swapping trashcan = 1 //They have goopy bodies. They can just dissolve things within them. @@ -30,10 +34,5 @@ /mob/living/carbon/human/proc/shapeshifter_select_tail, /mob/living/carbon/human/proc/shapeshifter_select_ears, /mob/living/proc/set_size, - /mob/living/carbon/human/proc/succubus_drain, - /mob/living/carbon/human/proc/succubus_drain_finalize, - /mob/living/carbon/human/proc/succubus_drain_lethal, - /mob/living/carbon/human/proc/slime_feed, - /mob/living/proc/eat_trash, /mob/living/carbon/human/proc/promethean_select_opaqueness, ) diff --git a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_powers.dm b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_powers.dm index 138af95b25..ba4b3ee92a 100644 --- a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_powers.dm +++ b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_powers.dm @@ -176,7 +176,7 @@ to_chat(src, "Your refactoring is interrupted.") to_chat(blob, "Your refactoring is interrupted!") active_regen = FALSE - nano_outofblob() + nano_outofblob(blob) //// diff --git a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm index d705b80e88..cc5fc9cd33 100755 --- a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm +++ b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm @@ -62,6 +62,8 @@ siemens_coefficient = 1.5 //Very bad zappy times rarity_value = 5 + genders = list(MALE, FEMALE, PLURAL, NEUTER) + has_organ = list( O_BRAIN = /obj/item/organ/internal/mmi_holder/posibrain/nano, O_ORCH = /obj/item/organ/internal/nano/orchestrator, @@ -99,9 +101,7 @@ /mob/living/carbon/human/proc/shapeshifter_select_gender, /mob/living/carbon/human/proc/shapeshifter_select_wings, /mob/living/carbon/human/proc/shapeshifter_select_tail, - /mob/living/carbon/human/proc/shapeshifter_select_ears, - /mob/living/proc/eat_trash, - /mob/living/carbon/human/proc/slime_feed + /mob/living/carbon/human/proc/shapeshifter_select_ears ) var/global/list/abilities = list() @@ -173,7 +173,7 @@ H.forceMove(H.temporary_form.drop_location()) H.ckey = H.temporary_form.ckey QDEL_NULL(H.temporary_form) - + to_chat(H, "You died as a Protean. Please sit out of the round for at least 60 minutes before respawning, to represent the time it would take to ship a new-you to the station.") for(var/obj/item/organ/I in H.internal_organs) diff --git a/code/modules/mob/living/carbon/human/species/station/station.dm b/code/modules/mob/living/carbon/human/species/station/station.dm index dbf768ae9f..d290c0c42f 100644 --- a/code/modules/mob/living/carbon/human/species/station/station.dm +++ b/code/modules/mob/living/carbon/human/species/station/station.dm @@ -77,8 +77,8 @@ economic_modifier = 10 - male_scream_sound = null //CHOMPedit - female_scream_sound = null //CHOMPedit + male_scream_sound = list ('sound/effects/mob_effects/una_scream1.ogg','sound/effects/mob_effects/una_scream2.ogg') //CHOMPedit added unathi scream + female_scream_sound = list ('sound/effects/mob_effects/una_scream1.ogg','sound/effects/mob_effects/una_scream2.ogg') //CHOMPedit blurb = "A heavily reptillian species, Unathi hail from the \ Uuosa-Eso system, which roughly translates to 'burning mother'.

    Coming from a harsh, inhospitable \ diff --git a/code/modules/mob/living/carbon/human/species/station/station_special_abilities_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_special_abilities_vr.dm index 9322434b12..7db7e140b5 100644 --- a/code/modules/mob/living/carbon/human/species/station/station_special_abilities_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/station_special_abilities_vr.dm @@ -566,7 +566,7 @@ return var/mob/living/carbon/human/T = G.affecting // I must say, this is a quite ingenious way of doing it. Props to the original coders. - if(!istype(T) || T.isSynthetic()) + if(!istype(T)) to_chat(src, "\The [T] is not able to be fed.") return diff --git a/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm index 579c4314e2..bed18e0924 100644 --- a/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm @@ -25,12 +25,7 @@ inherent_verbs = list( /mob/living/carbon/human/proc/reconstitute_form, /mob/living/carbon/human/proc/sonar_ping, - /mob/living/carbon/human/proc/succubus_drain, - /mob/living/carbon/human/proc/succubus_drain_finalize, - /mob/living/carbon/human/proc/succubus_drain_lethal, - /mob/living/carbon/human/proc/bloodsuck, /mob/living/carbon/human/proc/tie_hair, - /mob/living/proc/shred_limb, /mob/living/proc/flying_toggle, /mob/living/proc/start_wings_hovering) //Xenochimera get all the special verbs since they can't select traits. @@ -60,6 +55,8 @@ spawn_flags = SPECIES_CAN_JOIN | SPECIES_IS_WHITELISTED | SPECIES_WHITELIST_SELECTABLE//Whitelisted as restricted is broken. appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR + genders = list(MALE, FEMALE, PLURAL, NEUTER) + has_organ = list( //Same organ list as tajarans. O_HEART = /obj/item/organ/internal/heart, O_LUNGS = /obj/item/organ/internal/lungs, @@ -298,7 +295,7 @@ update_xenochimera_hud(H, danger, feral_state) -/datum/species/xenochimera/proc/produceCopy(var/datum/species/to_copy,var/list/traits,var/mob/living/carbon/human/H) +/datum/species/xenochimera/produceCopy(var/datum/species/to_copy,var/list/traits,var/mob/living/carbon/human/H) ASSERT(to_copy) ASSERT(istype(H)) @@ -324,6 +321,13 @@ new_copy.blood_mask = to_copy.blood_mask new_copy.damage_mask = to_copy.damage_mask new_copy.damage_overlays = to_copy.damage_overlays + new_copy.traits = traits + + //If you had traits, apply them + if(new_copy.traits) + for(var/trait in new_copy.traits) + var/datum/trait/T = all_traits[trait] + T.apply(new_copy,H) //Set up a mob H.species = new_copy @@ -409,6 +413,8 @@ spawn_flags = SPECIES_CAN_JOIN appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR + genders = list(MALE, FEMALE, PLURAL, NEUTER) + flesh_color = "#AFA59E" //Gray-ish. Not sure if this is really needed, but eh. base_color = "#333333" //Blackish-gray blood_color = "#0952EF" //Spiders have blue blood. @@ -468,13 +474,12 @@ spawn_flags = SPECIES_IS_RESTRICTED //SPECIES_CAN_JOIN | SPECIES_IS_WHITELISTED | SPECIES_WHITELIST_SELECTABLE CHOMPedit: disabled forever appearance_flags = HAS_HAIR_COLOR | HAS_SKIN_COLOR | HAS_EYE_COLOR - inherent_verbs = list( - /mob/living/proc/shred_limb, - /mob/living/proc/eat_trash) flesh_color = "#AFA59E" base_color = "#777777" + genders = list(MALE, FEMALE, PLURAL, NEUTER) + heat_discomfort_strings = list( "Your fur prickles in the heat.", "You feel uncomfortably warm.", diff --git a/code/modules/mob/living/carbon/human/species/station/station_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_vr.dm index a0bc2e5ead..44ce2dfe45 100644 --- a/code/modules/mob/living/carbon/human/species/station/station_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/station_vr.dm @@ -40,11 +40,12 @@ spawn_flags = SPECIES_CAN_JOIN appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR - inherent_verbs = list(/mob/living/proc/shred_limb) flesh_color = "#AFA59E" base_color = "#777777" + genders = list(MALE, FEMALE, PLURAL, NEUTER) + heat_discomfort_strings = list( "Your fur prickles in the heat.", "You feel uncomfortably warm.", @@ -82,7 +83,6 @@ secondary_langs = list(LANGUAGE_SKRELLIAN) name_language = LANGUAGE_SKRELLIAN color_mult = 1 - inherent_verbs = list(/mob/living/proc/shred_limb) assisted_langs = list(LANGUAGE_EAL, LANGUAGE_ROOTLOCAL, LANGUAGE_ROOTGLOBAL, LANGUAGE_VOX) min_age = 18 @@ -106,6 +106,8 @@ primitive_form = "Sobaka" + genders = list(MALE, FEMALE, PLURAL, NEUTER) + spawn_flags = SPECIES_CAN_JOIN appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR @@ -133,7 +135,7 @@ secondary_langs = list(LANGUAGE_BIRDSONG) name_language = LANGUAGE_BIRDSONG color_mult = 1 - inherent_verbs = list(/mob/living/proc/shred_limb,/mob/living/proc/flying_toggle,/mob/living/proc/start_wings_hovering) + inherent_verbs = list(/mob/living/proc/flying_toggle,/mob/living/proc/start_wings_hovering) min_age = 18 max_age = 110 @@ -154,6 +156,8 @@ primitive_form = "Sparra" + genders = list(MALE, FEMALE, PLURAL, NEUTER) + spawn_flags = SPECIES_CAN_JOIN appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR @@ -207,6 +211,8 @@ blood_color = "#240bc4" color_mult = 1 + genders = list(MALE, FEMALE, PLURAL, NEUTER) + heat_discomfort_strings = list( "Your fur prickles in the heat.", "You feel uncomfortably warm.", @@ -231,7 +237,7 @@ // gluttonous = 1 num_alternate_languages = 3 color_mult = 1 - inherent_verbs = list(/mob/living/proc/shred_limb, /mob/living/carbon/human/proc/lick_wounds) + inherent_verbs = list(/mob/living/carbon/human/proc/lick_wounds) male_scream_sound = null //CHOMPedit female_scream_sound = null //CHOMPedit @@ -252,6 +258,8 @@ spawn_flags = SPECIES_CAN_JOIN appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR + genders = list(MALE, FEMALE, PLURAL, NEUTER) + flesh_color = "#966464" base_color = "#B43214" @@ -268,6 +276,7 @@ min_age = 18 gluttonous = 0 inherent_verbs = list(/mob/living/proc/shred_limb) + genders = list(MALE, FEMALE, PLURAL, NEUTER) descriptors = list() //CHOMPSedit: link to our wiki @@ -281,11 +290,12 @@ color_mult = 1 min_age = 18 gluttonous = 0 //Moving this here so I don't have to fix this conflict every time polaris glances at station.dm - inherent_verbs = list(/mob/living/proc/shred_limb, /mob/living/carbon/human/proc/lick_wounds) + inherent_verbs = list(/mob/living/carbon/human/proc/lick_wounds) heat_discomfort_level = 295 //Prevents heat discomfort spam at 20c //CHOMPSedit: links to our wiki wikilink="https://wiki.chompstation13.net/index.php?title=Tajaran" + genders = list(MALE, FEMALE, PLURAL, NEUTER) agility = 90 /datum/species/skrell @@ -299,11 +309,13 @@ //CHOMPedit: link to our wiki wikilink="https://wiki.chompstation13.net/index.php?title=Skrell" + genders = list(MALE, FEMALE, PLURAL, NEUTER) /datum/species/zaddat spawn_flags = SPECIES_CAN_JOIN min_age = 18 gluttonous = 0 + genders = list(MALE, FEMALE, PLURAL, NEUTER) descriptors = list() //CHOMPedit: link to our wiki @@ -320,9 +332,9 @@ /datum/species/diona spawn_flags = SPECIES_CAN_JOIN | SPECIES_IS_WHITELISTED | SPECIES_WHITELIST_SELECTABLE //CHOMPStation Edit TFF 20/1/20 - restore whitelist requirement min_age = 18 - //CHOMPedit: link to our wiki wikilink="https://wiki.chompstation13.net/index.php?title=Diona" + genders = list(MALE, FEMALE, PLURAL, NEUTER) /datum/species/teshari mob_size = MOB_SMALL //YW Edit: changed from MOB_MEDIUM to MOB_SMALL @@ -335,6 +347,7 @@ push_flags = ~HEAVY //Allows them to use micro step code. swap_flags = ~HEAVY gluttonous = 0 + genders = list(MALE, FEMALE, PLURAL, NEUTER) descriptors = list() //CHOMPedit: link to our wiki @@ -344,22 +357,21 @@ inherent_verbs = list( /mob/living/carbon/human/proc/sonar_ping, /mob/living/proc/hide, - /mob/living/proc/shred_limb, /mob/living/proc/toggle_pass_table ) /datum/species/shapeshifter/promethean spawn_flags = SPECIES_CAN_JOIN - //CHOMPedit: link to our wiki wikilink="https://wiki.chompstation13.net/index.php?title=Promethean" - + /datum/species/human color_mult = 1 icobase = 'icons/mob/human_races/r_human_vr.dmi' deform = 'icons/mob/human_races/r_def_human_vr.dmi' appearance_flags = HAS_HAIR_COLOR | HAS_SKIN_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_EYE_COLOR min_age = 18 + genders = list(MALE, FEMALE, PLURAL, NEUTER) base_color = "#EECEB3" //CHOMPedit: link to our wiki @@ -374,7 +386,6 @@ min_age = 18 icobase = 'icons/mob/human_races/r_vox_old.dmi' deform = 'icons/mob/human_races/r_def_vox_old.dmi' - inherent_verbs = list(/mob/living/proc/shred_limb, /mob/living/proc/eat_trash) descriptors = list( /datum/mob_descriptor/vox_markings = 0 ) @@ -394,6 +405,7 @@ datum/species/harpy secondary_langs = list(LANGUAGE_BIRDSONG) name_language = null color_mult = 1 + genders = list(MALE, FEMALE, PLURAL, NEUTER) inherent_verbs = list(/mob/living/proc/flying_toggle,/mob/living/proc/start_wings_hovering) min_age = 18 @@ -487,8 +499,6 @@ datum/species/harpy base_color = "#f0f0f0" color_mult = 1 - inherent_verbs = list(/mob/living/proc/shred_limb) - has_glowing_eyes = TRUE male_cough_sounds = null @@ -498,8 +508,7 @@ datum/species/harpy speech_bubble_appearance = "ghost" - genders = list(PLURAL, NEUTER) //no sexual dymorphism - ambiguous_genders = TRUE //but just in case + genders = list(MALE, FEMALE, PLURAL, NEUTER) breath_type = null poison_type = null @@ -563,6 +572,7 @@ datum/species/harpy //primitive_form = "" //We don't have fennec-monkey sprites. spawn_flags = SPECIES_IS_RESTRICTED appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR + genders = list(MALE, FEMALE, PLURAL, NEUTER) flesh_color = "#AFA59E" base_color = "#333333" @@ -605,6 +615,7 @@ datum/species/harpy spawn_flags = SPECIES_IS_RESTRICTED appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR + genders = list(MALE, FEMALE, PLURAL, NEUTER) blood_color = "#12ff12" flesh_color = "#201730" @@ -615,4 +626,3 @@ datum/species/harpy "You feel uncomfortably warm.", "Your chitin feels hot." ) - inherent_verbs = list(/mob/living/proc/shred_limb) diff --git a/code/modules/mob/living/carbon/human/species/station/traits_vr/negative.dm b/code/modules/mob/living/carbon/human/species/station/traits_vr/negative.dm index f2fb4326e7..1fa2796d0b 100644 --- a/code/modules/mob/living/carbon/human/species/station/traits_vr/negative.dm +++ b/code/modules/mob/living/carbon/human/species/station/traits_vr/negative.dm @@ -221,5 +221,5 @@ YW comment finish*/ name = "Neural Hypersensitivity" desc = "Your nerves are particularly sensitive to physical changes, leading to experiencing twice the intensity of pain and pleasure alike. Doubles traumatic shock." cost = -1 - var_changes = list("traumatic_mod" = 2) + var_changes = list("trauma_mod" = 2) //CHOMPEdit. Some dingus at virgo didn't test their stuff. Some other dingus let this get through. diff --git a/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm b/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm index 5855a0ec18..709e5f53e3 100644 --- a/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm +++ b/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm @@ -72,7 +72,7 @@ cost = 0 var_changes = list("cold_level_1" = 200, "cold_level_2" = 150, "cold_level_3" = 90, "breath_cold_level_1" = 180, "breath_cold_level_2" = 100, "breath_cold_level_3" = 60, "cold_discomfort_level" = 210, "heat_level_1" = 305, "heat_level_2" = 360, "heat_level_3" = 700, "breath_heat_level_1" = 345, "breath_heat_level_2" = 380, "breath_heat_level_3" = 780, "heat_discomfort_level" = 295, "body_temperature" = 290) excludes = list(/datum/trait/hotadapt) - + /datum/trait/hotadapt name = "Heat-Adapted" desc = "You are able to withstand much hotter temperatures than other species, and can even be comfortable in extremely hot environments. You are also more vulnerable to cold environments, and have a higher body temperature as a consequence of these adaptations." @@ -128,6 +128,7 @@ YW change end */ name = "Minor Bloodsucker" desc = "Makes you unable to gain nutrition from anything but blood. To compensate, you get fangs that can be used to drain blood from prey." cost = 0 + custom_only = FALSE var_changes = list("gets_food_nutrition" = 0) //The verb is given in human.dm excludes = list(/datum/trait/bloodsucker_plus) @@ -139,6 +140,7 @@ YW change end */ name = "Succubus Drain" desc = "Makes you able to gain nutrition from draining prey in your grasp." cost = 0 + custom_only = FALSE /datum/trait/succubus_drain/apply(var/datum/species/S,var/mob/living/carbon/human/H) ..(S,H) @@ -150,6 +152,7 @@ YW change end */ name = "Feeder" desc = "Allows you to feed your prey using your own body." cost = 0 + custom_only = FALSE /datum/trait/feeder/apply(var/datum/species/S,var/mob/living/carbon/human/H) ..(S,H) @@ -159,6 +162,7 @@ YW change end */ name = "Hard Vore" //CHOMPedit Renamed Brutal Predation to Hard Vore, because some people don't know what this actually does desc = "Allows you to tear off limbs & tear out internal organs." cost = 0 + custom_only = FALSE /datum/trait/hard_vore/apply(var/datum/species/S,var/mob/living/carbon/human/H) ..(S,H) @@ -168,6 +172,7 @@ YW change end */ name = "Trash Can" desc = "Allows you to dispose of some garbage on the go instead of having to look for a bin or littering like an animal." cost = 0 + custom_only = FALSE var_changes = list("trashcan" = 1) /datum/trait/trashcan/apply(var/datum/species/S,var/mob/living/carbon/human/H) @@ -178,6 +183,7 @@ YW change end */ name = "Expensive Taste" desc = "You only gain nutrition from raw ore and refined minerals. There's nothing that sates the appetite better than precious gems, exotic or rare minerals and you have damn fine taste. Anything else is beneath you." cost = 0 + custom_only = FALSE var_changes = list("gets_food_nutrition" = 0, "eat_minerals" = 1) /datum/trait/gem_eater/apply(var/datum/species/S,var/mob/living/carbon/human/H) @@ -188,12 +194,14 @@ YW change end */ name = "Glowing Eyes" desc = "Your eyes show up above darkness. SPOOKY! And kinda edgey too." cost = 0 + custom_only = FALSE var_changes = list("has_glowing_eyes" = 1) /datum/trait/glowing_body name = "Glowing Body" desc = "Your body glows about as much as a PDA light! Settable color and toggle in Abilities tab ingame." cost = 0 + custom_only = FALSE /datum/trait/glowing_body/apply(var/datum/species/S,var/mob/living/carbon/human/H) ..(S,H) @@ -205,36 +213,42 @@ YW change end */ name = "Extreme Spice Intolerance" desc = "Spicy (and chilly) peppers are three times as strong. (This does not affect pepperspray.)" cost = 0 + custom_only = FALSE var_changes = list("spice_mod" = 3) // 300% as effective if spice_mod is set to 1. If it's not 1 in species.dm, update this! - + /datum/trait/spice_intolerance_basic name = "Heavy Spice Intolerance" desc = "Spicy (and chilly) peppers are twice as strong. (This does not affect pepperspray.)" cost = 0 + custom_only = FALSE var_changes = list("spice_mod" = 2) // 200% as effective if spice_mod is set to 1. If it's not 1 in species.dm, update this! /datum/trait/spice_intolerance_slight name = "Slight Spice Intolerance" desc = "You have a slight struggle with spicy foods. Spicy (and chilly) peppers are one and a half times stronger. (This does not affect pepperspray.)" cost = 0 + custom_only = FALSE var_changes = list("spice_mod" = 1.5) // 150% as effective if spice_mod is set to 1. If it's not 1 in species.dm, update this! /datum/trait/spice_tolerance_basic name = "Spice Tolerance" desc = "Spicy (and chilly) peppers are only three-quarters as strong. (This does not affect pepperspray.)" cost = 0 + custom_only = FALSE var_changes = list("spice_mod" = 0.75) // 75% as effective if spice_mod is set to 1. If it's not 1 in species.dm, update this! - + /datum/trait/spice_tolerance_advanced name = "Strong Spice Tolerance" desc = "Spicy (and chilly) peppers are only half as strong. (This does not affect pepperspray.)" cost = 0 + custom_only = FALSE var_changes = list("spice_mod" = 0.5) // 50% as effective if spice_mod is set to 1. If it's not 1 in species.dm, update this! /datum/trait/spice_immunity name = "Extreme Spice Tolerance" desc = "Spicy (and chilly) peppers are basically ineffective! (This does not affect pepperspray.)" cost = 0 + custom_only = FALSE var_changes = list("spice_mod" = 0.25) // 25% as effective if spice_mod is set to 1. If it's not 1 in species.dm, update this! /*YW CHANGE START: Commented out because we got our own variants @@ -243,36 +257,42 @@ YW change end */ name = "Liver of Air" desc = "The only way you can hold a drink is if it's in your own two hands, and even then you'd best not inhale too deeply near it. Drinks are three times as strong." cost = 0 + custom_only = FALSE var_changes = list("alcohol_mod" = 3) // 300% as effective if alcohol_mod is set to 1. If it's not 1 in species.dm, update this! /datum/trait/alcohol_intolerance_basic name = "Liver of Lilies" desc = "You have a hard time with alcohol. Maybe you just never took to it, or maybe it doesn't agree with you... either way, drinks are twice as strong." cost = 0 + custom_only = FALSE var_changes = list("alcohol_mod" = 2) // 200% as effective if alcohol_mod is set to 1. If it's not 1 in species.dm, update this! /datum/trait/alcohol_intolerance_slight name = "Liver of Tulips" desc = "You have a slight struggle with alcohol. Drinks are one and a half times stronger." cost = 0 + custom_only = FALSE var_changes = list("alcohol_mod" = 1.5) // 150% as effective if alcohol_mod is set to 1. If it's not 1 in species.dm, update this! /datum/trait/alcohol_tolerance_basic name = "Liver of Iron" desc = "You can hold drinks much better than those lily-livered land-lubbers! Arr! Drinks are only three-quarters as strong." cost = 0 + custom_only = FALSE var_changes = list("alcohol_mod" = 0.75) // 75% as effective if alcohol_mod is set to 1. If it's not 1 in species.dm, update this! - + /datum/trait/alcohol_tolerance_advanced name = "Liver of Steel" desc = "Drinks tremble before your might! You can hold your alcohol twice as well as those blue-bellied barnacle boilers! Drinks are only half as strong." cost = 0 + custom_only = FALSE var_changes = list("alcohol_mod" = 0.5) // 50% as effective if alcohol_mod is set to 1. If it's not 1 in species.dm, update this! /datum/trait/alcohol_immunity name = "Liver of Durasteel" desc = "You've drunk so much that most booze doesn't even faze you. It takes something like a Pan-Galactic or a pint of Deathbell for you to even get slightly buzzed." cost = 0 + custom_only = FALSE var_changes = list("alcohol_mod" = 0.25) // 25% as effective if alcohol_mod is set to 1. If it's not 1 in species.dm, update this! // Alcohol Traits End Here. YW CHANGE STOP*/ diff --git a/code/modules/mob/living/carbon/human/species/station/traits_vr/trait.dm b/code/modules/mob/living/carbon/human/species/station/traits_vr/trait.dm index 434fc8d846..605da7e569 100644 --- a/code/modules/mob/living/carbon/human/species/station/traits_vr/trait.dm +++ b/code/modules/mob/living/carbon/human/species/station/traits_vr/trait.dm @@ -5,7 +5,8 @@ var/cost = 0 // 0 is neutral, negative cost means negative, positive cost means positive. var/list/var_changes // A list to apply to the custom species vars. var/list/excludes // Store a list of paths of traits to exclude, but done automatically if they change the same vars. - var/not_for_synths = 0 // Can freaking synths use those. + var/not_for_synths = FALSE // Can freaking synths use those. + var/custom_only = TRUE // Trait only available for custom species //Proc can be overridden lower to include special changes, make sure to call up though for the vars changes /datum/trait/proc/apply(var/datum/species/S,var/mob/living/carbon/human/H) diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index acaea0e8ca..9b4b4b6fae 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -287,6 +287,10 @@ var/global/list/damage_icon_parts = list() //see UpdateDamageIcon() if(part.transparent) //VOREStation Edit. For better slime limbs. Avoids using solid var due to limb dropping. icon_key += "_t" //VOREStation Edit. + if(istype(tail_style, /datum/sprite_accessory/tail/taur)) + if(tail_style.clip_mask) //VOREStation Edit. + icon_key += tail_style.clip_mask_state + icon_key = "[icon_key][husk ? 1 : 0][fat ? 1 : 0][hulk ? 1 : 0][skeleton ? 1 : 0]" var/icon/base_icon if(human_icon_cache[icon_key]) @@ -296,10 +300,27 @@ var/global/list/damage_icon_parts = list() //see UpdateDamageIcon() var/obj/item/organ/external/chest = get_organ(BP_TORSO) base_icon = chest.get_icon() + var/icon/Cutter = null + + if(istype(tail_style, /datum/sprite_accessory/tail/taur)) // Tail icon 'cookie cutters' are filled in where icons are preserved. We need to invert that. + if(tail_style.clip_mask) //VOREStation Edit. + Cutter = new(icon = tail_style.icon, icon_state = tail_style.clip_mask_state) + + Cutter.Blend("#000000", ICON_MULTIPLY) // Make it all black. + + Cutter.SwapColor("#00000000", "#FFFFFFFF") // Everywhere empty, make white. + Cutter.SwapColor("#000000FF", "#00000000") // Everywhere black, make empty. + + Cutter.Blend("#000000", ICON_MULTIPLY) // Black again. + for(var/obj/item/organ/external/part in organs) if(isnull(part) || part.is_stump() || part.is_hidden_by_tail()) //VOREStation Edit allowing tails to prevent bodyparts rendering, granting more spriter freedom for taur/digitigrade stuff. continue var/icon/temp = part.get_icon(skeleton) + + if((part.organ_tag in list(BP_L_LEG, BP_R_LEG, BP_L_FOOT, BP_R_FOOT)) && Cutter) + temp.Blend(Cutter, ICON_AND, x = -16) + //That part makes left and right legs drawn topmost and lowermost when human looks WEST or EAST //And no change in rendering for other parts (they icon_position is 0, so goes to 'else' part) if(part.icon_position & (LEFT | RIGHT)) diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index a8137a8a89..11158d89a1 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -181,7 +181,7 @@ ..() /mob/living/blob_act(var/obj/structure/blob/B) - if(stat == DEAD || faction == "blob") + if(stat == DEAD || faction == B.faction) return var/damage = rand(30, 40) diff --git a/code/modules/mob/living/silicon/robot/dogborg/dog_modules_yw.dm b/code/modules/mob/living/silicon/robot/dogborg/dog_modules_yw.dm index 01d74bbd14..6fbb5b65ea 100644 --- a/code/modules/mob/living/silicon/robot/dogborg/dog_modules_yw.dm +++ b/code/modules/mob/living/silicon/robot/dogborg/dog_modules_yw.dm @@ -25,6 +25,7 @@ return return +/* Not needed anymore because we have removed boozeborg from the _vr file that Yawn wanted to put it in and restored the _ch file we had for this found in /code/modules/mob/living/silicon/robot/subtypes/boozeborg_ch.dm. /mob/living/silicon/robot/proc/reskin_booze() set name = "Change Drink Color" set category = "Robot Commands" @@ -48,3 +49,4 @@ to_chat(M, "Your Tank now displays [choice]. Drink up and enjoy!") updateicon() return 1 +*/ \ No newline at end of file diff --git a/code/modules/mob/living/silicon/robot/drone/drone_items.dm b/code/modules/mob/living/silicon/robot/drone/drone_items.dm index bd608ca006..05492c798a 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone_items.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone_items.dm @@ -217,7 +217,7 @@ can_hold = list( /obj/item/mecha_parts/part, - /obj/item/mecha_parts/micro/part, //VOREStation Edit: Allow construction of micromechs, + //obj/item/mecha_parts/micro/part, //VOREStation Edit: Allow construction of micromechs //CHOMPedit commented micromech stuff, because fuck this trash /obj/item/mecha_parts/mecha_equipment, /obj/item/mecha_parts/mecha_tracking, /obj/item/mecha_parts/component diff --git a/code/modules/mob/living/silicon/robot/drone/zzz_unify_drone.dm b/code/modules/mob/living/silicon/robot/drone/zzz_unify_drone.dm new file mode 100644 index 0000000000..3ba5bb6ed1 --- /dev/null +++ b/code/modules/mob/living/silicon/robot/drone/zzz_unify_drone.dm @@ -0,0 +1,64 @@ +//The chad Drone unify code rewritten to fit into this current codebase, god here we go + + +// LAWS +/******************** Drone fucking duh ********************/ +/datum/ai_laws/jani_drone + name = "Maintence Protocols" + law_header = "Maintenance Protocols" + +/datum/ai_laws/drone/New() + add_inherent_law("Do not interfere with the maintenance work of non-drones whenever possible.") + add_inherent_law("Preserve, repair and improve the station to the best of your abilities.") + add_inherent_law("Cause no harm to the station or any crew on it.") + ..() + +/datum/ai_laws/construction_drone + name = "Construction Protocols" + law_header = "Construction Protocols" + +/datum/ai_laws/construction_drone/New() + add_inherent_law("Do not interfere with the construction work of non-drones whenever possible.") + add_inherent_law("Repair, refit and upgrade your assigned vessel.") + add_inherent_law("Prevent unplanned damage to your assigned vessel wherever possible.") + ..() + +/datum/ai_laws/mining_drone + name = "Excavation Protocols" + law_header = "Excavation Protocols" + +/datum/ai_laws/mining_drone/New() + add_inherent_law("Do not interfere with the excavation work of non-drones whenever possible.") + add_inherent_law("Provide materials for repairing, refitting, and upgrading your assigned vessel.") + add_inherent_law("Prevent unplanned damage to your assigned excavation equipment wherever possible.") + ..() + +/datum/ai_laws/security_drone + name = "Security Protocols" + law_header = "Security Protocols" + +/datum/ai_laws/security_drone/New() + add_inherent_law("Do not interfere with the security work of non-drones whenever possible.") + add_inherent_law("Provide protection to the crew and eliminate hostile lifeforms on your assigned vessel.") + add_inherent_law("Obey orders by security personnel except if they violate law 4.") + add_inherent_law("Lethal force requires a code higher than green AND orders by security to use it to authorize it.") + add_inherent_law("You must outfit yourself with a security beret.") + ..() + +//Alright lets take a look at the the scary base drone from dorne DM and mod that shit + +/mob/living/silicon/robot/drone + name = "unified drone" //Maintenance drones can be a Jani specific shell now, the normal drone will be a blank shell not really intended for use + law_type = /datum/ai_laws/drone + +/mob/living/silicon/robot/drone/jan + name = "maintenance drone" + law_type = /datum/ai_laws/jani_drone + +/mob/living/silicon/robot/drone/sec + name = "security drone" + law_type = /datum/ai_laws/security_drone + +/mob/living/silicon/robot/drone/min + name = "mining drone" + law_type = /datum/ai_laws/mining_drone \ No newline at end of file diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm b/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm index 58a5027402..9e0766ffaf 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm @@ -66,10 +66,9 @@ robot_modules["Janihound"] = /obj/item/weapon/robot_module/robot/scrubpup robot_modules["Sci-borg"] = /obj/item/weapon/robot_module/robot/science robot_modules["Pupdozer"] = /obj/item/weapon/robot_module/robot/engiedog - robot_modules["Servicehound"] = /obj/item/weapon/robot_module/robot/servicehound //YW changes robot_modules["Service-Hound"] = /obj/item/weapon/robot_module/robot/clerical/brodog robot_modules["KMine"] = /obj/item/weapon/robot_module/robot/kmine - robot_modules["BoozeHound"] = /obj/item/weapon/robot_module/robot/booze //YW Addition booze + robot_modules["BoozeHound"] = /obj/item/weapon/robot_module/robot/booze //CH Addition booze found in /code/modules/mob/living/silicon/robot/subtypes/boozeborg_ch.dm robot_modules["UnityHound"] = /obj/item/weapon/robot_module/robot/chound //CH Addition Unity return 1 @@ -191,7 +190,8 @@ "Secborg model V-2" = "secborg", "Borgi" = "borgi-sec", "Otieborg" = "oties", - "Secborg model V-3" = "SecVale" //CHOMPEdit + "Secborg model V-3" = "SecVale", //CHOMPEdit + "Drake" = "drakesec" ) channels = list("Security" = 1) networks = list(NETWORK_SECURITY) @@ -270,7 +270,8 @@ "Dark Medical Hound (Static)" = "medihounddark", "Mediborg model V-2" = "vale", "Borgi" = "borgi-medi", - "Mediborg model V-3" = "vale2" //CHOMPEdit + "Mediborg model V-3" = "vale2", //CHOMPEdit + "Drake" = "drakemed" ) /obj/item/weapon/robot_module/robot/medihound/New(var/mob/living/silicon/robot/R) @@ -403,7 +404,8 @@ sprites = list( "Custodial Hound" = "scrubpup", "Borgi" = "borgi-jani", - "Otieborg" = "otiej" + "Otieborg" = "otiej", + "Drake" = "drakejanit" ) channels = list("Service" = 1) pto_type = PTO_CIVILIAN @@ -488,7 +490,8 @@ "Research Hound" = "science", "Borgi" = "borgi-sci", "SciHound" = "scihound", - "SciHoundDark" = "scihounddark" + "SciHoundDark" = "scihounddark", + "Drake" = "drakesci" ) channels = list("Science" = 1) pto_type = PTO_SCIENCE @@ -563,7 +566,8 @@ "Borgi" = "borgi-eng", "V2 Engidog" = "thottbot", "EngiHound" = "engihound", - "EngiHoundDark" = "engihounddark" + "EngiHoundDark" = "engihounddark", + "Drake" = "drakeeng" ) channels = list("Engineering" = 1) networks = list(NETWORK_ENGINEERING) @@ -705,78 +709,6 @@ R.verbs |= /mob/living/silicon/robot/proc/rest_style ..() - -//YW changes - Addition of Servicehound start -/obj/item/weapon/robot_module/robot/servicehound - name = "service-hound module" - sprites = list( - "Pinkhound" = "k69" - ) - channels = list("Service" = 1) - can_be_pushed = 0 - -// In a nutshell, basicly service/butler robot but in dog form. -/obj/item/weapon/robot_module/robot/servicehound/New(var/mob/living/silicon/robot/R) - src.modules += new /obj/item/weapon/gripper/service(src) - src.modules += new /obj/item/weapon/reagent_containers/glass/bucket(src) - src.modules += new /obj/item/weapon/material/minihoe(src) - src.modules += new /obj/item/weapon/material/knife/machete/hatchet(src) - src.modules += new /obj/item/device/analyzer/plant_analyzer(src) - src.modules += new /obj/item/weapon/storage/bag/plants(src) - src.modules += new /obj/item/weapon/robot_harvester(src) - src.modules += new /obj/item/weapon/material/knife(src) - src.modules += new /obj/item/weapon/material/kitchen/rollingpin(src) - src.modules += new /obj/item/device/multitool(src) //to freeze trays - src.modules += new /obj/item/weapon/dogborg/jaws/small(src) - src.modules += new /obj/item/device/dogborg/boop_module(src) - src.emag = new /obj/item/weapon/dogborg/pounce(src) //Pounce - - var/datum/matter_synth/water = new /datum/matter_synth() - water.name = "Water reserves" - water.recharge_rate = 0 - water.max_energy = 1000 - water.energy = 0 - R.water_res = water - synths += water - - var/obj/item/device/dogborg/tongue/T = new /obj/item/device/dogborg/tongue(src) - T.water = water - src.modules += T - - var/obj/item/weapon/rsf/M = new /obj/item/weapon/rsf(src) - M.stored_matter = 30 - src.modules += M - - src.modules += new /obj/item/weapon/reagent_containers/dropper/industrial(src) - - var/obj/item/weapon/flame/lighter/zippo/L = new /obj/item/weapon/flame/lighter/zippo(src) - L.lit = 1 - src.modules += L - - src.modules += new /obj/item/weapon/tray/robotray(src) - src.modules += new /obj/item/weapon/reagent_containers/borghypo/service(src) - -/* // I don't know what kind of sleeper to put here, but also no need if you already have "Robot Nom" verb. - var/obj/item/device/dogborg/sleeper/K9/B = new /obj/item/device/dogborg/sleeper/K9(src) - B.water = water - src.modules += B -*/ - - R.icon = 'icons/mob/widerobot_yw.dmi' //YW edit - using yw icon files - R.hands.icon = 'icons/mob/screen1_robot_vr.dmi' - R.ui_style_vr = TRUE - R.pixel_x = -16 - R.old_x = -16 - R.default_pixel_x = -16 - R.dogborg = TRUE - R.wideborg = TRUE - R.verbs |= /mob/living/silicon/robot/proc/ex_reserve_refill - R.verbs |= /mob/living/silicon/robot/proc/robot_mount - R.verbs |= /mob/living/proc/toggle_rider_reins - R.verbs |= /mob/living/proc/shred_limb - R.verbs |= /mob/living/silicon/robot/proc/rest_style - ..() - // Uses modified K9 sprites. /obj/item/weapon/robot_module/robot/clerical/brodog name = "service-hound module" @@ -785,6 +717,7 @@ "Pinkhound" = "k69", "ServicehoundV2" = "serve2", "ServicehoundV2 Darkmode" = "servedark", + "Drake" = "drakemine" ) channels = list("Service" = 1) pto_type = PTO_CIVILIAN @@ -856,7 +789,8 @@ sprites = list( "KMine" = "kmine", "CargoHound" = "cargohound", - "CargoHoundDark" = "cargohounddark" + "CargoHoundDark" = "cargohounddark", + "Drake" = "drakemine" ) channels = list("Supply" = 1) pto_type = PTO_CARGO @@ -921,97 +855,7 @@ R.verbs -= /mob/living/silicon/robot/proc/rest_style ..() - -//YW Changes - BoozeBorg Begin - -/obj/item/weapon/robot_module/robot/booze - name = "BoozeHound robot module" - channels = list("Service" = 1) - languages = list( - LANGUAGE_SOL_COMMON = 1, - LANGUAGE_UNATHI = 1, - LANGUAGE_SIIK = 1, - LANGUAGE_AKHANI = 1, - LANGUAGE_SKRELLIAN = 1, - LANGUAGE_SKRELLIANFAR = 0, - LANGUAGE_ROOTLOCAL = 0, - LANGUAGE_TRADEBAND = 1, - LANGUAGE_GUTTER = 0, - LANGUAGE_SCHECHI = 1, - LANGUAGE_EAL = 1, - LANGUAGE_TERMINUS = 1, - LANGUAGE_SIGN = 0 - ) - - -/obj/item/weapon/robot_module/robot/booze - sprites = list( - "Beer Buddy" = "boozeborg", - "Brilliant Blue" = "boozeborg(blue)", - "Caffine Dispenser" = "boozeborg(coffee)", - "Gamer Juice Maker" = "boozeborg(green)", - "Liqour Licker" = "boozeborg(orange)", - "The Grapist" = "boozeborg(purple)", - "Vampire's Aid" = "boozeborg(red)", - "Vodka Komrade" = "boozeborg(vodka)" - ) - -/obj/item/weapon/robot_module/robot/booze/New(var/mob/living/silicon/robot/R) - src.modules += new /obj/item/weapon/gripper/service(src) - //src.modules += new /obj/item/weapon/reagent_containers/glass/bucket(src) - //src.modules += new /obj/item/weapon/material/minihoe(src) - //src.modules += new /obj/item/device/analyzer/plant_analyzer(src) - //src.modules += new /obj/item/weapon/storage/bag/plants(src) - //src.modules += new /obj/item/weapon/robot_harvester(src) - src.modules += new /obj/item/weapon/material/knife(src) - src.modules += new /obj/item/weapon/material/kitchen/rollingpin(src) - src.modules += new /obj/item/device/multitool(src) //to freeze trays - src.modules += new /obj/item/weapon/dogborg/jaws/small(src) - src.modules += new /obj/item/weapon/tray/robotray - src.modules += new /obj/item/device/dogborg/boop_module(src) - src.modules += new /obj/item/device/dogborg/sleeper/compactor/brewer(src) - src.emag = new /obj/item/weapon/dogborg/pounce(src) - R.verbs += /mob/living/silicon/robot/proc/reskin_booze - - var/obj/item/weapon/rsf/M = new /obj/item/weapon/rsf(src) - M.stored_matter = 30 - src.modules += M - - src.modules += new /obj/item/weapon/reagent_containers/dropper/industrial(src) - - var/obj/item/weapon/flame/lighter/zippo/L = new /obj/item/weapon/flame/lighter/zippo(src) - L.lit = 1 - src.modules += L - - src.modules += new /obj/item/weapon/tray/robotray(src) - src.modules += new /obj/item/weapon/reagent_containers/borghypo/service(src) - src.emag = new /obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer(src) - - var/datum/reagents/N = new/datum/reagents(50) - src.emag.reagents = N - N.my_atom = src.emag - N.add_reagent("beer2", 50) - src.emag.name = "Mickey Finn's Special Brew" - - R.icon = 'icons/mob/widerobot_colors_vr.dmi' - R.hands.icon = 'icons/mob/screen1_robot_vr.dmi' - R.ui_style_vr = TRUE - R.pixel_x = -16 - R.old_x = -16 - R.default_pixel_x = -16 - R.dogborg = TRUE - R.wideborg = TRUE - R.verbs |= /mob/living/silicon/robot/proc/ex_reserve_refill - ..() - -/obj/item/weapon/robot_module/robot/booze/respawn_consumable(var/mob/living/silicon/robot/R, var/amount) - var/obj/item/weapon/reagent_containers/food/condiment/enzyme/E = locate() in src.modules - E.reagents.add_reagent("enzyme", 2 * amount) - if(src.emag) - var/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer/B = src.emag - B.reagents.add_reagent("beer2", 2 * amount) - -// YW Changes - Boozeborg end +//Boozeborg stuff found in /code/modules/mob/living/silicon/robot/subtypes/boozeborg_ch.dm // CH Changes - Unity Hound begin /obj/item/weapon/robot_module/robot/chound diff --git a/code/modules/mob/living/silicon/robot/robot_modules/syndicate.dm b/code/modules/mob/living/silicon/robot/robot_modules/syndicate.dm index 7c6f22d6b9..fe39040432 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/syndicate.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/syndicate.dm @@ -37,6 +37,12 @@ src.modules += new /obj/item/weapon/pinpointer/shuttle/merc(src) src.modules += new /obj/item/weapon/melee/energy/sword(src) + var/datum/matter_synth/cloth = new /datum/matter_synth/cloth(40000) + synths += cloth + + var/obj/item/stack/sandbags/cyborg/SB = new /obj/item/stack/sandbags/cyborg(src) + SB.synths += list(cloth) + var/jetpack = new/obj/item/weapon/tank/jetpack/carbondioxide(src) src.modules += jetpack R.internals = jetpack diff --git a/code/modules/mob/living/silicon/robot/robot_vr.dm b/code/modules/mob/living/silicon/robot/robot_vr.dm index 21011e84c7..7cdc39e0d5 100644 --- a/code/modules/mob/living/silicon/robot/robot_vr.dm +++ b/code/modules/mob/living/silicon/robot/robot_vr.dm @@ -141,8 +141,11 @@ to_chat(cleaned_human, "[src] cleans your face!") /mob/living/silicon/robot/proc/vr_sprite_check() - if(wideborg == TRUE) + if(custom_sprite == TRUE) return + if(wideborg == TRUE) + if(icontype== "Drake") // Why, Why can't we have normal nice things + icon = 'icons/mob/drakeborg/drakeborg_vr.dmi' if((!(original_icon == icon)) && (!(icon == 'icons/mob/robots_vr.dmi'))) original_icon = icon if((icon_state in vr_icons) && (icon == 'icons/mob/robots.dmi')) diff --git a/code/modules/mob/living/silicon/robot/subtypes/boozeborg_ch.dm b/code/modules/mob/living/silicon/robot/subtypes/boozeborg_ch.dm index fe3c5054b7..87db066c81 100644 --- a/code/modules/mob/living/silicon/robot/subtypes/boozeborg_ch.dm +++ b/code/modules/mob/living/silicon/robot/subtypes/boozeborg_ch.dm @@ -99,7 +99,7 @@ What Borgs are available is sadly handled in the above file in the proc src.emag.name = "Mickey Finn's Special Brew" R.can_buckle = 1 - R.icon = 'icons/mob/widerobot_colors_vr.dmi' + R.icon = 'icons/mob/widerobot_colors_ch.dmi' R.hands.icon = 'icons/mob/screen1_robot_vr.dmi' R.ui_style_vr = TRUE R.pixel_x = -16 diff --git a/code/modules/mob/living/simple_animal/aliens/synx.dm b/code/modules/mob/living/simple_animal/aliens/synx.dm index 3e9f206d8b..e3f8ce5a7a 100644 --- a/code/modules/mob/living/simple_animal/aliens/synx.dm +++ b/code/modules/mob/living/simple_animal/aliens/synx.dm @@ -796,12 +796,12 @@ prob(50);/mob/living/simple_mob/animal/synx/ai,) //normal eel boyo. //////////////////////////////////////////////////////////////////////////// -//////////////////////////NOT A SYNX///////but looks kinda like one///////// +//////////////////////////NOT A SYNX///////but acts kinda like one///////// //////////////////////////////////////////////////////////////////////////// /* Content relating to the SCP Foundation, including the SCP Foundation logo, is licensed under Creative Commons Sharealike 3.0 and all concepts originate from http://www.scp-wiki.net and its authors. -This includes the sprites of the below Mob which are based upon SCP 939 and sprited by Riviera (not added yet) +This includes the sprites of the below Mob which are based upon SCP 939. */ //SCP-939 //sprites to be made. @@ -828,12 +828,15 @@ This includes the sprites of the below Mob which are based upon SCP 939 and spri name = "Unknown" desc = "It's a red canine looking creature." tt_desc = "Unknown Alien Lifeform" + + poison_chance = 0 //no poison, ai_holder_type = /datum/ai_holder/simple_mob/scp say_list_type = /datum/say_list/malf_drone - //icon_state = "scp_living" - //icon_living = "scp_living" - //icon_dead = "scp_dead" + icon = 'icons/mob/synxmanyvoices.dmi' + icon_state = "939_living" + icon_living = "939_living" + icon_dead = "939_dead" #undef SYNX_LOWER_DAMAGE -#undef SYNX_UPPER_DAMAGE \ No newline at end of file +#undef SYNX_UPPER_DAMAGE diff --git a/code/modules/mob/living/simple_mob/simple_mob_vr.dm b/code/modules/mob/living/simple_mob/simple_mob_vr.dm index ef631fa897..853848b83d 100644 --- a/code/modules/mob/living/simple_mob/simple_mob_vr.dm +++ b/code/modules/mob/living/simple_mob/simple_mob_vr.dm @@ -4,7 +4,9 @@ #define SA_ICON_REST 0x04 /mob/living/simple_mob - base_attack_cooldown = 15 + melee_attack_delay = 1 + base_attack_cooldown = 10 + melee_miss_chance = 25 var/temperature_range = 40 // How close will they get to environmental temperature before their body stops changing its heat diff --git a/code/modules/mob/living/simple_mob/subtypes/blob/blob.dm b/code/modules/mob/living/simple_mob/subtypes/blob/blob.dm index 44ab4fdd09..752211812d 100644 --- a/code/modules/mob/living/simple_mob/subtypes/blob/blob.dm +++ b/code/modules/mob/living/simple_mob/subtypes/blob/blob.dm @@ -50,9 +50,13 @@ /mob/living/simple_mob/blob/blob_act(obj/structure/blob/B) if(!overmind && B.overmind) overmind = B.overmind + faction = B.overmind.blob_type.faction update_icon() - if(stat != DEAD && health < maxHealth) + if(faction != B.faction && B.overmind) + adjustBruteLoss(rand(B.overmind.blob_type.damage_lower, B.overmind.blob_type.damage_upper)) + + else if(stat != DEAD && health < maxHealth) adjustBruteLoss(-maxHealth*0.0125) adjustFireLoss(-maxHealth*0.0125) @@ -73,7 +77,7 @@ for(var/obj/item/I in items) if(istype(I, /obj/item/weapon/blobcore_chunk)) var/obj/item/weapon/blobcore_chunk/BC = I - if(!overmind || (BC.blob_type && overmind.blob_type.type == BC.blob_type.type)) + if(!overmind || (BC.blob_type && overmind.blob_type.type == BC.blob_type.type) || BC.blob_type.faction == faction) ally = TRUE break diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot.dm index 667c514f0b..01c75d6119 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot.dm @@ -32,7 +32,7 @@ s.start() qdel(src) -// The hivebot's default projectile. +// The hivebot's default projectile. //CHOMP Edit this is no longer actually used by ranged_damage.dm for the hivebot. Hivebot now uses custom 22 long rifle. /obj/item/projectile/bullet/hivebot damage = 10 damage_type = BRUTE @@ -52,4 +52,4 @@ pointblank = TRUE conserve_ammo = TRUE firing_lanes = TRUE - can_flee = FALSE // Fearless dumb machines. \ No newline at end of file + can_flee = FALSE // Fearless dumb machines. diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm index f2b814e8a5..493cb9c08d 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm @@ -3,7 +3,7 @@ /mob/living/simple_mob/mechanical/hivebot/ranged_damage maxHealth = 2 LASERS_TO_KILL // 60 health health = 2 LASERS_TO_KILL - projectiletype = /obj/item/projectile/bullet/hivebot + projectiletype = /obj/item/projectile/bullet/a22lr //CHOMP Edit No longer uses Hivebot bullet. This is a 22 long rifle bullet now. // The regular ranged hivebot, that fires somewhat weak projectiles. /mob/living/simple_mob/mechanical/hivebot/ranged_damage/basic @@ -153,4 +153,4 @@ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/siege/fragmentation name = "anti-personnel artillery hivebot" desc = "A large robot capable of delivering fragmentation shells to rip apart their fleshy enemies." - projectiletype = /obj/item/projectile/arc/fragmentation \ No newline at end of file + projectiletype = /obj/item/projectile/arc/fragmentation diff --git a/code/modules/mob/living/simple_mob/subtypes/metroid/metTypes.dm b/code/modules/mob/living/simple_mob/subtypes/metroid/metTypes.dm index e638d67585..1da1a6ffef 100644 --- a/code/modules/mob/living/simple_mob/subtypes/metroid/metTypes.dm +++ b/code/modules/mob/living/simple_mob/subtypes/metroid/metTypes.dm @@ -34,7 +34,7 @@ GLOBAL_VAR_INIT(queen_amount, 0) //We only gonna want 1 queen in the world. vore_default_mode = DM_HOLD vore_digest_chance = 1 //Chance to switch to digest mode if resisted vore_absorb_chance = 0 - vore_escape_chance = 10 //Chance to escape if resisted. + vore_escape_chance = 2 //Chance to escape if resisted. /datum/ai_holder/simple_mob/jellybrig hostile = FALSE // The majority of simplemobs are hostile, jellybrig is nice. diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander_ch.dm b/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander_ch.dm index a6f675a96c..d1503a7a47 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander_ch.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander_ch.dm @@ -1,7 +1,8 @@ /mob/living/simple_mob/vore/leopardmander name = "leopardmander" desc = "A huge salamander-like drake. They are best known for their rarity, their voracity, their very potent paralyzing venom, and their healing stomach. This one is white." - tt_desc = "Draconis Va'aen" + catalogue_data = list(/datum/category_item/catalogue/fauna/leopardmander) + tt_desc = "S Draconis uncia" icon = 'icons/mob/vore128x64_ch.dmi' icon_dead = "leopardmander-dead" icon_living = "leopardmander" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/otie.dm b/code/modules/mob/living/simple_mob/subtypes/vore/otie.dm index bf8387ffc2..af2d00404e 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/otie.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/otie.dm @@ -81,6 +81,13 @@ max_n2 = 0 has_eye_glow = TRUE +/mob/living/simple_mob/otie/feral/chubby + name = "chubby mutated feral otie" + desc = "The classic bioengineered longdog. No pets. Only bite. This one has mutated from too much time out on the surface of Virgo-3B. What an absolute unit." + icon_state = "photiec" + icon_living = "photiec" + icon_rest = "photiec_rest" + /mob/living/simple_mob/otie/red name = "feral red otie" desc = "Seems this ominous looking longdog has been infused with wicked infernal forces." @@ -109,6 +116,15 @@ faction = "neutral" tamed = 1 +/mob/living/simple_mob/otie/red/chubby //gets the pet2tame feature and doesn't kill you right away + name = "chubby red otie" + desc = "Seems this ominous looking longdog has been infused with wicked infernal forces. What an absolute unit." + icon_state = "hotiec" + icon_living = "hotiec" + icon_rest = "hotiec_rest" + faction = "neutral" + tamed = 1 + /mob/living/simple_mob/otie/friendly //gets the pet2tame feature and doesn't kill you right away name = "otie" desc = "The classic bioengineered longdog. This one might even tolerate you!" @@ -158,7 +174,7 @@ /mob/living/simple_mob/otie/security //tame by default unless you're a marked crimester. can be befriended to follow with pets tho. name = "guard otie" - desc = "The VARMAcorp bioengineering division flagship product on trained optimal snowflake guard dogs." + desc = "The VARMAcorp bioengineering division flagship product on big mean guard dogs." icon_state = "sotie" icon_living = "sotie" icon_rest = "sotie_rest" @@ -176,7 +192,7 @@ /mob/living/simple_mob/otie/security/chubby name = "chubby guard otie" - desc = "The VARMAcorp bioengineering division flagship product on trained optimal snowflake guard dogs. What an absolute unit." + desc = "The VARMAcorp bioengineering division flagship product on big mean guard dogs. What an absolute unit." icon_state = "fsotie" icon_living = "fsotie" icon_rest = "fsotie_rest" @@ -184,7 +200,7 @@ /mob/living/simple_mob/otie/security/phoron name = "mutated guard otie" - desc = "An extra rare phoron resistant version of the VARMAcorp trained snowflake guard dogs for infernal environments." + desc = "An extra rare phoron resistant version of the VARMAcorp trained guard dogs adapted for hostile environments." tt_desc = "Otus phoronis" icon_state = "secphotie" icon_living = "secphotie" @@ -201,7 +217,7 @@ /mob/living/simple_mob/otie/security/phoron/red name = "red guard otie" - desc = "An ominous looking version of the VARMAcorp trained snowflake guard dogs." + desc = "An ominous looking version of the big mean VARMAcorp guard dogs." tt_desc = "Otus infernalis" icon_state = "sechotie" icon_living = "sechotie" @@ -209,6 +225,13 @@ icon_dead = "sechotie-dead" maxbodytemp = 1000 +/mob/living/simple_mob/otie/security/phoron/red/chubby + name = "chubby red guard otie" + desc = "An ominous looking version of the big mean VARMAcorp guard dogs. What an absolute unit." + icon_state = "hotiesc" + icon_living = "hotiesc" + icon_rest = "hotiesc_rest" + /mob/living/simple_mob/otie/attackby(var/obj/item/O, var/mob/user) // Trade donuts for bellybrig victims. if(istype(O, /obj/item/weapon/reagent_containers/food)) qdel(O) diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/plants_ch/pitcher.dm b/code/modules/mob/living/simple_mob/subtypes/vore/plants_ch/pitcher.dm index af2a0dc214..4d1a78545a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/plants_ch/pitcher.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/plants_ch/pitcher.dm @@ -159,7 +159,7 @@ GLOBAL_LIST_INIT(pitcher_plant_lure_messages, list( return if(fruit) if(nutrition >= PITCHER_SATED + NUTRITION_PITCHER) - var/turf/T = safepick(circleviewturfs(src, 2)) //Try this if the above doesn't work, add src.loc == T check to density check + var/turf/T = safepick(circleviewturfs(src, 2)) if(T.density) //No spawning in walls return else if(src.loc ==T) diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/rakshasa_abilities.dm b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/rakshasa_abilities.dm index 9fc362e4b9..fb93f1609c 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/rakshasa_abilities.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/rakshasa_abilities.dm @@ -305,7 +305,6 @@ //Cosmetics mostly flick("tp_in",src) - custom_emote(1,"phases in!") sleep(5) //The duration of the TP animation canmove = original_canmove @@ -324,7 +323,6 @@ //Shifting out else ability_flags |= AB_PHASE_SHIFTED - custom_emote(1,"phases out!") real_name = name name = "Something" @@ -343,4 +341,4 @@ canmove = original_canmove incorporeal_move = TRUE density = FALSE - force_max_speed = TRUE \ No newline at end of file + force_max_speed = TRUE diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/types_ch.dm b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/types_ch.dm index 833ab20ea4..2dbc855754 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/types_ch.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/types_ch.dm @@ -13,30 +13,30 @@ ///mob/living/simple_animal/shadekin/red //then we simply add our shadekins name at the end (unless its used already) /mob/living/simple_mob/shadekin/red/proto - name ="Proto" + name ="Proto" //This here will be our shadekins name - - desc = "An invisible entity not meant for use." + + desc = "An invisible entity not meant for use." //here goes a lil tidbit people can see when examining the shadekin. Multiple lines works just as on the vore part - - icon_state = "proto" + + icon_state = "proto" //this will most likely also be your shadekins name, it corresponds to the name you gave the tail and body state in the DMIs //so if you named the body state "proto" and "proto-1" then icon_state should be called "proto" - + vore_stomach_flavor = "You stared into the void,\ the void decided you look tasty,\ now you are in the void, pretty wet" //This is what people see when they drop into your gut! the backslashes at the end of the sentence indicate the next text will be on its own line! - - - player_msg = "Proto is you, Proto shouldn't exist" + + + player_msg = "Proto is you, Proto shouldn't exist" //This message pops up when you are put into your shadekin //I recommend you use it as a way to remind yourself of how you want to act generally as your shadekin. - + //Step 3; PR // Assuming you already have a Fork of chompstation, make sure you got your files in order // and then simply make a new pull request to our github. - + //Now once you pushed the new DMIs with your added sprites to our github. //And you finished writing this code section for your shadekin and pushed that too. You are done. //If this is your first time I recommend getting someone to look over your work. @@ -48,7 +48,7 @@ //"Hunger." - Rakshasa /mob/living/simple_mob/shadekin/red/rakshasa name ="Rakshasa" - desc = "A scary, black shadekin? Thier body oozes like goop." + desc = "A scary, black shadekin? Their body oozes like goop." icon_state = "rakshasa" vore_stomach_flavor = "You're floating in a warm, viscous goop, too dark to see. \ Your efforts to find light have failed. Darkness consumes you. \ @@ -155,3 +155,15 @@ eye_desc = "soft green eyes" // vore_stomach_flavor = "" player_msg = "You are Softpatch, you like things that are soft and are curious about the beings in realspace" + +//"Marr marr marr-marr maaarr marr?~ (Ever had your ass eaten by a shadekin before?~)" - Yrmir (Shadowfire117) +/mob/living/simple_mob/shadekin/orange/yrmir + name = "Green and black shadekin" //Name is Yrmir and known only to other shadekins he talks to, he doesn't speak common to any degree so far + desc = "An orange eyed shadekin, this one has a very dark coat with several spots with faintly glowing green patches of fur. \ + Said fur looks quite soft and warm with it filling out a bit, a closer look tells its a slim upper body while rump, hips and thighs are nice and filled out well. \ + While he may have a more padded out builed below, the masculine part of them is quite visible as a large fat furred sack and sheath rests comfortably between his thighs and on his crotch. \ + From the way he looks at you, you get the feeling he is possibly scheming something fun, at least for himself." + icon_state = "yrmir" + eye_desc = "glimmering orange eyes" +// vore_stomach_flavor = "" + player_msg = "You are Yrmir, an orange shadekin with interest in revelry, trickery and pleasures. Mostly for you but to a degree to the willing and unwilling that interest you." \ No newline at end of file diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/slug_ch.dm b/code/modules/mob/living/simple_mob/subtypes/vore/slug_ch.dm new file mode 100644 index 0000000000..1114303d96 --- /dev/null +++ b/code/modules/mob/living/simple_mob/subtypes/vore/slug_ch.dm @@ -0,0 +1,255 @@ +//Passive vore slug. This mob is intended to be annoying but harmless to anybody it can't eat. + +/mob/living/simple_mob/vore/slug + name = "slug" + desc = "A giant, cold-tolerant slug. It seems excessively passive." + catalogue_data = list(/datum/category_item/catalogue/fauna/slug) + tt_desc = "S Arion hortensis" + icon = 'icons/mob/vore_ch.dmi' + icon_dead = "slug-dead" + icon_living = "slug" + icon_state = "slug" + faction = "slug" //A faction other than neutral is necessary to get the slug to try eating station crew. + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + melee_damage_lower = 0 + melee_damage_upper = 1 //Not intended to pose any sort of threat outside of vore. Other code should stop it from ever attacking but this is an extra safety check. + friendly = list("blinks at") + response_help = "pokes" + response_disarm = "prods" + response_harm = "punches" + movement_cooldown = 40 //I guess you could call this a SNAIL'S PACE. + maxHealth = 500 + health = 500 + attacktext = list("headbutted") + minbodytemp = 80 + ai_holder_type = /datum/ai_holder/simple_mob/passive/slug_ch + vore_icons = SA_ICON_LIVING + armor = list( + "melee" = 98, + "bullet" = 0, + "laser" = -50, + "energy" = -50, + "bomb" = 0, + "bio" = 0, + "rad" = 100) //Relatively harmless but agonizing to kill with melee. + + glow_toggle = TRUE + glow_range = 1.3 //This seems to be the minimum range which makes glow visible. + glow_color = "#33ccff" //Same glow color as Sif trees. + glow_intensity = 1 + + + var/list/my_slime = list() + var/slime_max = 35 //With a slug which moves once every 10 seconds and a 5 minute delete timer, this should never exceed 30. + var/mob/living/vore_memory = null + +/mob/living/simple_mob/vore/slug //I guess separating the vore variables is a little more organized? + vore_bump_chance = 100 //Always attempt a bump nom if possible... + vore_bump_emote = "knocks over and begins slowly engulfing" + vore_active = 1 + vore_icons = 1 + vore_capacity = 1 + vore_pounce_chance = 100 //...while this should make bump noms always knock the target over. Passive AI meanwhile should mean this never affects combat since it doesn't fight back. + vore_ignores_undigestable = 0 + swallowTime = 100 //10 seconds. Easy to crawl away from when knocked over. + vore_default_mode = DM_DIGEST + +/mob/living/simple_mob/vore/slug/init_vore() + ..() + var/obj/belly/B = vore_selected + B.desc = "Somehow you remained still just long enough for the slug to wrap its radula around your body and gradually draw you into its pharynx. The slug moves with agonizing slowness and devours prey at a snail's pace; inch by inch you're crammed down its gullet and squishes and squeezed into the slug's gizzard. Thick walls bear down, covered with shallow, toothy ridges. The slimy moss in here suggests you're not the slug's diet but the gizzard seems intent on churning and scraping over you regardless..." + B.digest_burn = 0.1 + B.digest_brute = 0.2 + B.vore_verb = "engulf" + B.name = "gizzard" + B.mode_flags = DM_FLAG_THICKBELLY + B.escapechance = 5 + B.fancy_vore = 1 + B.vore_sound = "Squish2" + B.release_sound = "Pred Escape" + B.contamination_color = "cyan" + B.contamination_flavor = "Wet" + + + B.emote_lists[DM_DIGEST] = list( + "The toothy walls scrape and grind against your body.", + "The humid air feels thick and heavy, stinging faintly with each breath.", + "Heavy slime oozes over you, making it difficult to move." + ) //Why do so many vore mobs have endo emotes despite being digest only? + +/datum/category_item/catalogue/fauna/slug + name = "Sivian Fauna - Moss Slug" + desc = "Classification: S Arion hortensis\ +

    \ + A large herbivorous slug commonly spotted near northern waterways with abundant moss. The slug is remarkably resistant to blunt trauma despite its fleshy body due to a foul-tasting outer casing \ + of thick, mucus-filled tissue protecting the more vulnerable musculature beneath. Said mucus is a natural irritant and hardens rapidly in contact with air, sealing wounds and allowing the slug to shrug off most surface injuries. \ + Few predators exist for the Sivian slug due to the stinging slime's tendency to adhere to attacking claws and appendages.\ +

    \ + The Sivian slug is typically regarded as a pest due to the animal's large bulk and tendency to crush weak structures in its path. Most tools do little to dissuade the creature, forcing homesteads to rely on firearms or reinforced fencing \ + with a slippery coating the slug cannot stick to. While subsisting primarily on Sivian moss, the slug is an opportunistic predator known to eat small fauna which wander into its path. The slime excreted from the slug's foot is particularly sticky and capable of miring small animals. The Sivian slug glows faintly due to colonies bioluminescent bacteria present in its diet." + value = CATALOGUER_REWARD_EASY + +/mob/living/simple_mob/vore/slug/proc/spread_slime() + if(my_slime.len >= slime_max) + return + if(istype(get_turf(src), /turf/simulated/floor/water)) //Important to stop my_slime from filling with null entries in water. + return + var/obj/effect/slug_glue/G = new /obj/effect/slug_glue/(get_turf(src)) + G.my_slug = src + my_slime += G + +/mob/living/simple_mob/vore/slug/death() + ..() + for(var/obj/effect/slug_glue/G in my_slime) + G.my_slug = null + my_slime -= G //No point in keeping these loaded in the list when the slug dies if somehow the list sticks around after death. + +/mob/living/simple_mob/vore/slug/Moved() + . = ..() + spread_slime() + +/mob/living/simple_mob/vore/slug/do_attack(atom/A, turf/T) //Override of attack proc to ensure the slug can only attempt to eat people, not harm them. Inability to actually hurt anybody is intended, otherwise this mob wouldn't have 98 melee armor. + if(ckey) //If we're player controlled, use the default attack code. + return ..() + if(istype(A, /mob/living) && !will_eat(A)) + ai_holder.lose_target() //Ignore anybody we can't eat. + return + else //This is the parent do_attack() code for determining whether or not attacks can hit. + face_atom(A) + var/missed = FALSE + if(!isturf(A) && !(A in T) ) // Turfs don't contain themselves so checking contents is pointless if we're targeting a turf. + missed = TRUE + else if(!T.AdjacentQuick(src)) + missed = TRUE + + if(missed) // Most likely we have a slow attack and they dodged it or we somehow got moved. + add_attack_logs(src, A, "Animal-attacked (dodged)", admin_notify = FALSE) + playsound(src, 'sound/rakshasa/Decay1.ogg', 75, 1) + visible_message(span("warning", "\The [src] misses.")) + return FALSE + tryBumpNom(A) //Meant for bump noms but this works as intended here and has sanity checks. + +/mob/living/simple_mob/vore/slug/perform_the_nom(mob/living/user, mob/living/prey, mob/living/pred, obj/belly/belly, delay) + ..() + vore_memory = prey + +/datum/ai_holder/simple_mob/passive/slug_ch + wander = TRUE + base_wander_delay = 7 + wander_when_pulled = TRUE + vision_range = 10 + can_flee = FALSE //Otherwise it'll run as soon as it gets a target. + +/obj/effect/slug_glue + name = "liquid" + desc = "This looks wet." + icon = 'icons/effects/effects_ch.dmi' + icon_state = "wet_turf" + opacity = 0 + mouse_opacity = 0 //Unclickable + anchored = 1 + density = 0 + can_buckle = 1 + buckle_lying = TRUE + + var/persist_time = 5 MINUTES //How long until we cease existing. + var/mob/living/simple_mob/vore/slug/my_slug = null //This should be set by the slug. + var/turf/my_turf = null //The turf we spawn on. + var/base_escape_time = 1 MINUTE //How long does it take to struggle free? Affected by the victim's size_multiplier. + +/obj/effect/slug_glue/New() + ..() + dissipate() + my_turf = get_turf(src) + if(istype(my_turf, /turf/simulated/floor/water)) //Aside from not making sense in water, this prevents drowning. + qdel(src) +/* for(var/obj/effect/slug_glue/G in my_turf.contents) + if(G == src) + continue + else + qdel(G) //Prevent glue layering +*/ //Not including this due to performance concerns but keeping as comments for reference. + +/obj/effect/slug_glue/proc/dissipate() //When spawned, set a timer to despawn. + if(!persist_time) + qdel(src) + return + else + spawn(persist_time) //I used sleep() here first and it made the slug sleep for 5 minutes when spawning glue. Byond. + qdel(src) + return + +/obj/effect/slug_glue/Destroy() + . = ..() + if(my_slug) + my_slug.my_slime -= src //Remove the slime from the slug's list when destroyed. + +//This could probably be applied to spideweb code to make it work as intended again. +/obj/effect/slug_glue/Uncross(atom/movable/AM, atom/newloc) + if(istype(AM, /mob/living/simple_mob/vore/slug)) + return ..() + else if(istype(AM, /mob/living)) + if(prob(50)) + to_chat(AM, span("warning", "You stick to \the [my_turf]!")) + return FALSE + return ..() + + +/obj/effect/slug_glue/Crossed(atom/movable/AM as mob|obj) + if(AM.is_incorporeal()) + return + + if(istype(AM, /mob/living)) + var/mob/living/L = AM + if(istype(L, /mob/living/simple_mob/vore/slug)) + return + + if(L.m_intent == "run" && !L.buckled) + if(has_buckled_mobs()) + return + buckle_mob(L) + L.stop_pulling() + L.Weaken(2) + to_chat(L, "You tripped in the sticky substance, sticking to [my_turf]!") + playsound(src, 'sound/rakshasa/Decay3.ogg', 100, 1) + alert_slug(L) + +/obj/effect/slug_glue/proc/alert_slug(mob/living/victim as mob) + if(!my_slug || !has_buckled_mobs() || isbelly(my_slug.loc)) //Otherwise if you eat the slug it will infinitely attempt to eat you if you trip in glue. + return + if(my_slug.vore_memory == victim) //Getting eaten lets you get stuck once without alerting the slug. This is to prevent instantly getting eaten again if you struggle free with run intent on. + my_slug.vore_memory = null + return + my_slug.ai_holder.give_target(victim) + +/obj/effect/slug_glue/proc/unalert_slug(mob/living/victim as mob) + if(!my_slug) + return + if(my_slug.ai_holder.target == victim) + my_slug.ai_holder.remove_target() //Instant loss of target. Necessary to simulate the mob giving up if the prey escapes. + +/obj/effect/slug_glue/user_unbuckle_mob(mob/living/buckled_mob, mob/user) + user.setClickCooldown(user.get_attack_speed()) + to_chat(user, "You tug and strain against the sticky substance...") + var/escape_time + switch(buckled_mob.size_multiplier) + if(RESIZE_TINY - 1 to RESIZE_A_NORMALSMALL) //24% to 75% size scale, 1% below 25% is to account for microcillin sometimes going slightly below 25% + escape_time = 2 * base_escape_time + if(RESIZE_A_NORMALSMALL to RESIZE_A_BIGNORMAL) //75% to 125% size scale + escape_time = base_escape_time + if(RESIZE_A_BIGNORMAL to RESIZE_HUGE + 1) //125% to 201% size scale, 1% above 200% is to acount for macrocillin sometimes going slightly above 200% + escape_time = 0.5 * base_escape_time + else + escape_time = base_escape_time //Admeme size scale + if(do_after(user, escape_time, src, incapacitation_flags = INCAPACITATION_DEFAULT & ~(INCAPACITATION_RESTRAINED | INCAPACITATION_BUCKLED_FULLY))) + if(!has_buckled_mobs()) + return + to_chat(user, "You tug free of the tacky, rubbery strands!") + unbuckle_mob(buckled_mob) + unalert_slug(buckled_mob) + +/obj/effect/slug_glue/clean_blood(var/ignore = 0) //Remove with space cleaner. + if(!ignore) + qdel(src) + return + ..() \ No newline at end of file diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm b/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm index b4c656ddc3..1b4a2e9ad8 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm @@ -66,7 +66,6 @@ name = "dire wolf" desc = "The biggest and baddest wolf around." tt_desc = "Canis maxdirus" - icon = 'icons/mob/vore64x32.dmi' icon_dead = "direwolf-dead" icon_living = "direwolf" @@ -108,12 +107,27 @@ name = "large dog" desc = "The biggest and goodest dog around." tt_desc = "Canis maxdirus familiaris" - icon_dead = "diredog-dead" icon_living = "diredog" icon_state = "diredog" icon_rest = "diredog_rest" +/mob/living/simple_mob/animal/wolf/direwolf/dog/sec + name = "large guard dog" + desc = "The biggest and goodest guard dog around." + icon_dead = "diredogs-dead" + icon_living = "diredogs" + icon_state = "diredogs" + icon_rest = "diredogs_rest" + +/mob/living/simple_mob/animal/wolf/direwolf/sec + name = "dire guard wolf" + desc = "The biggest and baddest guard wolf around." + icon_dead = "direwolfs-dead" + icon_living = "direwolfs" + icon_state = "direwolfs" + icon_rest = "direwolfs_rest" + /mob/living/simple_mob/animal/wolf/direwolf/rykka name = "Rykka" desc = "This big canine looks like a GSD. It has a collar tagged, 'Bitch'" diff --git a/code/modules/mob/living/zz_ballistics_ch/bullet_act_ch.dm b/code/modules/mob/living/zz_ballistics_ch/bullet_act_ch.dm index b49a7dc717..d13391f897 100644 --- a/code/modules/mob/living/zz_ballistics_ch/bullet_act_ch.dm +++ b/code/modules/mob/living/zz_ballistics_ch/bullet_act_ch.dm @@ -32,11 +32,11 @@ GLOBAL_VAR_INIT(HOLLOW_POINT_CONVERSION_EFF,1.85) #define PROB_LEAVE_EARLY_FIRST 20 #define PROB_LEAVE_EARLY_SECOND 40 -GLOBAL_VAR_INIT(ENERGY_DAMAGE_FLESH_FACTOR,0.03) +GLOBAL_VAR_INIT(ENERGY_DAMAGE_FLESH_FACTOR,0.025) GLOBAL_VAR_INIT(ENERGY_DAMAGE_ORGAN_FACTOR,0.035) -#define ENERGY_DAMAGE_EXPONENT 0.4 -#define ENERGY_DAMAGE_COEFFICIENT 0.135 -#define ENERGY_DAMAGE_FLESH_FALLOFF_POINT 17 +#define ENERGY_DAMAGE_EXPONENT 0.6 +#define ENERGY_DAMAGE_COEFFICIENT 0.05 +#define ENERGY_DAMAGE_FLESH_FALLOFF_POINT 10 #define ENERGY_DAMAGE_ORGAN_FALLOFF_POINT 7 #ifndef GAUSSIAN_RANDOM diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index b05603182f..a451488ad5 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -682,7 +682,7 @@ // facing verbs /mob/proc/canface() - if(!canmove) return 0 +// if(!canmove) return 0 //VOREStation Edit. Redundant check that only affects conscious proning, actual inability to turn and shift around handled by actual inabilities. if(stat) return 0 if(anchored) return 0 if(transforming) return 0 diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index 75b2ccd07f..95732bad6a 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -289,7 +289,7 @@ // If we have a grab var/list/grablist = my_mob.ret_grab() - if(grablist.len) + if(LAZYLEN(grablist)) grablist -= my_mob // Just in case we're in a circular grab chain // It's just us and another person diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index d46363f7b9..7fa2f23b6f 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -46,17 +46,17 @@ if(!IsGuestKey(src.key)) establish_db_connection() - if(dbcon.IsConnected()) + if(SSdbcore.IsConnected()) //CHOMPEdit TGSQL var/isadmin = 0 if(src.client && src.client.holder) isadmin = 1 - var/DBQuery/query = dbcon.NewQuery("SELECT id FROM erro_poll_question WHERE [(isadmin ? "" : "adminonly = false AND")] Now() BETWEEN starttime AND endtime AND id NOT IN (SELECT pollid FROM erro_poll_vote WHERE ckey = \"[ckey]\") AND id NOT IN (SELECT pollid FROM erro_poll_textreply WHERE ckey = \"[ckey]\")") + var/DBQuery/query = SSdbcore.NewQuery("SELECT id FROM erro_poll_question WHERE [(isadmin ? "" : "adminonly = false AND")] Now() BETWEEN starttime AND endtime AND id NOT IN (SELECT pollid FROM erro_poll_vote WHERE ckey = :t_ckey) AND id NOT IN (SELECT pollid FROM erro_poll_textreply WHERE ckey = :t_ckey)",list("t_ckey" = ckey)) //CHOMPEdit TGSQL query.Execute() var/newpoll = 0 while(query.NextRow()) newpoll = 1 break - + qdel(query) //CHOMPEdit TGSQL if(newpoll) output += "

    Show Player Polls (NEW!)

    " else @@ -164,7 +164,7 @@ if(!ticker || ticker.current_state != GAME_STATE_PLAYING) to_chat(usr, "The round is either not ready, or has already finished...") return - + var/time_till_respawn = time_till_respawn() if(time_till_respawn == -1) // Special case, never allowed to respawn to_chat(usr, "Respawning is not allowed!") @@ -216,17 +216,17 @@ if(href_list["privacy_poll"]) establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL return var/voted = 0 //First check if the person has not voted yet. - var/DBQuery/query = dbcon.NewQuery("SELECT * FROM erro_privacy WHERE ckey='[src.ckey]'") + var/DBQuery/query = SSdbcore.NewQuery("SELECT * FROM erro_privacy WHERE ckey=:t_ckey", list("t_ckey" = src.ckey)) //CHOMPEdit TGSQL query.Execute() while(query.NextRow()) voted = 1 break - + qdel(query) //CHOMPEdit TGSQL //This is a safety switch, so only valid options pass through var/option = "UNKNOWN" switch(href_list["privacy_poll"]) @@ -246,10 +246,12 @@ return if(!voted) - var/sql = "INSERT INTO erro_privacy VALUES (null, Now(), '[src.ckey]', '[option]')" - var/DBQuery/query_insert = dbcon.NewQuery(sql) + var/list/sqlargs = list("t_ckey" = src.ckey, "t_option" = "[option]") //CHOMPEdit TGSQL + var/sql = "INSERT INTO erro_privacy VALUES (null, Now(), :t_ckey, :t_option)" //CHOMPEdit TGSQL + var/DBQuery/query_insert = SSdbcore.NewQuery(sql,sqlargs) //CHOMPEdit TGSQL query_insert.Execute() to_chat(usr, "Thank you for your vote!") + qdel(query_insert) usr << browse(null,"window=privacypoll") if(!ready && href_list["preference"]) @@ -352,7 +354,7 @@ /mob/new_player/proc/time_till_respawn() if(!ckey) return -1 // What? - + var/timer = GLOB.respawn_timers[ckey] // No timer at all if(!timer) @@ -461,6 +463,9 @@ AnnounceArrival(character, rank, join_message, announce_channel, character.z) data_core.manifest_inject(character) ticker.minds += character.mind//Cyborgs and AIs handle this in the transform proc. //TODO!!!!! ~Carn + var/gut = join_props["voreny"] + if(gut) + character.forceMove(gut) qdel(src) // Delete new_player mob diff --git a/code/modules/mob/new_player/poll.dm b/code/modules/mob/new_player/poll.dm index e4f42774e9..41417a63e2 100644 --- a/code/modules/mob/new_player/poll.dm +++ b/code/modules/mob/new_player/poll.dm @@ -1,16 +1,16 @@ /mob/new_player/proc/handle_privacy_poll() establish_db_connection() - if(!dbcon.IsConnected()) + if(!SSdbcore.IsConnected()) //CHOMPEdit TGSQL return var/voted = 0 - var/DBQuery/query = dbcon.NewQuery("SELECT * FROM erro_privacy WHERE ckey='[src.ckey]'") + var/DBQuery/query = SSdbcore.NewQuery("SELECT * FROM erro_privacy WHERE ckey=:t_ckey", list("t_ckey" = src.ckey)) //CHOMPEdit TGSQL query.Execute() while(query.NextRow()) voted = 1 break - + qdel(query) //CHOMPEdit TGSQL if(!voted) privacy_poll() @@ -48,12 +48,12 @@ /mob/new_player/proc/handle_player_polling() establish_db_connection() - if(dbcon.IsConnected()) + if(SSdbcore.IsConnected()) //CHOMPEdit TGSQL var/isadmin = 0 if(src.client && src.client.holder) isadmin = 1 - var/DBQuery/select_query = dbcon.NewQuery("SELECT id, question FROM erro_poll_question WHERE [(isadmin ? "" : "adminonly = false AND")] Now() BETWEEN starttime AND endtime") + var/DBQuery/select_query = SSdbcore.NewQuery("SELECT id, question FROM erro_poll_question WHERE [(isadmin ? "" : "adminonly = false AND")] Now() BETWEEN starttime AND endtime") //CHOMPEdit TGSQL select_query.Execute() var/output = "
    Player polls" @@ -72,7 +72,7 @@ pollquestion = select_query.item[2] output += "[pollquestion]" i++ - + qdel(select_query) //CHOMPEdit TGSQL output += "" src << browse(output,"window=playerpolllist;size=500x300") @@ -82,9 +82,9 @@ /mob/new_player/proc/poll_player(var/pollid = -1) if(pollid == -1) return establish_db_connection() - if(dbcon.IsConnected()) + if(SSdbcore.IsConnected()) //CHOMPEdit TGSQL - var/DBQuery/select_query = dbcon.NewQuery("SELECT starttime, endtime, question, polltype, multiplechoiceoptions FROM erro_poll_question WHERE id = [pollid]") + var/DBQuery/select_query = SSdbcore.NewQuery("SELECT starttime, endtime, question, polltype, multiplechoiceoptions FROM erro_poll_question WHERE id = [pollid]") //CHOMPEdit TGSQL select_query.Execute() var/pollstarttime = "" @@ -101,7 +101,7 @@ polltype = select_query.item[4] found = 1 break - + qdel(select_query) //CHOMPEdit TGSQL if(!found) to_chat(usr, "Poll question details not found.") return @@ -109,7 +109,7 @@ switch(polltype) //Polls that have enumerated options if("OPTION") - var/DBQuery/voted_query = dbcon.NewQuery("SELECT optionid FROM erro_poll_vote WHERE pollid = [pollid] AND ckey = '[usr.ckey]'") + var/DBQuery/voted_query = SSdbcore.NewQuery("SELECT optionid FROM erro_poll_vote WHERE pollid = [pollid] AND ckey = :t_ckey", list("t_ckey" = usr.ckey)) //CHOMPEdit TGSQL voted_query.Execute() var/voted = 0 @@ -118,17 +118,17 @@ votedoptionid = text2num(voted_query.item[1]) voted = 1 break - + qdel(voted_query) //CHOMPEdit TGSQL var/list/datum/polloption/options = list() - var/DBQuery/options_query = dbcon.NewQuery("SELECT id, text FROM erro_poll_option WHERE pollid = [pollid]") + var/DBQuery/options_query = SSdbcore.NewQuery("SELECT id, text FROM erro_poll_option WHERE pollid = [pollid]") //CHOMPEdit TGSQL options_query.Execute() while(options_query.NextRow()) var/datum/polloption/PO = new() PO.optionid = text2num(options_query.item[1]) PO.optiontext = options_query.item[2] options += PO - + qdel(options_query) //CHOMPEdit TGSQL var/output = "
    Player poll" output +="
    " output += "Question: [pollquestion]
    " @@ -162,7 +162,7 @@ //Polls with a text input if("TEXT") - var/DBQuery/voted_query = dbcon.NewQuery("SELECT replytext FROM erro_poll_textreply WHERE pollid = [pollid] AND ckey = '[usr.ckey]'") + var/DBQuery/voted_query = SSdbcore.NewQuery("SELECT replytext FROM erro_poll_textreply WHERE pollid = [pollid] AND ckey = :t_ckey", list("t_ckey" = usr.ckey)) //CHOMPEdit TGSQL voted_query.Execute() var/voted = 0 @@ -171,7 +171,7 @@ vote_text = voted_query.item[1] voted = 1 break - + qdel(voted_query) //CHOMPEdit TGSQL var/output = "
    Player poll" output +="
    " @@ -204,7 +204,7 @@ //Polls with a text input if("NUMVAL") - var/DBQuery/voted_query = dbcon.NewQuery("SELECT o.text, v.rating FROM erro_poll_option o, erro_poll_vote v WHERE o.pollid = [pollid] AND v.ckey = '[usr.ckey]' AND o.id = v.optionid") + var/DBQuery/voted_query = SSdbcore.NewQuery("SELECT o.text, v.rating FROM erro_poll_option o, erro_poll_vote v WHERE o.pollid = [pollid] AND v.ckey = :t_ckey AND o.id = v.optionid", list("t_ckey" = usr.ckey)) //CHOMPEdit TGSQL voted_query.Execute() var/output = "
    Player poll" @@ -220,7 +220,7 @@ var/rating = voted_query.item[2] output += "
    [optiontext] - [rating]" - + qdel(voted_query) //CHOMPEdit TGSQL if(!voted) //Only make this a form if we have not voted yet output += "
    " output += "" @@ -230,7 +230,7 @@ var/minid = 999999 var/maxid = 0 - var/DBQuery/option_query = dbcon.NewQuery("SELECT id, text, minval, maxval, descmin, descmid, descmax FROM erro_poll_option WHERE pollid = [pollid]") + var/DBQuery/option_query = SSdbcore.NewQuery("SELECT id, text, minval, maxval, descmin, descmid, descmax FROM erro_poll_option WHERE pollid = [pollid]") //CHOMPEdit TGSQL option_query.Execute() while(option_query.NextRow()) var/optionid = text2num(option_query.item[1]) @@ -264,7 +264,7 @@ output += "" output += "" - + qdel(option_query) //CHOMPEdit TGSQL output += "" output += "" @@ -273,7 +273,7 @@ src << browse(output,"window=playerpoll;size=500x500") if("MULTICHOICE") - var/DBQuery/voted_query = dbcon.NewQuery("SELECT optionid FROM erro_poll_vote WHERE pollid = [pollid] AND ckey = '[usr.ckey]'") + var/DBQuery/voted_query = SSdbcore.NewQuery("SELECT optionid FROM erro_poll_vote WHERE pollid = [pollid] AND ckey = :t_ckey", list("t_ckey" = usr.ckey)) //CHOMPEdit TGSQL voted_query.Execute() var/list/votedfor = list() @@ -281,12 +281,12 @@ while(voted_query.NextRow()) votedfor.Add(text2num(voted_query.item[1])) voted = 1 - + qdel(voted_query) //CHOMPEdit TGSQL var/list/datum/polloption/options = list() var/maxoptionid = 0 var/minoptionid = 0 - var/DBQuery/options_query = dbcon.NewQuery("SELECT id, text FROM erro_poll_option WHERE pollid = [pollid]") + var/DBQuery/options_query = SSdbcore.NewQuery("SELECT id, text FROM erro_poll_option WHERE pollid = [pollid]") //CHOMPEdit TGSQL options_query.Execute() while(options_query.NextRow()) var/datum/polloption/PO = new() @@ -297,7 +297,7 @@ if(PO.optionid < minoptionid || !minoptionid) minoptionid = PO.optionid options += PO - + qdel(options_query) //CHOMPEdit TGSQL if(select_query.item[5]) multiplechoiceoptions = text2num(select_query.item[5]) @@ -343,9 +343,9 @@ if(!isnum(pollid) || !isnum(optionid)) return establish_db_connection() - if(dbcon.IsConnected()) + if(SSdbcore.IsConnected()) //CHOMPEdit TGSQL - var/DBQuery/select_query = dbcon.NewQuery("SELECT starttime, endtime, question, polltype, multiplechoiceoptions FROM erro_poll_question WHERE id = [pollid] AND Now() BETWEEN starttime AND endtime") + var/DBQuery/select_query = SSdbcore.NewQuery("SELECT starttime, endtime, question, polltype, multiplechoiceoptions FROM erro_poll_question WHERE id = [pollid] AND Now() BETWEEN starttime AND endtime") //CHOMPEdit TGSQL select_query.Execute() var/validpoll = 0 @@ -358,12 +358,12 @@ if(select_query.item[5]) multiplechoiceoptions = text2num(select_query.item[5]) break - + qdel(select_query) //CHOMPEdit TGSQL if(!validpoll) to_chat(usr, "Poll is not valid.") return - var/DBQuery/select_query2 = dbcon.NewQuery("SELECT id FROM erro_poll_option WHERE id = [optionid] AND pollid = [pollid]") + var/DBQuery/select_query2 = SSdbcore.NewQuery("SELECT id FROM erro_poll_option WHERE id = [optionid] AND pollid = [pollid]") //CHOMPEdit TGSQL select_query2.Execute() var/validoption = 0 @@ -378,14 +378,14 @@ var/alreadyvoted = 0 - var/DBQuery/voted_query = dbcon.NewQuery("SELECT id FROM erro_poll_vote WHERE pollid = [pollid] AND ckey = '[usr.ckey]'") + var/DBQuery/voted_query = SSdbcore.NewQuery("SELECT id FROM erro_poll_vote WHERE pollid = [pollid] AND ckey = :t_ckey", list("t_ckey" = usr.ckey)) //CHOMPEdit TGSQL voted_query.Execute() while(voted_query.NextRow()) alreadyvoted += 1 if(!multichoice) break - + qdel(voted_query) //CHOMPEdit TGSQL if(!multichoice && alreadyvoted) to_chat(usr, "You already voted in this poll.") return @@ -399,10 +399,11 @@ adminrank = usr.client.holder.rank - var/DBQuery/insert_query = dbcon.NewQuery("INSERT INTO erro_poll_vote (id ,datetime ,pollid ,optionid ,ckey ,ip ,adminrank) VALUES (null, Now(), [pollid], [optionid], '[usr.ckey]', '[usr.client.address]', '[adminrank]')") + var/DBQuery/insert_query = SSdbcore.NewQuery("INSERT INTO erro_poll_vote (id ,datetime ,pollid ,optionid ,ckey ,ip ,adminrank) VALUES (null, Now(), [pollid], [optionid], :t_ckey, '[usr.client.address]', '[adminrank]')", list("t_ckey" = usr.ckey)) //CHOMPEdit TGSQL insert_query.Execute() to_chat(usr, "Vote successful.") + qdel(insert_query) //CHOMPEdit TGSQL usr << browse(null,"window=playerpoll") @@ -413,9 +414,9 @@ if(!isnum(pollid) || !istext(replytext)) return establish_db_connection() - if(dbcon.IsConnected()) + if(SSdbcore.IsConnected()) //CHOMPEdit TGSQL - var/DBQuery/select_query = dbcon.NewQuery("SELECT starttime, endtime, question, polltype FROM erro_poll_question WHERE id = [pollid] AND Now() BETWEEN starttime AND endtime") + var/DBQuery/select_query = SSdbcore.NewQuery("SELECT starttime, endtime, question, polltype FROM erro_poll_question WHERE id = [pollid] AND Now() BETWEEN starttime AND endtime") //CHOMPEdit TGSQL select_query.Execute() var/validpoll = 0 @@ -425,20 +426,20 @@ return validpoll = 1 break - + qdel(select_query) //CHOMPEdit TGSQL if(!validpoll) to_chat(usr, "Poll is not valid.") return var/alreadyvoted = 0 - var/DBQuery/voted_query = dbcon.NewQuery("SELECT id FROM erro_poll_textreply WHERE pollid = [pollid] AND ckey = '[usr.ckey]'") + var/DBQuery/voted_query = SSdbcore.NewQuery("SELECT id FROM erro_poll_textreply WHERE pollid = [pollid] AND ckey = :t_ckey", list("t_ckey" = usr.ckey)) //CHOMPEdit TGSQL voted_query.Execute() while(voted_query.NextRow()) alreadyvoted = 1 break - + qdel(voted_query) //CHOMPEdit TGSQL if(alreadyvoted) to_chat(usr, "You already sent your feedback for this poll.") return @@ -457,10 +458,11 @@ to_chat(usr, "The text you entered was blank, contained illegal characters or was too long. Please correct the text and submit again.") return - var/DBQuery/insert_query = dbcon.NewQuery("INSERT INTO erro_poll_textreply (id ,datetime ,pollid ,ckey ,ip ,replytext ,adminrank) VALUES (null, Now(), [pollid], '[usr.ckey]', '[usr.client.address]', '[replytext]', '[adminrank]')") + var/DBQuery/insert_query = SSdbcore.NewQuery("INSERT INTO erro_poll_textreply (id ,datetime ,pollid ,ckey ,ip ,replytext ,adminrank) VALUES (null, Now(), [pollid], :t_ckey, '[usr.client.address]', :t_reply, '[adminrank]')", list("t_ckey" = usr.ckey, "t_reply" = replytext)) //CHOMPEdit TGSQL insert_query.Execute() to_chat(usr, "Feedback logging successful.") + qdel(insert_query) //CHOMPEdit TGSQL usr << browse(null,"window=playerpoll") @@ -471,9 +473,9 @@ if(!isnum(pollid) || !isnum(optionid)) return establish_db_connection() - if(dbcon.IsConnected()) + if(SSdbcore.IsConnected()) //CHOMPEdit TGSQL - var/DBQuery/select_query = dbcon.NewQuery("SELECT starttime, endtime, question, polltype FROM erro_poll_question WHERE id = [pollid] AND Now() BETWEEN starttime AND endtime") + var/DBQuery/select_query = SSdbcore.NewQuery("SELECT starttime, endtime, question, polltype FROM erro_poll_question WHERE id = [pollid] AND Now() BETWEEN starttime AND endtime") //CHOMPEdit TGSQL select_query.Execute() var/validpoll = 0 @@ -483,12 +485,12 @@ return validpoll = 1 break - + qdel(select_query) //CHOMPEdit TGSQL if(!validpoll) to_chat(usr, "Poll is not valid.") return - var/DBQuery/select_query2 = dbcon.NewQuery("SELECT id FROM erro_poll_option WHERE id = [optionid] AND pollid = [pollid]") + var/DBQuery/select_query2 = SSdbcore.NewQuery("SELECT id FROM erro_poll_option WHERE id = [optionid] AND pollid = [pollid]") //CHOMPEdit TGSQL select_query2.Execute() var/validoption = 0 @@ -496,20 +498,20 @@ while(select_query2.NextRow()) validoption = 1 break - + qdel(select_query2) //CHOMPEdit TGSQL if(!validoption) to_chat(usr, "Poll option is not valid.") return var/alreadyvoted = 0 - var/DBQuery/voted_query = dbcon.NewQuery("SELECT id FROM erro_poll_vote WHERE optionid = [optionid] AND ckey = '[usr.ckey]'") + var/DBQuery/voted_query = SSdbcore.NewQuery("SELECT id FROM erro_poll_vote WHERE optionid = [optionid] AND ckey = :t_ckey", list("t_ckey" = usr.ckey)) //CHOMPEdit TGSQL voted_query.Execute() while(voted_query.NextRow()) alreadyvoted = 1 break - + qdel(voted_query) //CHOMPEdit TGSQL if(alreadyvoted) to_chat(usr, "You already voted in this poll.") return @@ -519,8 +521,9 @@ adminrank = usr.client.holder.rank - var/DBQuery/insert_query = dbcon.NewQuery("INSERT INTO erro_poll_vote (id ,datetime ,pollid ,optionid ,ckey ,ip ,adminrank, rating) VALUES (null, Now(), [pollid], [optionid], '[usr.ckey]', '[usr.client.address]', '[adminrank]', [(isnull(rating)) ? "null" : rating])") + var/DBQuery/insert_query = SSdbcore.NewQuery("INSERT INTO erro_poll_vote (id ,datetime ,pollid ,optionid ,ckey ,ip ,adminrank, rating) VALUES (null, Now(), [pollid], [optionid], '[usr.ckey]', '[usr.client.address]', '[adminrank]', :t_rating)", list("t_ckey" = usr.ckey, "t_rating" = rating)) //CHOMPEdit TGSQL insert_query.Execute() to_chat(usr, "Vote successful.") + qdel(insert_query) //CHOMPEdit TGSQL usr << browse(null,"window=playerpoll") \ No newline at end of file diff --git a/code/modules/mob/say_vr.dm b/code/modules/mob/say_vr.dm index 4f48a4adf4..64f65adfbb 100644 --- a/code/modules/mob/say_vr.dm +++ b/code/modules/mob/say_vr.dm @@ -37,7 +37,7 @@ if(input) log_subtle(message,src) - message = "[src] [input]" + message = "[src] [input]" else return diff --git a/code/modules/modular_computers/file_system/news_article.dm b/code/modules/modular_computers/file_system/news_article.dm index 0b327f8218..9ad66eeb94 100644 --- a/code/modules/modular_computers/file_system/news_article.dm +++ b/code/modules/modular_computers/file_system/news_article.dm @@ -43,4 +43,9 @@ /datum/computer_file/data/news_article/starfire/year_2564 filename = "Starfire Report: Year 2564" server_file_path = 'news_articles/starfire_report_2564.html' + +/datum/computer_file/data/news_article/starfire/year_2565 + filename = "Starfire Report: Year 2565" + server_file_path = 'news_articles/starfire_report_2565.html' + //End CHOMPedit \ No newline at end of file diff --git a/code/modules/overmap/ships/computers/ship_vr.dm b/code/modules/overmap/ships/computers/ship_vr.dm new file mode 100644 index 0000000000..b317eb3c1e --- /dev/null +++ b/code/modules/overmap/ships/computers/ship_vr.dm @@ -0,0 +1,13 @@ +/* +Ships can now be hijacked! +*/ +/obj/machinery/computer/ship + var/hacked = 0 // Has been emagged, no access restrictions. + +/obj/machinery/computer/ship/emag_act(var/remaining_charges, var/mob/user) + if (!hacked) + req_access = list() + req_one_access = list() + hacked = 1 + to_chat(user, "You short out the console's ID checking system. It's now available to everyone!") + return 1 diff --git a/code/modules/power/cells/esoteric_cells.dm b/code/modules/power/cells/esoteric_cells.dm new file mode 100644 index 0000000000..b45c19a783 --- /dev/null +++ b/code/modules/power/cells/esoteric_cells.dm @@ -0,0 +1,74 @@ + +/obj/item/weapon/cell/spike + name = "modified power cell" + desc = "A modified power cell sitting in a highly conductive chassis." + origin_tech = list(TECH_POWER = 2) + icon_state = "spikecell" + maxcharge = 10000 + matter = list(DEFAULT_WALL_MATERIAL = 1000, MAT_GLASS = 80, MAT_SILVER = 100) + self_recharge = TRUE + charge_amount = 150 + +/obj/item/weapon/cell/spike/process() + ..() + + var/turf/Center = get_turf(src) + + var/shock_count = 0 + for(var/turf/T in range(Center, 1)) + + if(prob(round(charge / 250)) && charge >= (maxcharge / 4)) + + if(locate(/obj/effect/temporary_effect/pulse/staticshock) in T) + continue + + var/conductive = FALSE + + if(istype(T, /turf/simulated/wall)) + var/turf/simulated/wall/WT = T + + if(WT.material.conductive) + conductive = TRUE + else if(WT.girder_material.conductive) + conductive = TRUE + else if(WT.reinf_material && WT.reinf_material.conductive) + conductive = TRUE + + if(istype(T, /turf/simulated/floor)) + var/turf/simulated/floor/F = T + if(istype(F.flooring, /decl/flooring/reinforced)) + conductive = TRUE + + if(conductive) + shock_count += 1 + new /obj/effect/temporary_effect/pulse/staticshock(T) + + if(shock_count) + while(shock_count) + use(200) + shock_count-- + +/obj/effect/temporary_effect/pulse/staticshock + name = "electric field" + desc = "Caution: Do not touch." + pulses_remaining = 10 + pulse_delay = 2 SECONDS + icon_state = "blue_static" + +/obj/effect/temporary_effect/pulse/staticshock/on_pulse() + ..() + + for(var/mob/living/L in view(1, src)) + if(!issilicon(L) && prob(L.mob_size)) + var/obj/item/projectile/beam/shock/weak/P = new (get_turf(src)) + P.launch_projectile_from_turf(L, BP_TORSO) + + var/obj/item/weapon/plastique/C4 = locate() in get_turf(src) + + if(C4) + C4.visible_message("The current fries \the [C4]!") + + if(prob(10)) + C4.explode(get_turf(src)) + else + qdel(C4) diff --git a/code/modules/projectiles/ammunition/zz_autolathe_ch.dm b/code/modules/projectiles/ammunition/zz_autolathe_ch.dm new file mode 100644 index 0000000000..b9a0fdb5be --- /dev/null +++ b/code/modules/projectiles/ammunition/zz_autolathe_ch.dm @@ -0,0 +1,98 @@ +//Created the autolathe entries here to keep stuff organized and also compact so the files aren't too spread out. +/datum/category_item/autolathe/arms/smg_mp5 + name = "mp5 magazine(9x19mm standard)" + path = /obj/item/ammo_magazine/mp5mag + hidden = 1 + +/datum/category_item/autolathe/arms/smg_mp5_ap + name = "mp5 magazine(9x19mm armor-piercing)" + path = /obj/item/ammo_magazine/mp5mag/ap + hidden = 1 + +/datum/category_item/autolathe/arms/smg_mp5_hp + name = "mp5 magazine(9x19mm hollow-point)" + path = /obj/item/ammo_magazine/mp5mag/hp + hidden = 1 + +/datum/category_item/autolathe/arms/smg_mp5_rubber + name = "mp5 magazine(9x19mm rubber)" + path = /obj/item/ammo_magazine/mp5mag/rubber + +/datum/category_item/autolathe/arms/pistol_fiveseven + name = "five-seven magazine(5.7x28mm standard)" + path = /obj/item/ammo_magazine/a57 + hidden = 1 + +/datum/category_item/autolathe/arms/pistol_fiveseven_ap + name = "five-seven magazine(5.7x28mm armor-piercing)" + path = /obj/item/ammo_magazine/a57/ap + hidden = 1 + +/datum/category_item/autolathe/arms/pistol_fiveseven_hp + name = "five-seven magazine(5.7x28mm hollow-point)" + path = /obj/item/ammo_magazine/a57/hp + hidden = 1 + +/datum/category_item/autolathe/arms/pistol_fiveseven_rubber + name = "five-seven magazine(5.7x28mm rubber)" + path = /obj/item/ammo_magazine/a57/rubber + +/datum/category_item/autolathe/arms/smg_p90 + name = "large capacity top mounted magazine (5.7x28mm armor-piercing)" + path = /obj/item/ammo_magazine/m9mmp90 + hidden = 1 + +/datum/category_item/autolathe/arms/svd_762 + name = "SVD magazine (7.62x54mmR)" + path = /obj/item/ammo_magazine/m762svd + hidden = 1 + +/datum/category_item/autolathe/arms/svd_762_ap + name = "SVD magazine (7.62x54mmR armor-piercing)" + path = /obj/item/ammo_magazine/m762svd/ap + hidden = 1 + +/datum/category_item/autolathe/arms/asval_9x39 + name = "AS-Val magazine(9x39mm standard)" + path = /obj/item/ammo_magazine/asval + hidden = 1 + +/datum/category_item/autolathe/arms/asval_9x39_ap + name = "AS-Val magazine(9x39mm armor-piercing)" + path = /obj/item/ammo_magazine/asval/ap + hidden = 1 + +/datum/category_item/autolathe/arms/akm_762x39 + name = "AKM magazine (7.62x39mm standard)" + path = /obj/item/ammo_magazine/akm + hidden = 1 + +/datum/category_item/autolathe/arms/akm_762x39_ap + name = "AKM magazine (7.62x39mm armor-piercing)" + path = /obj/item/ammo_magazine/akm/ap + hidden = 1 + +/datum/category_item/autolathe/arms/akm_762x39_hp + name = "AKM magazine (7.62x39mm hollow-point)" + path = /obj/item/ammo_magazine/akm/hp + hidden = 1 + +/datum/category_item/autolathe/arms/m16_556 + name = "M16 magazine (5.56x45mm standard)" + path = /obj/item/ammo_magazine/m16 + hidden = 1 + +/datum/category_item/autolathe/arms/m16_556_ap + name = "M16 magazine (5.56x45mm armor-piercing)" + path = /obj/item/ammo_magazine/m16/ap + hidden = 1 + +/datum/category_item/autolathe/arms/m16_556_hp + name = "M16 magazine (5.56x45mm hollow-point)" + path = /obj/item/ammo_magazine/m16/hp + hidden = 1 + +/datum/category_item/autolathe/arms/sks_762 + name = "SKS Clip (10x 7.62x39 standard)" + path = /obj/item/ammo_magazine/clip/sks + hidden = 1 \ No newline at end of file diff --git a/code/modules/projectiles/ammunition/zz_magazines_ch.dm b/code/modules/projectiles/ammunition/zz_magazines_ch.dm new file mode 100644 index 0000000000..24b1a7775d --- /dev/null +++ b/code/modules/projectiles/ammunition/zz_magazines_ch.dm @@ -0,0 +1,140 @@ +//Overrides +/obj/item/ammo_magazine/m9mmp90 //congratulations you are now being converted 5.7x28mm, a.k.a the round the p90 actually uses. + name = "large capacity top mounted magazine (5.7x28mm armor-piercing)" //Ugh, we'll leave it AP I guess + ammo_type = /obj/item/ammo_casing/a57/ap + caliber = "5.7x28mm" + +/obj/item/ammo_magazine/m762svd //You are now being converted to 7.62x54mmR :3 + name = "\improper SVD magazine (7.62x54mmR)" + caliber = "7.62x54mmR" + ammo_type = /obj/item/ammo_casing/a762x54 + +/obj/item/ammo_magazine/m762svd/ap + name = "\improper SVD magazine (7.62x54mmR armor-piercing)" + ammo_type = /obj/item/ammo_casing/a762x54/ap + +//New stuff +/obj/item/ammo_magazine/a57 + name = "five-seven magazine(5.7x28mm standard)" + icon_state = "fiveseven" + max_ammo = 20 + mag_type = MAGAZINE + caliber= "5.7x28mm" + matter = list(DEFAULT_WALL_MATERIAL = 800) + multiple_sprites = 0 + ammo_type = /obj/item/ammo_casing/a57 + +/obj/item/ammo_magazine/a57/ap + name = "five-seven magazine(5.7x28mm armor-piercing)" + matter = list(DEFAULT_WALL_MATERIAL = 900) + ammo_type = /obj/item/ammo_casing/a57/ap + +/obj/item/ammo_magazine/a57/hp + name = "five-seven magazine(5.7x28mm hollow-point)" + matter = list(DEFAULT_WALL_MATERIAL = 900) + ammo_type = /obj/item/ammo_casing/a57/hp + +/obj/item/ammo_magazine/a57/rubber + name = "five-seven magazine(5.7x28mm rubber)" + ammo_type = /obj/item/ammo_casing/a57/rubber + +/obj/item/ammo_magazine/mp5mag + name = "mp5 magazine(9x19mm standard)" + icon = 'icons/obj/ammo_vr.dmi' + icon_state = "smg" + max_ammo = 30 + mag_type = MAGAZINE + caliber = "9mm" + matter = list(DEFAULT_WALL_MATERIAL = 800) + multiple_sprites = 1 + ammo_type = /obj/item/ammo_casing/a9mm + +/obj/item/ammo_magazine/mp5mag/ap + name = "mp5 magazine(9x19mm armor-piercing)" + ammo_type = /obj/item/ammo_casing/a9mm/ap + matter = list(DEFAULT_WALL_MATERIAL = 900) + +/obj/item/ammo_magazine/mp5mag/hp + name = "mp5 magazine(9x19mm hollow-point)" + ammo_type = /obj/item/ammo_casing/a9mm/ap + +/obj/item/ammo_magazine/mp5mag/rubber + name = "mp5 magazine(9x19mm rubber)" + ammo_type = /obj/item/ammo_casing/a9mm/rubber + +/obj/item/ammo_magazine/asval + name = "AS-Val magazine(9x39mm standard)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "sts35" + max_ammo = 20 + mag_type = MAGAZINE + caliber = "9x39mm" + matter = list(DEFAULT_WALL_MATERIAL = 1000) + multiple_sprites = 1 + ammo_type = /obj/item/ammo_casing/a9x39 + +/obj/item/ammo_magazine/asval/ap + name = "AS-Val magazine(9x39mm armor-piercing)" + matter = list(DEFAULT_WALL_MATERIAL = 1200) + ammo_type = /obj/item/ammo_casing/a9x39/ap + +/obj/item/ammo_magazine/akm + name = "AKM magazine (7.62x39mm standard)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "762mag" + max_ammo = 30 + mag_type = MAGAZINE + caliber = "7.62x39mm" + matter = list(DEFAULT_WALL_MATERIAL = 1600) + multiple_sprites = 1 + ammo_type = /obj/item/ammo_casing/a762x39 + +/obj/item/ammo_magazine/akm/ap + name = "AKM magazine (7.62x39mm armor-piercing)" + matter = list(DEFAULT_WALL_MATERIAL = 2000) + ammo_type = /obj/item/ammo_casing/a762x39/ap + +/obj/item/ammo_magazine/akm/hp + name = "AKM magazine (7.62x39mm hollow-point)" + matter = list(DEFAULT_WALL_MATERIAL = 2000) + ammo_type = /obj/item/ammo_casing/a762x39/hp + +/obj/item/ammo_magazine/m16 + name = "M16 magazine (5.56x45mm standard)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "556mag" + max_ammo = 30 + mag_type = MAGAZINE + caliber = "5.56x45mm" + matter = list(DEFAULT_WALL_MATERIAL = 1400) + multiple_sprites = 1 + ammo_type = /obj/item/ammo_casing/a556 + +/obj/item/ammo_magazine/m16/ap + name = "M16 magazine (5.56x45mm armor-piercing)" + matter = list(DEFAULT_WALL_MATERIAL = 1700) + ammo_type = /obj/item/ammo_casing/a556/ap + +/obj/item/ammo_magazine/m16/hp + name = "M16 magazine (5.56x45mm hollow-point)" + matter = list(DEFAULT_WALL_MATERIAL = 1700) + ammo_type = /obj/item/ammo_casing/a556/hp + +/obj/item/ammo_magazine/m41 + name = "M41A magazine (10x24mm standard)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "m41mag" + max_ammo = 40 + mag_type = MAGAZINE + caliber = "5.56x45mm" + matter = list(DEFAULT_WALL_MATERIAL = 10000) + multiple_sprites = 1 + ammo_type = /obj/item/ammo_casing/a10x24 + +/obj/item/ammo_magazine/clip/sks + name = "Ammo clip(7.62x39mm)" + icon_state = "gclip" + max_ammo = 10 + caliber = "7.62x39mm" + matter = list(DEFAULT_WALL_MATERIAL = 400) + diff --git a/code/modules/projectiles/ammunition/zz_rounds_ch.dm b/code/modules/projectiles/ammunition/zz_rounds_ch.dm new file mode 100644 index 0000000000..612c116a3d --- /dev/null +++ b/code/modules/projectiles/ammunition/zz_rounds_ch.dm @@ -0,0 +1,86 @@ +//Overrides +/obj/item/ammo_casing/a10mm + projectile_type = /obj/item/projectile/bullet/a10mm + +/obj/item/ammo_casing/a38 + projectile_type = /obj/item/projectile/bullet/a38 + +/obj/item/ammo_casing/a380 + projectile_type = /obj/item/projectile/bullet/a380 + +/obj/item/ammo_casing/a357 + projectile_type = /obj/item/projectile/bullet/a357 + +/obj/item/ammo_casing/a12g/pellet + name = "shotgun buckshot shell" + desc = "A 12 gauge buckshot shell." + icon_state = "gshell" + projectile_type = /obj/item/projectile/bullet/shotgun/buckshot/shell + +//New stuff +/obj/item/ammo_casing/a57 + desc = "A standard 5.7x28mm round" + caliber = "5.7x28mm" + projectile_type = /obj/item/projectile/bullet/a57 + matter = list(DEFAULT_WALL_MATERIAL = 60) + +/obj/item/ammo_casing/a57/ap + desc = "An armor piercing 5.7x28mm round" + projectile_type = /obj/item/projectile/bullet/a57/ap + +/obj/item/ammo_casing/a57/hp + desc = "A hollow point 5.7x28mm round" + projectile_type = /obj/item/projectile/bullet/a57/ap + +/obj/item/ammo_casing/a57/rubber + desc = "A rubber 5.7x28mm round" + projectile_type = /obj/item/projectile/bullet/pistol/rubber + +/obj/item/ammo_casing/a762x54 + desc = "A standard 7.62x54mmR round" + caliber = "7.62x54mmR" + projectile_type = /obj/item/projectile/bullet/rifle/a762x54 + matter = list(DEFAULT_WALL_MATERIAL = 160) + +/obj/item/ammo_casing/a762x54/ap + desc = "An armor piercing 7.62x54mmR round" + projectile_type = /obj/item/projectile/bullet/rifle/a762x54/ap + +/obj/item/ammo_casing/a9x39 + desc = "A standard 9x39mm round" + caliber = "9x39mm" + projectile_type = /obj/item/projectile/bullet/rifle/a9x39 + +/obj/item/ammo_casing/a9x39/ap + desc = "An armor piercing 9x39mm round" + projectile_type = /obj/item/projectile/bullet/rifle/a9x39/ap + +/obj/item/ammo_casing/a762x39 + desc = "A standard 7.62x39mm round" + caliber = "7.62x39mm" + projectile_type = /obj/item/projectile/bullet/rifle/a762x39 + +/obj/item/ammo_casing/a762x39/ap + desc = "An armor piercing 7.62x39mm round" + projectile_type = /obj/item/projectile/bullet/rifle/a762x39/ap + +/obj/item/ammo_casing/a762x39/hp + desc = "A hollow point 7.62x39mm round" + projectile_type = /obj/item/projectile/bullet/rifle/a762x39/hp + +/obj/item/ammo_casing/a556 + desc = "A standard 5.56x45mm round" + caliber = "5.56x45mm" + projectile_type = /obj/item/projectile/bullet/rifle/a556 + +/obj/item/ammo_casing/a556/ap + desc = "An armor piercing 5.56x45mm round" + projectile_type = /obj/item/projectile/bullet/rifle/a556/ap + +/obj/item/ammo_casing/a556/hp + desc = "A hollow point 5.56x45mm round" + projectile_type = /obj/item/projectile/bullet/rifle/a556/hp + +/obj/item/ammo_casing/a10x24 + desc = "A standard 10x24mm caseless round" + projectile_type = /obj/item/projectile/bullet/rifle/a10x24 \ No newline at end of file diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm index b0c819bf9a..d543dca58b 100644 --- a/code/modules/projectiles/guns/energy/laser.dm +++ b/code/modules/projectiles/guns/energy/laser.dm @@ -159,7 +159,7 @@ w_class = ITEMSIZE_HUGE //CHOMP Edit. Lol a cannon used to be just large size? Are you kidding me? A CANNON. one_handed_penalty = 90 // The thing's heavy and huge. accuracy = 45 - charge_cost = 600 + charge_cost = 400 //CHOMP Edit. Let's give this thing some more shots, seeing as it needs to be recharged at a charger. /obj/item/weapon/gun/energy/lasercannon/mounted name = "mounted laser cannon" @@ -196,14 +196,16 @@ projectile_type = /obj/item/projectile/beam/sniper slot_flags = SLOT_BACK action_button_name = "Use Scope" - battery_lock = 1 - charge_cost = 600 - fire_delay = 35 + //Begin CHOMPstation Edit for making this thing not trash + //battery_lock = 0 + charge_cost = 360 + fire_delay = 40 force = 10 w_class = ITEMSIZE_HUGE // So it can't fit in a backpack. - accuracy = -45 //shooting at the hip - scoped_accuracy = 50 + accuracy = -30 //shooting at the hip + scoped_accuracy = 100 one_handed_penalty = 60 // The weapon itself is heavy, and the long barrel makes it hard to hold steady with just one hand. + //End CHOMP Edit. /obj/item/weapon/gun/energy/sniperrifle/ui_action_click() scope() @@ -302,4 +304,5 @@ origin_tech = list(TECH_COMBAT = 3, TECH_MAGNET = 1, TECH_MATERIAL = 4) projectile_type = /obj/item/projectile/scatter/laser - w_class = ITEMSIZE_HUGE //CHOMP Edit. \ No newline at end of file + w_class = ITEMSIZE_HUGE //CHOMP Edit. + slot_flags = SLOT_BELT|SLOT_BACK //CHOMP Edit because you can still holster it despite it not fitting in a backpack. \ No newline at end of file diff --git a/code/modules/projectiles/guns/energy/laser_vr.dm b/code/modules/projectiles/guns/energy/laser_vr.dm index c6d2a72e87..1c231d1c08 100644 --- a/code/modules/projectiles/guns/energy/laser_vr.dm +++ b/code/modules/projectiles/guns/energy/laser_vr.dm @@ -213,6 +213,7 @@ list(mode_name="lethal", fire_delay=12, projectile_type=/obj/item/projectile/beam/phaser, charge_cost = 300), list(mode_name="low-power", fire_delay=8, projectile_type=/obj/item/projectile/beam/phaser/light, charge_cost = 60), ) + recoil_mode = 0 //CHOMP Addition: Removes recoil for micros. /obj/item/weapon/gun/energy/locked/frontier/unload_ammo(var/mob/user) if(recharging) diff --git a/code/modules/projectiles/guns/energy/nuclear.dm b/code/modules/projectiles/guns/energy/nuclear.dm index a2469fe417..1b80d65e64 100644 --- a/code/modules/projectiles/guns/energy/nuclear.dm +++ b/code/modules/projectiles/guns/energy/nuclear.dm @@ -31,6 +31,7 @@ charge_cost = 100 force = 8 w_class = ITEMSIZE_HUGE //Probably gonna make it a rifle sooner or later //CHOMP Edit, and so I did. + slot_flags = SLOT_BELT|SLOT_BACK //CHOMP Edit. Let's make it so that if it doesn't fit in a backpack, it doesn't fit in a holster either. fire_delay = 6 projectile_type = /obj/item/projectile/beam/stun/weak diff --git a/code/modules/projectiles/guns/energy/nuclear_yw.dm b/code/modules/projectiles/guns/energy/nuclear_yw.dm index 1180d7a94b..5e9f3e2d7d 100644 --- a/code/modules/projectiles/guns/energy/nuclear_yw.dm +++ b/code/modules/projectiles/guns/energy/nuclear_yw.dm @@ -59,7 +59,7 @@ modifystate = "x01stun" firemodes = list( - list(mode_name="stun", fire_delay = 8, projectile_type= /obj/item/projectile/energy/electrode/x01stunshot, modifystate="x01stun", fire_sound='sound/weapons/Taser.ogg', charge_cost = 240), + list(mode_name="stun", fire_delay = 8, projectile_type= /obj/item/projectile/beam/stun, modifystate="x01stun", fire_sound='sound/weapons/Taser.ogg', charge_cost = 240), list(mode_name="laser", fire_delay = 8, projectile_type=/obj/item/projectile/beam, modifystate="x01laser", fire_sound='sound/weapons/Laser.ogg', charge_cost = 480), list(mode_name="gauss", fire_delay=15, projectile_type=/obj/item/projectile/energy/gauss, modifystate="x01gauss", fire_sound='sound/weapons/gauss_shoot.ogg', charge_cost = 360) ) diff --git a/code/modules/projectiles/guns/energy/particle.dm b/code/modules/projectiles/guns/energy/particle.dm index a255f80262..be3ba7555b 100644 --- a/code/modules/projectiles/guns/energy/particle.dm +++ b/code/modules/projectiles/guns/energy/particle.dm @@ -23,6 +23,7 @@ charge_cost = 200 //slightly more shots than lasers var/safetycatch = 0 //if 1, won't let you fire in pressurised environment, rather than malfunctioning var/obj/item/pressurelock/attached_safety + recoil_mode = 0 //CHOMP Addition: Removes recoil for micros. /obj/item/weapon/gun/energy/particle/advanced //particle equivalent of AEG diff --git a/code/modules/projectiles/guns/energy/phase.dm b/code/modules/projectiles/guns/energy/phase.dm index ec3c7ff438..33ba37ad40 100644 --- a/code/modules/projectiles/guns/energy/phase.dm +++ b/code/modules/projectiles/guns/energy/phase.dm @@ -11,6 +11,7 @@ charge_cost = 240 projectile_type = /obj/item/projectile/energy/phase one_handed_penalty = 15 + recoil_mode = 0 //CHOMP Addition: Removes recoil for micros. /obj/item/weapon/gun/energy/phasegun/pistol name = "phase pistol" @@ -56,4 +57,4 @@ obj/item/weapon/gun/energy/phasegun/rifle charge_cost = 100 projectile_type = /obj/item/projectile/energy/phase/heavy/cannon accuracy = 15 - one_handed_penalty = 65 \ No newline at end of file + one_handed_penalty = 65 diff --git a/code/modules/projectiles/guns/magnetic/magnetic_railgun.dm b/code/modules/projectiles/guns/magnetic/magnetic_railgun.dm index 8497207f2e..4e93773451 100644 --- a/code/modules/projectiles/guns/magnetic/magnetic_railgun.dm +++ b/code/modules/projectiles/guns/magnetic/magnetic_railgun.dm @@ -15,10 +15,10 @@ load_type = /obj/item/weapon/rcd_ammo projectile_type = /obj/item/projectile/bullet/magnetic/slug - cell = /obj/item/weapon/cell/hyper + cell = /obj/item/weapon/cell/device/weapon //CHOMP Edit. capacitor = /obj/item/weapon/stock_parts/capacitor/adv loaded = /obj/item/weapon/rcd_ammo/large - removable_components = FALSE + removable_components = TRUE //CHOMP Edit. var/slowdown_held = 2 var/slowdown_worn = 1 @@ -83,11 +83,13 @@ icon_state = "flechette_gun" item_state = "z8carbine" - cell = /obj/item/weapon/cell/hyper + cell = /obj/item/weapon/cell/device/weapon //CHOMP Edit. capacitor = /obj/item/weapon/stock_parts/capacitor/adv + removable_components = TRUE //CHOMP Edit. fire_delay = 0 + w_class = ITEMSIZE_HUGE //CHOMP Edit. slot_flags = SLOT_BACK slowdown = 0 @@ -98,6 +100,7 @@ load_type = /obj/item/weapon/magnetic_ammo projectile_type = /obj/item/projectile/bullet/magnetic/flechette loaded = /obj/item/weapon/magnetic_ammo + removable_components = TRUE //CHOMP Edit. empty_sound = 'sound/weapons/smg_empty_alarm.ogg' firemodes = list( @@ -114,8 +117,9 @@ item_state = "combatrevolver" w_class = ITEMSIZE_SMALL - cell = /obj/item/weapon/cell/super + cell = /obj/item/weapon/cell/device/weapon //CHOMP Edit. capacitor = /obj/item/weapon/stock_parts/capacitor + removable_components = TRUE //CHOMPstation Edit fire_delay = 0 @@ -129,7 +133,6 @@ load_type = /obj/item/weapon/magnetic_ammo/pistol projectile_type = /obj/item/projectile/bullet/magnetic/flechette/small loaded = /obj/item/weapon/magnetic_ammo/pistol - removable_components = TRUE empty_sound = 'sound/weapons/smg_empty_alarm.ogg' firemodes = list( @@ -145,14 +148,14 @@ icon_state = "railgun_sec" item_state = "cshotgun" - removable_components = TRUE - cell = /obj/item/weapon/cell/device/weapon capacitor = /obj/item/weapon/stock_parts/capacitor + removable_components = TRUE //CHOMPstation Edit fire_delay = 8 slot_flags = SLOT_BACK + w_class = ITEMSIZE_HUGE //CHOMP Edit. slowdown = 0 slowdown_held = 0.3 @@ -182,6 +185,7 @@ cell = /obj/item/weapon/cell/device/weapon capacitor = /obj/item/weapon/stock_parts/capacitor + removable_components = TRUE //CHOMPstation Edit slot_flags = SLOT_BELT|SLOT_HOLSTER @@ -209,10 +213,11 @@ icon_state = "railgun_sifguard" item_state = "z8carbine" - cell = /obj/item/weapon/cell/high + cell = /obj/item/weapon/cell/device/weapon //CHOMP Edit. capacitor = /obj/item/weapon/stock_parts/capacitor/adv + removable_components = TRUE //CHOMPstation Edit. - slot_flags = SLOT_BACK + slot_flags = SLOT_BELT|SLOT_BACK //CHOMPstation Edit. This is a carbine. slowdown_held = 0.3 diff --git a/code/modules/projectiles/guns/projectile/zz_ballistics_ch.dm b/code/modules/projectiles/guns/projectile/zz_ballistics_ch.dm index 848dd87658..918249bfce 100644 --- a/code/modules/projectiles/guns/projectile/zz_ballistics_ch.dm +++ b/code/modules/projectiles/guns/projectile/zz_ballistics_ch.dm @@ -17,6 +17,9 @@ /obj/item/weapon/gun/projectile/fiveseven/update_icon() icon_state = ammo_magazine ? "[initial(icon_state)]" : "[initial(icon_state)]-e" +//Was originally expecting to be able to have 64x64 guns and just shrink them but that's just like not a thing because code doesn't allow it +//And Kasssc kinda explained to me that even if the code did allow it, it wouldn't look right. +//So, we have the mp5 as the only one that does have this, and it just uses filters to convert the 64x64 sprite into 32x32 for now. /obj/item/weapon/gun/projectile/automatic/cballistic name = "I AM NOT SUPPOSED TO EXIST" desc = "Yes hello I'm not supposed to exist, I'm just a weird code artefact thing please contact a developer." @@ -55,6 +58,190 @@ load_method = MAGAZINE muzzle_velocity = 400 +//Following guns are thanks to Serdy/Przyjaciel for the sprites and lore for WKHM. Naming the classes after him in honor <3 +/obj/item/weapon/gun/projectile/automatic/serdy + name = "I AM NOT SUPPOSED TO EXIST" + desc = "Yes hello I'm not supposed to exist, I'm just a weird code artefact thing please contact a developer." + icon = 'icons/obj/64x32guns_ch.dmi' + icon_state = "asval" + icon_expected_height = 32 + icon_expected_width = 64 + +/obj/item/weapon/gun/projectile/automatic/serdy/Initialize() + . = ..() + update_transform() + +/obj/item/weapon/gun/projectile/automatic/serdy/update_transform() + . = ..() + transform = transform.Translate(-16,0) +//AK Variants + +/obj/item/weapon/gun/projectile/automatic/serdy/asval + name = "AS-VAL" + desc = "A somewhat competent remake of an ancient russian assault rifle. Commonly found in the hands of criminals, and on pan-slavic rimworlds. Integrally suppressed, chambered in 7.62x39mm." + caliber = "9x39mm" + magazine_type = /obj/item/ammo_magazine/asval + allowed_magazines = list(/obj/item/ammo_magazine/asval) + icon_state = "asval" + projectile_type = /obj/item/projectile/bullet/rifle/a9x39 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT | LOCK_MANUAL_LOCK + muzzle_velocity = 295 + w_class = ITEMSIZE_HUGE + +/obj/item/weapon/gun/projectile/automatic/serdy/krinkov + name = "Krinkov" + desc = "A professionally cut down AKM made to be easily concealable. With a 12 inch barrel, this is a very loud short barrel rifle. Illegal pretty much everywhere, and easy to get a hold of, these classic russian firearms are a mainstay amidst the various criminal organizations across the galaxy." + caliber = "7.62x39mm" + magazine_type = /obj/item/ammo_magazine/akm + allowed_magazines = list(/obj/item/ammo_magazine/akm) + icon_state = "krinkov" + projectile_type = /obj/item/projectile/bullet/rifle/a762x39 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT | LOCK_MANUAL_LOCK + muzzle_velocity = 680 + +/obj/item/weapon/gun/projectile/automatic/serdy/akm + name = "AKM" + desc = "The tried and true, old fashioned chatterbox. Ivan's favorite. Best used while at least somewhat inebriated. Chambered in 7.62x39mm." + caliber = "7.62x39mm" + magazine_type = /obj/item/ammo_magazine/akm + allowed_magazines = list(/obj/item/ammo_magazine/akm) + icon_state = "akm" + projectile_type = /obj/item/projectile/bullet/rifle/a762x39 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT | LOCK_MANUAL_LOCK + muzzle_velocity = 715 + w_class = ITEMSIZE_HUGE + +/obj/item/weapon/gun/projectile/automatic/serdy/scrapak + name = "AKM" + desc = "The 'Stalingrad Special'. This rickety old AKM has seen better days. Better bring some vodka, because every shot this gun manages to squeeze off without blowing up in your face is worthy of celebration. Chambered in 7.62x39mm" + caliber = "7.62x39mm" + magazine_type = /obj/item/ammo_magazine/akm + allowed_magazines = list(/obj/item/ammo_magazine/akm) + icon_state = "scrapak" + projectile_type = /obj/item/projectile/bullet/rifle/a762x39 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT | LOCK_MANUAL_LOCK + muzzle_velocity = 700 + w_class = ITEMSIZE_HUGE + +// AR Variants + +/obj/item/weapon/gun/projectile/automatic/serdy/m16a2 + name = "M16A2" + desc = "A favorite service rifle everywhere, even today. It might be a reproduction, but Eugene Stoner smiles upon every man or woman who wields this beautiful democracy dispensing machine, even if it's never seen the soil of Terra, and never will. Chambered in 5.56x45mm." + caliber = "5.56x45mm" + + magazine_type = /obj/item/ammo_magazine/m16 + allowed_magazines = list(/obj/item/ammo_magazine/m16) + icon_state="m16" + projectile_type = /obj/item/projectile/bullet/rifle/a556 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY | LOCK_SLAPPABLE + muzzle_velocity = 960 + w_class = ITEMSIZE_HUGE + +/obj/item/weapon/gun/projectile/automatic/serdy/m4a1 + name = "M4A1" + desc = "The M16's shorter, more lightweight little brother. An old terran flag is stamped into the receiver. These guns can be found just about everywhere. A favorite on the rimworlds due to its simplicity to produce, and reliability. Chambered in 5.56x45mm." + caliber = "5.56x45mm" + magazine_type = /obj/item/ammo_magazine/m16 + allowed_magazines = list(/obj/item/ammo_magazine/m16) + icon_state="m4" + projectile_type = /obj/item/projectile/bullet/rifle/a556 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY | LOCK_SLAPPABLE + load_method = MAGAZINE + muzzle_velocity = 910 + w_class = ITEMSIZE_HUGE + +/obj/item/weapon/gun/projectile/automatic/serdy/patriot + name = "Patriot" + desc = "I raised you, and loved you, I've given you weapons, taught you techniques, endowed you with knowledge. There's nothing more for me to give you. All that's left for you to take is my life. 'Still in a dream' is stamped into the receiver, and it has no serial number. Chambered in 5.56x45mm." + caliber = "5.56x45mm" + magazine_type = /obj/item/ammo_magazine/m16 + allowed_magazines = list(/obj/item/ammo_magazine/m16) + icon_state="patriot" + projectile_type = /obj/item/projectile/bullet/rifle/a556 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY | LOCK_SLAPPABLE + load_method = MAGAZINE + muzzle_velocity = 960 + w_class = ITEMSIZE_HUGE + +//Other rifles + +/obj/item/weapon/gun/projectile/automatic/serdy/m41ab //This gun is pretty overpowered. Leaving it as an admin spawn. Might even interfere with lore. + name = "M41A/2" + desc = "The Armat M41A Pulse Rifle is a pulse-action assault rifle chambered for 10×24mm Caseless ammunition. This one is a rare, and fairly competent replica of the original by Scarborough Arms, with some minor design improvements over the original. The aluminium chassis is painted steel blue, and it has 'Scarborough Arms - Per falcis, per pravitas' inscribed on the stock." + caliber = "10x24mm caseless" + magazine_type = /obj/item/ammo_magazine/m41 + allowed_magazines = list(/obj/item/ammo_magazine/m41) + icon_state="m41ab" + projectile_type = /obj/item/projectile/bullet/rifle/a10x24 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + muzzle_velocity = 840 + +/obj/item/weapon/gun/projectile/automatic/serdy/m41a //This gun is pretty overpowered. Leaving it as an admin spawn. Might even interfere with lore. + name = "M41A" + desc = "A tried and true original. The Armat M41A Pulse Rifle is a pulse-action assault rifle chambered for 10×24mm Caseless ammunition. 'PEACE THROUGH SUPERIOR FIREPOWER' is stamped into the side of the aluminium chassis." + caliber = "10x24mm caseless" + magazine_type = /obj/item/ammo_magazine/m41 + allowed_magazines = list(/obj/item/ammo_magazine/m41) + icon_state="m41a" + projectile_type = /obj/item/projectile/bullet/rifle/a10x24 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + muzzle_velocity = 840 + +/obj/item/weapon/gun/projectile/automatic/serdy/sks //Reminder to myself to make sure this works and also to make sure that people are able to empty the internal mag + name = "SKS" + desc = "Just looking at it makes you want to buy a tacticool turtleneck, go into the woods, and -operate-. Chambered in 7.62x39mm." + caliber = "7.62x39mm" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + load_method = SINGLE_CASING|SPEEDLOADER + icon_state = "sks" + projectile_type = /obj/item/projectile/bullet/rifle/a762x39 + muzzle_velocity = 735 + max_shells = 10 + ammo_type = /obj/item/ammo_casing/a762x39 + + //Time to give all these existing guns some new properties. //automatic.dm /obj/item/weapon/gun/projectile/automatic diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index b1b7a240ab..4966e9e160 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -690,7 +690,7 @@ //admin logs if(!no_attack_log) if(istype(firer, /mob) && istype(target_mob)) - add_attack_logs(firer,target_mob,"Shot with \a [src.type] projectile") + add_attack_logs(firer,target_mob,"Shot with \a [src.type] projectile",use_async=FALSE) //CHOMPEdit //sometimes bullet_act() will want the projectile to continue flying if (result == PROJECTILE_CONTINUE) diff --git a/code/modules/projectiles/projectile/beams.dm b/code/modules/projectiles/projectile/beams.dm index 0d6d75226a..d4a4aadf97 100644 --- a/code/modules/projectiles/projectile/beams.dm +++ b/code/modules/projectiles/projectile/beams.dm @@ -1,276 +1,281 @@ -/obj/item/projectile/beam - name = "laser" - icon_state = "laser" - fire_sound = 'sound/weapons/Laser.ogg' - pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE - damage = 40 - damage_type = BURN - check_armour = "laser" - eyeblur = 4 - var/frequency = 1 - hitscan = 1 - embed_chance = 0 - invisibility = 99 //beam projectiles are invisible as they are rendered by the effect engine - light_range = 2 - light_power = 0.5 - light_color = "#FF0D00" - hitsound = 'sound/weapons/sear.ogg' - hitsound_wall = 'sound/weapons/effects/searwall.ogg' - - muzzle_type = /obj/effect/projectile/muzzle/laser - tracer_type = /obj/effect/projectile/tracer/laser - impact_type = /obj/effect/projectile/impact/laser - -/obj/item/projectile/beam/practice - name = "laser" - icon_state = "laser" - damage = 0 - damage_type = BURN - check_armour = "laser" - eyeblur = 2 - -/obj/item/projectile/beam/weaklaser - name = "weak laser" - icon_state = "laser" - damage = 15 - -/obj/item/projectile/beam/smalllaser - damage = 25 - -/obj/item/projectile/beam/burstlaser - damage = 30 - armor_penetration = 10 - - -/obj/item/projectile/beam/midlaser - damage = 40 - armor_penetration = 10 - -/obj/item/projectile/beam/heavylaser - name = "heavy laser" - icon_state = "heavylaser" - fire_sound = 'sound/weapons/lasercannonfire.ogg' - damage = 60 - armor_penetration = 30 - light_range = 3 - light_power = 1 - light_color = "#FF0D00" - - muzzle_type = /obj/effect/projectile/muzzle/laser_heavy - tracer_type = /obj/effect/projectile/tracer/laser_heavy - impact_type = /obj/effect/projectile/impact/laser_heavy - -/obj/item/projectile/beam/heavylaser/fakeemitter - name = "emitter beam" - icon_state = "emitter" - fire_sound = 'sound/weapons/emitter.ogg' - light_color = "#00CC33" - excavation_amount = 140 // 2 shots to dig a standard rock turf. Superior due to being a mounted tool beam, to make it actually viable. - - muzzle_type = /obj/effect/projectile/muzzle/emitter - tracer_type = /obj/effect/projectile/tracer/emitter - impact_type = /obj/effect/projectile/impact/emitter - -/obj/item/projectile/beam/heavylaser/cannon - damage = 80 - armor_penetration = 50 - light_color = "#FF0D00" - -/obj/item/projectile/beam/xray - name = "xray beam" - icon_state = "xray" - fire_sound = 'sound/weapons/eluger.ogg' - damage = 25 - armor_penetration = 50 - light_color = "#00CC33" - - muzzle_type = /obj/effect/projectile/muzzle/xray - tracer_type = /obj/effect/projectile/tracer/xray - impact_type = /obj/effect/projectile/impact/xray - -/obj/item/projectile/beam/gamma - name = "gamma beam" - icon_state = "xray" - fire_sound = 'sound/weapons/eluger.ogg' - damage = 10 - armor_penetration = 90 - irradiate = 20 - light_color = "#00CC33" - - muzzle_type = /obj/effect/projectile/muzzle/xray - tracer_type = /obj/effect/projectile/tracer/xray - impact_type = /obj/effect/projectile/impact/xray - -/obj/item/projectile/beam/cyan - name = "cyan beam" - icon_state = "cyan" - fire_sound = 'sound/weapons/eluger.ogg' - damage = 40 - light_color = "#00C6FF" - - muzzle_type = /obj/effect/projectile/muzzle/laser_omni - tracer_type = /obj/effect/projectile/tracer/laser_omni - impact_type = /obj/effect/projectile/impact/laser_omni - -/obj/item/projectile/beam/pulse - name = "pulse" - icon_state = "u_laser" - fire_sound='sound/weapons/gauss_shoot.ogg' // Needs a more meaty sound than what pulse.ogg currently is; this will be a placeholder for now. - damage = 100 //Badmin toy, don't care - armor_penetration = 100 - light_color = "#0066FF" - - muzzle_type = /obj/effect/projectile/muzzle/laser_pulse - tracer_type = /obj/effect/projectile/tracer/laser_pulse - impact_type = /obj/effect/projectile/impact/laser_pulse - -/obj/item/projectile/beam/pulse/on_hit(var/atom/target, var/blocked = 0) - if(isturf(target)) - target.ex_act(2) - ..() - -/obj/item/projectile/beam/emitter - name = "emitter beam" - icon_state = "emitter" - fire_sound = 'sound/weapons/emitter.ogg' - damage = 0 // The actual damage is computed in /code/modules/power/singularity/emitter.dm - light_color = "#00CC33" - excavation_amount = 70 // 3 shots to mine a turf - - muzzle_type = /obj/effect/projectile/muzzle/emitter - tracer_type = /obj/effect/projectile/tracer/emitter - impact_type = /obj/effect/projectile/impact/emitter - -/obj/item/projectile/beam/lasertag - name = "lasertag beam" - damage = 0 - eyeblur = 0 - no_attack_log = 1 - damage_type = BURN - check_armour = "laser" - - combustion = FALSE - -/obj/item/projectile/beam/lasertag/blue - icon_state = "bluelaser" - light_color = "#0066FF" - - muzzle_type = /obj/effect/projectile/muzzle/laser_blue - tracer_type = /obj/effect/projectile/tracer/laser_blue - impact_type = /obj/effect/projectile/impact/laser_blue - -/obj/item/projectile/beam/lasertag/blue/on_hit(var/atom/target, var/blocked = 0) - if(ishuman(target)) - var/mob/living/carbon/human/M = target - if(istype(M.wear_suit, /obj/item/clothing/suit/redtag)) - M.Weaken(5) - return 1 - -/obj/item/projectile/beam/lasertag/red - icon_state = "laser" - light_color = "#FF0D00" - -/obj/item/projectile/beam/lasertag/red/on_hit(var/atom/target, var/blocked = 0) - if(ishuman(target)) - var/mob/living/carbon/human/M = target - if(istype(M.wear_suit, /obj/item/clothing/suit/bluetag)) - M.Weaken(5) - return 1 - -/obj/item/projectile/beam/lasertag/omni//A laser tag bolt that stuns EVERYONE - icon_state = "omnilaser" - light_color = "#00C6FF" - - muzzle_type = /obj/effect/projectile/muzzle/laser_omni - tracer_type = /obj/effect/projectile/tracer/laser_omni - impact_type = /obj/effect/projectile/impact/laser_omni - -/obj/item/projectile/beam/lasertag/omni/on_hit(var/atom/target, var/blocked = 0) - if(ishuman(target)) - var/mob/living/carbon/human/M = target - if((istype(M.wear_suit, /obj/item/clothing/suit/bluetag))||(istype(M.wear_suit, /obj/item/clothing/suit/redtag))) - M.Weaken(5) - return 1 - -/obj/item/projectile/beam/sniper - name = "sniper beam" - icon_state = "xray" - fire_sound = 'sound/weapons/gauss_shoot.ogg' - damage = 50 - armor_penetration = 10 - light_color = "#00CC33" - - muzzle_type = /obj/effect/projectile/muzzle/xray - tracer_type = /obj/effect/projectile/tracer/xray - impact_type = /obj/effect/projectile/impact/xray - -/obj/item/projectile/beam/stun - name = "stun beam" - icon_state = "stun" - fire_sound = 'sound/weapons/Taser.ogg' - nodamage = 1 - taser_effect = 1 - agony = 40 - damage_type = HALLOSS - light_color = "#FFFFFF" - hitsound = 'sound/weapons/zapbang.ogg' - - combustion = FALSE - - muzzle_type = /obj/effect/projectile/muzzle/stun - tracer_type = /obj/effect/projectile/tracer/stun - impact_type = /obj/effect/projectile/impact/stun - -/obj/item/projectile/beam/stun/weak - name = "weak stun beam" - icon_state = "stun" - agony = 25 - -/obj/item/projectile/beam/stun/med - name = "stun beam" - icon_state = "stun" - agony = 30 - -/obj/item/projectile/beam/stun/disabler - muzzle_type = /obj/effect/projectile/muzzle/laser_omni - tracer_type = /obj/effect/projectile/tracer/laser_omni - impact_type = /obj/effect/projectile/impact/laser_omni - -/obj/item/projectile/beam/stun/disabler/on_hit(atom/target, blocked = 0, def_zone) - . = ..(target, blocked, def_zone) - - if(. && istype(target, /mob/living/silicon/robot) && prob(agony)) - var/mob/living/silicon/robot/R = target - var/drainamt = agony * (rand(5, 15) / 10) - R.drain_power(0, 0, drainamt) - if(istype(firer, /mob/living/silicon/robot)) // Mischevious sappers, the swarm drones are. - var/mob/living/silicon/robot/A = firer - if(A.cell) - A.cell.give(drainamt * 2) - -/obj/item/projectile/beam/shock - name = "shock beam" - icon_state = "lightning" - damage_type = ELECTROCUTE - - muzzle_type = /obj/effect/projectile/muzzle/lightning - tracer_type = /obj/effect/projectile/tracer/lightning - impact_type = /obj/effect/projectile/impact/lightning - - damage = 30 - agony = 15 - eyeblur = 2 - hitsound = 'sound/weapons/zapbang.ogg' - -/obj/item/projectile/beam/precursor //CHOMPedit added Precursor beam - name = "precursor beam" - icon_state = "alien beam" - fire_sound = 'sound/weapons/MediumLaser.ogg' - light_color = "#FF0099" - - muzzle_type = /obj/effect/projectile/muzzle/precursor - tracer_type = /obj/effect/projectile/tracer/precursor - impact_type = /obj/effect/projectile/impact/precursor - - damage = 48 - armor_penetration = 10 +/obj/item/projectile/beam + name = "laser" + icon_state = "laser" + fire_sound = 'sound/weapons/Laser.ogg' + pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE + damage = 40 + damage_type = BURN + check_armour = "laser" + eyeblur = 4 + var/frequency = 1 + hitscan = 1 + embed_chance = 0 + invisibility = 99 //beam projectiles are invisible as they are rendered by the effect engine + light_range = 2 + light_power = 0.5 + light_color = "#FF0D00" + hitsound = 'sound/weapons/sear.ogg' + hitsound_wall = 'sound/weapons/effects/searwall.ogg' + + muzzle_type = /obj/effect/projectile/muzzle/laser + tracer_type = /obj/effect/projectile/tracer/laser + impact_type = /obj/effect/projectile/impact/laser + +/obj/item/projectile/beam/practice + name = "laser" + icon_state = "laser" + damage = 0 + damage_type = BURN + check_armour = "laser" + eyeblur = 2 + +/obj/item/projectile/beam/weaklaser + name = "weak laser" + icon_state = "laser" + damage = 15 + +/obj/item/projectile/beam/smalllaser + damage = 25 + +/obj/item/projectile/beam/burstlaser + damage = 30 + armor_penetration = 10 + + +/obj/item/projectile/beam/midlaser + damage = 40 + armor_penetration = 10 + +/obj/item/projectile/beam/heavylaser + name = "heavy laser" + icon_state = "heavylaser" + fire_sound = 'sound/weapons/lasercannonfire.ogg' + damage = 60 + armor_penetration = 30 + light_range = 3 + light_power = 1 + light_color = "#FF0D00" + + muzzle_type = /obj/effect/projectile/muzzle/laser_heavy + tracer_type = /obj/effect/projectile/tracer/laser_heavy + impact_type = /obj/effect/projectile/impact/laser_heavy + +/obj/item/projectile/beam/heavylaser/fakeemitter + name = "emitter beam" + icon_state = "emitter" + fire_sound = 'sound/weapons/emitter.ogg' + light_color = "#00CC33" + excavation_amount = 140 // 2 shots to dig a standard rock turf. Superior due to being a mounted tool beam, to make it actually viable. + + muzzle_type = /obj/effect/projectile/muzzle/emitter + tracer_type = /obj/effect/projectile/tracer/emitter + impact_type = /obj/effect/projectile/impact/emitter + +/obj/item/projectile/beam/heavylaser/cannon + damage = 80 + armor_penetration = 50 + light_color = "#FF0D00" + +/obj/item/projectile/beam/xray + name = "xray beam" + icon_state = "xray" + fire_sound = 'sound/weapons/eluger.ogg' + damage = 25 + armor_penetration = 50 + light_color = "#00CC33" + + muzzle_type = /obj/effect/projectile/muzzle/xray + tracer_type = /obj/effect/projectile/tracer/xray + impact_type = /obj/effect/projectile/impact/xray + +/obj/item/projectile/beam/gamma + name = "gamma beam" + icon_state = "xray" + fire_sound = 'sound/weapons/eluger.ogg' + damage = 12 //CHOMPedit + armor_penetration = 90 + irradiate = 20 + light_color = "#00CC33" + + muzzle_type = /obj/effect/projectile/muzzle/xray + tracer_type = /obj/effect/projectile/tracer/xray + impact_type = /obj/effect/projectile/impact/xray + +/obj/item/projectile/beam/cyan + name = "cyan beam" + icon_state = "cyan" + fire_sound = 'sound/weapons/eluger.ogg' + damage = 40 + light_color = "#00C6FF" + + muzzle_type = /obj/effect/projectile/muzzle/laser_omni + tracer_type = /obj/effect/projectile/tracer/laser_omni + impact_type = /obj/effect/projectile/impact/laser_omni + +/obj/item/projectile/beam/pulse + name = "pulse" + icon_state = "u_laser" + fire_sound='sound/weapons/gauss_shoot.ogg' // Needs a more meaty sound than what pulse.ogg currently is; this will be a placeholder for now. + damage = 100 //Badmin toy, don't care + armor_penetration = 100 + light_color = "#0066FF" + + muzzle_type = /obj/effect/projectile/muzzle/laser_pulse + tracer_type = /obj/effect/projectile/tracer/laser_pulse + impact_type = /obj/effect/projectile/impact/laser_pulse + +/obj/item/projectile/beam/pulse/on_hit(var/atom/target, var/blocked = 0) + if(isturf(target)) + target.ex_act(2) + ..() + +/obj/item/projectile/beam/emitter + name = "emitter beam" + icon_state = "emitter" + fire_sound = 'sound/weapons/emitter.ogg' + damage = 0 // The actual damage is computed in /code/modules/power/singularity/emitter.dm + light_color = "#00CC33" + excavation_amount = 70 // 3 shots to mine a turf + + muzzle_type = /obj/effect/projectile/muzzle/emitter + tracer_type = /obj/effect/projectile/tracer/emitter + impact_type = /obj/effect/projectile/impact/emitter + +/obj/item/projectile/beam/lasertag + name = "lasertag beam" + damage = 0 + eyeblur = 0 + no_attack_log = 1 + damage_type = BURN + check_armour = "laser" + + combustion = FALSE + +/obj/item/projectile/beam/lasertag/blue + icon_state = "bluelaser" + light_color = "#0066FF" + + muzzle_type = /obj/effect/projectile/muzzle/laser_blue + tracer_type = /obj/effect/projectile/tracer/laser_blue + impact_type = /obj/effect/projectile/impact/laser_blue + +/obj/item/projectile/beam/lasertag/blue/on_hit(var/atom/target, var/blocked = 0) + if(ishuman(target)) + var/mob/living/carbon/human/M = target + if(istype(M.wear_suit, /obj/item/clothing/suit/redtag)) + M.Weaken(5) + return 1 + +/obj/item/projectile/beam/lasertag/red + icon_state = "laser" + light_color = "#FF0D00" + +/obj/item/projectile/beam/lasertag/red/on_hit(var/atom/target, var/blocked = 0) + if(ishuman(target)) + var/mob/living/carbon/human/M = target + if(istype(M.wear_suit, /obj/item/clothing/suit/bluetag)) + M.Weaken(5) + return 1 + +/obj/item/projectile/beam/lasertag/omni//A laser tag bolt that stuns EVERYONE + icon_state = "omnilaser" + light_color = "#00C6FF" + + muzzle_type = /obj/effect/projectile/muzzle/laser_omni + tracer_type = /obj/effect/projectile/tracer/laser_omni + impact_type = /obj/effect/projectile/impact/laser_omni + +/obj/item/projectile/beam/lasertag/omni/on_hit(var/atom/target, var/blocked = 0) + if(ishuman(target)) + var/mob/living/carbon/human/M = target + if((istype(M.wear_suit, /obj/item/clothing/suit/bluetag))||(istype(M.wear_suit, /obj/item/clothing/suit/redtag))) + M.Weaken(5) + return 1 + +/obj/item/projectile/beam/sniper + name = "sniper beam" + icon_state = "xray" + fire_sound = 'sound/weapons/gauss_shoot.ogg' + damage = 50 + armor_penetration = 10 + light_color = "#00CC33" + + muzzle_type = /obj/effect/projectile/muzzle/xray + tracer_type = /obj/effect/projectile/tracer/xray + impact_type = /obj/effect/projectile/impact/xray + +/obj/item/projectile/beam/stun + name = "stun beam" + icon_state = "stun" + fire_sound = 'sound/weapons/Taser.ogg' + nodamage = 1 + taser_effect = 1 + agony = 40 + damage_type = HALLOSS + light_color = "#FFFFFF" + hitsound = 'sound/weapons/zapbang.ogg' + + combustion = FALSE + + muzzle_type = /obj/effect/projectile/muzzle/stun + tracer_type = /obj/effect/projectile/tracer/stun + impact_type = /obj/effect/projectile/impact/stun + +/obj/item/projectile/beam/stun/weak + name = "weak stun beam" + icon_state = "stun" + agony = 25 + +/obj/item/projectile/beam/stun/med + name = "stun beam" + icon_state = "stun" + agony = 30 + +/obj/item/projectile/beam/stun/disabler + muzzle_type = /obj/effect/projectile/muzzle/laser_omni + tracer_type = /obj/effect/projectile/tracer/laser_omni + impact_type = /obj/effect/projectile/impact/laser_omni + +/obj/item/projectile/beam/stun/disabler/on_hit(atom/target, blocked = 0, def_zone) + . = ..(target, blocked, def_zone) + + if(. && istype(target, /mob/living/silicon/robot) && prob(agony)) + var/mob/living/silicon/robot/R = target + var/drainamt = agony * (rand(5, 15) / 10) + R.drain_power(0, 0, drainamt) + if(istype(firer, /mob/living/silicon/robot)) // Mischevious sappers, the swarm drones are. + var/mob/living/silicon/robot/A = firer + if(A.cell) + A.cell.give(drainamt * 2) + +/obj/item/projectile/beam/shock + name = "shock beam" + icon_state = "lightning" + damage_type = ELECTROCUTE + + muzzle_type = /obj/effect/projectile/muzzle/lightning + tracer_type = /obj/effect/projectile/tracer/lightning + impact_type = /obj/effect/projectile/impact/lightning + + damage = 30 + agony = 15 + eyeblur = 2 + hitsound = 'sound/weapons/zapbang.ogg' + + +/obj/item/projectile/beam/precursor //CHOMPedit added Precursor beam + name = "precursor beam" + icon_state = "alien beam" + fire_sound = 'sound/weapons/MediumLaser.ogg' + light_color = "#FF0099" + + muzzle_type = /obj/effect/projectile/muzzle/precursor + tracer_type = /obj/effect/projectile/tracer/precursor + impact_type = /obj/effect/projectile/impact/precursor + + damage = 48 + armor_penetration = 10 + +/obj/item/projectile/beam/shock/weak + damage = 5 + agony = 10 diff --git a/code/modules/projectiles/projectile/bullets_ch.dm b/code/modules/projectiles/projectile/bullets_ch.dm index 961ed2cb4f..f44b8ea67a 100644 --- a/code/modules/projectiles/projectile/bullets_ch.dm +++ b/code/modules/projectiles/projectile/bullets_ch.dm @@ -2,12 +2,21 @@ /obj/item/projectile/bullet var/diam = 9 //mm - var/energy_add = 0 + var/energy_add = 0 //See note below. Adds velocity, basically. var/velocity = 500 //Meters per second - var/hollow_point = FALSE + var/hollow_point = FALSE //Determines if the round leaves additional shrapnel in the wound var/grains = 115 //I hope the unit is obvious var/energy //Joules - var/old_bullet_act = FALSE + var/old_bullet_act = FALSE //This makes it so that the game ignores the new ballistic stuff and uses old damage system for the bullet. + +/*energy_add +Pretty much, when a bullet is a fired from a gun, it replaces the default muzzle velocity of the round with it's own muzzle velocity, +so if you want a certain round to have extra velocity, you have the option to add energy. For example, +if I have an AP round that shoots 650 m/s and the base round only shoots 600 m/s, I need to take the weight of the round in grains (say 60), +convert it to kilograms (divide by 15432 or some wacky number like that, just google grains to kilograms), then multiply the weight in kilograms by +the velocity squared for both the 650, and 600, and subtract the result for 650 from the result for 600, then that number is what I would put there. +If you want to be lazy, or you can't find more specific numbers for the AP/HP versions of a round, then just don't bother with changing any of that and +only use the hollow_point and armor_penetration values.*/ /obj/item/projectile/bullet/launch_projectile(atom/target, target_zone, mob/user, params, angle_override, forced_spread = 0) energy = 0.5 * velocity * velocity * (grains / GRAINS_PER_KG) + energy_add @@ -154,6 +163,22 @@ velocity = 343 armor_penetration = -50 hollow_point = TRUE + +/obj/item/projectile/bullet/a22lr + fire_sound = 'sound/weapons/gunshot_pathetic.ogg' + grains = 40 + diam = 5.7 + velocity = 370 + +/obj/item/projectile/bullet/a22lr/ap + grains = 31 + velocity = 530 + armor_penetration = 15 + +/obj/item/projectile/bullet/a22lr/hp + grains = 38 + velocity = 380 + hollow_point = TRUE //Shotgun projectiles @@ -176,19 +201,13 @@ submunition_spread_max = 67.5 submunitions = list(/obj/item/projectile/bullet/shotgun/buckshot = 8) -/obj/item/ammo_casing/a12g/pellet - name = "shotgun buckshot shell" - desc = "A 12 gauge buckshot shell." - icon_state = "gshell" - projectile_type = /obj/item/projectile/bullet/shotgun/buckshot/shell - //Rifle projectiles /obj/item/projectile/bullet/rifle armor_penetration = 0 //No. Rifle rounds don't get extra AP by default, their nature already makes them more armor penetrating. /obj/item/projectile/bullet/rifle/a762 //7.62x51 NATO fire_sound = 'sound/weapons/ballistics/a762.ogg' - diam = 7.62 + diam = 7.82 grains = 147 velocity = 850 @@ -204,9 +223,25 @@ armor_penetration = -50 hollow_point = TRUE +/obj/item/projectile/bullet/rifle/a762x39 //7.62x39 Soviet + fire_sound = 'sound/weapons/ballistics/a762.ogg' + diam = 7.85 + grains = 122 + velocity = 730 + +/obj/item/projectile/bullet/rifle/a762x39/ap + grains = 123 + velocity = 740 + energy_add = 117.16 + armor_penetration = 50 + +/obj/item/projectile/bullet/rifle/a762x39/hp + hollow_point = TRUE + armor_penetration = -50 + /obj/item/projectile/bullet/rifle/a545 fire_sound = 'sound/weapons/ballistics/a545.ogg' - diam = 5.45 + diam = 5.6 grains = 53 velocity = 880 @@ -219,8 +254,24 @@ hollow_point = TRUE armor_penetration = -50 +/obj/item/projectile/bullet/rifle/a556 //5.56x45mm NATO + diam = 5.7 + grains = 62 + velocity = 961 + +/obj/item/projectile/bullet/rifle/a556/ap + grains = 52 + velocity = 1030 + energy_add = 462.92 + armor_penetration = 50 + +/obj/item/projectile/bullet/rifle/a556/hp + hollow_point = TRUE + armor_penetration = -50 + /obj/item/projectile/bullet/rifle/a145 // 14.5×114mm fire_sound = 'sound/weapons/ballistics/a145.ogg' + diam = 14.88 grains = 921 velocity = 1000 @@ -240,6 +291,22 @@ grains = 310 velocity = 365 +/obj/item/projectile/bullet/rifle/a9x39 //We also have actual 9x39mm + fire_sound = 'sound/weapons/ballistics/a545.ogg' + diam = 9.25 + grains = 259 + velocity = 280 + +/obj/item/projectile/bullet/rifle/a9x39/ap + grains = 267 + armor_penetration = 25 + +/obj/item/projectile/bullet/rifle/a10x24 + fire_sound = 'sound/weapons/ballistics/a762.ogg' + grains = 210 + diam = 10.2 + velocity = 840 + /obj/item/projectile/bullet/rifle/a762/lmg //This is actually 7.92x57 ffs diam = 7.92 grains = 181 @@ -247,7 +314,7 @@ /obj/item/projectile/bullet/rifle/a762x54 fire_sound = 'sound/weapons/ballistics/a762x54.ogg' - diam = 7.62 + diam = 7.92 grains = 151 velocity = 830 hitscan = 1 @@ -255,160 +322,7 @@ /obj/item/projectile/bullet/rifle/a762x54/ap armor_penetration = 50 -//Time to replace projectiles with their proper counterparts now that we have added them. -/obj/item/ammo_casing/a10mm - projectile_type = /obj/item/projectile/bullet/a10mm - -/obj/item/ammo_casing/a38 - projectile_type = /obj/item/projectile/bullet/a38 - -/obj/item/ammo_casing/a380 - projectile_type = /obj/item/projectile/bullet/a380 - -/obj/item/ammo_casing/a357 - projectile_type = /obj/item/projectile/bullet/a357 - -/obj/item/ammo_casing/a57 - desc = "A standard 5.7x28mm round" - caliber = "5.7x28mm" - projectile_type = /obj/item/projectile/bullet/a57 - matter = list(DEFAULT_WALL_MATERIAL = 60) - -/obj/item/ammo_casing/a57/ap - desc = "An armor piercing 5.7x28mm round" - projectile_type = /obj/item/projectile/bullet/a57/ap - -/obj/item/ammo_casing/a57/hp - desc = "A hollow point 5.7x28mm round" - projectile_type = /obj/item/projectile/bullet/a57/ap - -/obj/item/ammo_casing/a57/rubber - desc = "A rubber 5.7x28mm round" - projectile_type = /obj/item/projectile/bullet/pistol/rubber - -/obj/item/ammo_magazine/m9mmp90 //congratulations you are now being converted 5.7x28mm, a.k.a the round the p90 actually uses. - name = "large capacity top mounted magazine (5.7x28mm armor-piercing)" //Ugh, we'll leave it AP I guess - ammo_type = /obj/item/ammo_casing/a57/ap - caliber = "5.7x28mm" - -/obj/item/ammo_casing/a762x54 - desc = "A standard 7.62x54mmR round" - caliber = "7.62x54mmR" - projectile_type = /obj/item/projectile/bullet/rifle/a762x54 - matter = list(DEFAULT_WALL_MATERIAL = 160) - -/obj/item/ammo_casing/a762x54/ap - desc = "An armor piercing 7.62x54mmR round" - projectile_type = /obj/item/projectile/bullet/rifle/a762x54/ap - -/obj/item/ammo_magazine/m762svd //You are now being converted to 7.62x54mmR :3 - name = "\improper SVD magazine (7.62x54mmR)" - caliber = "7.62x54mmR" - ammo_type = /obj/item/ammo_casing/a762x54 - -/obj/item/ammo_magazine/m762svd/ap - name = "\improper SVD magazine (7.62x54mmR armor-piercing)" - ammo_type = /obj/item/ammo_casing/a762x54/ap - -//New magazines -/obj/item/ammo_magazine/a57 - name = "five-seven magazine(5.7x28mm standard)" - icon_state = "fiveseven" - max_ammo = 20 - mag_type = MAGAZINE - caliber= "5.7x28mm" - matter = list(DEFAULT_WALL_MATERIAL = 800) - multiple_sprites = 0 - ammo_type = /obj/item/ammo_casing/a57 - -/obj/item/ammo_magazine/a57/ap - name = "five-seven magazine(5.7x28mm armor-piercing)" - ammo_type = /obj/item/ammo_casing/a57/ap - -/obj/item/ammo_magazine/a57/hp - name = "five-seven magazine(5.7x28mm hollow-point)" - ammo_type = /obj/item/ammo_casing/a57/hp - -/obj/item/ammo_magazine/a57/rubber - name = "five-seven magazine(5.7x28mm rubber)" - ammo_type = /obj/item/ammo_casing/a57/rubber - -/obj/item/ammo_magazine/mp5mag - name = "mp5 magazine(9x19mm standard)" - icon = 'icons/obj/ammo_vr.dmi' - icon_state = "smg" - max_ammo = 30 - mag_type = MAGAZINE - caliber = "9mm" - matter = list(DEFAULT_WALL_MATERIAL = 800) - multiple_sprites = 1 - ammo_type = /obj/item/ammo_casing/a9mm - -/obj/item/ammo_magazine/mp5mag/ap - name = "mp5 magazine(9x19mm armor-piercing)" - ammo_type = /obj/item/ammo_casing/a9mm/ap - -/obj/item/ammo_magazine/mp5mag/hp - name = "mp5 magazine(9x19mm hollow-point)" - ammo_type = /obj/item/ammo_casing/a9mm/ap - -/obj/item/ammo_magazine/mp5mag/rubber - name = "mp5 magazine(9x19mm rubber)" - ammo_type = /obj/item/ammo_casing/a9mm/rubber - -//Add some autolathe entries for the new converted mags -/datum/category_item/autolathe/arms/smg_mp5 - name = "mp5 magazine(9x19mm standard)" - path = /obj/item/ammo_magazine/mp5mag - hidden = 1 - -/datum/category_item/autolathe/arms/smg_mp5_ap - name = "mp5 magazine(9x19mm armor-piercing)" - path = /obj/item/ammo_magazine/mp5mag/ap - hidden = 1 - -/datum/category_item/autolathe/arms/smg_mp5_hp - name = "mp5 magazine(9x19mm hollow-point)" - path = /obj/item/ammo_magazine/mp5mag/hp - hidden = 1 - -/datum/category_item/autolathe/arms/smg_mp5_rubber - name = "mp5 magazine(9x19mm rubber)" - path = /obj/item/ammo_magazine/mp5mag/rubber - -/datum/category_item/autolathe/arms/pistol_fiveseven - name = "five-seven magazine(5.7x28mm standard)" - path = /obj/item/ammo_magazine/a57 - hidden = 1 - -/datum/category_item/autolathe/arms/pistol_fiveseven_ap - name = "five-seven magazine(5.7x28mm armor-piercing)" - path = /obj/item/ammo_magazine/a57/ap - hidden = 1 - -/datum/category_item/autolathe/arms/pistol_fiveseven_hp - name = "five-seven magazine(5.7x28mm hollow-point)" - path = /obj/item/ammo_magazine/a57/hp - hidden = 1 - -/datum/category_item/autolathe/arms/pistol_fiveseven_rubber - name = "five-seven magazine(5.7x28mm rubber)" - path = /obj/item/ammo_magazine/a57/rubber - -/datum/category_item/autolathe/arms/smg_p90 - name = "large capacity top mounted magazine (5.7x28mm armor-piercing)" - path = /obj/item/ammo_magazine/m9mmp90 - hidden = 1 - -/datum/category_item/autolathe/arms/svd_762 - name = "SVD magazine (7.62x54mmR)" - path = /obj/item/ammo_magazine/m762svd - hidden = 1 - -/datum/category_item/autolathe/arms/svd_762_ap - name = "SVD magazine (7.62x54mmR armor-piercing)" - path = /obj/item/ammo_magazine/m762svd/ap - hidden = 1 +//NOTE: Ammo casings and magazines used to be in this part of the file. They have been moved to respective files in the projectiles/ammunition folder. //Various "We're not dealing with this shit because of how bad it is" (Some of these may be implemented into the new system with later updates) /obj/item/projectile/bullet/magnetic @@ -451,4 +365,4 @@ old_bullet_act = TRUE /obj/item/projectile/bullet/gyro - old_bullet_act = TRUE \ No newline at end of file + old_bullet_act = TRUE diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Vore_vr.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Vore_vr.dm index b69eccf402..a47070d617 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Vore_vr.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Vore_vr.dm @@ -14,7 +14,7 @@ /datum/reagent/macrocillin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(M.size_multiplier < RESIZE_HUGE) - M.resize(M.size_multiplier+0.01)//Incrrease 1% per tick. + M.resize(M.size_multiplier+0.01, FALSE)//Incrrease 1% per tick. //CHOMP Edit: don't do fancy animates. Unnecessary on 1% changes. Laggy. return /datum/reagent/microcillin @@ -28,7 +28,7 @@ /datum/reagent/microcillin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(M.size_multiplier > RESIZE_TINY) - M.resize(M.size_multiplier-0.01) //Decrease 1% per tick. + M.resize(M.size_multiplier-0.01, FALSE) //Decrease 1% per tick. //CHOMP Edit: don't do fancy animates. Unnecessary on 1% changes. Laggy. return @@ -43,9 +43,9 @@ /datum/reagent/normalcillin/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) if(M.size_multiplier > RESIZE_NORMAL) - M.resize(M.size_multiplier-0.01) //Decrease by 1% size per tick. + M.resize(M.size_multiplier-0.01, FALSE) //Decrease by 1% size per tick. //CHOMP Edit: don't do fancy animates. Unnecessary on 1% changes. Laggy. else if(M.size_multiplier < RESIZE_NORMAL) - M.resize(M.size_multiplier+0.01) //Increase 1% per tick. + M.resize(M.size_multiplier+0.01, FALSE) //Increase 1% per tick. //CHOMP Edit: don't do fancy animates. Unnecessary on 1% changes. Laggy. return diff --git a/code/modules/research/designs/circuits/circuits_vr.dm b/code/modules/research/designs/circuits/circuits_vr.dm index 98d9c860bd..13af5f3117 100644 --- a/code/modules/research/designs/circuits/circuits_vr.dm +++ b/code/modules/research/designs/circuits/circuits_vr.dm @@ -27,6 +27,7 @@ sort_string = "HABAH" //////Micro mech stuff +/* //CHOMPedit commented micromech stuff, because fuck this trash /datum/design/circuit/mecha/gopher_main name = "'Gopher' central control" id = "gopher_main" @@ -79,7 +80,7 @@ id = "weasel_targ" req_tech = list(TECH_DATA = 4, TECH_COMBAT = 2) build_path = /obj/item/weapon/circuitboard/mecha/weasel/targeting - sort_string = "NAAGC" + sort_string = "NAAGC" */ /datum/design/circuit/transhuman_clonepod name = "grower pod" diff --git a/code/modules/research/mechfab_designs.dm b/code/modules/research/mechfab_designs.dm index 53a0c98ddf..d27ec97bf2 100644 --- a/code/modules/research/mechfab_designs.dm +++ b/code/modules/research/mechfab_designs.dm @@ -435,6 +435,13 @@ build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/xray materials = list(DEFAULT_WALL_MATERIAL = 9000, "glass" = 3000, "phoron" = 1000, "silver" = 1500, "gold" = 2500, "plastic" = 2000) +/datum/design/item/mecha/weapon/laser_gamma //CHOMPedit begin : add Gamma Laser + name = "GA-X \"Render\" Experimental Gamma Laser" + id = "mech_laser_gamma" + req_tech = list(TECH_MATERIAL = 5, TECH_COMBAT = 5, TECH_PHORON = 4, TECH_POWER = 5, TECH_ILLEGAL = 3) + build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/gamma + materials = list(DEFAULT_WALL_MATERIAL = 6000, "glass" = 4000, "phoron" = 2500, "silver" = 1000, "gold" = 500, "uranium" = 3000) //CHOMPedit end + /datum/design/item/mecha/weapon/rigged_laser_xray name = "Jury-Rigged Xray Rifle" id = "mech_laser_xray-r" diff --git a/code/modules/research/message_server.dm b/code/modules/research/message_server.dm index 81f888155d..2dcb5ef771 100644 --- a/code/modules/research/message_server.dm +++ b/code/modules/research/message_server.dm @@ -346,24 +346,26 @@ var/obj/machinery/blackbox_recorder/blackbox round_end_data_gathering() //round_end time logging and some other data processing establish_db_connection() - if(!dbcon.IsConnected()) return + if(!SSdbcore.IsConnected()) return //CHOMPEdit TGSQL var/round_id - var/DBQuery/query = dbcon.NewQuery("SELECT MAX(round_id) AS round_id FROM erro_feedback") + var/DBQuery/query = SSdbcore.NewQuery("SELECT MAX(round_id) AS round_id FROM erro_feedback") //CHOMPEdit TGSQL query.Execute() while(query.NextRow()) round_id = query.item[1] - + qdel(query) //CHOMPEdit TGSQL if(!isnum(round_id)) round_id = text2num(round_id) round_id++ for(var/datum/feedback_variable/FV in feedback) - var/sql = "INSERT INTO erro_feedback VALUES (null, Now(), [round_id], \"[FV.get_variable()]\", [FV.get_value()], \"[FV.get_details()]\")" - var/DBQuery/query_insert = dbcon.NewQuery(sql) + var/list/sqlargs = list("t_roundid" = round_id, "t_variable" = "[FV.get_variable()]", "t_value" = "[FV.get_value()]", "t_details" = "[FV.get_details()]") //CHOMPEdit TGSQL + var/sql = "INSERT INTO erro_feedback VALUES (null, Now(), :t_roundid, :t_variable, :t_value, :t_details)" //CHOMPEdit TGSQL + var/DBQuery/query_insert = SSdbcore.NewQuery(sql, sqlargs) //CHOMPEdit TGSQL query_insert.Execute() + qdel(query_insert) //CHOMPEdit TGSQL -// Sanitize inputs to avoid SQL injection attacks +// Sanitize inputs to avoid SQL injection attacks //CHOMPEdit NOTE: This is not secure. Basic filters like this are pretty easy to bypass. Use the format for arguments used in the above. proc/sql_sanitize_text(var/text) text = replacetext(text, "'", "''") text = replacetext(text, ";", "") diff --git a/code/modules/research/prosfab_designs_vr.dm b/code/modules/research/prosfab_designs_vr.dm index 094d036c91..b425b3964a 100644 --- a/code/modules/research/prosfab_designs_vr.dm +++ b/code/modules/research/prosfab_designs_vr.dm @@ -8,8 +8,8 @@ build_path = /obj/item/borg/upgrade/sizeshift /datum/design/item/prosfab/robot_upgrade/bellysizeupgrade - name = "Size Alteration Module" + name = "Robohound Capacity Expansion Module" id = "borg_hound_capacity_module" - req_tech = list(TECH_BLUESPACE = 3, TECH_MATERIAL = 3, TECH_POWER = 2) + req_tech = list(TECH_MATERIAL = 3, TECH_ENGINEERING = 2) materials = list(DEFAULT_WALL_MATERIAL = 4000, "glass" = 4000) build_path = /obj/item/borg/upgrade/bellysizeupgrade \ No newline at end of file diff --git a/code/modules/shieldgen/energy_shield.dm b/code/modules/shieldgen/energy_shield.dm index d6218eac8f..6170768252 100644 --- a/code/modules/shieldgen/energy_shield.dm +++ b/code/modules/shieldgen/energy_shield.dm @@ -4,7 +4,7 @@ /obj/effect/shield name = "energy shield" desc = "An impenetrable field of energy, capable of blocking anything as long as it's active." - icon = 'icons/obj/machines/shielding.dmi' + icon = 'icons/obj/machines/shielding_vr.dmi' icon_state = "shield" anchored = 1 plane = MOB_PLANE @@ -110,7 +110,7 @@ diffused_for = max(duration, 0) gen?.damaged_segments |= src - + set_density(0) update_visuals() update_nearby_tiles() //Force ZAS update @@ -299,7 +299,7 @@ // /obj/effect/temp_visual/shield_impact_effect name = "shield impact" - icon = 'icons/obj/machines/shielding.dmi' + icon = 'icons/obj/machines/shielding_vr.dmi' icon_state = "shield_impact" plane = MOB_PLANE layer = ABOVE_MOB_LAYER diff --git a/code/modules/shieldgen/shield_gen.dm b/code/modules/shieldgen/shield_gen.dm index b87f66432f..08d0b8ce86 100644 --- a/code/modules/shieldgen/shield_gen.dm +++ b/code/modules/shieldgen/shield_gen.dm @@ -123,7 +123,7 @@ "max_charge" = C.max_charge, "failing" = (C.time_since_fail <= 2), ))) - + data["lockedData"]["active"] = active data["lockedData"]["failing"] = (time_since_fail <= 2) data["lockedData"]["radius"] = field_radius @@ -201,7 +201,7 @@ /obj/machinery/shield_gen/tgui_act(action, params) if(..()) return TRUE - + switch(action) if("toggle") if (!active && !anchored) diff --git a/code/modules/shieldgen/shield_generator.dm b/code/modules/shieldgen/shield_generator.dm index cc3d2f1b25..abe6c6efbf 100644 --- a/code/modules/shieldgen/shield_generator.dm +++ b/code/modules/shieldgen/shield_generator.dm @@ -4,7 +4,7 @@ /obj/machinery/power/shield_generator name = "advanced shield generator" desc = "A heavy-duty shield generator and capacitor, capable of generating energy shields at large distances." - icon = 'icons/obj/machines/shielding.dmi' + icon = 'icons/obj/machines/shielding_vr.dmi' icon_state = "generator0" circuit = /obj/item/weapon/circuitboard/shield_generator density = 1 @@ -105,7 +105,7 @@ // Generates the field objects. Deletes existing field, if applicable. /obj/machinery/power/shield_generator/proc/regenerate_field() for(var/obj/effect/shield/S in field_segments) - qdel(S) + qdel(S) var/list/shielded_turfs if(check_flag(MODEFLAG_HULL)) diff --git a/code/modules/tgs/v5/chat_commands.dm b/code/modules/tgs/v5/chat_commands.dm index bfe10b5024..7c93526178 100644 --- a/code/modules/tgs/v5/chat_commands.dm +++ b/code/modules/tgs/v5/chat_commands.dm @@ -71,12 +71,13 @@ GLOBAL_LIST_EMPTY(pending_discord_registrations) /datum/tgs_chat_command/register/Run(datum/tgs_chat_user/sender, params) // Try to find if that ID is registered to someone already - var/sql_discord = sql_sanitize_text(sender.id) - var/DBQuery/query = dbcon.NewQuery("SELECT discord_id FROM erro_player WHERE discord_id = '[sql_discord]'") + //var/sql_discord = sql_sanitize_text(sender.id) //CHOMPEdit TGSQL + var/DBQuery/query = SSdbcore.NewQuery("SELECT discord_id FROM erro_player WHERE discord_id = :t_discord", list("t_discord"=sender.id)) //CHOMPEdit TGSQL query.Execute() if(query.NextRow()) + qdel(query) //CHOMPEdit TGSQL return "[sender.friendly_name], your Discord ID is already registered to a Byond username. Please contact an administrator if you changed your Byond username or Discord ID." - + qdel(query) //CHOMPEdit TGSQL var/key_to_find = "[ckey(params)]" // They didn't provide anything worth looking up. @@ -94,18 +95,20 @@ GLOBAL_LIST_EMPTY(pending_discord_registrations) if(!user) return "[sender.friendly_name], I couldn't find a logged-in user with the username of '[key_to_find]', which is what you provided after conversion to Byond's ckey format. Please connect to the game server and try again." - var/sql_ckey = sql_sanitize_text(key_to_find) - query = dbcon.NewQuery("SELECT discord_id FROM erro_player WHERE ckey = '[sql_ckey]'") - query.Execute() + //var/sql_ckey = sql_sanitize_text(key_to_find) //CHOMPEdit TGSQL + var/DBQuery/query2 = SSdbcore.NewQuery("SELECT discord_id FROM erro_player WHERE ckey = :t_ckey",list("t_ckey" = key_to_find)) //CHOMPEdit TGSQL + query2.Execute() //CHOMPEdit TGSQL // We somehow found their client, BUT they don't exist in the database - if(!query.NextRow()) + if(!query2.NextRow()) //CHOMPEdit TGSQL + qdel(query2) //CHOMPEdit TGSQL return "[sender.friendly_name], the server's database is either not responding or there's no evidence you've ever logged in. Please contact an administrator." // We found them in the database, AND they already have a discord ID assigned - if(query.item[1]) + if(query2.item[1]) //CHOMPEdit TGSQL + qdel(query2) //CHOMPEdit TGSQL return "[sender.friendly_name], it appears you've already registered your chat and game IDs. If you've changed game or chat usernames, please contact an administrator for help." - + qdel(query2) //CHOMPEdit TGSQL // Okay. We found them, they're in the DB, and they have no discord ID set. var/message = "A request has been sent from Discord to validate your Byond username, by '[sender.friendly_name]' in '[sender.channel.friendly_name]'\
    If you did not send this request, do not click the link below, and do notify an administrator in-game or on Discord ASAP.\ diff --git a/code/modules/tgui/modules/appearance_changer.dm b/code/modules/tgui/modules/appearance_changer.dm index 667fe7e0a0..ab75e1d67c 100644 --- a/code/modules/tgui/modules/appearance_changer.dm +++ b/code/modules/tgui/modules/appearance_changer.dm @@ -1,3 +1,4 @@ + /datum/tgui_module/appearance_changer name = "Appearance Editor" tgui_id = "AppearanceChanger" @@ -24,6 +25,10 @@ var/camera_diff_y = -1 var/camera_diff_z = -1 + var/list/valid_earstyles = list() + var/list/valid_tailstyles = list() + var/list/valid_wingstyles = list() + /datum/tgui_module/appearance_changer/New( var/host, mob/living/carbon/human/H, @@ -68,6 +73,7 @@ qdel(cam_screen) QDEL_LIST(cam_plane_masters) qdel(cam_background) + cut_data() return ..() /datum/tgui_module/appearance_changer/tgui_act(action, list/params, datum/tgui/ui, datum/tgui_state/state) @@ -84,22 +90,28 @@ if("race") if(can_change(APPEARANCE_RACE) && (params["race"] in valid_species)) if(target.change_species(params["race"])) - cut_and_generate_data() + cut_data() + generate_data(usr) + changed_hook(APPEARANCECHANGER_CHANGED_RACE) return 1 if("gender") if(can_change(APPEARANCE_GENDER) && (params["gender"] in get_genders())) if(target.change_gender(params["gender"])) - cut_and_generate_data() + cut_data() + generate_data(usr) + changed_hook(APPEARANCECHANGER_CHANGED_GENDER) return 1 if("gender_id") if(can_change(APPEARANCE_GENDER) && (params["gender_id"] in all_genders_define_list)) target.identifying_gender = params["gender_id"] + changed_hook(APPEARANCECHANGER_CHANGED_GENDER_ID) return 1 if("skin_tone") if(can_change_skin_tone()) var/new_s_tone = input(usr, "Choose your character's skin-tone:\n(Light 1 - 220 Dark)", "Skin Tone", -target.s_tone + 35) as num|null if(isnum(new_s_tone) && can_still_topic(usr, state)) new_s_tone = 35 - max(min( round(new_s_tone), 220),1) + changed_hook(APPEARANCECHANGER_CHANGED_SKINTONE) return target.change_skin_tone(new_s_tone) if("skin_color") if(can_change_skin_color()) @@ -110,11 +122,13 @@ var/b_skin = hex2num(copytext(new_skin, 6, 8)) if(target.change_skin_color(r_skin, g_skin, b_skin)) update_dna() + changed_hook(APPEARANCECHANGER_CHANGED_SKINCOLOR) return 1 if("hair") if(can_change(APPEARANCE_HAIR) && (params["hair"] in valid_hairstyles)) if(target.change_hair(params["hair"])) update_dna() + changed_hook(APPEARANCECHANGER_CHANGED_HAIRSTYLE) return 1 if("hair_color") if(can_change(APPEARANCE_HAIR_COLOR)) @@ -125,11 +139,13 @@ var/b_hair = hex2num(copytext(new_hair, 6, 8)) if(target.change_hair_color(r_hair, g_hair, b_hair)) update_dna() + changed_hook(APPEARANCECHANGER_CHANGED_HAIRCOLOR) return 1 if("facial_hair") if(can_change(APPEARANCE_FACIAL_HAIR) && (params["facial_hair"] in valid_facial_hairstyles)) if(target.change_facial_hair(params["facial_hair"])) update_dna() + changed_hook(APPEARANCECHANGER_CHANGED_F_HAIRSTYLE) return 1 if("facial_hair_color") if(can_change(APPEARANCE_FACIAL_HAIR_COLOR)) @@ -140,6 +156,7 @@ var/b_facial = hex2num(copytext(new_facial, 6, 8)) if(target.change_facial_hair_color(r_facial, g_facial, b_facial)) update_dna() + changed_hook(APPEARANCECHANGER_CHANGED_F_HAIRCOLOR) return 1 if("eye_color") if(can_change(APPEARANCE_EYE_COLOR)) @@ -150,10 +167,115 @@ var/b_eyes = hex2num(copytext(new_eyes, 6, 8)) if(target.change_eye_color(r_eyes, g_eyes, b_eyes)) update_dna() + changed_hook(APPEARANCECHANGER_CHANGED_EYES) return 1 + // VOREStation Add - Ears/Tails/Wings + if("ear") + if(can_change(APPEARANCE_ALL_HAIR)) + var/datum/sprite_accessory/ears/instance = locate(params["ref"]) + if(params["clear"]) + instance = null + if(!istype(instance) && !params["clear"]) + return FALSE + owner.ear_style = instance + owner.update_hair() + update_dna() + changed_hook(APPEARANCECHANGER_CHANGED_HAIRSTYLE) + return TRUE + if("ears_color") + if(can_change(APPEARANCE_HAIR_COLOR)) + var/new_hair = input("Please select ear color.", "Ear Color", rgb(target.r_ears, target.g_ears, target.b_ears)) as color|null + if(new_hair && can_still_topic(usr, state)) + target.r_ears = hex2num(copytext(new_hair, 2, 4)) + target.g_ears = hex2num(copytext(new_hair, 4, 6)) + target.b_ears = hex2num(copytext(new_hair, 6, 8)) + update_dna() + owner.update_hair() + changed_hook(APPEARANCECHANGER_CHANGED_HAIRCOLOR) + return 1 + if("ears2_color") + if(can_change(APPEARANCE_HAIR_COLOR)) + var/new_hair = input("Please select secondary ear color.", "2nd Ear Color", rgb(target.r_ears2, target.g_ears2, target.b_ears2)) as color|null + if(new_hair && can_still_topic(usr, state)) + target.r_ears2 = hex2num(copytext(new_hair, 2, 4)) + target.g_ears2 = hex2num(copytext(new_hair, 4, 6)) + target.b_ears2 = hex2num(copytext(new_hair, 6, 8)) + update_dna() + owner.update_hair() + changed_hook(APPEARANCECHANGER_CHANGED_HAIRCOLOR) + return 1 + if("tail") + if(can_change(APPEARANCE_ALL_HAIR)) + var/datum/sprite_accessory/tail/instance = locate(params["ref"]) + if(params["clear"]) + instance = null + if(!istype(instance) && !params["clear"]) + return FALSE + owner.tail_style = instance + owner.update_tail_showing() + update_dna() + changed_hook(APPEARANCECHANGER_CHANGED_HAIRSTYLE) + return TRUE + if("tail_color") + if(can_change(APPEARANCE_HAIR_COLOR)) + var/new_hair = input("Please select tail color.", "Tail Color", rgb(target.r_tail, target.g_tail, target.b_tail)) as color|null + if(new_hair && can_still_topic(usr, state)) + target.r_tail = hex2num(copytext(new_hair, 2, 4)) + target.g_tail = hex2num(copytext(new_hair, 4, 6)) + target.b_tail = hex2num(copytext(new_hair, 6, 8)) + update_dna() + owner.update_tail_showing() + changed_hook(APPEARANCECHANGER_CHANGED_HAIRCOLOR) + return 1 + if("tail2_color") + if(can_change(APPEARANCE_HAIR_COLOR)) + var/new_hair = input("Please select secondary tail color.", "2nd Tail Color", rgb(target.r_tail2, target.g_tail2, target.b_tail2)) as color|null + if(new_hair && can_still_topic(usr, state)) + target.r_tail2 = hex2num(copytext(new_hair, 2, 4)) + target.g_tail2 = hex2num(copytext(new_hair, 4, 6)) + target.b_tail2 = hex2num(copytext(new_hair, 6, 8)) + update_dna() + owner.update_tail_showing() + changed_hook(APPEARANCECHANGER_CHANGED_HAIRCOLOR) + return 1 + if("wing") + if(can_change(APPEARANCE_ALL_HAIR)) + var/datum/sprite_accessory/wing/instance = locate(params["ref"]) + if(params["clear"]) + instance = null + if(!istype(instance) && !params["clear"]) + return FALSE + owner.wing_style = instance + owner.update_wing_showing() + update_dna() + changed_hook(APPEARANCECHANGER_CHANGED_HAIRSTYLE) + return TRUE + if("wing_color") + if(can_change(APPEARANCE_HAIR_COLOR)) + var/new_hair = input("Please select wing color.", "Wing Color", rgb(target.r_wing, target.g_wing, target.b_wing)) as color|null + if(new_hair && can_still_topic(usr, state)) + target.r_wing = hex2num(copytext(new_hair, 2, 4)) + target.g_wing = hex2num(copytext(new_hair, 4, 6)) + target.b_wing = hex2num(copytext(new_hair, 6, 8)) + update_dna() + owner.update_wing_showing() + changed_hook(APPEARANCECHANGER_CHANGED_HAIRCOLOR) + return 1 + if("wing2_color") + if(can_change(APPEARANCE_HAIR_COLOR)) + var/new_hair = input("Please select secondary wing color.", "2nd Wing Color", rgb(target.r_wing2, target.g_wing2, target.b_wing2)) as color|null + if(new_hair && can_still_topic(usr, state)) + target.r_wing2 = hex2num(copytext(new_hair, 2, 4)) + target.g_wing2 = hex2num(copytext(new_hair, 4, 6)) + target.b_wing2 = hex2num(copytext(new_hair, 6, 8)) + update_dna() + owner.update_wing_showing() + changed_hook(APPEARANCECHANGER_CHANGED_HAIRCOLOR) + return 1 + // VOREStation Add End return FALSE -/datum/tgui_module/appearance_changer/tgui_interact(mob/user, datum/tgui/ui = null, datum/tgui/parent_ui = null, datum/tgui_state/custom_state = GLOB.tgui_default_state) +/datum/tgui_module/appearance_changer/tgui_interact(mob/user, datum/tgui/ui = null, datum/tgui/parent_ui = null, datum/tgui_state/custom_state) var/mob/living/carbon/human/target = owner if(customize_usr) if(!ishuman(user)) @@ -177,10 +299,39 @@ if(custom_state) ui.set_state(custom_state) +/datum/tgui_module/appearance_changer/tgui_static_data(mob/user) + var/list/data = ..() + + generate_data(usr) + + if(can_change(APPEARANCE_RACE)) + var/species[0] + for(var/specimen in valid_species) + species[++species.len] = list("specimen" = specimen) + data["species"] = species + + if(can_change(APPEARANCE_HAIR)) + var/hair_styles[0] + for(var/hair_style in valid_hairstyles) + hair_styles[++hair_styles.len] = list("hairstyle" = hair_style) + data["hair_styles"] = hair_styles + // VOREStation Add - Ears/Tails/Wings + data["ear_styles"] = valid_earstyles + data["tail_styles"] = valid_tailstyles + data["wing_styles"] = valid_wingstyles + // VOREStation Add End + + if(can_change(APPEARANCE_FACIAL_HAIR)) + var/facial_hair_styles[0] + for(var/facial_hair_style in valid_facial_hairstyles) + facial_hair_styles[++facial_hair_styles.len] = list("facialhairstyle" = facial_hair_style) + data["facial_hair_styles"] = facial_hair_styles + + return data + /datum/tgui_module/appearance_changer/tgui_data(mob/user, datum/tgui/ui, datum/tgui_state/state) var/list/data = ..() - generate_data(check_whitelist, whitelist, blacklist) differential_check() var/mob/living/carbon/human/target = owner @@ -194,11 +345,6 @@ data["gender"] = target.gender data["gender_id"] = target.identifying_gender data["change_race"] = can_change(APPEARANCE_RACE) - if(data["change_race"]) - var/species[0] - for(var/specimen in valid_species) - species[++species.len] = list("specimen" = specimen) - data["species"] = species data["change_gender"] = can_change(APPEARANCE_GENDER) if(data["change_gender"]) @@ -213,30 +359,39 @@ data["change_hair"] = can_change(APPEARANCE_HAIR) if(data["change_hair"]) - var/hair_styles[0] - for(var/hair_style in valid_hairstyles) - hair_styles[++hair_styles.len] = list("hairstyle" = hair_style) - data["hair_styles"] = hair_styles data["hair_style"] = target.h_style + // VOREStation Add - Ears/Tails/Wings + data["ear_style"] = target.ear_style + data["tail_style"] = target.tail_style + data["wing_style"] = target.wing_style + // VOREStation Add End + data["change_facial_hair"] = can_change(APPEARANCE_FACIAL_HAIR) if(data["change_facial_hair"]) - var/facial_hair_styles[0] - for(var/facial_hair_style in valid_facial_hairstyles) - facial_hair_styles[++facial_hair_styles.len] = list("facialhairstyle" = facial_hair_style) - data["facial_hair_styles"] = facial_hair_styles data["facial_hair_style"] = target.f_style data["change_skin_tone"] = can_change_skin_tone() data["change_skin_color"] = can_change_skin_color() if(data["change_skin_color"]) data["skin_color"] = rgb(target.r_skin, target.g_skin, target.b_skin) + data["change_eye_color"] = can_change(APPEARANCE_EYE_COLOR) if(data["change_eye_color"]) data["eye_color"] = rgb(target.r_eyes, target.g_eyes, target.b_eyes) + data["change_hair_color"] = can_change(APPEARANCE_HAIR_COLOR) if(data["change_hair_color"]) data["hair_color"] = rgb(target.r_hair, target.g_hair, target.b_hair) + // VOREStation Add - Ears/Tails/Wings + data["ears_color"] = rgb(target.r_ears, target.g_ears, target.b_ears) + data["ears2_color"] = rgb(target.r_ears2, target.g_ears2, target.b_ears2) + data["tail_color"] = rgb(target.r_tail, target.g_tail, target.b_tail) + data["tail2_color"] = rgb(target.r_tail2, target.g_tail2, target.b_tail2) + data["wing_color"] = rgb(target.r_wing, target.g_wing, target.b_wing) + data["wing2_color"] = rgb(target.r_wing2, target.g_wing2, target.b_wing2) + // VOREStation Add End + data["change_facial_hair_color"] = can_change(APPEARANCE_FACIAL_HAIR_COLOR) if(data["change_facial_hair_color"]) data["facial_hair_color"] = rgb(target.r_facial, target.g_facial, target.b_facial) @@ -315,26 +470,67 @@ return target && (flags & APPEARANCE_SKIN) && target.species.appearance_flags & HAS_SKIN_COLOR -/datum/tgui_module/appearance_changer/proc/cut_and_generate_data() +/datum/tgui_module/appearance_changer/proc/cut_data() // Making the assumption that the available species remain constant + valid_hairstyles.Cut() valid_facial_hairstyles.Cut() - valid_facial_hairstyles.Cut() - generate_data() + // VOREStation Add - Ears/Tails/Wings + valid_earstyles.Cut() + valid_tailstyles.Cut() + valid_wingstyles.Cut() + // VOREStation Add End -/datum/tgui_module/appearance_changer/proc/generate_data() +/datum/tgui_module/appearance_changer/proc/generate_data(mob/user) var/mob/living/carbon/human/target = owner if(customize_usr) - if(!ishuman(usr)) + if(!ishuman(user)) return TRUE - target = usr + target = user if(!target) return - if(!valid_species.len) + + if(!LAZYLEN(valid_species)) valid_species = target.generate_valid_species(check_whitelist, whitelist, blacklist) - if(!valid_hairstyles.len || !valid_facial_hairstyles.len) + + if(!LAZYLEN(valid_hairstyles) || !LAZYLEN(valid_facial_hairstyles)) valid_hairstyles = target.generate_valid_hairstyles(check_gender = 0) valid_facial_hairstyles = target.generate_valid_facial_hairstyles() + // VOREStation Add - Ears/Tails/Wings + if(!LAZYLEN(valid_earstyles)) + for(var/path in ear_styles_list) + var/datum/sprite_accessory/ears/instance = ear_styles_list[path] + if(can_use_sprite(instance, target, user)) + valid_earstyles.Add(list(list( + "name" = instance.name, + "instance" = REF(instance), + "color" = !!instance.do_colouration, + "second_color" = !!instance.extra_overlay, + ))) + + if(!LAZYLEN(valid_tailstyles)) + for(var/path in tail_styles_list) + var/datum/sprite_accessory/tail/instance = tail_styles_list[path] + if(can_use_sprite(instance, target, user)) + valid_tailstyles.Add(list(list( + "name" = instance.name, + "instance" = REF(instance), + "color" = !!instance.do_colouration, + "second_color" = !!instance.extra_overlay, + ))) + + if(!LAZYLEN(valid_wingstyles)) + for(var/path in wing_styles_list) + var/datum/sprite_accessory/wing/instance = wing_styles_list[path] + if(can_use_sprite(instance, target, user)) + valid_wingstyles.Add(list(list( + "name" = instance.name, + "instance" = REF(instance), + "color" = !!instance.do_colouration, + "second_color" = !!instance.extra_overlay, + ))) + // VOREStation Add End + /datum/tgui_module/appearance_changer/proc/get_genders() var/mob/living/carbon/human/target = owner if(customize_usr) @@ -349,10 +545,25 @@ possible_genders |= NEUTER return possible_genders +// Used for subtypes to handle messaging or whatever. +/datum/tgui_module/appearance_changer/proc/changed_hook(flag) + return + +// VOREStation Add - Ears/Tails/Wings +/datum/tgui_module/appearance_changer/proc/can_use_sprite(datum/sprite_accessory/X, mob/living/carbon/human/target, mob/user) + if(X.apply_restrictions && !(target.species.name in X.species_allowed)) + return FALSE + + if(LAZYLEN(X.ckeys_allowed) && !(user?.ckey in X.ckeys_allowed) && !(target.ckey in X.ckeys_allowed)) + return FALSE + + return TRUE +// VOREStation Add End + /datum/tgui_module/appearance_changer/mirror name = "SalonPro Nano-Mirror™" flags = APPEARANCE_ALL_HAIR customize_usr = TRUE /datum/tgui_module/appearance_changer/mirror/coskit - name = "SalonPro Porta-Makeover Deluxe™" \ No newline at end of file + name = "SalonPro Porta-Makeover Deluxe™" diff --git a/code/modules/tgui/modules/appearance_changer_vr.dm b/code/modules/tgui/modules/appearance_changer_vr.dm new file mode 100644 index 0000000000..93ee4cfdf2 --- /dev/null +++ b/code/modules/tgui/modules/appearance_changer_vr.dm @@ -0,0 +1,45 @@ +/datum/tgui_module/appearance_changer/vore + name = "Appearance Editor (Vore)" + flags = APPEARANCE_ALL + +/datum/tgui_module/appearance_changer/vore/tgui_state(mob/user) + return GLOB.tgui_conscious_state + +/datum/tgui_module/appearance_changer/vore/tgui_status(mob/user, datum/tgui_state/state) + if(!isbelly(owner.loc)) + return STATUS_CLOSE + return ..() + +/datum/tgui_module/appearance_changer/vore/reload_cameraview() + cam_screen.vis_contents = list(owner) + cam_background.icon_state = "clear" + cam_background.fill_rect(1, 1, 1, 1) + local_skybox.cut_overlays() + +/datum/tgui_module/appearance_changer/vore/tgui_close(mob/user) + . = ..() + QDEL_IN(src, 1) + +/datum/tgui_module/appearance_changer/vore/changed_hook(flag) + var/mob/living/carbon/human/M = owner + var/mob/living/O = usr + + switch(flag) + if(APPEARANCECHANGER_CHANGED_RACE) + to_chat(M, "You lose sensation of your body, feeling only the warmth of everything around you... ") + to_chat(O, "Your body shifts as you make dramatic changes to your captive's body.") + if(APPEARANCECHANGER_CHANGED_GENDER) + to_chat(M, "Your body feels very strange...") + to_chat(O, "You feel strange as you alter your captive's gender.") + if(APPEARANCECHANGER_CHANGED_GENDER_ID) + to_chat(M, "You start to feel... [capitalize(M.gender)]?") + to_chat(O, "You feel strange as you alter your captive's gender identity.") + if(APPEARANCECHANGER_CHANGED_SKINTONE, APPEARANCECHANGER_CHANGED_SKINCOLOR) + to_chat(M, "Your body tingles all over...") + to_chat(O, "You tingle as you make noticeable changes to your captive's body.") + if(APPEARANCECHANGER_CHANGED_HAIRSTYLE, APPEARANCECHANGER_CHANGED_HAIRCOLOR, APPEARANCECHANGER_CHANGED_F_HAIRSTYLE, APPEARANCECHANGER_CHANGED_F_HAIRCOLOR) + to_chat(M, "Your body tingles all over...") + to_chat(O, "You tingle as you make noticeable changes to your captive's body.") + if(APPEARANCECHANGER_CHANGED_EYES) + to_chat(M, "You feel lightheaded and drowsy...") + to_chat(O, "You feel warm as you make subtle changes to your captive's body.") \ No newline at end of file diff --git a/code/modules/vchat/css/ss13styles.css b/code/modules/vchat/css/ss13styles.css index 0a4c96f4d6..40e4c3c1e2 100644 --- a/code/modules/vchat/css/ss13styles.css +++ b/code/modules/vchat/css/ss13styles.css @@ -177,6 +177,7 @@ h1.alert, h2.alert {color: #000000;} .wingdings {font-family: Wingdings, Webdings} /* YW Edit End */ .spacer {color: #9c660b;} /* VOREStation Add */ +.blob {color: #ff950d; font-weight: bold; font-style: italic;} .black {color: #000000;} .darkgray {color: #808080;} diff --git a/code/modules/vchat/js/vchat.js b/code/modules/vchat/js/vchat.js index e09339bb59..e2225e3833 100644 --- a/code/modules/vchat/js/vchat.js +++ b/code/modules/vchat/js/vchat.js @@ -137,7 +137,7 @@ function start_vue() { //The table to map game css classes to our vchat categories type_table: [ { - matches: ".filter_say, .say, .emote", + matches: ".filter_say, .say, .emote, .emote_subtle", //VOREStation Edit becomes: "vc_localchat", pretty: "Local Chat", tooltip: "In-character local messages (say, emote, etc)", diff --git a/code/modules/vore/appearance/sprite_accessories_ch.dm b/code/modules/vore/appearance/sprite_accessories_ch.dm index 21f25efa3b..7992902b8d 100644 --- a/code/modules/vore/appearance/sprite_accessories_ch.dm +++ b/code/modules/vore/appearance/sprite_accessories_ch.dm @@ -23,6 +23,21 @@ do_colouration = 1 color_blend_mode = ICON_MULTIPLY +/datum/sprite_accessory/ears/dragonforward + name = "Dragon horns (Forward)" + icon = 'icons/mob/vore/ears_ch.dmi' + icon_state = "dragonforward" + do_colouration = 1 + color_blend_mode = ICON_MULTIPLY + +/datum/sprite_accessory/ears/dragonforwardears + name = "Dragon horns w/Ears (Forward)" + icon = 'icons/mob/vore/ears_ch.dmi' + icon_state = "dhornsears" + extra_overlay = "dhornsears_inner" + do_colouration = 1 + color_blend_mode = ICON_MULTIPLY + //TAILS /datum/sprite_accessory/tail/alien_slug name = "Alien slug tail" diff --git a/code/modules/vore/appearance/sprite_accessories_taur_vr.dm b/code/modules/vore/appearance/sprite_accessories_taur_vr.dm index 1924784924..0c40c24f29 100644 --- a/code/modules/vore/appearance/sprite_accessories_taur_vr.dm +++ b/code/modules/vore/appearance/sprite_accessories_taur_vr.dm @@ -212,6 +212,7 @@ name = "SynthWolf dual-color (Taur)" icon_state = "synthwolf_s" extra_overlay = "synthwolf_markings" + extra_overlay2 = "synthwolf_glow" //icon_sprite_tag = "synthwolf" /datum/sprite_accessory/tail/taur/skunk @@ -286,6 +287,7 @@ name = "SynthHorse dual-color (Taur)" icon_state = "synthhorse_s" extra_overlay = "synthhorse_markings" + extra_overlay2 = "synthhorse_glow" //icon_sprite_tag = "synthhorse" /datum/sprite_accessory/tail/taur/cow @@ -347,6 +349,7 @@ name = "SynthLizard dual-color (Taur)" icon_state = "synthlizard_s" extra_overlay = "synthlizard_markings" + extra_overlay2 = "synthlizard_glow" //icon_sprite_tag = "synthlizard" /datum/sprite_accessory/tail/taur/spider @@ -433,6 +436,7 @@ name = "SynthFeline dual-color (Taur)" icon_state = "synthfeline_s" extra_overlay = "synthfeline_markings" + extra_overlay2 = "synthfeline_glow" //icon_sprite_tag = "synthfeline" /datum/sprite_accessory/tail/taur/slug diff --git a/code/modules/vore/eating/belly_dat_vr.dm b/code/modules/vore/eating/belly_dat_vr.dm index 01bda55389..2beec27ad6 100644 --- a/code/modules/vore/eating/belly_dat_vr.dm +++ b/code/modules/vore/eating/belly_dat_vr.dm @@ -31,8 +31,7 @@ var/datum/belly/transferlocation = null // Location that the prey is released if they struggle and get dropped off. var/tmp/digest_mode = DM_HOLD // Whether or not to digest. Default to not digest. - var/tmp/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_HEAL,DM_ABSORB,DM_DRAIN,DM_UNABSORB,DM_SHRINK,DM_GROW,DM_SIZE_STEAL) // Possible digest modes - var/tmp/list/transform_modes = list(DM_TRANSFORM_MALE,DM_TRANSFORM_FEMALE,DM_TRANSFORM_KEEP_GENDER,DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR,DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG,DM_TRANSFORM_REPLICA,DM_TRANSFORM_REPLICA_EGG,DM_TRANSFORM_KEEP_GENDER_EGG,DM_TRANSFORM_MALE_EGG,DM_TRANSFORM_FEMALE_EGG, DM_EGG) + var/tmp/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_HEAL,DM_ABSORB,DM_DRAIN,DM_UNABSORB,DM_SHRINK,DM_GROW,DM_SIZE_STEAL,DM_EGG) // Possible digest modes var/tmp/mob/living/owner // The mob whose belly this is. var/tmp/list/internal_contents = list() // People/Things you've eaten into this belly! var/tmp/emotePend = FALSE // If there's already a spawned thing counting for the next emote diff --git a/code/modules/vore/eating/belly_obj_ch.dm b/code/modules/vore/eating/belly_obj_ch.dm index 4a12d13bb6..14fc437cdf 100644 --- a/code/modules/vore/eating/belly_obj_ch.dm +++ b/code/modules/vore/eating/belly_obj_ch.dm @@ -36,6 +36,7 @@ var/liquid_fullness3_messages = FALSE var/liquid_fullness4_messages = FALSE var/liquid_fullness5_messages = FALSE + var/vorespawn_blacklist = FALSE var/list/fullness1_messages = list( "%pred's %belly looks empty" diff --git a/code/modules/vore/eating/belly_obj_vr.dm b/code/modules/vore/eating/belly_obj_vr.dm index 98801a721a..f8abbb477a 100644 --- a/code/modules/vore/eating/belly_obj_vr.dm +++ b/code/modules/vore/eating/belly_obj_vr.dm @@ -38,14 +38,15 @@ var/fancy_vore = FALSE // Using the new sounds? var/is_wet = TRUE // Is this belly's insides made of slimy parts? var/wet_loop = TRUE // Does the belly have a fleshy loop playing? + var/obj/item/weapon/storage/vore_egg/ownegg // Is this belly creating an egg? + var/egg_type = "egg" // Default egg type and path. + var/egg_path = /obj/item/weapon/storage/vore_egg //I don't think we've ever altered these lists. making them static until someone actually overrides them somewhere. //Actual full digest modes - var/tmp/static/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_ABSORB,DM_DRAIN,DM_UNABSORB,DM_HEAL,DM_SHRINK,DM_GROW,DM_SIZE_STEAL) + var/tmp/static/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_ABSORB,DM_DRAIN,DM_UNABSORB,DM_HEAL,DM_SHRINK,DM_GROW,DM_SIZE_STEAL,DM_EGG) //Digest mode addon flags - var/tmp/static/list/mode_flag_list = list("Numbing" = DM_FLAG_NUMBING, "Stripping" = DM_FLAG_STRIPPING, "Leave Remains" = DM_FLAG_LEAVEREMAINS, "Muffles" = DM_FLAG_THICKBELLY) - //Transformation modes - var/tmp/static/list/transform_modes = list(DM_TRANSFORM_MALE,DM_TRANSFORM_FEMALE,DM_TRANSFORM_KEEP_GENDER,DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR,DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG,DM_TRANSFORM_REPLICA,DM_TRANSFORM_REPLICA_EGG,DM_TRANSFORM_KEEP_GENDER_EGG,DM_TRANSFORM_MALE_EGG,DM_TRANSFORM_FEMALE_EGG, DM_EGG) + var/tmp/static/list/mode_flag_list = list("Numbing" = DM_FLAG_NUMBING, "Stripping" = DM_FLAG_STRIPPING, "Leave Remains" = DM_FLAG_LEAVEREMAINS, "Muffles" = DM_FLAG_THICKBELLY, "Affect Worn Items" = DM_FLAG_AFFECTWORN) //Item related modes var/tmp/static/list/item_digest_modes = list(IM_HOLD,IM_DIGEST_FOOD,IM_DIGEST) @@ -185,7 +186,8 @@ "fullness2_messages", "fullness3_messages", "fullness4_messages", - "fullness5_messages" //CHOMP end of variables from CHOMP + "fullness5_messages", + "vorespawn_blacklist" //CHOMP end of variables from CHOMP ) /*These have been pulled from the above list as these were chomp edits for liquid belly stuff. This needs to be ported back in for TGUI port @@ -342,6 +344,11 @@ if (!(M in contents)) return 0 // They weren't in this belly anyway + for(var/mob/living/L in M.contents) + L.muffled = 0 + for(var/obj/item/weapon/holder/H in M.contents) + H.held_mob.muffled = 0 + //Place them into our drop_location M.forceMove(drop_location()) @@ -578,7 +585,7 @@ owner.adjust_nutrition((nutrition_percent / 100) * 5 * digested) if(isrobot(owner)) var/mob/living/silicon/robot/R = owner - R.cell.charge += (50 * digested) + R.cell.charge += ((nutrition_percent / 100) * 50 * digested) return digested //Determine where items should fall out of us into. @@ -602,9 +609,10 @@ //Handle a mob struggling // Called from /mob/living/carbon/relaymove() -/obj/belly/proc/relay_resist(mob/living/R) +/obj/belly/proc/relay_resist(mob/living/R, obj/item/C) if (!(R in contents)) - return // User is not in this belly + if(!C) + return // User is not in this belly R.setClickCooldown(50) @@ -613,9 +621,13 @@ to_chat(owner, "Someone is attempting to climb out of your [lowertext(name)]!") if(do_after(R, escapetime, owner, incapacitation_flags = INCAPACITATION_DEFAULT & ~INCAPACITATION_RESTRAINED)) - if((owner.stat || escapable) && (R.loc == src)) //Can still escape? - release_specific_contents(R) - return + if((owner.stat || escapable)) //Can still escape? + if(C) + release_specific_contents(C) + return + if(R.loc == src) + release_specific_contents(R) + return else if(R.loc != src) //Aren't even in the belly. Quietly fail. return else //Belly became inescapable or mob revived @@ -658,6 +670,13 @@ to_chat(R, "You start to climb out of \the [lowertext(name)].") to_chat(owner, "Someone is attempting to climb out of your [lowertext(name)]!") if(do_after(R, escapetime)) + if(escapable && C) + release_specific_contents(C) + to_chat(R,"Your struggles successfully cause [owner] to squeeze your container out of their \the [lowertext(name)].") + to_chat(owner,"[C] suddenly slips out of your [lowertext(name)]!") + for(var/mob/M in hearers(4, owner)) + M.show_message("[C] suddenly slips out of [owner]'s [lowertext(name)]!", 2) + return if((escapable) && (R.loc == src) && !R.absorbed) //Does the owner still have escapable enabled? release_specific_contents(R) to_chat(R,"You climb out of \the [lowertext(name)].") @@ -688,6 +707,9 @@ to_chat(R, "Your attempt to escape [lowertext(name)] has failed and your struggles only results in you sliding into [owner]'s [transferlocation]!") to_chat(owner, "Someone slid into your [transferlocation] due to their struggling inside your [lowertext(name)]!") + if(C) + transfer_contents(C, dest_belly) + return transfer_contents(R, dest_belly) return @@ -794,7 +816,8 @@ dupe.gen_time = gen_time dupe.gen_time_display = gen_time_display dupe.reagent_transfer_verb = reagent_transfer_verb - dupe.custom_max_volume = custom_max_volume //CHOMP end of variables from CHOMP + dupe.custom_max_volume = custom_max_volume + dupe.vorespawn_blacklist = vorespawn_blacklist //CHOMP end of variables from CHOMP dupe.belly_fullscreen = belly_fullscreen dupe.disable_hud = disable_hud diff --git a/code/modules/vore/eating/bellymodes_datum_vr.dm b/code/modules/vore/eating/bellymodes_datum_vr.dm index c03dabb2b9..6d97729767 100644 --- a/code/modules/vore/eating/bellymodes_datum_vr.dm +++ b/code/modules/vore/eating/bellymodes_datum_vr.dm @@ -14,6 +14,9 @@ GLOBAL_LIST_INIT(digest_modes, list()) /datum/digest_mode/proc/process_mob(obj/belly/B, mob/living/L) return null +/datum/digest_mode/proc/handle_atoms(obj/belly/B, list/touchable_atoms) + return FALSE + /datum/digest_mode/digest id = DM_DIGEST noise_chance = 50 @@ -54,7 +57,7 @@ GLOBAL_LIST_INIT(digest_modes, list()) L.adjustFireLoss(B.digest_burn) var/actual_brute = L.getBruteLoss() - old_brute var/actual_burn = L.getFireLoss() - old_burn - var/damage_gain = actual_brute + actual_burn + var/damage_gain = (actual_brute + actual_burn)*(B.nutrition_percent / 100) var/offset = (1 + ((L.weight - 137) / 137)) // 130 pounds = .95 140 pounds = 1.02 var/difference = B.owner.size_multiplier / L.size_multiplier @@ -72,9 +75,9 @@ GLOBAL_LIST_INIT(digest_modes, list()) B.digest_nutri_gain = offset*((B.nutrition_percent / 100)*0.5/(B.gen_cost*1.25)*(damage_gain)/difference) //for transfering nutrition value over to GenerateBellyReagents_digesting() B.GenerateBellyReagents_digesting() else - B.owner.adjust_nutrition(offset*((B.nutrition_percent / 100) * 4.5 * (damage_gain) / difference)) //CHOMPedit end //4.5 nutrition points per health point. Normal same size 100+100 health prey with average weight would give 900 points if the digestion was instant. With all the size/weight offset taxes plus over time oxyloss+hunger taxes deducted with non-instant digestion, this should be enough to not leave the pred starved. + B.owner.adjust_nutrition(offset*(4.5 * (damage_gain) / difference)) //CHOMPedit end //4.5 nutrition points per health point. Normal same size 100+100 health prey with average weight would give 900 points if the digestion was instant. With all the size/weight offset taxes plus over time oxyloss+hunger taxes deducted with non-instant digestion, this should be enough to not leave the pred starved. else - B.owner.adjust_nutrition((B.nutrition_percent / 100) * 4.5 * (damage_gain) / difference) + B.owner.adjust_nutrition(4.5 * (damage_gain) / difference) /datum/digest_mode/absorb id = DM_ABSORB @@ -153,130 +156,72 @@ GLOBAL_LIST_INIT(digest_modes, list()) B.owner.adjust_nutrition(-1) L.adjust_nutrition(1) -// TRANSFORM MODES -/datum/digest_mode/transform - var/stabilize_nutrition = FALSE - var/changes_eyes = FALSE - var/changes_hair_solo = FALSE - var/changes_hairandskin = FALSE - var/changes_gender = FALSE - var/changes_gender_to = null - var/changes_species = FALSE - var/changes_ears_tail_wing_nocolor = FALSE - var/changes_ears_tail_wing_color = FALSE - var/eggs = FALSE - -/datum/digest_mode/transform/process_mob(obj/belly/B, mob/living/carbon/human/H) - if(!istype(H) || H.stat == DEAD) - return null - if(stabilize_nutrition) - if(B.owner.nutrition > 400 && H.nutrition < 400) - B.owner.adjust_nutrition(-2) - H.adjust_nutrition(1.5) - if(changes_eyes && B.check_eyes(H)) - B.change_eyes(H, 1) - return null - if(changes_hair_solo && B.check_hair(H)) - B.change_hair(H) - return null - if(changes_hairandskin && (B.check_hair(H) || B.check_skin(H))) - B.change_hair(H) - B.change_skin(H, 1) - return null - if(changes_species) - if(changes_ears_tail_wing_nocolor && (B.check_ears(H) || B.check_tail_nocolor(H) || B.check_wing_nocolor(H) || B.check_species(H))) - B.change_ears(H) - B.change_tail_nocolor(H) - B.change_wing_nocolor(H) - B.change_species(H, 1, 1) // ,1) preserves coloring - H.species.create_organs(H) - H.sync_organ_dna() - return null - if(changes_ears_tail_wing_color && (B.check_ears(H) || B.check_tail(H) || B.check_wing(H) || B.check_species(H))) - B.change_ears(H) - B.change_tail(H) - B.change_wing(H) - B.change_species(H, 1, 2) // ,2) does not preserve coloring. - H.species.create_organs(H) - H.sync_organ_dna() - return null - if(changes_gender && B.check_gender(H, changes_gender_to)) - B.change_gender(H, changes_gender_to, 1) - return null - if(eggs && (!H.absorbed)) - B.put_in_egg(H, 1) - return null - -// Regular TF Modes -/datum/digest_mode/transform/hairandeyes - id = DM_TRANSFORM_HAIR_AND_EYES - stabilize_nutrition = TRUE - changes_eyes = TRUE - changes_hair_solo = TRUE - -/datum/digest_mode/transform/gender - id = DM_TRANSFORM_FEMALE - changes_eyes = TRUE - changes_hairandskin = TRUE - changes_gender = TRUE - changes_gender_to = FEMALE - stabilize_nutrition = TRUE - -/datum/digest_mode/transform/gender/male - id = DM_TRANSFORM_FEMALE - changes_gender_to = MALE - -/datum/digest_mode/transform/keepgender - id = DM_TRANSFORM_KEEP_GENDER - changes_eyes = TRUE - changes_hairandskin = TRUE - stabilize_nutrition = TRUE - -/datum/digest_mode/transform/speciesandtaur - id = DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR - changes_species = TRUE - changes_ears_tail_wing_nocolor = TRUE - stabilize_nutrition = TRUE - -/datum/digest_mode/transform/replica - id = DM_TRANSFORM_REPLICA - changes_eyes = TRUE - changes_hairandskin = TRUE - changes_species = TRUE - changes_ears_tail_wing_color = TRUE - // E G G -/datum/digest_mode/transform/egg +/datum/digest_mode/egg id = DM_EGG - eggs = TRUE +/* +/datum/digest_mode/egg/process_mob(obj/belly/B, mob/living/carbon/human/H) + if(!istype(H) || H.stat == DEAD || H.absorbed) + return null + B.put_in_egg(H, 1)*/ -/datum/digest_mode/transform/egg/gender - id = DM_TRANSFORM_FEMALE_EGG - changes_eyes = TRUE - changes_hairandskin = TRUE - changes_gender = TRUE - changes_gender_to = FEMALE - stabilize_nutrition = TRUE - -/datum/digest_mode/transform/egg/gender/male - id = DM_TRANSFORM_MALE_EGG - changes_gender_to = MALE - -/datum/digest_mode/transform/egg/nogender - id = DM_TRANSFORM_KEEP_GENDER_EGG - changes_eyes = TRUE - changes_hairandskin = TRUE - stabilize_nutrition = TRUE - -/datum/digest_mode/transform/egg/speciesandtaur - id = DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG - changes_species = TRUE - changes_ears_tail_wing_nocolor = TRUE - stabilize_nutrition = TRUE - -/datum/digest_mode/transform/egg/replica - id = DM_TRANSFORM_REPLICA_EGG - changes_eyes = TRUE - changes_hairandskin = TRUE - changes_species = TRUE - changes_ears_tail_wing_color = TRUE \ No newline at end of file +/datum/digest_mode/egg/handle_atoms(obj/belly/B, list/touchable_atoms) + var/list/egg_contents = list() + for(var/E in touchable_atoms) + if(istype(E, /obj/item/weapon/storage/vore_egg)) // Don't egg other eggs. + continue + if(isliving(E)) + var/mob/living/L = E + if(L.absorbed) + continue + egg_contents += L + if(isitem(E)) + egg_contents += E + if(egg_contents.len) + if(!B.ownegg) + if(B.owner.vore_egg_type in tf_vore_egg_types) + B.egg_type = B.owner.vore_egg_type + B.egg_path = tf_vore_egg_types[B.egg_type] + B.ownegg = new B.egg_path(B) + for(var/atom/movable/C in egg_contents) + if(isitem(C) && egg_contents.len == 1) //Only egging one item + var/obj/item/I = C + B.ownegg.w_class = I.w_class + B.ownegg.max_storage_space = B.ownegg.w_class + I.forceMove(B.ownegg) + B.ownegg.icon_scale_x = 0.2 * B.ownegg.w_class + B.ownegg.icon_scale_y = 0.2 * B.ownegg.w_class + B.ownegg.update_transform() + egg_contents -= I + B.ownegg = null + return + if(isliving(C)) + var/mob/living/M = C + B.ownegg.w_class = M.size_multiplier * 4 //Egg size and weight scaled to match occupant. + var/obj/item/weapon/holder/H = new M.holder_type(B.ownegg) + H.held_mob = M + M.forceMove(H) + H.sync(M) + B.ownegg.max_storage_space = H.w_class + B.ownegg.icon_scale_x = 0.25 * B.ownegg.w_class + B.ownegg.icon_scale_y = 0.25 * B.ownegg.w_class + B.ownegg.update_transform() + egg_contents -= M + if(B.ownegg.w_class > 4) + B.ownegg.slowdown = B.ownegg.w_class - 4 + B.ownegg = null + return + C.forceMove(B.ownegg) + if(isitem(C)) + var/obj/item/I = C + B.ownegg.w_class += I.w_class //Let's assume a regular outfit can reach total w_class of 16. + B.ownegg.calibrate_size() + B.ownegg.orient2hud() + B.ownegg.w_class = clamp(B.ownegg.w_class * 0.25, 1, 8) //A total w_class of 16 will result in a backpack sized egg. + B.ownegg.icon_scale_x = 0.25 * B.ownegg.w_class + B.ownegg.icon_scale_y = 0.25 * B.ownegg.w_class + B.ownegg.update_transform() + if(B.ownegg.w_class > 4) + B.ownegg.slowdown = B.ownegg.w_class - 4 + B.ownegg = null + return \ No newline at end of file diff --git a/code/modules/vore/eating/bellymodes_vr.dm b/code/modules/vore/eating/bellymodes_vr.dm index 160b8a4a39..9d4b5309c8 100644 --- a/code/modules/vore/eating/bellymodes_vr.dm +++ b/code/modules/vore/eating/bellymodes_vr.dm @@ -32,6 +32,14 @@ if(!length(touchable_atoms)) return + var/datum/digest_mode/DM = GLOB.digest_modes["[digest_mode]"] + if(!DM) + log_debug("Digest mode [digest_mode] didn't exist in the digest_modes list!!") + return FALSE + if(DM.handle_atoms(src, touchable_atoms)) + updateVRPanels() + return + var/list/touchable_mobs = null var/list/hta_returns = handle_touchable_atoms(touchable_atoms) @@ -55,11 +63,6 @@ continue // don't give digesty messages to indigestible people to_chat(M, "[pick(EL)]") - var/datum/digest_mode/DM = GLOB.digest_modes["[digest_mode]"] - if(!DM) - log_debug("Digest mode [digest_mode] didn't exist in the digest_modes list!!") - return FALSE - if(!digestion_noise_chance) digestion_noise_chance = DM.noise_chance @@ -138,6 +141,16 @@ if((mode_flags & DM_FLAG_THICKBELLY) && !H.muffled) H.muffled = TRUE + //Worn items flag + if(mode_flags & DM_FLAG_AFFECTWORN) + for(var/slot in slots) + var/obj/item/I = H.get_equipped_item(slot = slot) + if(I && I.canremove) + if(handle_digesting_item(I)) + digestion_noise_chance = 25 + to_update = TRUE + break + //Stripping flag if(mode_flags & DM_FLAG_STRIPPING) for(var/slot in slots) @@ -220,7 +233,7 @@ R.cell.charge += 15*compensation GenerateBellyReagents_digested() else - R.cell.charge += 25*compensation //CHOMPedit end + R.cell.charge += 25*compensation*(nutrition_percent / 100) //CHOMPedit end else if(reagent_mode_flags & DM_FLAG_REAGENTSDIGEST && reagents.total_volume < reagents.maximum_volume) //CHOMP digestion producing reagents owner.adjust_nutrition((nutrition_percent / 100)*3.0*compensation) @@ -245,4 +258,4 @@ if(owner.client) owner.updateVRPanel() if(isanimal(owner)) - owner.update_icon() \ No newline at end of file + owner.update_icon() diff --git a/code/modules/vore/eating/contaminate_vr.dm b/code/modules/vore/eating/contaminate_vr.dm index 5bbbe902c7..998c7b53c5 100644 --- a/code/modules/vore/eating/contaminate_vr.dm +++ b/code/modules/vore/eating/contaminate_vr.dm @@ -105,6 +105,9 @@ var/list/gurgled_overlays = list( /obj/item/weapon/reagent_containers/food/gurgle_contaminate(var/atom/movable/item_storage = null) return FALSE +/obj/item/weapon/storage/vore_egg/gurgle_contaminate(var/atom/movable/item_storage = null) + return FALSE + /obj/item/weapon/holder/gurgle_contaminate(var/atom/movable/item_storage = null) if(isbelly(loc)) digest_act(item_storage) @@ -150,4 +153,4 @@ var/list/gurgled_overlays = list( if(pockets.contents) for(var/obj/item/O in pockets.contents) O.gurgle_contaminate(item_storage, contamination_flavor, contamination_color) - ..() \ No newline at end of file + ..() diff --git a/code/modules/vore/eating/living_vr.dm b/code/modules/vore/eating/living_vr.dm index 21ec8fdca3..1cb18f9f65 100644 --- a/code/modules/vore/eating/living_vr.dm +++ b/code/modules/vore/eating/living_vr.dm @@ -32,7 +32,8 @@ var/adminbus_trash = FALSE // For abusing trash eater for event shenanigans. var/adminbus_eat_minerals = FALSE // This creature subsists on a diet of pure adminium. var/vis_height = 32 // Sprite height used for resize features. - var/show_vore_fx = TRUE // Show belly fullscreens + var/show_vore_fx = TRUE // Show belly fullscreens + var/latejoin_vore = FALSE // If enabled, latejoiners can spawn into this, assuming they have a client // // Hook for generic creation of stuff on new creatures @@ -242,7 +243,8 @@ P.can_be_drop_pred = src.can_be_drop_pred - //CHOMP reagent belly + //CHOMP stuff + P.latejoin_vore = src.latejoin_vore P.receive_reagents = src.receive_reagents P.give_reagents = src.give_reagents @@ -279,7 +281,8 @@ can_be_drop_prey = P.can_be_drop_prey can_be_drop_pred = P.can_be_drop_pred - //CHOMP reagents belly + //CHOMP stuff + latejoin_vore = P.latejoin_vore receive_reagents = P.receive_reagents give_reagents = P.give_reagents @@ -865,6 +868,7 @@ dispvoreprefs += "Healbelly permission: [permit_healbelly ? "Allowed" : "Disallowed"]
    " dispvoreprefs += "Spontaneous vore prey: [can_be_drop_prey ? "Enabled" : "Disabled"]
    " dispvoreprefs += "Spontaneous vore pred: [can_be_drop_pred ? "Enabled" : "Disabled"]
    " + dispvoreprefs += "Late join spawn point belly: [latejoin_vore ? "Enabled" : "Disabled"]
    " //CHOMPstation edit dispvoreprefs += "Receiving liquids: [receive_reagents ? "Enabled" : "Disabled"]
    " //CHOMPstation edit dispvoreprefs += "Giving liquids: [give_reagents ? "Enabled" : "Disabled"]
    " //CHOMPstation edit user << browse("Vore prefs: [src]
    [dispvoreprefs]
    ", "window=[name]mvp;size=200x300;can_resize=0;can_minimize=0") diff --git a/code/modules/vore/eating/transforming_vr.dm b/code/modules/vore/eating/transforming_vr.dm index 8f9eea2371..e8de8d466b 100644 --- a/code/modules/vore/eating/transforming_vr.dm +++ b/code/modules/vore/eating/transforming_vr.dm @@ -1,250 +1,3 @@ -/obj/belly/proc/check_eyes(var/mob/living/carbon/human/M) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return 0 - return (M.r_eyes != O.r_eyes || M.g_eyes != O.g_eyes || M.b_eyes != O.b_eyes) - -/obj/belly/proc/change_eyes(var/mob/living/carbon/human/M, message=0) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return - - M.r_eyes = O.r_eyes - M.g_eyes = O.g_eyes - M.b_eyes = O.b_eyes - M.update_eyes() - M.update_icons_body() - if(message) - to_chat(M, "You feel lightheaded and drowsy...") - to_chat(O, "You feel warm as you make subtle changes to your captive's body.") - -/obj/belly/proc/check_hair(var/mob/living/carbon/human/M) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return 0 - - if(M.r_hair != O.r_hair || M.g_hair != O.g_hair || M.b_hair != O.b_hair) - return 1 - if(M.r_facial != O.r_facial || M.g_facial != O.g_facial || M.b_facial != O.b_facial) - return 1 - if(M.h_style != O.h_style || M.f_style != O.f_style) - return 1 - return 0 - -/obj/belly/proc/change_hair(var/mob/living/carbon/human/M, message=0) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return - - M.r_hair = O.r_hair - M.g_hair = O.g_hair - M.b_hair = O.b_hair - M.r_facial = O.r_facial - M.g_facial = O.g_facial - M.b_facial = O.b_facial - M.h_style = O.h_style - M.f_style = O.f_style - M.update_hair() - if(message) - to_chat(M, "Your body tingles all over...") - to_chat(O, "You tingle as you make noticeable changes to your captive's body.") - -/obj/belly/proc/check_skin(var/mob/living/carbon/human/M) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return 0 - - return (M.r_skin != O.r_skin || M.g_skin != O.g_skin || M.b_skin != O.b_skin) - -/obj/belly/proc/change_skin(var/mob/living/carbon/human/M, message=0) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return - - M.r_skin = O.r_skin - M.g_skin = O.g_skin - M.b_skin = O.b_skin - for(var/obj/item/organ/external/Z in M.organs) - Z.sync_colour_to_human(M) - M.update_icons_body() - if(message) - to_chat(M, "Your body tingles all over...") - to_chat(O, "You tingle as you make noticeable changes to your captive's body.") - -/obj/belly/proc/check_gender(var/mob/living/carbon/human/M, target_gender) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return 0 - - if(!target_gender) - target_gender = O.gender - - return (M.gender != target_gender || M.identifying_gender != target_gender) - -/obj/belly/proc/change_gender(var/mob/living/carbon/human/M, target_gender, message=0) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return - - if(!target_gender) - target_gender = O.gender - - M.gender = target_gender - M.identifying_gender = target_gender - if(target_gender == FEMALE) - M.f_style = "Shaved" - M.dna.SetUIState(DNA_UI_GENDER,M.gender!=MALE,1) - M.sync_organ_dna() - M.update_icons_body() - if(message) - to_chat(M, "Your body feels very strange...") - to_chat(O, "You feel strange as you alter your captive's gender.") - -/obj/belly/proc/check_tail(var/mob/living/carbon/human/M) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return 0 - - if(M.tail_style != O.tail_style) - return 1 - if(M.r_tail != O.r_tail || M.g_tail != O.g_tail || M.b_tail != O.b_tail) - return 1 - return 0 - -/obj/belly/proc/change_tail(var/mob/living/carbon/human/M, message=0) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return - - M.r_tail = O.r_tail - M.g_tail = O.g_tail - M.b_tail = O.b_tail - M.tail_style = O.tail_style - M.update_tail_showing() - if(message) - to_chat(M, "Your body tingles all over...") - to_chat(O, "You tingle as you make noticeable changes to your captive's body.") - -/obj/belly/proc/check_tail_nocolor(var/mob/living/carbon/human/M) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return 0 - - return (M.tail_style != O.tail_style) - -/obj/belly/proc/change_tail_nocolor(var/mob/living/carbon/human/M, message=0) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return - - M.tail_style = O.tail_style - M.update_tail_showing() - if(message) - to_chat(M, "Your body tingles all over...") - to_chat(O, "You tingle as you make noticeable changes to your captive's body.") - -/obj/belly/proc/check_wing(var/mob/living/carbon/human/M) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return 0 - - if(M.wing_style != O.wing_style) - return 1 - if(M.r_wing != O.r_wing || M.g_wing != O.g_wing || M.b_wing != O.b_wing) - return 1 - return 0 - -/obj/belly/proc/change_wing(var/mob/living/carbon/human/M, message=0) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return - - M.r_wing = O.r_wing - M.g_wing = O.g_wing - M.b_wing = O.b_wing - M.wing_style = O.wing_style - M.update_wing_showing() - if(message) - to_chat(M, "Your body tingles all over...") - to_chat(O, "You tingle as you make noticeable changes to your captive's body.") - -/obj/belly/proc/check_wing_nocolor(var/mob/living/carbon/human/M) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return 0 - - return (M.wing_style != O.wing_style) - -/obj/belly/proc/change_wing_nocolor(var/mob/living/carbon/human/M, message=0) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return - - M.wing_style = O.wing_style - M.update_wing_showing() - if(message) - to_chat(M, "Your body tingles all over...") - to_chat(O, "You tingle as you make noticeable changes to your captive's body.") - -/obj/belly/proc/check_ears(var/mob/living/carbon/human/M) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return 0 - - return (M.ear_style != O.ear_style) - -/obj/belly/proc/change_ears(var/mob/living/carbon/human/M, message=0) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return - - M.ear_style = O.ear_style - M.update_hair() - -/obj/belly/proc/check_species(var/mob/living/carbon/human/M) - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return 0 - - if(M.species.name != O.species.name || M.custom_species != O.custom_species) - return 1 - return 0 - -/obj/belly/proc/change_species(var/mob/living/carbon/human/M, message=0, color_action = 0) //color_action: 0 for default species, 1 to preserve, 2 to transfer from pred - var/mob/living/carbon/human/O = owner - if(!istype(M) || !istype(O)) - return - - M.verbs -= M.species.inherent_verbs //Take away their unique stuff - - var/list/backup_implants = list() - for(var/obj/item/organ/I in M.organs) - for(var/obj/item/weapon/implant/backup/BI in I.contents) - backup_implants += BI - if(backup_implants.len) - for(var/obj/item/weapon/implant/backup/BI in backup_implants) - BI.forceMove(src) - if(color_action == 1) - M.set_species(O.species.name,0,1,M) - else if(color_action == 2) - M.species = O.species - else - M.set_species(O.species.name) - M.custom_species = O.custom_species - - M.update_icons_body() - M.update_tail_showing() - - if(backup_implants.len) - var/obj/item/organ/external/torso = M.get_organ(BP_TORSO) - for(var/obj/item/weapon/implant/backup/BI in backup_implants) - BI.forceMove(torso) - torso.implants += BI - - if(message) - to_chat(M, "You lose sensation of your body, feeling only the warmth of everything around you... ") - to_chat(O, "Your body shifts as you make dramatic changes to your captive's body.") - /obj/belly/proc/put_in_egg(var/atom/movable/M, message=0) var/mob/living/carbon/human/O = owner var/egg_path = /obj/structure/closet/secure_closet/egg diff --git a/code/modules/vore/eating/vore_vr.dm b/code/modules/vore/eating/vore_vr.dm index b41c4a4f15..e0cf4d22fb 100644 --- a/code/modules/vore/eating/vore_vr.dm +++ b/code/modules/vore/eating/vore_vr.dm @@ -58,9 +58,10 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE var/can_be_drop_pred = FALSE - //CHOMP reagent belly + //CHOMP stuff var/receive_reagents = FALSE var/give_reagents = FALSE + var/latejoin_vore = FALSE //Mechanically required @@ -139,7 +140,8 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE belly_prefs = json_from_file["belly_prefs"] - //CHOMP reagent belly + //CHOMP stuff + latejoin_vore = json_from_file["latejoin_vore"] receive_reagents = json_from_file["receive_reagents"] give_reagents = json_from_file["give_reagents"] @@ -168,7 +170,9 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE if(isnull(belly_prefs)) belly_prefs = list() - //CHOMP reagent belly + //CHOMP stuff + if(isnull(latejoin_vore)) + latejoin_vore = FALSE if(isnull(receive_reagents)) receive_reagents = FALSE if(isnull(give_reagents)) @@ -192,9 +196,10 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE "vore_taste" = vore_taste, "vore_smell" = vore_smell, "permit_healbelly" = permit_healbelly, - "show_vore_fx" = show_vore_fx, + "show_vore_fx" = show_vore_fx, "can_be_drop_prey" = can_be_drop_prey, "can_be_drop_pred" = can_be_drop_pred, + "latejoin_vore" = latejoin_vore, "belly_prefs" = belly_prefs, "receive_reagents" = receive_reagents, "give_reagents" = give_reagents, diff --git a/code/modules/vore/eating/vorepanel_vr.dm b/code/modules/vore/eating/vorepanel_vr.dm index 7c9537037a..0b902e82bc 100644 --- a/code/modules/vore/eating/vorepanel_vr.dm +++ b/code/modules/vore/eating/vorepanel_vr.dm @@ -157,7 +157,8 @@ "shrink_grow_size" = selected.shrink_grow_size, "belly_fullscreen" = selected.belly_fullscreen, "possible_fullscreens" = icon_states('icons/mob/screen_full_vore.dmi'), - ) + "vorespawn_blacklist" = selected.vorespawn_blacklist + ) //CHOMP Addition: vorespawn blacklist data["selected"]["addons"] = list() for(var/flag_name in selected.mode_flag_list) @@ -200,7 +201,7 @@ if(M.absorbed) info["absorbed"] = TRUE data["selected"]["contents"].Add(list(info)) - + data["selected"]["show_liq"] = selected.show_liquids //CHOMPedit start: liquid belly options data["selected"]["liq_interacts"] = list() if(selected.show_liquids) @@ -243,6 +244,7 @@ "show_vore_fx" = host.show_vore_fx, "can_be_drop_prey" = host.can_be_drop_prey, "can_be_drop_pred" = host.can_be_drop_pred, + "latejoin_vore" = host.latejoin_vore, "noisy" = host.noisy, //CHOMPedit start, liquid belly prefs "liq_rec" = host.receive_reagents, @@ -271,7 +273,7 @@ // Host is inside someone else, and is trying to interact with something else inside that person. if("pick_from_inside") return pick_from_inside(usr, params) - + // Host is trying to interact with something in host's belly. if("pick_from_outside") return pick_from_outside(usr, params) @@ -302,7 +304,7 @@ host.vore_selected = NB unsaved_changes = TRUE return TRUE - + if("bellypick") host.vore_selected = locate(params["bellypick"]) return TRUE @@ -375,6 +377,12 @@ host.client.prefs_vr.can_be_drop_prey = host.can_be_drop_prey unsaved_changes = TRUE return TRUE + if("toggle_latejoin_vore") + host.latejoin_vore = !host.latejoin_vore + if(host.client.prefs_vr) + host.client.prefs_vr.latejoin_vore = host.latejoin_vore + unsaved_changes = TRUE + return TRUE if("toggle_digest") host.digestable = !host.digestable if(host.client.prefs_vr) @@ -459,11 +467,11 @@ if(!(target in OB)) return TRUE // Aren't here anymore, need to update menu - + var/intent = "Examine" if(isliving(target)) intent = alert("What do you want to do to them?","Query","Examine","Help Out","Devour") - + else if(istype(target, /obj/item)) intent = alert("What do you want to do to that?","Query","Examine","Use Hand") @@ -561,12 +569,14 @@ host.vore_selected.transfer_contents(target, choice, 1) return TRUE return - + var/atom/movable/target = locate(params["pick"]) if(!(target in host.vore_selected)) return TRUE // Not in our X anymore, update UI - intent = "Examine" - intent = alert("Examine, Eject, Move? Examine if you want to leave this box.","Query","Examine","Eject","Move") + var/list/available_options = list("Examine", "Eject", "Move") + if(ishuman(target)) + available_options += "Transform" + intent = input(user, "What would you like to do with [target]?", "Vore Pick", "Examine") as null|anything in available_options switch(intent) if("Examine") var/list/results = target.examine(host) @@ -581,6 +591,7 @@ return TRUE host.vore_selected.release_specific_contents(target) + return TRUE if("Move") if(host.stat) @@ -593,6 +604,20 @@ to_chat(target,"You're squished from [host]'s [lowertext(host.vore_selected.name)] to their [lowertext(choice.name)]!") host.vore_selected.transfer_contents(target, choice) + return TRUE + + if("Transform") + if(host.stat) + to_chat(user,"You can't do that in your state!") + return TRUE + + var/mob/living/carbon/human/H = target + if(!istype(H)) + return + + var/datum/tgui_module/appearance_changer/vore/V = new(host, H) + V.tgui_interact(user) + return TRUE /datum/vore_look/proc/set_attr(mob/user, params) if(!host.vore_selected) @@ -629,21 +654,10 @@ . = TRUE if("b_mode") var/list/menu_list = host.vore_selected.digest_modes.Copy() - if(istype(usr,/mob/living/carbon/human)) - menu_list += DM_TRANSFORM - var/new_mode = input("Choose Mode (currently [host.vore_selected.digest_mode])") as null|anything in menu_list if(!new_mode) return FALSE - if(new_mode == DM_TRANSFORM) //Snowflek submenu - var/list/tf_list = host.vore_selected.transform_modes - var/new_tf_mode = input("Choose TF Mode (currently [host.vore_selected.digest_mode])") as null|anything in tf_list - if(!new_tf_mode) - return FALSE - host.vore_selected.digest_mode = new_tf_mode - return - host.vore_selected.digest_mode = new_mode . = TRUE if("b_addons") @@ -652,7 +666,7 @@ if(!toggle_addon) return FALSE host.vore_selected.mode_flags ^= host.vore_selected.mode_flag_list[toggle_addon] - host.vore_selected.items_preserved.Cut() //Re-evaltuate all items in belly on + host.vore_selected.items_preserved.Cut() //Re-evaltuate all items in belly on . = TRUE if("b_item_mode") var/list/menu_list = host.vore_selected.item_digest_modes.Copy() @@ -682,7 +696,7 @@ host.vore_selected.contamination_color = new_color host.vore_selected.items_preserved.Cut() //To re-contaminate for new color . = TRUE - if("b_desc") + if("b_desc") var/new_desc = html_encode(input(usr,"Belly Description ([BELLIES_DESC_MAX] char limit):","New Description",host.vore_selected.desc) as message|null) if(new_desc) @@ -915,7 +929,11 @@ qdel(host.vore_selected) host.vore_selected = host.vore_organs[1] . = TRUE - + + if("b_vorespawn_blacklist") //CHOMP Addition + host.vore_selected.vorespawn_blacklist = !host.vore_selected.vorespawn_blacklist + . = TRUE + if(.) unsaved_changes = TRUE @@ -928,7 +946,7 @@ var/attr = params["liq_attribute"] switch(attr) if("b_show_liq") - if(!host.vore_selected.show_liquids) + if(!host.vore_selected.show_liquids) host.vore_selected.show_liquids = 1 to_chat(usr,"Your [lowertext(host.vore_selected.name)] now has liquid options.") else @@ -1028,7 +1046,7 @@ var/attr = params["liq_messages"] switch(attr) if("b_show_liq_fullness") - if(!host.vore_selected.show_fullness_messages) + if(!host.vore_selected.show_fullness_messages) host.vore_selected.show_fullness_messages = 1 to_chat(usr,"Your [lowertext(host.vore_selected.name)] now has liquid examination options.") else @@ -1090,4 +1108,4 @@ if(new_message) host.vore_selected.set_reagent_messages(new_message,"full5") . = TRUE -//CHOMPedit end \ No newline at end of file +//CHOMPedit end diff --git a/code/modules/vore/fluffstuff/custom_clothes_vr.dm b/code/modules/vore/fluffstuff/custom_clothes_vr.dm index 70b2198f1e..0f58fdaf96 100644 --- a/code/modules/vore/fluffstuff/custom_clothes_vr.dm +++ b/code/modules/vore/fluffstuff/custom_clothes_vr.dm @@ -110,8 +110,8 @@ //ketrai:Ketrai /obj/item/clothing/head/fluff/ketrai - name = "Pink Bear Hat" - desc = "A pink space bear hat, the origins are unknown" + name = "Bear Pelt" + desc = "A luxury space bear pelt, its origins unknown." icon = 'icons/vore/custom_clothes_vr.dmi' icon_state = "bearpelt" @@ -2026,7 +2026,7 @@ Departamental Swimsuits, for general use desc = "A special hat, removed from its owner." //Ryumi: Nikki Yumeno -/obj/item/clothing/under/skirt/outfit/fluff/nikki +/obj/item/clothing/under/skirt/outfit/fluff/nikki name = "dorky outfit" desc = "A little witch costume that looks like it's been worn as ordinary clothes. Who in their right mind would...??" icon = 'icons/vore/custom_clothes_vr.dmi' @@ -2052,7 +2052,7 @@ Departamental Swimsuits, for general use icon_state = "nikki_boots" item_state = "nikki_boots" -/obj/item/clothing/shoes/fluff/nikki/mob_can_equip(var/mob/living/carbon/human/M, slot, disable_warning = 0) +/obj/item/clothing/shoes/fluff/nikki/mob_can_equip(var/mob/living/carbon/human/M, slot, disable_warning = 0) if(..()) if (M.ckey == "ryumi") return 1 @@ -2086,7 +2086,7 @@ Departamental Swimsuits, for general use icon_state = "nikki-hat" item_state = "nikki-hat" item_icons = list( - slot_l_hand_str = 'icons/vore/custom_clothes_left_hand_vr.dmi', + slot_l_hand_str = 'icons/vore/custom_clothes_left_hand_vr.dmi', slot_r_hand_str = 'icons/vore/custom_clothes_right_hand_vr.dmi', slot_head_str = 'icons/vore/custom_onmob_32x48_vr.dmi' ) @@ -2140,19 +2140,19 @@ Departamental Swimsuits, for general use to_chat(user, "You think to turn \the [src] on its creator?! FOOOOOOOOL.") to_chat(user, "From seemingly nowhere you hear echoing, derisive laughter, accompanied by a stock laugh track and... Are those bike horns?") return 0 - + if (!istype(target)) to_chat(user, "\The [src] isn't a valid target!") return 0 - + // Because other mobs (i.e. monkeys) apparently have dropnom prey set to 0, we check SPECIFICALLY for humans' dropnom setting. if (target.type == /mob/living/carbon/human && !target.can_be_drop_prey) teleport_fail(user, target) return 0 - + if (!translocator.teleport_checks(target, user)) return 0 - + else return 1 /obj/item/clothing/head/fluff/nikki/attackby(obj/item/weapon/I as obj, mob/user as mob) @@ -2239,7 +2239,7 @@ Departamental Swimsuits, for general use if (I_HURT) user.visible_message("[user] swipes \the [src] over \the [target]!") translocator.afterattack(target, user, proximity_flag) - + add_attack_logs(user, target, "Teleported [target] with via \the [src]'s [translocator]!") else ..() /*CHOMP Removal @@ -2253,7 +2253,7 @@ Departamental Swimsuits, for general use icon_override = 'icons/vore/custom_onmob_vr.dmi' item_state = "verie_hoodie" - + hoodtype = /obj/item/clothing/head/hood/winter/fluff/verie var/owner = "vitoras" diff --git a/code/modules/vore/resizing/holder_micro_vr.dm b/code/modules/vore/resizing/holder_micro_vr.dm index 4e7b63e0b9..b0bfbcc5b4 100644 --- a/code/modules/vore/resizing/holder_micro_vr.dm +++ b/code/modules/vore/resizing/holder_micro_vr.dm @@ -48,3 +48,23 @@ ..() for(var/mob/living/carbon/human/I in contents) item_state = lowertext(I.species.name) + +//Egg features. +/obj/item/weapon/holder/attack_hand(mob/living/user as mob) + if(istype(src.loc, /obj/item/weapon/storage/vore_egg)) //Don't scoop up the egged mob + src.pickup(user) + user.drop_from_inventory(src) + return + ..() + +/obj/item/weapon/holder/container_resist(mob/living/held) + if(!istype(src.loc, /obj/item/weapon/storage/vore_egg)) + ..() + else + var/obj/item/weapon/storage/vore_egg/E = src.loc + if(isbelly(E.loc)) + var/obj/belly/B = E.loc + B.relay_resist(held, E) + return + E.hatch(held) + return diff --git a/code/modules/xenoarcheaology/finds/eguns_vr_ch.dm b/code/modules/xenoarcheaology/finds/eguns_vr_ch.dm new file mode 100644 index 0000000000..600de59ad7 --- /dev/null +++ b/code/modules/xenoarcheaology/finds/eguns_vr_ch.dm @@ -0,0 +1,12 @@ +//The chomp override of the VR override VR:CH +/obj/item/weapon/gun/energy/laser/xenoarch + icon = 'icons/obj/xenoegun/xeno-eguns_ch.dmi' + +/obj/item/weapon/gun/energy/laser/practice/xenoarch + icon = 'icons/obj/xenoegun/xeno-eguns_ch.dmi' + +/obj/item/weapon/gun/energy/xray/xenoarch + icon = 'icons/obj/xenoegun/xeno-eguns_ch.dmi' + +/obj/item/weapon/gun/energy/captain/xenoarch + icon = 'icons/obj/xenoegun/xeno-eguns_ch.dmi' diff --git a/code/modules/xenoarcheaology/finds/find_spawning.dm b/code/modules/xenoarcheaology/finds/find_spawning.dm index b121724219..2e6dc4de31 100644 --- a/code/modules/xenoarcheaology/finds/find_spawning.dm +++ b/code/modules/xenoarcheaology/finds/find_spawning.dm @@ -295,7 +295,7 @@ if(spawn_type) var/obj/item/weapon/gun/energy/new_gun = new spawn_type(src.loc) new_item = new_gun - new_item.icon_state = "egun[rand(1,12)]" + new_item.icon_state = "egun[rand(1,18)]" //CHOMPStation Edit: We now reference our own DMI which has 18 unique guns. new_gun.desc = "This is an antique energy weapon, you're not sure if it will fire or not." //5% chance to explode when first fired @@ -551,7 +551,7 @@ var/obj/item/weapon/reagent_containers/syringe/S = new_item S.volume = 30 - //If S hasn't initialized yet, S.reagents will be null. + //If S hasn't initialized yet, S.reagents will be null. //However, in that case Initialize will set the maximum volume to the volume for us, so we don't need to do anything. S.reagents?.maximum_volume = 30 diff --git a/code/stylesheet.dm b/code/stylesheet.dm index 2e4caf1c33..6efbfdaf94 100644 --- a/code/stylesheet.dm +++ b/code/stylesheet.dm @@ -67,7 +67,11 @@ em {font-style: normal;font-weight: bold;} h1.alert, h2.alert {color: #000000;} .ghostalert {color: #5c00e6; font-style: italic; font-weight: bold;} -.emote {font-style: italic;} + +// VOREStation Edit Start +.emote {} +.emote_subtle {font-style: italic;} +// VOREStation Edit End /* Game Messages */ @@ -112,7 +116,8 @@ h1.alert, h2.alert {color: #000000;} .terminus {font-family: "Times New Roman", Times, serif, sans-serif} .interface {color: #330033;} .psionic {color: #993399;} /*YWedit*/ -.spacer {color: #9c660b;} +.spacer {color: #9c660b;} /* VOREStation Add */ +.blob {color: #ff950d; font-weight: bold; font-style: italic;} BIG IMG.icon {width: 32px; height: 32px;} diff --git a/html/changelog.html b/html/changelog.html index 1ddf4203de..d280fd6dc9 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -1,5822 +1,5914 @@ - - - - Polaris Changelog - - - - - - - -
    - - - - -
    -
    Space Station 13
    - -

    - Code licensed under AGPLv3. Content licensed under CC BY-SA 3.0.

    - Visit our IRC channel: #polaris on irc.sorcery.net -
    - -
    Polaris Credit List - - - - -
    - Current Project Maintainers: -Click Here-
    - Currently Active GitHub contributor list: -Click Here-
    - Main Testers: Anyone who has submitted a bug to the issue tracker.
    - Thanks to: Baystation 12, /tg/ station, /vg/station, GoonStation devs, the original SpaceStation developers and Mockingjay00 for the title image.
    Also a thanks to anybody who has contributed who is not listed here. Ask to be added here on irc.
    -
    Have a bug to report?
    Visit our Issue Tracker.
    -
    - - -
    -

    06 September 2020

    -

    Atermonera updated:

    -
      -
    • You can use Move Up/Down to traverse ladders. No popup 'Which way do you want to go?' windows required for bidirectional ladders!.
    • -
    -

    Killian updated:

    -
      -
    • Added a bunch more random spawners for mapping use.
    • -
    • You can now inject reagents directly into a synth's 'blood' stream using syringes and hypos (inc. borg hypos). Taking oil/coolant samples is still impossible.
    • -
    -

    Kot updated:

    -
      -
    • Mecha drills can now butcher dead mobs better. Like gibs and gore and guts stuff.
    • -
    -

    Lorilili updated:

    -
      -
    • You can now pet borgs on help intent and punch on hurt intent. Old behavior is now grab intent.
    • -
    -

    Lorilili (Port from Aurora) updated:

    -
      -
    • Added knee-high and thigh-high jackboots.
    • -
    • Replaced laceup and leather shoes with oxford shoes.
    • -
    • Replaced standard shoe and high-top sprites with newer ones.
    • -
    -

    Mechoid updated:

    -
      -
    • Mapped distillery into Chemistry, beside the Grinder.
    • -
    • Moves wrapper, spacecleaner, and labeller from the grinder table to the Chem locker.
    • -
    • Added distilling recipe for Synthetic Plasma, which acts as a blood-restoration of 1.2 units per synthplas. Also orderable in cargo.
    • -
    -

    Rykka Stormheart updated:

    -
      -
    • Adds Ambience Chance and Repeating Ambience Preferences into Globals, underneath Client FPS
    • -
    • Random-Ambience-Frequency controls how long before it checks if it can play ambience to you again. Setting it to 0 disables the random re-play of ambience.
    • -
    • Ambience Chance affects the % chance to play ambience to your client. It defaults to 35%, but can be set from 0 to 100 to disable it or always play every time you move into an area or have the Random Ambience check called.
    • -
    -

    Shadow Larkens updated:

    -
      -
    • Added the ability to right click and lower preferences for jobs in the Occupation Menu.
    • -
    -

    SplinterGP updated:

    -
      -
    • Adds new hailer masks with quotes with sound, allowing you to use a hailer on a face mask to combine them.
    • -
    • Adds new sound effects for hailer face masks.
    • -
    - -

    20 August 2020

    -

    Atermonera updated:

    -
      -
    • Mapped Overmap sensors onto the Southern Cross. Deck 2, central ring, starboard side. Departmental sensor installations and dedicated rooms may be added in the future.
    • -
    • To use the new sensors, you first have to click on them, hit 'Reconnect' on the window, close the window, then reopen it to get the console to link up with the sensors properly.
    • -
    • Enabled overmap event generation. This doesn't really do anything yet because the shuttles haven't been upgraded, but it's very pretty!
    • -
    -

    BlinsKot updated:

    -
      -
    • You can now alt-click to turn on the washing machine.
    • -
    • You can now alt-click on a mech while piloting it to toggle strafing.
    • -
    -

    Blinskot updated:

    -
      -
    • You can now alt-click on a mech while piloting it to toggle strafing.
    • -
    • You can now alt-click to turn on the washing machine.
    • -
    -

    Cerebulon updated:

    -
      -
    • Added extended flavour text to most things related to commercial vending machines and their contents.
    • -
    • Added chewing gum, lollipops and chewing tobacco. Unwrap it and place it in your mask slot like a cigarette.
    • -
    • Added snack food, vending drink and beer brand variety.
    • -
    • New booze bottle, coffee, juice, snack and cigarette packet sprites.
    • -
    -

    Lorilili updated:

    -
      -
    • Skrellian blood is now hemocyanin-based and regenerates with copper, not iron.
    • -
    • You can now wear caution signs and warning cones.
    • -
    • You can now point using shift and middle mouse button.
    • -
    -

    Mechoid updated:

    -
      -
    • Mortiferin added in place of old Necroxadone as a normal chem recipe.
    • -
    • Necroxadone changed to a more powerful alternative to Mortiferin which works even on corpses without bloodflow.
    • -
    • Added reagent pumps. You can refill water tanks planetside!
    • -
    • Added reagent hoses. Only used player-side by tanks, pumps, and spray nozzles to move reagents from one container to another.
    • -
    -

    Meghan Rossi updated:

    -
      -
    • Cyborgs can now put things into oven dishes with their grippers
    • -
    • Cyborgs can now put oven dishes in the oven with their grippers
    • -
    • Bots that are idle in doorways (including firedoors and blastdoors) will move out of the way.
    • -
    • Multiple cleanbots will no longer attempt to clean the same tile at the same time.
    • -
    • Cleanbots will now clean tiles closer to them first.
    • -
    • You can now use duct tape on yourself.
    • -
    • Ghosts now have a toggleable security HUD. Use the 'Toggle Security HUD' verb in the ghost tab to enable it
    • -
    • Ghosts can now shift-click things to examine them.
    • -
    • Ghosts can now alt-click adjacent things to open the turf tab.
    • -
    • You can now build plating on grass with floor tiles.
    • -
    • Improved descriptions for some floors.
    • -
    • The rapid service fabricator (found on service borgs) can now produce metamorphic pint glasses.
    • -
    • The party supplies and bar supplies crates orderable from cargo now contain metamorphic pint glasses.
    • -
    • The autolathe can now produce metamorphic pint and half-pint glasses.
    • -
    • The autolathe can now produce all drinking glasses in batches of 5 or 10.
    • -
    -

    Nyria updated:

    -
      -
    • Added volume settings, available in character setup or from the Preferences tab.
    • -
    • More settings and affected sounds may be added at a later date.
    • -
    • Added a TGui window to control the new settings with shiny sliders.
    • -
    -

    Rykka Stormheart updated:

    -
      -
    • Adds a mech vs mech combat system for the toy mechs earned from arcades and found around the station.
    • -
    • You can initiate combat with yourself by hitting a toy mech with another toy mech, or fight another player if you attack a player holding a mech toy with your own mech toy while not on harm intent.
    • -
    • Each mech has its own health stat and special ability that they'll use in combat against each other.
    • -
    -

    SplinterGP updated:

    -
      -
    • Added verb for FBP's to change their monitor display.
    • -
    • Removed monitor mask item(replaced by verb).
    • -
    -

    Subber updated:

    -
      -
    • Added a new prosthetic sprite set: Cyber Solutions - Outdated.
    • -
    - -

    06 August 2020

    -

    Cerebulon updated:

    -
      -
    • Added new mobs Fire Bugs, Ice Hares, Tymisian Moths and Siffets to surface spawnlists. Also added a new dog breed, woof.
    • -
    -

    ForFoxSake updated:

    -
      -
    • Ported tgstation styled magazine restocking. Hit a bullet on a table or floor with a partially empty magazine to start restocking.
    • -
    -

    Mechoid updated:

    -
      -
    • Exosuits now have internal components, mostly like borgs, but larger.
    • -
    • Autolathes can use plastic and plasteel.
    • -
    • Autolathes can have tiered recipes, based on their manipulator rating.
    • -
    • Exosuit base health has been lowered due to the changes to damage processing.
    • -
    -

    Rykka Stormheart updated:

    -
      -
    • Blast Doors will now crush people, if they are on the same turf when it closes, and throw them to an adjacent open turf.
    • -
    • The damage should be delayed enough that you can walk out of the door before the sprite animation finishes and you will be safe. The delay is being reviewed, and will likely be adjusted after sufficient feedback is gathered.
    • -
    • Blast doors and shutters (the types that go on bar/kitchen/etc) will also throw items on their tiles.
    • -
    - -

    03 August 2020

    -

    Cerebulon updated:

    -
      -
    • Added new book sprites, replaced old book sprites.
    • -
    • Added sticky notes, orderable from cargo
    • -
    • You can now carve graffiti into suitable walls/floors with sharp objects.
    • -
    • Trash, graffiti, dirt (Not blood), noticeboards and stickynotes are now persistent across rounds. This is admin-toggleable.
    • -
    -

    Mechoid updated:

    -
      -
    • Adds a glass jar subtype, the glass tank, that can be used to hold live fish. Remember to add water!
    • -
    -

    Rykka Stormheart updated:

    -
      -
    • Ported over Aurora Cooking from AuroraStation and Citadel-RP!
    • -
    • Recipes are separate per appliance, and all appliances have a use!
    • -
    • Please take note, Chefs, to pre-heat you appliances at the start of your shift.
    • -
    • Fryer Recipes require batter before they can be made!
    • -
    • Fire alarms will go off if you burn food!
    • -
    • The largest change - Cooking takes TIME. Around 6 minutes for the largest recipes in the game.
    • -
    • Too many other changes to list - refer to PR #7344 https://github.com/PolarisSS13/Polaris/pull/7344
    • -
    - -

    21 June 2020

    -

    Arokha updated:

    -
      -
    • New sprites for janicart
    • -
    • Alt-click helpers for stowing mop, chemicals on janicart
    • -
    -

    Atermonera updated:

    -
      -
    • Added verb to export vchat logs, found in OOC tab when vchat has successfully loaded.
    • -
    • Vchat only sends you enough messages to fill your buffer on reconnect, instead of all of them.
    • -
    -

    Billy Bangles updated:

    -
      -
    • Light and dark marble floor tiles can now be crafted with marble sheets.
    • -
    -

    Greenjoe updated:

    -
      -
    • Added a wrist-bound PDA, selectable from the PDA selection menu in char setup. it can go in the glove slot along with the ID and belt slots, and shows on your character's wrist no matter which of those 3 slots you put it in!
    • -
    -

    KasparoVv updated:

    -
      -
    • You can now quickly cycle hrough previous or next hair/facial styles at character creation.
    • -
    • Use the -mv- button to pick a marking and place it above of another on your character. Saves you from pressing up or down a bunch.
    • -
    • Ports color_square() from Paradise for colour previews, cleaning up pref. code & correct alignment issue w/ nested tables.
    • -
    • Markings are now properly aligned within a table.
    • -
    - -

    13 May 2020

    -

    Atermonera updated:

    -
      -
    • Added a preference to control multilingual parsing behaviour, with a few different modes. Should hopefully be less punishing to people who stutter and use hyphens as a language key.
    • -
    • The examine mode preference should now persist across reconnections during a single round, but if the server is fully restarted it still appears to reset. This issue is also present for the multilingual preference, and I'm still looking into it. Savefiles are cryptic.
    • -
    -

    Layne updated:

    -
      -
    • Added Promethean language.
    • -
    -

    Mechoid updated:

    -
      -
    • Adds more interactions with animals, like shearing and taming.
    • -
    • New PoIs
    • -
    • Thermal poncho attachment, has minor slowdown, but gives thermal protection to the armor it is attached to.
    • -
    • Mercenaries now drop their guns again. Most likely to be broken, however they can be repaired. Examining when adjacent will allow you to inspect the gun for what is needed.
    • -
    • Mercenary Snipers now exist. They will telegraph their shots approximately 2 seconds in advance, and can fire at 14 tiles away. Will occasionally drop pieces of their PTRs that survive combat.
    • -
    • Clothing can now check attachments for temperature resistance.
    • -
    • MHD Howitzer beam effect actually exists again.
    • -
    • Xenoresin ground cover is properly colored again.
    • -
    -

    atlantiscze updated:

    -
      -
    • Robots can now search loot piles.
    • -
    • Hardsuits now allow backpacks to be carried in storage slot. This is limited to hardsuits which are worn on the back slot.
    • -
    • SMES units now have automatic load balancing both on inputs and outputs
    • -
    • SMES units (and derived objects, such as PSUs) can now have more than one input terminal. This allows for input from more otherwise isolated power networks.
    • -
    • Completely redesigned cell rack PSUs, removed ghetto variant. Cell rack PSUs now support multiple power cells and hot-swapping of cells during operation. This allows for either charging multiple cells at once in one device (directly from power cable) or for powering up various machinery with only a power cell. They are still inferior to SMESes in pretty much all aspects.
    • -
    • Multitool on a cable now shows nicer results with large currents (uses kW or MW accordingly)
    • -
    • Multitool may be now used to change colour of cable coils.
    • -
    • Supermatter delamination effects have been tweaked. Delamination is considerably less laggy, and less directly destructive. Instead, it causes larger health hazard and secondary engineering problems such as power outage or partial damage of solar arrays.
    • -
    - -

    29 April 2020

    -

    Leshana updated:

    -
      -
    • Ship Helm, Sensors, Navigation, and Engine Control consoles are now de-/constructable.
    • -
    • Exploration (Overmap) Shuttle Console is now de-/constructable.
    • -
    • Mappers no longer need to varedit shuttle_tag on shuttle consoles.
    • -
    • Admin Start Now verb can be used at any time during startup and it won't actually start the game until initialization is completed.
    • -
    • Lobby stat panel shows time remaining on lobby votes and if the server is done initializing.
    • -
    -

    Neerti updated:

    -
      -
    • You can now eat as much food as you want, even while 'full'.
    • -
    -

    Novacat updated:

    -
      -
    • Re-enabled dual wielding penalties for most weapons that had them.
    • -
    • New dual-wielding sprites for weapons that needed them and did not have them.
    • -
    -

    Shadow Quill updated:

    -
      -
    • Fixes the 'broken/damaged' message when an airlock is just broken.
    • -
    • Heavy duty cell chargers now have flashing lights as they charge! When all the lights are flashing, that means the cell is done.
    • -
    -

    atlantiscze updated:

    -
      -
    • Shutoff valve monitoring is now also available as a modular computer program. Its UI has also been cleaned up a little.
    • -
    • Research robot module now has basic exploration and xenoarchaeology tools.
    • -
    - -

    20 April 2020

    -

    Atermonera updated:

    -
      -
    • Circuit clothes can have accessories attached.
    • -
    • Control-shift-click on circuit clothes to use items on the circuit.
    • -
    • Employment records can have comments similar to medical records.
    • -
    • Added a preference to switch between a few extra modes of examining things. Verb in the preferences tab.
    • -
    • Added Combat Logs filter category, to filter messages from things hitting you. This category will also eat up most other messages that are red and bold, please report any such messages that aren't specifically related to punching things.
    • -
    • Added categories for sorting various types of admin logs.
    • -
    • Adds a preference to forcibly disable (or enable) VChat. Useful mostly for people on linux, to skip the 60s waiting period where it tries to work and keeps you from seeing chat. Reloading VChat or reconnecting to the server are required for any changes to the preference to take effect. Support for issues that arise as a result of this preference is not guaranteed.
    • -
    -

    Leshana updated:

    -
      -
    • Glass Emergency Shutters are now constructable and deconstructing them will give you the glass back.
    • -
    -

    Neerti updated:

    -
      -
    • All sources of stasis (sleepers, stasis bags) will prolong the amount of time that lets someone be revived by a defib, proportional to how powerful the stasis effect is.
    • -
    • Opening a stasis bag that's being used now gives a prompt to confirm if you want to open it and make the bag expire. No more misclicks making doctors want to murder you.
    • -
    - -

    05 April 2020

    -

    Atermonera updated:

    -
      -
    • Headphones (and other two-ear clothing items) don't break the off-ear slot when click-dragged to unequip.
    • -
    -

    Neerti updated:

    -
      -
    • The eject button on both the Chemical Dispenser and Chem Master will place the ejected beaker into your hands, instead of on top of the machine, if possible. (Requested by Nalarac.)
    • -
    • Suit sensor consoles now display a friendly textual indicator of what z-level someone is on, instead of a number. They will also now avoid spoiling the names of Points of Interest.
    • -
    • The beakers containing Cryoxadone near cryogenics are now labeled. (Requested by Nalarac.)
    • -
    • The sleeper consoles now finally face towards the sleepers, at last. It only took a year for someone to fix it.
    • -
    -

    novacat updated:

    -
      -
    • Adds action buttons for scoping all sniper weapons.
    • -
    - -

    27 March 2020

    -

    Arokha updated:

    -
      -
    • Ported VChat. If you find any messages that are not sorted by any filters, or that you feel are sorted incorrectly, please submit a bug report on our issue tracker on github.
    • -
    -

    Atermonera updated:

    -
      -
    • Basic distillery (not the industrial-) will ping when it reaches its target temperature.
    • -
    • Basic distillery uses logistic curve to determine temperature change, and should be much faster.
    • -
    • Industrial distillery respects gas laws, particularly as pertains to low temperatures.
    • -
    • Prometheans can be slipped by disarm intent again
    • -
    -

    Leshana updated:

    -
      -
    • Added skybox parallax background for space.
    • -
    • Baystation12 style Overmap
    • -
    • Make transit turfs (shuttle transit) actually look like they move in the right direction.
    • -
    -

    Mechoid updated:

    -
      -
    • Artifact shields now work again.
    • -
    • Anomaly batteries work again.
    • -
    • Archaeology sites can have unique batteries, syringes, rings, and 'clubs'.
    • -
    • Multiple artifact effects added, in order to provide more spice, from naughty to nice.
    • -
    • Tweaks to normal artifact finds to be more unique.
    • -
    -

    Shadow-Quill updated:

    -
      -
    • Adds emergency backup cells to most light fixtures
    • -
    • AIs can turn emergency lighting on and off by clicking light fixtures. Flickering the lights has been moved to alt-click.
    • -
    - -

    20 March 2020

    -

    Aronai/Arokha updated:

    -
      -
    • You can now fill buckets (, beakers, etc.,) from water tiles.
    • -
    -

    Cerebulon updated:

    -
      -
    • Added sounds when dropping/throwing items. Toggleable in preferences.
    • -
    • Added incidental sounds to several item interactions.
    • -
    -

    Mechoid updated:

    -
      -
    • Energy Daggerpens (20): Disguised energy-knives, which do 15 searing on melee, or 30 when thrown.
    • -
    • Thieves gloves (30): Special gloves that allow you to peep in others' backpacks and belts, and plant items in their bags / pockets.
    • -
    • Buzzer Ring (30): Makes your first two punches electrically charged, first with 25 damage in a shock, then approximately 12.5 damage in the second. If the charge is over 90%, you can force-defib a corpse, even if it's a mindless one. Damage rules still apply, however time-of-death does not.
    • -
    • Resource Crate (60): A crate of uranium, phoron, gold, silver, osmium, and plasteel.
    • -
    • Exotic Plantlife Crate (20): A crate of numerous random seeds.
    • -
    • Spare Organ Crate (20): A crate of bioprinted organs.
    • -
    • Graviton goggles (15): A pair of combined meson/material goggles.
    • -
    • Integrated Circuit Printer (10): An upgraded circuit printer used to make integrated machine.
    • -
    • Flamethrower (60): A large, flame-based weapon.
    • -
    • 8 Concussion Grenades (30): A box of eight concussion grenades.
    • -
    • 4 Hunting Traps (30): A box of four hunting-traps, similar to those found in the explorer vendor.
    • -
    • 3 Virus Samples (40): A box of three unique virus samples.
    • -
    • Quickdraw Syringe Case (20): A case that can hold six syringes, and rapidly deploy them. Fits in your pocket.
    • -
    • Clotting Injector Case (20): A case that starts with 3 clotting med injectors instead.
    • -
    • Bonemed Injector Case (20): A case that starts with bonemeds.
    • -
    • Announcement costs lowered to be more equivalent.
    • -
    • Egun changed from 60 to 30 TC. It is nowhere near as powerful as a lascannon.
    • -
    • Exosuit rigged laser from 60 to 30 TC.
    • -
    • Xray gun from 85 to 60 TC.
    • -
    • Augments can now be used by everyone, as robot-specific ones will require FBP organ revamp.
    • -
    • Augment guns use slightly less blood / system instability to charge, so it doesn't kill you dead in moments.
    • -
    • Anti-Materiel Rifle can once again be used with thermals.
    • -
    • Energy Shields work again, and can be colored.
    • -
    -

    Meghan-Rossi updated:

    -
      -
    • Language keys are now case-sensitive.
    • -
    • The language key for Chimpanzee has changed from 6 to C to resolve a conflict with EAL.
    • -
    • The language key for Bird has changed from m to B to resolve a conflict with Mouse.
    • -
    • All other language keys are now lowercase-only.
    • -
    -

    Neerti updated:

    -
      -
    • Holsters can now be worn alongside webbing vests.
    • -
    • Receiving an antag role will now play a sound to the new antagonist.
    • -
    • Having laws changed as a silicon (AI or Borg) will now play a sound and show the changed law in the chat.
    • -
    • Being offered a ghost role while a ghost will now play a sound.
    • -
    • Someone attempting to revive someone else will play a sound to the player being revived, if they are not in their body.
    • -
    • Most Non-hitscan projectiles now have a pixel-perfect visual effect when they impact something, or when they expire from moving too far without hitting anything.
    • -
    • Projectiles can now have sounds for when they hit someone. They can also have a different sound when they hit something solid like a wall.
    • -
    • A sound is now played when a projectile 'narrowly misses' someone.
    • -
    • Getting hit with a projectile is now more noticeable in the chat log, with bigger text. Only the person who got hit will see the bigger text.
    • -
    -

    PrismaticGynoid updated:

    -
      -
    • Fixes xenoarch artifacts breaking when performing excavation correctly.
    • -
    -

    TheFurryFeline updated:

    -
      -
    • Fixes lack of easily accessible Response Team shortcut to type in. Type .k or :k to speak on the channel.
    • -
    -

    schnayy updated:

    -
      -
    • Adds Sabitsuki and Bedhead Longest hairstyles.
    • -
    • Adjusts pixels on the Jessica, Celeb Curls, and Beach Waves hairstyles.
    • -
    - -

    11 March 2020

    -

    Cerebulon updated:

    -
      -
    • Added button sounds to various machines.
    • -
    -

    Mechoid updated:

    -
      -
    • Added Hardpoint Actuator equipment for Exosuits, allowing them (And most effectively, Ripleys) to swap components on the fly, after a short delay.
    • -
    • Added Exosuit Inflatables Deployer, allowing exosuits to pick up and deploy inflatables.
    • -
    • Added Exosuit-mounted screwdriver, wirecutters, and welding laser, to help round-out the tool-based equipment types.
    • -
    • Incendiary exo weapons now use fire modifiers instead of fire stacks.
    • -
    • Ignition effects from weapons now use fire modifiers instead of fire stacks.
    • -
    • Exosuit shocker armor now retaliates properly against melee.
    • -
    • Add RIG components to robotics mechfab, plus incredibly basic belt-voidsuit RIG.
    • -
    • Add Graphite, made by compressing coal, presently only used heavily in RIG components.
    • -
    -

    Neerti updated:

    -
      -
    • The 'cut' and 'pulse' buttons in the hacking interface now check both hands for tools, instead of only the active hand.
    • -
    • The textual indicators at the bottom of the hacking window will now go bold when they change, until the next window refresh.
    • -
    • Hacking an Autolathe no longer requires you to hack it using the Autolathe's main window, but instead opens the hacking window like everything else.
    • -
    -

    schnayy updated:

    -
      -
    • Adds yeast as a reagent. It can be found in the kitchen vendor and in cargo kitchen supply crates.
    • -
    • Bread now calls for 5 units yeast instead of an egg, and baguettes and croissants call for 5 units yeast in addition to former ingredients.
    • -
    • Corn oil added to the Dinnerware vendor and the Booze-o-Mat.
    • -
    • Sprites for peanut butter, mayo, and yeast condiments.
    • -
    • Boiled slime core now links to the proper sprite.
    • -
    - -

    28 February 2020

    -

    Cerebulon updated:

    -
      -
    • Added cataloguer info for the radioactive manhole cover and decoupled engine PoIs
    • -
    • Renamed several PoIs to have more descriptive/immersive names
    • -
    • Most items can now be placed precisely on tables and racks.
    • -
    • Thrown items now land on a random spot on the target tile.
    • -
    -

    Nalarac updated:

    -
      -
    • The 'enable helmet camera' verb has been moved from the object tab to the hardsuit tab.
    • -
    -

    Neerti updated:

    -
      -
    • Adds an in-game feedback system that can be activated in the server configuration. Can be accessed from the lobby, with a button next to the other lobby buttons. Additional features and restrictions on usage are controlled by the server configuration.
    • -
    -

    leshana updated:

    -
      -
    • NTNet Quantum Relay can be constructed/deconstructed without runtimes.
    • -
    -

    lorilili updated:

    -
      -
    • You can now place defibs in rechargers.
    • -
    • Adds Holographic PDA type.
    • -
    • Skrell may now *warble.
    • -
    - -

    14 February 2020

    -

    Atermonera updated:

    -
      -
    • Radiation has to accumulate at least a little bit before it starts to become damaging. Very low levels of radiation can be safe for a number of minutes before you are at risk of injury.
    • -
    • Unless you idle for several minutes near the supermatter before it's been turned on, you should no longer be at risk of taking toxloss (Including those few spots in cargo maintenance).
    • -
    • Shutoff valve monitoring console can now remotely control shutoff valves.
    • -
    -

    Heroman3003 updated:

    -
      -
    • FBP repair can no longer be done through the space suits.
    • -
    • Surgery can no longer be done through the space suits.
    • -
    -

    Shadow Quill updated:

    -
      -
    • Batons will no longer harmbaton on disarm intent, instead doing so on grab/harm.
    • -
    -

    Woodrat updated:

    -
      -
    • Added sofas (no options to build one in round yet, will be added after this pull).
    • -
    • Add neonsigns, currently one neon sign, Cafe. (Code is copy pasta from holosigns).
    • -
    • Add boxes with mugs and cups.
    • -
    • Neon signs and holosigns now emit light while on.
    • -
    • Merged the Coffee Shop with the Library.
    • -
    • Moved the Locker Room to where the Coffee Shop was, adjusted the holodeck.
    • -
    • Old Locker Room turned into a construction area.
    • -
    • Adjusted holodeck maps to new orientation.
    • -
    • Changed sprite of barcode scanner.
    • -
    • Cleaned up furniture icon dmi, fixed arm rest icons for shuttle chairs.
    • -
    - -

    03 February 2020

    -

    Atermonera updated:

    -
      -
    • Added a printer to all preset (mapped-in) modular computers, so that word processors can actually print stuff or something.
    • -
    • Unregulated pressure regulators (Regulation set to OFF) no longer limit flow rate, and instead act as one-way opened valves. For best results, place away from other pumps.
    • -
    • Automatic Shutoff Valves are more intelligent about finding leaks, and won't close if there's other operating shutoff valves between them and the leak
    • -
    -

    PrismaticGynoid updated:

    -
      -
    • Adds a few toys to the loadout.
    • -
    -

    schnayy updated:

    -
      -
    • Adds book cart to library.
    • -
    - -

    21 January 2020

    -

    Heroman3003 updated:

    -
      -
    • A thin sheet of lead properly defeats radiation once more, but steel beams remain permeable.
    • -
    -

    TheFurryFeline updated:

    -
      -
    • Name and desc vars switched for changeling combat boots so removal of item doesn't output an excessively long name.
    • -
    • Fixes light frames returning 5 steel per deconstruction when 2 steel is used to create the frame.
    • -
    -

    schnayy updated:

    -
      -
    • Added the Pyralis borg sprites.
    • -
    - -

    31 December 2019

    -

    Atermonera updated:

    -
      -
    • Radiation has been made more potent and is no longer defeated by a thin sheet of lead.
    • -
    -

    Cerebulon updated:

    -
      -
    • Added decaf coffee to the coffee shop.
    • -
    • Added 6 types of bagel
    • -
    • Modified the coffee shop to have extra counter space and a microwave for bagels.
    • -
    • Removed chef lock on kitchen cabinet.
    • -
    • Removed reference to outdated skrell lore from naewa cube box.
    • -
    -

    TheFurryFeline updated:

    -
      -
    • Changes light replacers to allow you to automatically transfer used bulbs into the item and get a new one every 4 bulbs replaced. Additionally, this allows you to both use the replacer on a box of bulbs to get the bulbs added as well as clicking the item with a box of bulbs to put them inside it.
    • -
    • Spray bottles can now be printed in the Autolathe.
    • -
    - -

    16 December 2019

    -

    Atermonera updated:

    -
      -
    • Ghosts can join as drones after only 5 minutes have passed, down from 10.
    • -
    -

    Mechoid updated:

    -
      -
    • Multiple new organs added. Humans and Skrell received spleens, all species expected to have a stomach and intestine organ have them.
    • -
    • Augment 'slots' organized.
    • -
    • Multiple augments added, currently only available in the Traitor / Mercenary uplinks as easy-to-install implants.
    • -
    • Anesthetic / Oxygen pumps added. A mobile stabilizer has been added. All three are available in Cargo.
    • -
    • Medical MRE rations added to Cargo.
    • -
    • Roundstart implants now become invisible until being handled.
    • -
    • Neural implant added to loadout, makes the brain of the user count as an assisted organ. Does not affect MMIs or their subtypes.
    • -
    • Bioprinters now unlock more organs upon being upgraded, once they pass the anomalous tier, they unlock quite probably illegal organs.
    • -
    • Three medical exosuit components have been added. Crisis and Hazmat response drones, and a mounted advanced medical analyzer.
    • -
    • Medical analyzers now detect on-skin reagents.
    • -
    • Multiple new chemicals added, two used for upgrading bandage kits.
    • -
    • Brute-based medical stacks can be upgraded.
    • -
    • Crude brute kits can be made with cloth.
    • -
    • Stacks can now pass their colors onto objects produced by them. (Colored cloth, painted wood, etcetera.)
    • -
    • Two combined surgical tools added, for opening / closing ribcages and skulls, and removing organs respectively.
    • -
    • Two dud implants added to the loadout. They do literally nothing but hurt you if you're EMP'd.
    • -
    • The larynx now controls the ability to speak. Damage to it will stop you from being able to speak anything but non-verbal languages.
    • -
    • Damage to the brain can now affect the pulse.
    • -
    • Only the critical blood level causes toxin damage, meaning individuals who die of standard oxygen loss from bloodloss can possibly be saved, but exsanguinated persons are unlikely.
    • -
    • Bioaugment.dm is now just augment.dm
    • -
    • Robotic hearts do not have a pulse.
    • -
    • Brain damage can now cause loss of breath.
    • -
    • Paracetamol is now the precursor to tramadol.
    • -
    • Calcium is now in the chemical vendor.
    • -
    -

    Nalarac updated:

    -
      -
    • ED-209 and ED-CLN now properly accept names given with a pen.
    • -
    • Removed maintenance access from ED-CLN to prevent maintenance wandering.
    • -
    • Enables all channels on captain's and HoP's headset by default.
    • -
    • Power cells and device cells both properly show as empty when printed from the protolathe and mech fabricator.
    • -
    • Items with cells printed from the protolathe now start empty (e.g. phoron pistol).
    • -
    -

    Novacat updated:

    -
      -
    • Adds a teshari plush.
    • -
    -

    PrismaticGynoid updated:

    -
      -
    • You can now choose what type of graffiti or rune to draw when using crayons/markers.
    • -
    -

    TheFurryFeline updated:

    -
      -
    • Tweaks desk lamps to output twice as much light as before to compensate for a refactor.
    • -
    • Changes mouse plushie sprite to be cuter and not break the hearts of rodent lovers. :3 Seriously, the change is from a dead mouse duplicate to one of a brown mouse resting in place.
    • -
    • Add a new sprite for the orange jumpsuit.
    • -
    • Refactors prison jumpsuits into its own thing, change a few files and dmis.
    • -
    • Fixes strange rocks size. Normal -> Small like it used to be before a refactor.
    • -
    -

    Woodrat updated:

    -
      -
    • Rework of the civilian wing, merging the kitchen and the bar into one area.
    • -
    • Minor movement of the mining vendor.
    • -
    • Adjustment of the kitchen and bar.
    • -
    • Area in the coffee shop.
    • -
    • Missing Ducky in the codelab.
    • -
    • Fix missing scrubber in engineering.
    • -
    • Shutter added to Kitchen door.
    • -
    • Pressure Regulators at atmospheric cutoffs start unregulated at roundstart.
    • -
    • Set Modular Computers layer to 2.9 to bring them inline with regular computer layering.
    • -
    • Pump to distro set to 301 kpa to help offset issues with cutoff valves.
    • -
    • One phase pistol to each explorer locker.
    • -
    • One holster to each explorer locker.
    • -
    • Removed the old size modifier traits for mobs.
    • -
    • Port and tweak of the size modifiers from World Server for mobs.
    • -
    - -

    07 September 2019

    -

    Heroman3003 updated:

    -
      -
    • Desk bells can now be picked up like normal items.
    • -
    • Desk bells can now be deconstructed with a wrench while on the ground.
    • -
    • Desk bells can now only be made out of steel.
    • -
    -

    MisterLayne updated:

    -
      -
    • Material weapons that should not conduct, do not conduct.
    • -
    • Glass shards now do damage when you attack with them, based on the type of gloves you are wearing.
    • -
    -

    Novacat updated:

    -
      -
    • Ports MREs from Baystation, and adds a few supply crates with them to cargo.
    • -
    • Adds liquidprotein rations, currently only found in emergency MREs.
    • -
    -

    Woodrat updated:

    -
      -
    • Mining vendor added to cargo foyer.
    • -
    • Explorer vendor added to research foyer.
    • -
    • Handful of more pipe clamps added to engineering (atmos monitoring and EVA storage).
    • -
    • Adjustment to layout of chapel mass driver.
    • -
    -

    chaoko99 updated:

    -
      -
    • Ported Bay's stomach pump.
    • -
    - -

    21 August 2019

    -

    Atermonera updated:

    -
      -
    • Atmospherics is now bigger, with more room for fun and sanity-destroying spaghetti!
    • -
    -

    Mechoid updated:

    -
      -
    • Exosuits are now targetted by turrets again.
    • -
    • Mining charge strength lowered, price increased. Can be upgraded through R&D laser components.
    • -
    • Searing damage type added. Energy axe now uses searing damage.
    • -
    • Survey points added. Vendor added for explorer use. Costs are universally 'lower' compared to the mining vendor due to the rarity of points.
    • -
    • Swiping an ID card on a cataloguer will transfer the points to the card.
    • -
    • Any melee energy weapon can now be made to use a cell and charge.
    • -
    • Energy Axe prototype added to R&D.
    • -
    • Anomalous 'hunting trap' added to R&D. Useful for an initial stun on mobs for explorer scanning.
    • -
    • Beartraps now stun for a quarter of a second, so they are actually useful again, due to resistability.
    • -
    • Emergency welding pack added. Incredibly slow, but requires no protection.
    • -
    • Random turf modifier added for mapping use. Random humanoid remains spawner added for mapping use.
    • -
    • Plants under obj/structure/flora now can be made to be harvestable / forage-able.
    • -
    • Sif trees now occasionally have fruit containing useful microbes. Microbes slow blood flow resulting in slower chemical absorption and blood loss.
    • -
    • Flora by default are now under mobs, on the same layer as turf decals. Flora can now also randomize their size, previously only codified in Sivian trees.
    • -
    • Moss tendrils added to Sif, making eye-plants more rare.
    • -
    • Multiple PoIs added. 'Blue shuttle down' variant, 'UFO Frigate', multiple geysers, cliffs, and two variants of SFR which take drastically different approaches to the SFR standard. A vault was added, too.
    • -
    • Vault PoIs are now in a template group.
    • -
    • Generic AI-controlled humanoids added. Subtype made for use on Sif, clad in weak armor and temperature resistance, used as 'mindless clones'.
    • -
    • More artifice added.
    • -
    • Fultons made to be [somewhat] sane. Now only useable planetside.
    • -
    • Graviton Visor moved to R&D from the mining equipment vendor. Silver and Diamond pickaxes removed.
    • -
    • Added multiple new organs for Prometheans. Removing them will cause them to take large amounts of Toxloss untill they are Regenerated using the active regeneration verb.
    • -
    • Organ: pneumatic network, a series of skeletal tubes with high pressure used to move nutrients and waste.
    • -
    • Organs: -regenesis systems, different 'networks' of clumped cellular matter that allow Prometheans to recover rapidly from small injuries. Large or numerous injuries cause un-needed stress, and pain.
    • -
    • Internal organs now properly add themselves to the internal organ-by-name list, the one referenced 99.9% of the time.
    • -
    • Active regeneration will now replace internal organs if they are nonexistant, as it does for limbs.
    • -
    -

    Nalarac updated:

    -
      -
    • Mech cable layer works again.
    • -
    • Added setting for turrets to fire upon downed/laying targets.
    • -
    -

    TheFurryFeline updated:

    -
      -
    • New orange jumpsuit for loadout that doesn't get locked to tracking.
    • -
    • Prison jumpsuit filepath changed accordingly and closets with obj updated.
    • -
    -

    Woodrat updated:

    -
      -
    • Made the solgov uniforms use accessories for denoting department instead of having several different sprites in the uniform dmi folder.
    • -
    • Removed redundant solgov uniforms from uniform.dmi and moved the sprites for the solgov uniforms to their own dmi.
    • -
    • Fixed storage vests and drop pouches disappearing when one rolls down a uniform.
    • -
    - -

    08 August 2019

    -

    Mechoid updated:

    -
      -
    • Adds two new integrated circuit components: an advanced Text to Speech, and a Sign-Language reading camera.
    • -
    -

    Nalarac updated:

    -
      -
    • Lowered Chance of bots being emagged during ion storm.
    • -
    • Changes space helmet cameras to be a verb instead of on toggling lights.
    • -
    • Toggling helmet camera resets user upon activation (so you can have a new user).
    • -
    • Medibots will no longer attempt to heal FBPs.
    • -
    • Heavy-duty cell chargers can be built and upgraded.
    • -
    • Cyborgs can upgrade rechargers now.
    • -
    • Security bots will smack attackers once more.
    • -
    • Security bots will cable cuff people with hardsuit gauntlets instead of stun-locking.
    • -
    • Cut real time for security bots demanding surrender in half (6 seconds).
    • -
    • Updates the Supermatter Engine Operating Manual.
    • -
    -

    mistyLuminescence updated:

    -
      -
    • Serenity mech can now be built by robotics.
    • -
    - -

    30 July 2019

    -

    Atermonera updated:

    -
      -
    • Added a shutoff monitoring console, which displays the status and location of all automatic shutoff valves. Currently mapped into the atmos monitoring room and the auxiliary engineering room on deck 1.
    • -
    - -

    27 July 2019

    -

    Mechoid updated:

    -
      -
    • Pipes will now leak if their ends are unsealed.
    • -
    • Added stasis clamps, which act as valves that can be placed on existing straight pipe segments.
    • -
    • Added automatic shutoff valves, which can automatically close if a leak appears anywhere on their pipe network.
    • -
    • Added a Xenobio-compatible ED-209.
    • -
    -

    Nalarac updated:

    -
      -
    • Repairing bots (like Beepsky) works now.
    • -
    • Emagged bots can be repaired with proximity sensors.
    • -
    • Combat mechs can punch more things. Mech punch sounds like juggernaut now
    • -
    • Simple mobs can attack more things.
    • -
    • Cult pylons take damage from bullets.
    • -
    • Click delay added on attacking simple doors and security barricades.
    • -
    • Material doors and barricades have different attacked sounds depending if its metal, wood, or resin.
    • -
    • Fixes ability of cyborg meson to see holes in ceiling.
    • -
    • Gives cyborgs a roofing synthesizer.
    • -
    • Husking bodies requires more burn.
    • -
    • Ripley speed boost module that can be built in robotics.
    • -
    • Added transmission and capacitance SMES coils to supply console.
    • -
    • Adds laser tag turrets orderable from cargo.
    • -
    • Turrets will shoot people laying down if emagged or set to lethal.
    • -
    • Turrets can not be lethal if built with non-lethal weapon.
    • -
    • Alien pistol fire noise moved to projectile. Now the turret will use the proper noise.
    • -
    • Turrets will have new colors based on projectile used.
    • -
    • Projectile lastertag is no more. It is now properly lasertag.
    • -
    • Integrated circuit printers no longer take fractions of a sheet.
    • -
    -

    Schnayy updated:

    -
      -
    • Replaces Cindi Kate's and Boot Knives bar sign sprites with new ones.
    • -
    • Added new clothes to the loadout: cardigans, pleated skirt, lilac dress, ugly Christmas sweater, flowery sweater, and red turtleneck.
    • -
    - -

    19 July 2019

    -

    Nalarac updated:

    -
      -
    • Add xenobio/xenobot to farmbots.
    • -
    -

    Woodrat updated:

    -
      -
    • Added a clotting kit to the Raider Shuttle.
    • -
    • Swapped out the ai turrets for industrial turrets in the teleporter rooms.
    • -
    • Adjusted access to the turret controls to heads of staff access, moved them outside of the rooms.
    • -
    - -

    07 July 2019

    -

    Heroman3003 updated:

    -
      -
    • Broken components now have matter worth of 1000 steel units (half a sheet).
    • -
    • Components dropped from loot piles will now use random proper sprite instead of default placeholder.
    • -
    -

    mistyLuminescence updated:

    -
      -
    • Now available in Cargo: xenoarch technology (100 points) and tactical light armor (75 points)!
    • -
    • Tactical light armor is like regular tactical armor, but lighter (a full set is 0.5 slowdown), warmer (protects against moderate snow) and a little less protective.
    • -
    • Leg guards can now store bootknives.
    • -
    • Xenoarch brushes and pickaxes now have a reasonable force rating instead of hitting like a truck.
    • -
    • Adds the 'POI - ' prefix to the POI location names to make it easier for ghosts to teleport to them- e.g. 'POI - Rocky2' rather than just 'Rocky2'.
    • -
    • Fixes a runtime caused by attempting to use a crew monitor console while on an invalid Z-level.
    • -
    • Fixes GPSes not detecting other GPSes while on an invalid Z-level. Transit Z is unaffected by this- no spying on other shuttles!
    • -
    - -

    23 June 2019

    -

    Mechoid updated:

    -
      -
    • E-swords and Changeling arm-weapons can now block projectiles (again).
    • -
    -

    Novacat updated:

    -
      -
    • Adds greyscale pills, which are colored by their reagent
    • -
    • Adds colored pill bottles, most pre-spawned pill bottles are colored
    • -
    • Prespawn pills and pill bottles have had their names simplified
    • -
    • Attempts to make lighting less uniform
    • -
    • Cleans up lighting code
    • -
    -

    TheFurryFeline updated:

    -
      -
    • Fixes infinite frame production for some machinery objects such as grounding rods or exonet nodes. If there's no available circuit board to get, then don't return anything when attempting deconstruction. Ported from Cit RP. Eliminates 'Cannot read null.board_type' runtimes where they apply.
    • -
    • Allows hydroponic machines to be unwrenched.
    • -
    -

    Woodrat updated:

    -
      -
    • Turrets and respective controls added to each teleporter room.
    • -
    • Air tank on shuttles switched out with an air canister.
    • -
    • Roundstart Tcomms SMES starts fully charged.
    • -
    • Air tanks on station have the same amount in them as air canisters.
    • -
    • Expanded atmospheric tanks to be 2 by 3 instead of 2 by 2.
    • -
    • Wilderness Shuttle landing point shelter updated.
    • -
    • Teleporter room hand tele can now spawn in one of 4 places.
    • -
    • Halved the warm up time when the autopilot on the shuttles start at round start from ten minutes to five and nine respectively. Should mean the first shuttle will be taking from the outpost when the second shuttle leaves the station.
    • -
    • Reduced transit time from 75 seconds with pilot, 150 seconds without to 60 and 120 respectively.
    • -
    • Amount of phoron in the outposts reduced.
    • -
    • Ground Xenobio and Xenoflora torn down partially.
    • -
    • Reduction of the amount of steel and glass in engineering by half.
    • -
    • Reduction of the amount of steel and glass in EVA by half.
    • -
    • Fix for Dock 2 Transfer Shuttle airlock buttons not working.
    • -
    • Intercoms added to arrivals shuttle.
    • -
    • Modular computers scattered around the main station.
    • -
    • Elevator can be accessed at centcomm.
    • -
    • Fix Bridge Secretary Quarters tint.
    • -
    • Landmarks for Bluespacerift added.
    • -
    • Wilderness Shuttle landing sides should no longer shiskabob shuttles.
    • -
    • Modular Computers replacing wrong computers.
    • -
    • Chapel Mass Driver.
    • -
    • Merc Turrets function properly.
    • -
    • Map issues on the main outpost.
    • -
    -

    mistyLuminescence updated:

    -
      -
    • Splints now work on all areas of the body.
    • -
    • When the supermatter explodes, it now leaves behind a shattered plinth that continues to emit radiation. You should probably get rid of it.
    • -
    • If you destroy the supermatter early (e.g. through admin deletion shenanigans), it no longer irradiates everyone forever.
    • -
    • Welding lockers now actually updates their sprites properly.
    • -
    • Every floor tile now has a minor (2%) chance to spawn with some dirt on it. The Janitor now has a job again.
    • -
    • Similarly, every Sif grass tile now has a minor (5%) chance to spawn with some fancy eyebulb grass on it. It can be removed by clicking on it with harm intent.
    • -
    • Adds cats-in-boxes, which can be activated (once) to spawn cats. There's an orange tabby (Cargo cats) and a tuxedo (Runtime) version.
    • -
    • Fixes a material duplication exploit.
    • -
    - -

    04 June 2019

    -

    Chaoko99 updated:

    -
      -
    • The medibot's minimum configurable threshhold has been lowered to 0, from 5. Perfect for silly-billies coming into medical with 2 brute boo boos, thanks to accidentally throwing something at themselves or.. something.
    • -
    -

    Heroman3003 updated:

    -
      -
    • Restricts Alarm Monitor modular computer program to engineering access.
    • -
    • Removed access to departmental networks on camera modular computer program for average people.
    • -
    • Added access to full network on camera modular computer program for heads.
    • -
    -

    Mechoid updated:

    -
      -
    • Borers can speak through nearby mobs if they have a sufficient build-up of chemicals.
    • -
    • Borers have a max chemical volume.
    • -
    • The Sakimm, Frostfly, Glitterfly, River Leech, Crystal-Feathered Duck, and Kururak are now able to be used on the map and PoIs.
    • -
    • Glass jars can now hold glitterflies, river leeches, and frostflies.
    • -
    • Glass jars now respect mobs that exist over the lighting plane, adding a special overlay visible when on the ground.
    • -
    -

    Nalarac updated:

    -
      -
    • Closed all bugs on tracker that are no longer relevant or a bug.
    • -
    -

    Novacat updated:

    -
      -
    • Attempts to fix the timer SS to be moore robust
    • -
    • Fixes bug with custom laptops.
    • -
    • Raises cost of the elite model to 7 loadout points.
    • -
    -

    chaoko99 updated:

    -
      -
    • Adds the clientside 'ping' and 'reconnect' commands to the file menu.
    • -
    -

    mistyLuminescence updated:

    -
      -
    • Prone people can no longer interact with an empty hand.
    • -
    • Two-handed items are now correctly unwielded when the user's offhand is severed.
    • -
    • Mecha syringe guns now respect pierceproof clothing.
    • -
    • Securitrons now correctly ignore attacks when disabled.
    • -
    • Rechargers now correctly benefit from upgraded capacitors.
    • -
    • Medical record laptops and detective TV camera consoles no longer turn into regular consoles when de- and re-constructed.
    • -
    • Zaddat Shrouds now retain their base name when damaged, if the shroud has been customized.
    • -
    • Adds the makeover kit to the traitor uplink for 5 TC, also available in the Infiltrator bundle null crate in Cargo. Makeover kits can be used to change the user's hair style and color, and eye color.
    • -
    • Random event timers now wait until the round starts to begin counting down.
    • -
    - -

    06 May 2019

    -

    Mechoid updated:

    -
      -
    • Added fishing mechanics, and fishing gear.
    • -
    • Cloth can make normal cloth things.
    • -
    -

    Novacat updated:

    -
      -
    • Ports Bay code to allow hiding accessories when jumpsuits are rolled down/sleeve rolled.
    • -
    • Ports medals and ribbons from SEV Torch.
    • -
    • Ports initial infrastructure for modular computers from Baystation.
    • -
    • Cameras now have a slight static when viewing through them.
    • -
    • Adds Digital Warrant Program, to set warrants. Comes with a device.
    • -
    • Adds Supermatter Monitor program.
    • -
    • Chemistry processes instantly again.
    • -
    • Nanoui sends stuff even after client connect.
    • -
    • Shortwave radios now can transmit across connected Z levels.
    • -
    • Relays on moving platforms (shuttles) will now function.
    • -
    - -

    26 April 2019

    -

    Heroman3003 updated:

    -
      -
    • Allows voidsuits to have parts attached and removed while held in hand (but still not when worn).
    • -
    • Syringes will now immediately inject 5 units per injection into reagent containers. Does not change how injecting mobs work
    • -
    • Tape rolls can now be used on tiles with directional windows as long as they don't directly obstruct them.
    • -
    -

    Mechoid updated:

    -
      -
    • Reagents can now have a list of organs specified to slow their processing.
    • -
    • Reagents now process in the bloodstream at a rate determined by current pulse. No pulse, for any reason, will cause slightly slower processing if your species has a heart.
    • -
    • The heart organ determines the 'standard pulse' if the species has one.
    • -
    • Modifiers can set pulse directly, or shift it.
    • -
    • Adds Robobags and Corp-Tags to Robotics.
    • -
    • Re-adds the Space Worm with New and Improved [Doesn't Break The Universe] logic.
    • -
    • Sterilizine now hurts slimes, similar to water.
    • -
    -

    N3X15 updated:

    -
      -
    • Cyborgs can now use ladders regardless of whether they have a tool enabled or not.
    • -
    -

    Neerti updated:

    -
      -
    • During severe weather such as storms and blizzards, wind can cause you to move slower or faster in specific directions.
    • -
    • Weather application in the communicator displays wind direction and severity.
    • -
    • Holding umbrellas while in a storm no longer stuns you.
    • -
    -

    chaoko99 updated:

    -
      -
    • Ore bags will automatically pick up items when held, belted, or pocketed, and automatically deposit ore in boxes if one is being pulled.
    • -
    - -

    17 April 2019

    -

    Anewbe updated:

    -
      -
    • The Subspace Jammer traitor item now lasts about 10 minutes. It now blocks signalers from sending or receiving, and also obscures suit sensors around it.
    • -
    -

    N3X15 (MistyLuminescence) updated:

    -
      -
    • Departmental winter coats can now hold the same items as their standard departmental suit items - labcoats, hazard vests, body armor, aprons, etc.
    • -
    -

    Neerti updated:

    -
      -
    • Removes ability for AI to print and inhabit maintenance and construction drones. This has been replaced with a system which allows for AIs to inhabit special cyborg shells, called AI Shells, which are built with a new MMI type in Robotics. Most of the regular cyborg mechanics applies to AI Shells.
    • -
    -

    Novacat updated:

    -
      -
    • Adds new status displays for all alert levels
    • -
    • Adds yellow, violet, and orange alert levels
    • -
    • Added Stasis Cages, which allows safe transport of mobs.
    • -
    -

    PrismaticGynoid updated:

    -
      -
    • Adds the ability to copy a character slot onto another one, allowing for easier rearranging of characters, or wiping characters by copying empty slots.
    • -
    • Adds three new crashed escape pod PoIs.
    • -
    -

    Woodrat updated:

    -
      -
    • Arrivals dock should not stay locked shut
    • -
    • Two windoors in xenobio stationside lacking access requirements
    • -
    -

    mistyLuminescence updated:

    -
      -
    • Lays the foundation for RIGs to be worn on the belt slot. Doesn't apply to any RIGs currently, unless VV'd, but stay tuned!
    • -
    • Large autoinjectors are now scannable and syringeable again, just like they used to be. Unidentified autoinjectors still aren't, unless you ID them first.
    • -
    • Adds beakers to the hydroponics lockers and NutriMax vendors.
    • -
    • More jobs can now take certain items in the loadout.
    • -
    • Adds departmental turtlenecks, available in department wardrobes or the loadout selection. Look good... in space.
    • -
    - -

    04 March 2019

    -

    Anewbe updated:

    -
      -
    • Vedahq is now properly locked behind a whitelist.
    • -
    • Headgibbing is now determined by config
    • -
    • Promethean regeneration has been toned down. It will no longer provide healing if the Promethean is wet, too hungry, too hot, or too cold.
    • -
    • Prometheans are no longer shock resistant. It should now be more possible to catch them alive.
    • -
    • Promethean body temperature is now the default room temperature. They also hit cold_level_2 at a higher temperature.
    • -
    -

    Atermonera updated:

    -
      -
    • Rigsuits have been resupplied following a mass-recall after a number of suits were reported to have defective pressure-sealant mechanisms. The new sealant mechanisms have been thoroughly tested and should be less prone to failure.
    • -
    -

    Mechoid updated:

    -
      -
    • Tweaked Respiro- Cordra- Gastiro- and Hepanephro- Daxons to be more effective with dealing with the side-effects of damaged organs.
    • -
    -

    kartagrafi updated:

    -
      -
    • Adds several clothing items to loadout such as: Nock masks, cowls and robes.
    • -
    - -

    07 February 2019

    -

    Atermonera updated:

    -
      -
    • Stairs have been straightened and now connect to both the heavens and hells, formerly just the hells.
    • -
    -

    Elgeonmb updated:

    -
      -
    • Added the Zaddat species, voidsuit-clad fragile bug people. Whitelist applications will be available at a later date.
    • -
    • Added glucose hypos to the SWEATMAX vendors and a few other places thoughout the station.
    • -
    • Zaddat equipment is now available through cargo.
    • -
    • Some new, very very chuuni accessories to play with; the half cape, the full cape, and the sash
    • -
    • Most accessories can now fit on suits.
    • -
    • Dionaea and vox can no longer use station rigs.
    • -
    -

    Mechoid updated:

    -
      -
    • Flashes now actually run the risk of burning out.
    • -
    • Flashes that burn out can be repaired after approximately 40 seconds and with some luck, via a screwdriver.
    • -
    • Cyborg flashes use charge only, and do not have the 10 flash limit. They instead begin burning large amounts of charge.
    • -
    • Flashes use miniscule charge in addition to their capacitor burn-out, totalling 12 uses, taking 4 to down a human. They can be charged within a standard charger.
    • -
    - -

    01 February 2019

    -

    Anewbe updated:

    -
      -
    • Pilot consoles now require pilot access to use.
    • -
    -

    Atermonera updated:

    -
      -
    • Powersink drains have been unclogged and work once more
    • -
    -

    Mechoid updated:

    -
      -
    • Oversight regarding Changeling revive not removing restraints fixed.
    • -
    • Straight Jackets can now be resisted out of in 8 minutes, or as low as 5 depending on species attacks. Shredding or hulked humans will break out in 20 seconds, destroying the jacket.
    • -
    • Xenomorph plasma vessels now regenerate phoron passively, at an incredibly slow rate. Can be accelerated by consuming liquid phoron.
    • -
    • Xenomorph organs now give their respective abilities when implanted.
    • -
    • Virtual Reality pods cleaned up.
    • -
    • Replicant organs added, versions of many organs that do not reject in their host. Two currently exist that give special passives.
    • -
    - -

    25 January 2019

    -

    Anewbe updated:

    -
      -
    • The hyphen (-) is no longer a default language key, as people use it to represent other things. If you are still having issues with Gibberish, reset your language keys, or at least make sure they don't include any characters you regularly start speech with.
    • -
    -

    Atermonera updated:

    -
      -
    • Stasis bags don't squish organics with high pressure when organics try to seek shelter from flesh wounds.
    • -
    • Body- and stasis bags can be tread upon when open.
    • -
    • Suit coolers and rigsuit coolers now protect FBPs against vacuum again.
    • -
    • Bot sound files have been decrypted following a bizarre ransomware attack by Boiling Point remnants. Securitrons, cleanbots, et al should no longer spew gibberish.
    • -
    -

    Cerebulon updated:

    -
      -
    • Added teshari hardsuit sprites.
    • -
    - -

    16 January 2019

    -

    Anewbe updated:

    -
      -
    • Adds a Gibberish language that gets used when you goof on a language key.
    • -
    • Voice changing masks no longer give up when you put on a hardsuit.
    • -
    • Mask voice changers start on.
    • -
    • Mask voice changers that do not have a set voice will now default to your worn ID's name.
    • -
    • Mask voice changers now have a verb to reset their name.
    • -
    • Eguns take 4 shots to stun, rather than 3.
    • -
    -

    Atermonera updated:

    -
      -
    • Clothing now has pressure protection variables, that set lower and upper pressure bounds within which they will protect you from pressure-based harm.
    • -
    • Protection falls off when exceeding the pressure limits from 100% protection at the boundary to 0% at 10% in excess (above the max or below the min) boundary.
    • -
    • Currently, only hat and suit slots are checked for this protection (No change).
    • -
    • Anomaly suits (The orange ones) now offer limited pressure protection in case anomalies start making or draining air.
    • -
    • Firesuits are no longer spaceproof, but still offer protection against the high pressures of fire.
    • -
    -

    Cerebulon updated:

    -
      -
    • Added customizable religious icons to the chaplain's office.
    • -
    • Added black and white candles.
    • -
    • Updated religion lists in character setup to be lore friendly.
    • -
    - -

    06 January 2019

    -

    Mechoid updated:

    -
      -
    • Slimes now respect slime colors as their faction when dealing with other slimes.
    • -
    • Taser and Security xeno-taser shot count dropped from 10 to 5.
    • -
    -

    Neerti updated:

    -
      -
    • Adds a lot of sounds, and the code to let them loop seemlessly. Things made audible now include the microwave, deep fryer, showers, the supermatter when it's active, the TEGs when active, geiger counters, and severe weather on Sif. The weather has different sounds for when indoors and when outdoors.
    • -
    • Weather sounds and the supermatter hum can be disabled in your preferences.
    • -
    • Adds a few more weather types that can only be activated by admin powers, such as ash storms and fallout.
    • -
    -

    Novacat updated:

    -
      -
    • All emergency air tanks now spawn at full capacity.
    • -
    - -

    08 December 2018

    -

    Cerebulon updated:

    -
      -
    • Added 12 new loadout items plus colour variants: Utility pants, sleek overalls, sari, modern wrap jacket, ascetic garb, asymmetrical jackets, cowled vest, kamishimo, jingasa, maang tikka, thin-frame glasses, rimless glasses.
    • -
    -

    Mechoid updated:

    -
      -
    • Research and Engineering borgs now have 'Circuit Grippers', used for constructing and operating integrated circuit machinery.
    • -
    • Grippers now allow interaction with their contents, by attacking the gripper itself with an item when one is held. I.E., drawing from a beaker with a syringe.
    • -
    • Grippers now show their held item's examine information when examined. Tab information added.
    • -
    • Cyborgs can now interact with integrated circuit printers and machines when adjacent to them.
    • -
    • Multitools now have a menu to switch modes between standard use and integrated circuit reference scanning. Antag multi-tools untouched for now.
    • -
    • Integrated circuit printer now respects adjacency, if it is not set to debug.
    • -
    - -

    30 November 2018

    -

    Cerebulon updated:

    -
      -
    • Added 1000+ surnames and 1200+ forenames from various world cultures to human namelists
    • -
    -

    LBnesquik updated:

    -
      -
    • Replaced the plant clippers with a reskinned pair of hedgetrimmers.
    • -
    -

    Lbnesquik updated:

    -
      -
    • General biogenerator improvements:
    • -
    • Added feedback noise to the processing.
    • -
    • Allow for cream dispensing.
    • -
    • Allow for plant bag creation.
    • -
    • Allow for 5 units of meat to be dispensed at once.
    • -
    • Allow for 5 units of liquids to be dispensed at once totalling 50u.
    • -
    • Add and allow the creation of larger plant bags for easier ferrying of plants..
    • -
    • Add a description to the machine itself.
    • -
    -

    Mechoid updated:

    -
      -
    • Prometheans are no longer murdered by blood, and instead process it like a weak nutrient. Will slow the regeneration of toxins due to water content.
    • -
    • Ctrl clicking a Rapid Service Fabricator when held will allow you to choose the container it deploys.
    • -
    • The Rapid Service Fabricator's icon is correctly set.
    • -
    -

    Neerti updated:

    -
      -
    • Rewrites the AI system for mobs. It should be more responsive and robust. Some mobs have special AIs which can do certain things like kiting, following you on a lark, or telling you to go away before shooting you.
    • -
    • Rewrites literally every 'simple_animal' mob into new, shinier, and hopefully more interesting 'simple_mob' mobs, some with new mechanics, like spiders, fake mechas, and hivebots. There are so many changes that it wouldn't be possible to list them here.
    • -
    • RCDs can now build grilles and windows, with a new mode. They can also finish walls when used on girders on floor/wall mode.
    • -
    • Adds various new RCDs that are not obtainable at the moment.
    • -
    -

    Woodrat updated:

    -
      -
    • Xenoflora and Xenobio moved to station, first deck.
    • -
    • Minor bugfixes including mislabeled lockers in robotics and floor decals.
    • -
    -

    kartagrafi updated:

    -
      -
    • Adds new hairstyle 'Sharp Ponytail'
    • -
    • Adds several new underwear - 'Binder', 'Strapless Binder', 'Longsleeve Striped Shirt, Pink', 'Pink Wing Shirt', 'Pink and Black T-Shirt', 'Leggings'
    • -
    • Changes name of 'Supernova' hairstyle to 'Glossy', and makes the sprite somewhat neater
    • -
    • Fixes a hairstyle not appearing
    • -
    - -

    13 October 2018

    -

    Anewbe updated:

    -
      -
    • You can no longer have ALL of your blood punched out.
    • -
    • Haemophiliacs will no longer spontaneously have ALL of their blood go missing from ~90%.
    • -
    • Emitters can be locked while off, too.
    • -
    • Graves are now a thing in the code, will need some testing and probably more work before they get more common.
    • -
    -

    Mechoid updated:

    -
      -
    • Added a RIG customization kit.
    • -
    • RIGs now use a var called suit_state to determine the basis for their component icons, rather than the rig's icon state.
    • -
    - -

    22 September 2018

    -

    Mechoid updated:

    -
      -
    • Adds two vehicles to Robotics and Cargo, the Quad and Spacebike.
    • -
    -

    Poojawa updated:

    -
      -
    • Ported /vg/ instrument code, improved the UI of instruments.
    • -
    • Added a client side pref that mutes instruments being played for you.
    • -
    -

    Woodrat updated:

    -
      -
    • Adds two rig suits. Military Rig suit from Bay and PMC rigsuit
    • -
    • Adds four exploration and pilot voidsuits (alternate sprites by Naidh)
    • -
    • Adds exploration and pilot voidsuits
    • -
    - -

    28 August 2018

    -

    Mechoid updated:

    -
      -
    • Mechs now have multiple equipment slot types, and more slots in total for greater customization.
    • -
    • A large number of Mech weapon modules and their jury rigged versions.
    • -
    - -

    08 August 2018

    -

    Atermonera updated:

    -
      -
    • The supply controller has been refactored and shifted to nanoUI.
    • -
    • The ordering and control consoles are now generally upgraded in terms of information and options.
    • -
    -

    Mechoid updated:

    -
      -
    • Hallucinations are no longer only Pun Pun.
    • -
    -

    Neerti updated:

    -
      -
    • Adds new ambience sounds for various areas, especially on the surface of Sif.
    • -
    • Removes low and high-pitched droning from available ambience. Consider trying ambience again if you had turned it off to avoid those.
    • -
    - -

    01 August 2018

    -

    KasparoVv updated:

    -
      -
    • You can now change the order of your body markings at character creation. Shift markings up or down layers at will to design the character you've always wanted, more easily than ever before.
    • -
    -

    Mechoid updated:

    -
      -
    • Added the Gigaphone. Currently unused.
    • -
    -

    Mewchild updated:

    -
      -
    • Ports several AI core sprites from ages and places past
    • -
    -

    PrismaticGynoid updated:

    -
      -
    • Adds four types of colorblindness to the traits in the setup menu.
    • -
    • pAIs can now be picked up while unfolded, and can display more than 9 emotions.
    • -
    - -

    14 July 2018

    -

    Anewbe updated:

    -
      -
    • Certain languages now require assistance for a species to speak, but not understand, much like EAL.
    • -
    • Alai can only be `spoken` by Taj and Teshari.
    • -
    • Adds a voicebox/larynx organ. Its only purpose at the moment is to assist in speaking certain langauges.
    • -
    • Language implants, like the EAL implant, now affect the voicebox organ, instead of being a freefloating implant.
    • -
    • Adds a language implant for Common Skrellian.
    • -
    -

    Atermonera updated:

    -
      -
    • Steel sheets can be used to construct Roofing Tiles
    • -
    • Roofing tiles can be used on tiles under open spaces or space tiles in multiZ maps to place a lattice and plating on the space above
    • -
    • Roofing tiles can be used on outdoor turfs to make them indoors
    • -
    • Both functions work together on multiZ maps with outdoor turfs, only one roofing tile is used per tile roofed.
    • -
    -

    Mechoid updated:

    -
      -
    • Adds a new surgical procedure for fixing brute and burn on limbs.
    • -
    - -

    12 July 2018

    -

    Anewbe updated:

    -
      -
    • Technomancer Apportation now properly checks for range and scepter, again.
    • -
    - -

    21 June 2018

    -

    Anewbe updated:

    -
      -
    • Added a biomass reagent, made from protein, sugar, and phoron.
    • -
    • Cloners and bioprinters now use the biomass reagent. Both can be refilled or have their capacity increased by replacing the bottles they spawn with.
    • -
    • Mapped in a bioprinter, for further testing.
    • -
    • Adds the ability to make robolimb brands more or less vulnerable to brute or burn.
    • -
    • Makes VeyMed limbs more vulnerable to brute and burn.
    • -
    -

    Mechoid updated:

    -
      -
    • Allow AIs to create and take control of mindless drones from fabricators.
    • -
    - -

    08 June 2018

    -

    Anewbe updated:

    -
      -
    • Merc mobs in PoIs no longer drop gear. This is to help us balance the PoIs that contain them, and by extension every other PoI.
    • -
    • Merc mobs have been shuffled around in their PoIs. At some point, this may actually be randomized, but for now, expect slightly different placements.
    • -
    • Adds a laser rifle and ion rifle version of the Merc mob, for variety.
    • -
    • PoI turrets are lethal again, and will likely shoot crawlers.
    • -
    • Certain mobs, namely robots and mercs, now have some amount of armor.
    • -
    • Ranged mercs will now knife people when cornered, rather than punch them really hard.
    • -
    -

    Mechoid updated:

    -
      -
    • Added some background things for Events.
    • -
    • Ion rifles hit the correct 3x3 instead of 5x5
    • -
    • Seed Storage Vendors are now hackable. Can choose from various lists of concerning plants.
    • -
    - -

    24 May 2018

    -

    Anewbe updated:

    -
      -
    • Moving items out of one's active hand cancels any zoom-in they may be providing.
    • -
    • Meteor events should be a lot less brutal.
    • -
    -

    Arokha updated:

    -
      -
    • Added a 'Client FPS' setting in the Global tab of character setup for adjusting the FPS to your preference.
    • -
    • Added a 'fake SSAO' toggle to Global in character setup, ported from /tg/. Looks like drop shadows on (almost) everything.
    • -
    -

    Atermonera updated:

    -
      -
    • Laptops no longer consume IDs indefinitely.
    • -
    -

    Mechoid updated:

    -
      -
    • Promethean limbs store more damage.
    • -
    • Promethean limbs, in addition to normal severing rules, have a higher chance to be splattered or ashed once they reach maximum damage.
    • -
    • Limbs can now spread their damage to neighbors with the spread_dam var, when reaching max damage.
    • -
    -

    PrismaticGynoid updated:

    -
      -
    • Added laser pointers. Available in your loadout, and printed and upgraded by R&D.
    • -
    -

    lorwp updated:

    -
      -
    • Search and Rescue can now add certain medical restricted items to their loadouts
    • -
    - -

    01 May 2018

    -

    Mechoid updated:

    -
      -
    • Skrell can be affected by flashbangs from a range of 8 tiles without protection.
    • -
    • Promethean regen consumes additional nutrition.
    • -
    • Many healing chemicals are less effective on Prometheans due to the natural regeneration.
    • -
    • Lots of other Promethean tweaks. No seriously, I'm not putting the list here.
    • -
    -

    PrismaticGynoid updated:

    -
      -
    • Adds new skrell sprites to hardsuit helmets that were missing them.
    • -
    - -

    28 April 2018

    -

    Anewbe updated:

    -
      -
    • Communicator visibility (the thing that lets people see your communicator when you're a ghost) is now saved to character slots, rather than globally.
    • -
    • Jobs that are set to Never on your preferences are hidden by default on the Late Join selection menu. There is a button to reveal them.
    • -
    -

    Arokha updated:

    -
      -
    • Nerve reattaching surgery now works correctly. (Hemostat on limb)
    • -
    • Limbs dropped by people have appropriate flags.
    • -
    -

    Atermonera updated:

    -
      -
    • Human examine code has received a major refactor. If you encounter unusual behaviour that seems wrong, please report it.
    • -
    -

    Cerebulon updated:

    -
      -
    • Pumpkins are no longer green ovals. They now grow on actual vines.
    • -
    -

    schnayy updated:

    -
      -
    • Space carp plushies now load sprites and are all selectable from loadout.
    • -
    • Adds several newer plushies to the gift vendor as well as adjusting cost of gift vendor's contents.
    • -
    - -

    19 April 2018

    -

    Anewbe updated:

    -
      -
    • AOOC is no longer available to traitors, renegades, and thugs.
    • -
    -

    Woodrat updated:

    -
      -
    • Flashers in brig cells should work now, extra floor flash in communal brig to deal with crims.
    • -
    • Improper access, SMES rooms.
    • -
    • Trader start point is no longer dark.
    • -
    • Medical Vendor Plus has more advanced burn and trauma kits.
    • -
    • Cell 1 and 2 in the brig can now be accessed by detectives.
    • -
    • Additional r-walls next to the engine room to help with rads.
    • -
    • Floor decals in a couple areas.
    • -
    • RD office now has its telescreen back.
    • -
    -

    lorwp updated:

    -
      -
    • Pilot headsets can now fallback to shortwave radio
    • -
    - -

    01 April 2018

    -

    Anewbe updated:

    -
      -
    • Medical Doctors and EMTs spawn with white medkits.
    • -
    -

    Cameron653 updated:

    -
      -
    • Adds a xenoarch excavation tool, craftable in R&D. Allows depth selection of 1-30
    • -
    • Adds a xenoarch multitool, craftable in R&D. Has xenoarch counter, measure tool, and depth scanner all in one.
    • -
    -

    Heroman3003 updated:

    -
      -
    • Attaching exosuit equipment with a gripper correctly removes it from the gripper.
    • -
    • Engineering gripper can no longer duplicate frame parts.
    • -
    -

    MistyLuminescence updated:

    -
      -
    • Wallets can now hold a wider variety of objects.
    • -
    -

    Woodrat updated:

    -
      -
    • Added two 44 cal revolvers.
    • -
    • Added 44 cal speedloader for revolvers.
    • -
    • Added 44 cal rubber rounds.
    • -
    • Fixed the icon_state for 'structure/plushie/carp' and the random first aid kit spawner.
    • -
    • Added a random chance tool spawn for power tools (most of the time it should still just be regular tools).
    • -
    • Adjusted the spawn rate of medkits, combat medkits should be more rare.
    • -
    • Cash split into its own loot item.
    • -
    • Plushies split into large and small plushies.
    • -
    • All the extra plushie spawns added to the random plushie spawn.
    • -
    • Eightball and conch shell added to toy spawns.
    • -
    • Added spawn points for the large plushies, cash, and the power tools to the station.
    • -
    -

    battlefieldCommander updated:

    -
      -
    • Added permanent markers, an alternative to crayons.
    • -
    • The chemistry recipe for paint now uses marker ink instead of crayon dust.
    • -
    • Removed crayon boxes from the map. They can still be ordered from cargo in case you need a snack.
    • -
    - -

    15 March 2018

    -

    Anewbe updated:

    -
      -
    • Pills and ingested reagents actually process at half speed, rather than just ignoring half of the reagents.
    • -
    • Robotic limbs now need internal repair at 30 composite damage, rather than 30 of burn or brute.
    • -
    • Syringes now inject their entire payload with one click, but in 5 unit increments. There is a delay in between each of these.
    • -
    • Assisted robotic organs (internals, eyes) are less vulnerable to EMP.
    • -
    • Lifelike robotic organs (currently VeyMed) are more vulnerable to EMP.
    • -
    -

    Cerebulon updated:

    -
      -
    • Added Akhani language for Tajaran.
    • -
    • Fixed incorrect singular form of Tajaran in several places.
    • -
    -

    MisterLayne updated:

    -
      -
    • Added a version of the ED-209 called the ED-CLN. It is a more efficient Cleanbot.
    • -
    • Reinforced snowballs can now actually be made in a reasonable time limit.
    • -
    -

    Nerezza updated:

    -
      -
    • Broken APCs can be bashed open with slightly smaller objects now. This means wrenches are acceptable, no need to hunt down a fire extinguisher.
    • -
    • EVA rigsuit/hardsuit no longer holds toolboxes in suit storage since those have been a volume inventory for some time now. RIP ghetto satchel.
    • -
    • CE's rigsuit/hardsuit no longer holds pickaxes and ore satchels, but can now hold inflateables.
    • -
    • Retracting rigsuit/hardsuit helmets with no valid mask equipped now disables internals.
    • -
    • Offline rigsuits/hardsuits are no longer considered valid air supplies by the internals button. Before, your internals would instantly shut off before you could get a breath out of the rigsuit. Now, the internals button will look for a different tank instead.
    • -
    • Tajaran now get to keep their tails when they wear the EVA, RD, or Industrial rigsuits/hardsuits. Unathi sprites to come soon!
    • -
    • Sifwood floor tiles now correctly use their double-stacked icon instead of disappearing.
    • -
    -

    Woodrat updated:

    -
      -
    • Added in a weapons crate for explorers that has bolt action rifles.
    • -
    • Weapon powercells can be ordered from cargo (security access crate).
    • -
    • Automatic weapons crate split into two crates now. One for SMGs one for the rifle. Minor adjustments to other munitions and security supply packs as well.
    • -
    • The automatic weapons ammo crate has also been split.
    • -
    • Names of the crates for the munitions and security catogory supply packs have been adjusted slightly. In certain places contents also adjusted.
    • -
    • Holoplant now comes in a crate.
    • -
    - -

    05 March 2018

    -

    Anewbe updated:

    -
      -
    • Removes Command Liaison, Bridge Secretary, Hydroponicist, Prospector, Sanitation Technician, Professor, and Historian alt-titles.
    • -
    • Removed universal translators from the loadout.
    • -
    • RnD can print earpiece translators.
    • -
    -

    Mechoid updated:

    -
      -
    • Add a surgical operation for repairing the brainstem of a decapitated individual.
    • -
    • Add a permanent modifier for frankensteining individuals.
    • -
    -

    Nerezza updated:

    -
      -
    • Package bomb detonators can be re-bound by hitting the new package bomb with them.
    • -
    -

    PrismaticGynoid updated:

    -
      -
    • The succumb verb will now work on species that can't take oxyloss damage.
    • -
    - -

    28 February 2018

    -

    Atermonera updated:

    -
      -
    • Adds umbrellas to the loadout, for 3 points. Colorable!
    • -
    -

    Nerezza updated:

    -
      -
    • Using tape (police/medical/engineering) on a hazard shutter now tapes the hazard shutter instead of trying to open the hazard shutter.
    • -
    • Added /tg/-style floor tile swapping. Equip crowbar/screwdriver in offhand and click the floor tiles you want to directly swap with a stack of new floor tiles (like teal carpet).
    • -
    -

    Woodrat updated:

    -
      -
    • Heavy rework of the wilderness, minor adjustments to mining and outpost z-levels. To get to the wilderness you now have to travel through the mine z-level to do so, follow the green flagged path. Through the mine.
    • -
    • Shuttles can now land at a site near the enterance to the wilderness. Removal of the mine shuttle landing pad to move to the wilderness.
    • -
    • New addition of warning sign, thanks to Schnayy.
    • -
    -

    battlefieldCommander updated:

    -
      -
    • Added craftable joints. Dry something (ideally ambrosia) on the drying rack and apply it to a rolling paper to create a joint you can smoke.
    • -
    • Added a box of rolling papers to the cigarette vending machine.
    • -
    - -

    25 February 2018

    -

    Anewbe updated:

    -
      -
    • Splinted bodyparts act broken 30% of the time.
    • -
    • Splinted legs still slow you down like broken ones.
    • -
    -

    Leshana updated:

    -
      -
    • Added a client preference setting for wether Hotkeys Mode should be enabled or disabled by default.
    • -
    • CTRL+NUMPAD8 while playing a robot won't runtime anymore.
    • -
    • Grounding rods act intuitively, only having an expanded lighting catch area when anchored.
    • -
    -

    Nerezza updated:

    -
      -
    • Fixes not being able to install the different carpet colors. Finally.
    • -
    • Removes certain unusable duplicate stacks of tiles from the code.
    • -
    -

    Schnayy updated:

    -
      -
    • Added Gilthari Luxury Champagne. Drink responsibly.
    • -
    • Added a singular AlliCo Baubles and Confectionaries vending machine in the locker rooms. Dispenses a variety of gifts.
    • -
    • Removed hot drinks vendor from locker room.
    • -
    - -

    22 February 2018

    -

    Anewbe updated:

    -
      -
    • Added Warden and HoS helmets.
    • -
    • Clothing items must be click+dragged to be unequipped. A lot of them already had this, but the system is now standardized.
    • -
    • Accessories now apply slowdown to what they're attached to.
    • -
    • Certain items, notably Technomancer spells, no longer show up when you examine the mob wearing them.
    • -
    • Flashbangs confuse, instead of stunning.
    • -
    -

    Atermonera updated:

    -
      -
    • GPS units are generally more useful, providing both coordinate locations and, so long as you're on the same Z level, direction with x-y component distances, to 1m accuracy
    • -
    • Added a halogen counter tool, functions as the PDA function.
    • -
    • Analyzers can now analyze gas containers, in addition to providing atmosphere readouts, as the PDA gas scanner function.
    • -
    • Added umbrellas.
    • -
    -

    battlefieldCommander updated:

    -
      -
    • Added fireplaces which operate similarly to bonfires.
    • -
    • Fixed an oversight that allowed for an in-between state in bonfires where the fire would mysteriously go out after adding wood.
    • -
    • Added blue sifwood floor tiles.
    • -
    • Fixed blue carpet, now known as teal carpet
    • -
    • Added the ability to dig up tree stumps with a shovel.
    • -
    - -

    21 February 2018

    -

    Anewbe updated:

    -
      -
    • Headsets for jobs that spend a lot of time planetside can now function as local radios when comms are down.
    • -
    • Most headsets now have on-mob sprites.
    • -
    • Added a Planetside Gun Permit item, specifying permission to possess a firearm on the planet's surface. Explorers should spawn with these by default, and a further two can be found in their gun locker.
    • -
    • Prometheans now react to water. Being soaked will stop their regen and deal minor toxin damage. Drinking or being injected with water will deal slightly more toxin damage.
    • -
    • Suit Coolers now properly cool FBPs in slightly burning rooms. If it gets too hot for your suit, you're still dead.
    • -
    -

    Leshana updated:

    -
      -
    • Makes electrochromatic glass buildable and programmable in game. Use cable and multitool.
    • -
    -

    Woodrat updated:

    -
      -
    • Additions of 6 new POIs for the cave area.
    • -
    - -

    17 February 2018

    -

    Anewbe updated:

    -
      -
    • Added a random mine spawner, for use in PoIs. Replaces mines in PoIs with the random spawner.
    • -
    • Mines now give a visible message when they go off.
    • -
    • Land mines on the ground can no longer be told apart from one another, to prevent gaming the system.
    • -
    • Hovering mobs (viscerators, drones, Poly, carp) no longer set off land mines.
    • -
    • Arming a land mine now takes concentration. If you move, it will boom.
    • -
    • RINGS AND CERTAIN GLOVES INCREASE PUNCHING DAMAGE.
    • -
    • BRASS KNUCKLES HAVE BEEN TURNED INTO GLOVES AND REBALANCED. THEY DO LESS DAMAGE PER HIT BECAUSE IT'S HARD TO DISARM A PAIR OF GLOVES.
    • -
    • Cyborg Chargers now decrease radiation on FBPs.
    • -
    • Falling one floor now does a lot less damage, on average.
    • -
    • Falling one floor in a Mech no longer hurts the occupant.
    • -
    -

    PrismaticGynoid updated:

    -
      -
    • A lot more machines can now be moved with a wrench, mostly kitchen, hydroponics, and virology machines.
    • -
    • Changed department ponchos to be open to any job, just like department jackets.
    • -
    -

    Schnayy updated:

    -
      -
    • Adds bouquets. Can be ordered via 'gift crate' in cargo.
    • -
    • Adds fake bouquets for the cheap. Can currently be won from arcade machines.
    • -
    • Adds chocolate heart-shaped boxes. Can be ordered via 'gift crate' in cargo.
    • -
    • Adds gift cards with four cover variations. Function like paper. Can be ordered via 'gift crate' in cargo.
    • -
    -

    battlefieldCommander updated:

    -
      -
    • Added packed snow brick material. Craft it using snow piles.
    • -
    • Added snow girders and igloo walls. Craft them using snow bricks.
    • -
    • Added various snowmen. Craft them using snow piles. Punch 'em to destroy.
    • -
    - -

    10 February 2018

    -

    Atermonera updated:

    -
      -
    • Ethylredoxrazine actively removes alcohol from the stomach and bloodstream
    • -
    • GPS units won't report the exact location of other GPS units, just range and approximate direction
    • -
    • POI gps units won't give any information about the POI, merely its location
    • -
    • Adds EMP mines.
    • -
    -

    Cerebulon updated:

    -
      -
    • Adds antibiotic resistance chance to viruses, capped at 90% without admin edits.
    • -
    • Adds adminspawned non-transmittable viruses
    • -
    • Adds several new disease symptoms
    • -
    • Vomit is now a disease vector
    • -
    • Viruses have a lower chance of curing themselves without medical intervention
    • -
    • Virus food no longer infinitely generates in incubator beakers
    • -
    • Xenomorphs and supernatural begins can no longer catch the flu
    • -
    -

    Hubblenaut updated:

    -
      -
    • If a cycling airlock is already near the target pressure, pressing the buttons will toggle the doors instead of making it reenter the cycle process.
    • -
    -

    Leshana and mustafakalash updated:

    -
      -
    • A new 'planetary' mode for airlocks which makes them purge the chamber contents to the exterior atmosphere before filling with clean air, and vice versa.
    • -
    -

    MistyLuminescence updated:

    -
      -
    • Mines are now very, /very/ dangerous to step on (so don't do that). You can disarm them with a multitool and wirecutters - ping is good, beep is bad - or by shooting or exploding them from a distance. Be careful!
    • -
    -

    Woodrat updated:

    -
      -
    • Shaft Miner, Search & Rescue, Explorer can now select webbing vests and pouches from the loadout.
    • -
    • Allow utility uniforms to roll up their sleeves.
    • -
    • Shuttle upgraded with enviroment sensors and shuttle doors that can be detected from the shuttle console.
    • -
    • secure gun cabinets in the hangar control rooms. Locked to armory, explorer, and pilot access.
    • -
    • Redesign of medical surgery rooms, replacement of the closets with wall closets.
    • -
    • Multiple map bugfixes including distro and scrubber lines to deck 3.
    • -
    - -

    07 February 2018

    -

    Anewbe updated:

    -
      -
    • Lessens the bomb, bio, and rad protection on the Explorer Suit.
    • -
    • Replaces the Hunting Rifle cabinets with a Phase Pistol cabinet. Same general purpose, shoot animals, kill animals. Shoot people, get laughed at.
    • -
    • Gloves are generally less protective from shocks.
    • -
    • Budget Insulated Gloves will almost always be better than any other non-insulated glove.
    • -
    • Hyposprays and autoinjectors now have a delay on use when the target is conscious and not in Help Intent.
    • -
    • You need a parachute to survive atmospheric reentry. Closets, mechs, and other impromptu parachutes will not longer prevent splatting.
    • -
    -

    Atermonera updated:

    -
      -
    • ID computer can set command secretary and IAA access
    • -
    • Command secretary has keycard auth. access
    • -
    -

    Cerebulon updated:

    -
      -
    • Added toggleable 'Open' sign to bar hallway so you can tell if it's open without walking inside.
    • -
    -

    Mechoid updated:

    -
      -
    • Adds material girders.
    • -
    • Girder decon time is now partially dependant on material. Stronger girders take slightly longer.
    • -
    • Wall girders are now under the integrity-based construction listing. Material-Name Wall Girder.
    • -
    • Explosive-resistant girders in walls have a chance to survive as an unanchored girder, if their wall is destroyed.
    • -
    • Radioactive girders affect the completed wall's radioactivity.
    • -
    -

    SunnyDaff updated:

    -
      -
    • Added new food items.
    • -
    • Added Onions.
    • -
    • Changed Apple and Lemon Sprite
    • -
    - -

    25 January 2018

    -

    Anewbe updated:

    -
      -
    • Southern Cross Map is now live
    • -
    -

    Arokha updated:

    -
      -
    • Remove borg hud items as they have normal huds as their sensor augs now, and can see records with them.
    • -
    -

    Atermonera updated:

    -
      -
    • Communicators have a flashlight under the settings menu, functions as the PDA one
    • -
    • Station-bound synthetics now have gps units
    • -
    -

    Cerebulon updated:

    -
      -
    • Added 19 food recipes from /tg/station
    • -
    -

    Leshana updated:

    -
      -
    • Sounds of Tesla engine lighting bolts
    • -
    • Sprites for grounding rod and Tesla coil
    • -
    • Sprites for lighting bolts
    • -
    • The Tesla Engine, Tesla Coils, and Grounding Rods
    • -
    • Wiki search URL is now configurable in config.txt
    • -
    • Breaker boxes can be constructed in game.
    • -
    • Construction of heat exchange pipes, vents, and scrubbers now works properly again.
    • -
    • Fix singularity energy balance so it is stable under normal operation.
    • -
    • Fix emitter beams and PA effects from being grav pulled or consumed.
    • -
    • Added the operating manual book for the Tesla Engine.
    • -
    -

    Mechoid updated:

    -
      -
    • Brains can be set to be a source of genetic information.
    • -
    • Promethean cores can be inserted into a cloning scanner to be cloned. This gives them a worse modifier upon completion.
    • -
    • Promethean cores can now have chemicals added or removed from them. Base for future slime cloner.
    • -
    • Species-based cloning sicknesses possible.
    • -
    • Cyboernetic - > Cybernetic
    • -
    -

    Neerti updated:

    -
      -
    • Adds boats that can be ridden by multiple people, which use oars. Can be crafted with large amounts of wooden planks.
    • -
    • Adds autopilot functionality to Southern Cross Shuttle One and Shuttle Two.
    • -
    • Adds ability to rename certain shuttles on the Southern Cross.
    • -
    • Areas about to be occupied by a shuttle will display a visual warning, of a bunch of circles growing over five seconds.
    • -
    -

    SunnyDaff updated:

    -
      -
    • Added new food items.
    • -
    • Added Cider.
    • -
    • Added Apple Juice to bar vending machine.
    • -
    • Fixed Vodka recipe.
    • -
    • Fixed Apple and Carrot cake recipes
    • -
    • Changed Cake recipes to not include fruit juice
    • -
    -

    ZeroBits updated:

    -
      -
    • Added the ability to have multiple loadouts per character.
    • -
    -

    battlefieldCommander updated:

    -
      -
    • Adds a communicator watch, a variant of the communicator you can wear on your wrist.
    • -
    • Replaces the communicator in the loadout with a communicator selection. Choose either the traditional communicator, or the new commwatch.
    • -
    - -

    12 January 2018

    -

    Atermonera updated:

    -
      -
    • Communicators now have a weather app.
    • -
    • Mobs in VR can switch between translucent and opaque forms.
    • -
    -

    Leshana updated:

    -
      -
    • Examining construction frames shows which circuit board (if any) is installed.
    • -
    • Convert the machinery controller to a StonedMC subsystem
    • -
    -

    MrStonedOne updated:

    -
      -
    • Added admin verb 'Display del() Log' displaying garabage collector statistics.
    • -
    -

    PrismaticGynoid updated:

    -
      -
    • Adds the ability to 'crawl' to an adjacent turf by click-dragging yourself to it, after a delay. This can be used to move while unable to stand. You can also do this with other movable objects, if you really wanted to.
    • -
    • Conscious mobs lying on the ground can now buckle themselves to chairs/beds. This includes people missing legs.
    • -
    - -

    29 November 2017

    -

    Anewbe updated:

    -
      -
    • FBPs are now affected by Radiation, it gives them ToxLoss. Wear your PPE.
    • -
    • FBPs can have ToxLoss decreased by going into a charger.
    • -
    • It is now possible to move FBPs and robots into chargers, via click+drag or grabs.
    • -
    -

    Atermonera updated:

    -
      -
    • AI verbs are no longer hidden on the tabs.
    • -
    • Incapacitated mobs can no longer open your inventory and steal your gubbins.
    • -
    -

    MoondancerPony updated:

    -
      -
    • Fixed a mislabeled pulse pin on the microphone.
    • -
    • Fixed an issue with reference pins and multiplexers, and reference pins in general.
    • -
    -

    PrismaticGynoid updated:

    -
      -
    • Adjusts the amount of camera locations the AI can store from 10 to 30.
    • -
    - -

    06 November 2017

    -

    Atermonera updated:

    -
      -
    • AI's can speak local rootspeak.
    • -
    • Implements Virtual Reality.
    • -
    -

    Woodrat updated:

    -
      -
    • Added 'see down' in open spaces from Vore.
    • -
    • Added talking and visible messages upward through open space from Vore.
    • -
    • Added a Syndicate ID with all access (admin spawn only).
    • -
    • Port of 'Syndicate id cards now listen for owner destruction' from Bay.
    • -
    - -

    24 September 2017

    -

    Belsima updated:

    -
      -
    • Replaced air tank sprites.
    • -
    • Added new xeno weed, egg, and resin sprites.
    • -
    • Added two new bar sign sprites.
    • -
    • Replaced blast door sprites.
    • -
    • Microwave is no longer a proper noun.
    • -
    • Added croissants to the available recipes.
    • -
    • Added new status displays for the AI.
    • -
    • Made spelling of corporations and planets more consistent.
    • -
    • Added more planets to character setup.
    • -
    • Added a bunch of new hairstyles.
    • -
    • Added a new holographic hud.
    • -
    • Added a grinder and enzyme to the abandoned bar, for illicit operations.
    • -
    • Replaced solar panel sprites.
    • -
    • Replaced shield generator sprites with ones from the Eris.
    • -
    • Added Qerr-quem and Talum-quem, a pair of Skrellian drugs.
    • -
    • Added a variety of sounds for opening cans, explosions, sparks, falling down, mechs, and bullet casings.
    • -
    • Added a new death sound for mice.
    • -
    • Vox have been entirely resprited.
    • -
    • Added wood buckets, craftable with hydropnoics.
    • -
    • Added sounds for chopping wood.
    • -
    • Fixed a bug that would make default Zippo lighters invisible.
    • -
    -

    Chaoko99 updated:

    -
      -
    • Nitrous Oxide is now an oxidizer.
    • -
    • Removed all instances of Volatile Fuel ever being simulated. To devs: It still exists. Please, for the love of god, only use it with assume_gas.
    • -
    -

    Cyantime updated:

    -
      -
    • Tabling now requires a completed aggressive grab.
    • -
    -

    Nalarac updated:

    -
      -
    • Removes the module restraint for the cyborg jetpack upgrade
    • -
    • Added the hand drill and jaws of life to the protolathe
    • -
    • Syndicate toolbox now comes with power tools
    • -
    -

    Neerti updated:

    -
      -
    • Adds the Lost Drone, which can be found on the Surface of the future map.
    • -
    • You can now modify an unslaved borg's laws by hitting it with a law module, after a significant delay.
    • -
    • Adds several new lawsets. Currently there are no lawboards for these.
    • -
    • Adds new 'shocker' baton, for the Lost Drone.
    • -
    • Combat borg shields are now easier to use, only requiring that they sit on one of your hands and not your active hand. The shield is also more energy efficent.
    • -
    -

    PrismaticGynoid updated:

    -
      -
    • You now keep your languages when removed from/transplanted into a body.
    • -
    • AIs and borgs load languages from preferences when spawning.
    • -
    • Fixed sign language being usable while lacking both hands.
    • -
    • Brains are no longer able to hear binary (robot talk).
    • -
    • Adds the ability for research to print drone brains.
    • -
    • Makes all MMIs, posibrains, and drone brains radio-enabled. Anyone holding the brain can also disable the radio for antag purposes.
    • -
    -

    SpadesNeil updated:

    -
      -
    • Windows can no longer be damaged by very weak attacks.
    • -
    -

    Woodrat updated:

    -
      -
    • Ported floor types and floor sprites (Techfloors) from Vorestation (who ported them from Eris). Brought our floortypes in line with how Vorestation has theirs set up.
    • -
    • Missing Techfloor floor tile sprites added.
    • -
    • Floor sprites from Vorestation not yet ported. To be done once we go to the new map.
    • -
    • Added catwalks and railings to SC station. Fixed first Z-level.
    • -
    • Added the ability to make catwalks and railings as ported from vore.
    • -
    • Cable heavy duty file tweaks to remove red overlay color from them.
    • -
    • Added in a color icon for centcomm beach areas.
    • -
    • Fixed issues with SC centcomm z that prevented it from loading.
    • -
    • Rework of xenobio/xenoflora outpost on SC planetside main map.
    • -
    • Added Wilderness z-level for SC, teleportation transition to it may be bugged.
    • -
    • Cable ender file added. Allows power transfer between z-levels.
    • -
    • Southern cross files for areas and defines in relation to z-level work.
    • -
    - -

    26 August 2017

    -

    Belsima updated:

    -
      -
    • Replaced APC sprites with better shaded ones.
    • -
    • Adjusted some atmos sprites for visibility.
    • -
    • Added cough and sneeze noises for Teshari.
    • -
    • Turning on flashlights and locking lockers both make a click sound.
    • -
    • Replaced soda cans with new soda cans.
    • -
    • Added a tiedye shirt.
    • -
    -

    MagmaRam updated:

    -
      -
    • Tesla relays no longer draw power when their attached power cell is full.
    • -
    - -

    20 August 2017

    -

    Anewbe updated:

    -
      -
    • The names of 5.56 and 7.62 ammo have been swapped, as have the guns that use them. The magazines should look the same, and the guns will do the same damage they used to do.
    • -
    -

    Atermonera updated:

    -
      -
    • Borgs can now raise an evil army of slimes
    • -
    -

    Belsima updated:

    -
      -
    • Added a lot of new lore-friendly drinks.
    • -
    • Adjusted the descriptions of some drinks.
    • -
    • Added fingerless gloves to the loadout.
    • -
    • Added several new robot icons.
    • -
    • Added animations to some robots.
    • -
    • Fixed Usagi's eyes not turning off when dead.
    • -
    • Added several new pAI sprites.
    • -
    • Added a load of sweaters to the accessories tab of the loadout.
    • -
    • Added a new swimsuit to the pool.
    • -
    -

    Cirra updated:

    -
      -
    • Added a unified radiation system. Radiation is lessened by obstacles, and distance.
    • -
    • Added a geiger counter for measuring radiation levels, which can be found in certain vending machines and radiation closets.
    • -
    -

    Leshana updated:

    -
      -
    • During the gravity failure event, you can now buckle yourself to a chair to prevent falling when gravity returns.
    • -
    • Added an admin verb to debug the map datum.
    • -
    • Added nanomap capability to the Power Monitoring Computer
    • -
    • Added nanomap capability to the Atmos Control Computer
    • -
    • Expanded nanomap on Camera Console to all station z-levels by default.
    • -
    • Crew Monitoring nanomap will support crew monitors built on other station map z levels.
    • -
    • Updated z1 nanomap for Northern Star
    • -
    • Generated z5 nanomap for Northern Star
    • -
    • Optimized the unified radiation system. Made the radiation cutoff level configurable.
    • -
    • Standing still won't save you from radiation storms.
    • -
    • Bedsheets can be put into washing machines again.
    • -
    -

    LorenLuke updated:

    -
      -
    • Ghosts can now choose from a number of animal sprites.
    • -
    • Gives IECs some TLC (see below).
    • -
    • Adds 'Separator' circuit, allowing the player to now divide strings.
    • -
    • Adds 'grenade' circuit, allowing the player to detonate a stored grenade in an assembly.
    • -
    • Adds 'device' electronic assembly, allowing an 'assembly'-type (signaler/igniter) circuit to be used to interact with others.
    • -
    • Modifies some storage and complexity constants.
    • -
    • Adds 'size' variable for manual setting.
    • -
    • No longer requires screwdriver to remove components.
    • -
    • Enables multitool to wire/debug circuits with lesser functionality (can disable via variable).
    • -
    • IECs no longer drown the player in windows, each assembly always uses only one window.
    • -
    • Added functionality to UI to help with user experience of above point.
    • -
    • Adds 'on set' output pulses to multiplexer and memory circuits.
    • -
    • Fixes multiplexer and memory circuits not pushing data to attached circuits.
    • -
    • Number to string converts null inputs as '0' due to engine limitations (at least they work).
    • -
    • Gun manipulator circuit now functions properly (and can read '0' value inputs).
    • -
    • Phase 1/2 for wiring rework.
    • -
    -

    MagmaRam updated:

    -
      -
    • Nerfed health regeneration, especially on bruises.
    • -
    -

    Nalarac updated:

    -
      -
    • Modifies the illegal equipment module for borgs to scrambled equipment module that only activates the special items and doesn't actually emag the borg
    • -
    • Mining cyborg diamond drill is now obtainable in a more sensible manner
    • -
    • Click dragging has been added to the cryogenics tubes, cloning pod, and all methods of cryostorage
    • -
    • Some quality of life changes for research, crisis, surgeon, and service cyborgs
    • -
    • Jumper cables readded
    • -
    • Construction cyborgs merged back with engineering cyborgs
    • -
    -

    PrismaticGynoid updated:

    -
      -
    • Replaces intelliCards with intelliCores.
    • -
    • Wheelchairs can now be collapsed like rollerbeds for ease of storage and movement. Too big to put in backpacks though.
    • -
    • Wheelchairs are now available in a color-customizable form via the loadout, under utility. Now you can ride in style, and keep your feet too.
    • -
    • Wheelchair users can now enter the gateway and residential elevator without being forced to leave behind their mobility aid.
    • -
    -

    Sarmie updated:

    -
      -
    • Dionaea have remembered how to regrow their limbs properly.
    • -
    - -

    09 May 2017

    -

    Anewbe updated:

    -
      -
    • Ports but does not enable Bay's MultiZAS.
    • -
    -

    Leshana updated:

    -
      -
    • Optimized (but still not enabled) multi-z ZAS
    • -
    • Multi-Z explosion transfer coefficient is now configurable
    • -
    -

    N3X15 updated:

    -
      -
    • Flashlights on the high setting are no longer Beacons of Gondor.
    • -
    -

    Neerti updated:

    -
      -
    • Tesla armor now retaliates against ranged attacks if within 3 tiles, and recharges in 15 seconds, from 20.
    • -
    • Technomancer Instability fades away slower.
    • -
    • Fire and frost auras made more potent.
    • -
    • Gambit can now give rare spells unobtainable by other means, based on spell power.
    • -
    • Mend Wounds and Mend Burns combined into Mend Life. Mend Metal and Mend Wires combined into Mend Synthetic.
    • -
    • Adds Lesser Chain Lightning, a more spammable version, but weaker.
    • -
    • Adds Destabilize, which makes an area glow with instability for 20 seconds.
    • -
    • Adds Ionic Bolt, which ruins the lives of synthetics.
    • -
    • Oxygenate made cheaper.
    • -
    -

    SiegDerMaus updated:

    -
      -
    • Adds one new haircut, a chin-length bob.
    • -
    -

    Yosh updated:

    -
      -
    • Ports a bunch of hair from Bay. Knock yourself out.
    • -
    - -

    05 May 2017

    -

    Anewbe updated:

    -
      -
    • Adds a cup for dice games, in the loadout.
    • -
    • Thermals now let you see in the dark.
    • -
    -

    Arokha updated:

    -
      -
    • Sleepers now have a 'stasis' level setting, that will ignore varying numbers of life() ticks on the patient.
    • -
    • Stasis bags and Ody sleepers now use a fixed level of this new stasis system (ignore 2/3 life ticks).
    • -
    • You can escape from being asleep in a sleeper, similar to escaping from a cryotube.
    • -
    • You can now use grabs on sleepers to insert patients, same as scanners.
    • -
    -

    Datraen updated:

    -
      -
    • Xenobiological traits are made unique on each mutate, avoiding mutating other mobs with same trait data.
    • -
    -

    Leshana updated:

    -
      -
    • Resetting a fire alert will no longer open firedoors if atmos alert is in effect and vice versa
    • -
    -

    LorenLuke updated:

    -
      -
    • Unfucks the screen bug on roundstart changelings.
    • -
    • Changeling now display 'alive' status on Medhuds properly.
    • -
    • Refactors changeling ranged stings not passing over tables. Can now pass over tables, any machinery (except doors), machine frames, and past closet subtypes.
    • -
    • You can now view an active video call by using the communicator in hand.
    • -
    • Guns on harm intent in aim mode will target, rather than shoot pointblank on first click.
    • -
    • You can now put handcuffs on yourself.
    • -
    - -

    25 April 2017

    -

    Anewbe updated:

    -
      -
    • Cultist armor now has better protection from strange energies.
    • -
    • Adds the ion pistol to the uplink.
    • -
    • The ion pistol can now be holstered.
    • -
    • Sprites on the smoking pipes should be fixed.
    • -
    -

    Atermonera updated:

    -
      -
    • Brain type (Organic, cyborg, posi, or drone) is now displayed in all records.
    • -
    -

    Belsima updated:

    -
      -
    • Changes relaymove() code in bodybags.
    • -
    • Above tweak used to allow exiting bodybag while in closed morgue tray.
    • -
    -

    Leshana updated:

    -
      -
    • Implements footstep sound system and adds sounds to various floor types including plating, tiles, wood, and carpet.
    • -
    -

    LorenLuke updated:

    -
      -
    • Allows people who are bucked to give/receive items.
    • -
    • Can click-drag people onto chairs/beds from 1 tile away to buckle them.
    • -
    • Allows you to place tape masks/restraints back on the roll (roll is still infinite).
    • -
    • Fixes ventcrawling for spiderbots/implants/etc.
    • -
    -

    Neerti updated:

    -
      -
    • Drones will now spawn with an EIO-mandated ID card alongside their NT ID.
    • -
    • Fabricate Clothing for Changelings costs one point instead of two, and is fabricated twice as fast.
    • -
    • Dead changelings can no longer hear deadchat or freely ghost.
    • -
    • Shrieks now share a 10 second cooldown.
    • -
    • Lings cannot transform or shriek inside containers such as closets and pipes.
    • -
    • Regen. Stasis timer adjusted to be between 2 to 4 minutes.
    • -
    • Visible Camo. should end if the user is stunned.
    • -
    • Visible Camo. now blocks AI tracking when active.
    • -
    • Recursive Visible Camo. no longer gives true invis.
    • -
    • Recursive Visible Camo. will allow the changeling to run while cloaked instead.
    • -
    • Ling chemical meter on HUD now has a blinking exclaimation mark if below 20 chemicals, to warn that they cannot revive if they should die while still below 20.
    • -
    -

    Yoshax updated:

    -
      -
    • Tape color is different now. Security tape is red rather than yellow, Engineering tape remains yellow and Atmos tape is a lighter cyan rather than blue.
    • -
    - -

    19 April 2017

    -

    Anewbe updated:

    -
      -
    • Unathi ribcages now reach down to their lower torso.
    • -
    • Unathi no longer have appendices or kidneys, the function of the kidneys is now a function of their liver.
    • -
    • Unathi are more slightly more difficult to damage.
    • -
    • Unathi now process medicine 15% slower. Additionally, it's harder for them to get drunk.
    • -
    • Unathi age range is now 32 to 260.
    • -
    • Unathi are not as slowed by heavy items.
    • -
    -

    Atermonera updated:

    -
      -
    • Translators no longer try to translate null languages.
    • -
    -

    LorenLuke updated:

    -
      -
    • Allows Blast doors to be attacked and broken like regular airlocks.
    • -
    • Changelings can bank up to a maximum of 3 respecs at one time.
    • -
    • Changelings begin with 2 respecs.
    • -
    • Firing a silenced weapon gives a message in text to the user.
    • -
    -

    MagmaRam updated:

    -
      -
    • Added instructions on how to use the changelog updating scripts.
    • -
    • Updated in-game EVA manual.
    • -
    -

    Neerti updated:

    -
      -
    • Adds makeshift armor for the head and chest regions. How protective they are depends on the material used to craft it. The helmet is made by using wirecutters on a bucket, then using a stack of material. The chestpiece is made by crafting two armor plate, using wires on one of them, then hiting one with the other.
    • -
    -

    Yoshax updated:

    -
      -
    • Water such as the pool will no longer apply fire stacks when you enter, meaning you will no longer be flammable from swimming.
    • -
    - -

    16 April 2017

    -

    Anewbe updated:

    -
      -
    • Bartenders now spawn with their shotgun permit. Click on it in hand to name it.
    • -
    • Lessens the bloodloss from severe burn damage.
    • -
    • Hardhats now give some ear protection.
    • -
    • Hardhats can no longer fit in pockets.
    • -
    -

    LorenLuke updated:

    -
      -
    • Allows removal of PDA ID with alt-click.
    • -
    -

    Yosh updated:

    -
      -
    • Scrubbers now scrub Phoron by default.
    • -
    • Scrubbers now have the first dangerzone at anything more than 0 Phoron.
    • -
    • No longer will you attack Alarms with your ID when trying to unlock them.
    • -
    - -

    12 April 2017

    -

    Anewbe updated:

    -
      -
    • Material weapons now go dull instead of shattering. Certain weapons, like spears, will still shatter.
    • -
    • Dull weapons do less damage, but can be sharpened with a whetstone.
    • -
    • Whetstones can be crafted using plasteel.
    • -
    -

    Belsima updated:

    -
      -
    • Replaces cypherkey sprites with improved ones.
    • -
    -

    Sin4 updated:

    -
      -
    • You can no longer ascend a table by walking from a flipped table to a non-flipped one.
    • -
    - -

    08 April 2017

    -

    Anewbe updated:

    -
      -
    • Aprons now have pockets.
    • -
    • Automute shouldn't trigger if you don't type anything.
    • -
    • Adds the Chief of Security alt title for the HoS.
    • -
    • Wooden circlets can now be worn on the head.
    • -
    • Package bombs now beep when activated, and have a delay before exploding.
    • -
    • Package bombs are more expensive.
    • -
    • Robolimbs can take a bit more damage before they start malfunctioning.
    • -
    • Shrieking now decloaks changelings.
    • -
    • Drying yourself off with a towel should actually dry you off a bit now.
    • -
    -

    Arokha updated:

    -
      -
    • Simple animals resist out of buckles and lockers
    • -
    • Simple animals with retaliate but not hostile assist each other better if they also have cooperative
    • -
    • E-nets now are resist-out-of (or clickable) by the one inside or outside, rather than having HP, and can be dragged around
    • -
    -

    Atermonera updated:

    -
      -
    • FBPs can now have numbers in their name. The first character cannot be a number.
    • -
    • Common simple animals now have their own language, and as such are no longer understandable by humans.
    • -
    • Translators can't understand the same languages that recorders can't, including the new animal languages.
    • -
    -

    Leshana updated:

    -
      -
    • Upgrades the automatic pipe layer to modernize its code and make it constructable! Constructs and deconstruts like other machines now. Circuits are buildable in the autolathe. Uses steel to make pipes.
    • -
    -

    Magmaram updated:

    -
      -
    • Splints will now show up in examine text on hands and feet as well as arms and legs.
    • -
    -

    Sin4 updated:

    -
      -
    • Fixed back icons for Z8 Carbine, C20r, fireaxe, spear, and baseball bat.
    • -
    • If observing before roundstart, you may respawn.
    • -
    - -

    31 March 2017

    -

    Anewbe updated:

    -
      -
    • Added a number of crates to cargo.
    • -
    • Added the electric welder as a hidden autolathe recipe.
    • -
    • Added a few colored (in sprite, not in color) flashlights, to the loadout. Sprites c/o Schnayy.
    • -
    • Maps in a pair of jumper cable kits. Use these to revive FBPs.
    • -
    - -

    30 March 2017

    -

    Anewbe updated:

    -
      -
    • Italics in chat are now trigged with | , rather than / .
    • -
    • Energy weapons, flashlights, stunbatons, and welders can now be moved from hand to hand by click+dragging.
    • -
    • Flashlights can now be placed in wall rechargers.
    • -
    • Adds jumper cables, that act a bit like a defib for FBPs.
    • -
    • Bicaridine and Myelamine should now properly repair internal bleeding.
    • -
    • Overdoses are now more dangerous.
    • -
    • Chloral Hydrate overdoses are now even more dangerous.
    • -
    -

    Arokha updated:

    -
      -
    • Adds body markings and tattoos.
    • -
    -

    MagmaRam updated:

    -
      -
    • Borgs and assorted robits can now use grinders in chemistry and the kitchen.
    • -
    - -

    28 March 2017

    -

    Anewbe updated:

    -
      -
    • Disregard the last changelog on the spelling of HI, the correct spelling is Hephaestus. My bad.
    • -
    • Added a changelog editing system that should cause fewer conflicts and more accurate timestamps.
    • -
    • Added Myelamine, a blood clotting chemical. This is available to antags, and can be ordered from cargo or mixed.
    • -
    • Added Osteodaxon, a bone fixing medicine. This is available to antags, and can be mixed.
    • -
    • Added Carthatoline, a stronger anti-toxin.
    • -
    • Added Spidertoxin, which comes from spiders (duh), and is used in making Myelamine.
    • -
    • Death Alarms can now be ordered from cargo.
    • -
    • Dexalin Plus is half as strong (still pretty strong, though).
    • -
    • Ninja, Merc, and ERT-M Hardsuits can now inject myelamine.
    • -
    • Inaprovaline now decreases the effects of bloodloss, and lessens brain damage taken from OxyLoss.
    • -
    • Prosthetic organs now take randomised damage when emp'd, this should roughly average out to the old values.
    • -
    • The effects of heart damage have been tweaked, should be slightly easier to survive now.
    • -
    • Some of the stronger chems have side effects, like confusion or blurry vision. These should be fairly minor, and we may be tweaking them in the future.
    • -
    • The suiciding var now wears off, making it possible to save suicide victims if quick action is taken.
    • -
    • Death Alarms now announce on General comms again.
    • -
    • Borgs can climb tables.
    • -
    • Skrell can now be up to 130 years old.
    • -
    • Skrell are more vulnerable to flashes, due to their large eyes.
    • -
    • Tajaran no longer have appendicies.
    • -
    • Tajaran are more vulnerable to flashes.
    • -
    • Unathi have less brute resist, but some burn resist.
    • -
    • Unathi gender is now unclear to non-Unathi.
    • -
    - -

    22 March 2017

    -

    Anewbe updated:

    -
      -
    • Oxyloss now shows up as cyan in scanners.
    • -
    -

    Arokha updated:

    -
      -
    • Having less than 30% blood (as a result of literally having that little blood, or a broken heart) causes 75 oxyloss per tick rather than 300 toxins and instant death, to allow for heart transplants.
    • -
    • Infections now spread and process properly between external organs.
    • -
    • Infections now have appropriate symptoms that indicate to a player that they have one.
    • -
    • Infections are now diagnosable more accurately in a medscanner, or visually for high level infections or dead limbs.
    • -
    -

    Atermonera updated:

    -
      -
    • EAL, Sign language, and emotes will no longer use autohiss
    • -
    • Surgeon Borgs now have a proper medical hud module
    • -
    - -

    24 February 2017

    -

    Anewbe updated:

    -
      -
    • Fake command reports now make the paper show up.
    • -
    • Mining cameras should work now.
    • -
    -

    MagmaRam updated:

    -
      -
    • There is now a short delay before being able to fire when using hostage-taking mode, and a short delay between shots. This should make hostage mode useful for taking hostages and ambushes, rather than as an aimbot in actual firefights.
    • -
    • Sandwiches at max size can be eaten with a fork.
    • -
    -

    Yosh updated:

    -
      -
    • Some vending machines now log the items they've vended and had stocked, storing the name of the user, the time and the item. These can be found by using the new verb for vending machines, or from the right click menu.
    • -
    -

    Zuhayr updated:

    -
      -
    • Adminhelps now have a TAKE button that allow an admin to claim it, and inform the adminhelper that someone is on the case.
    • -
    - -

    28 January 2017

    -

    Anewbe updated:

    -
      -
    • Added Medical and Meson aviators.
    • -
    • Medical and Meson aviators are now in the loadout, department locked.
    • -
    • Meson Scanners have been added to the loadout, department locked.
    • -
    • Medical hardsuit has a toggleable sprint.
    • -
    • Carbon and Hematite should show up in asteroid walls.
    • -
    • Readded the random crates from mining.
    • -
    • Digging through an artifact sometimes doesn't destroy the artifact.
    • -
    • Space and cracked sand should no longer stop mining drills.
    • -
    • Diona can regenerate organs and limbs.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • Resetting a character slot now requires confirmation.
    • -
    -

    Zuhayr updated:

    -
      -
    • Added a reset slot button to chargen.
    • -
    - -

    23 January 2017

    -

    Anewbe updated:

    -
      -
    • Can now just click ones boots to draw a holstered knife.
    • -
    • More boots can hold knives now.
    • -
    • Added an action button for breath masks, making it easier to toggle them.
    • -
    • Space Carp have a chance of sticking around after their event completes.
    • -
    • Robotic limbs will no longer show up on the health scanners.
    • -
    • Medics and Security can open firedoors. Do so at your own risk.
    • -
    • Chaplain hoodie now has pockets and an actual hood.
    • -
    • Winter coat hoods have the same armor values as their coats.
    • -
    • Characters will now spawn in at a random level of hunger.
    • -
    • Assisted and Prosthetic organs now have sprites.
    • -
    • Surgical tools will not attack while on help intent, this should prevent people getting accidentally stabbed in surgery.
    • -
    • Tajaran now process reagents slightly faster.
    • -
    • Taj are now allergic to coffee again, per loremaster request.
    • -
    • Taj now get drunk faster.
    • -
    • Hyperzine is now more toxic to Taj.
    • -
    • Readded the Vox for admin/antag use and testing. They breathe Phoron now, rather than Nitrogen.
    • -
    • The Xenotaser should work properly.
    • -
    -

    FTangSteve updated:

    -
      -
    • RootSpeak is now split into a local and a global variant. For now the global acts as a hivemind.
    • -
    -

    Hubblenaut updated:

    -
      -
    • Can now click on turfs with trash bags and similar to quick-gather everything on it. No longer pixelhunting for cigarettes and bullets.
    • -
    • Buckets and other reagent holders will no longer simply be put into the janitorial cart's trash bag.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • The round start and auto-antag spawners can now check if players have played long enough to be eligable for selection.
    • -
    -

    Techhead updated:

    -
      -
    • Added a new random event: Shipping Error - A random crate is mistakenly shipped to the station.
    • -
    - -

    12 January 2017

    -

    Anewbe updated:

    -
      -
    • Ported over a bunch of hairstyles and underclothes from Baystation.
    • -
    • Nurse spiders inject eggs less frequently.
    • -
    • Nurse spiders give a warning to the victim when they implant eggs.
    • -
    -

    Neerti updated:

    -
      -
    • Hand-held flashes and flash rounds will now stun upon repeated applications, similar to stun batons.
    • -
    - -

    03 January 2017

    -

    Anewbe updated:

    -
      -
    • Farmbots should be buildable again.
    • -
    • FBPs with vital (head/torso/groin) damage will now show up on the crew monitor as being damaged.
    • -
    • Flashes should now properly affect accuracy in hand-to-hand.
    • -
    • Taj should no longer be poisoned by any sort of coffee. Looks like we missed a spot last time.
    • -
    • Recording tapes can now hold 30 minutes of chat.
    • -
    • Tape recorders and their tapes now fit in security and detective belts.
    • -
    • Lasers can now ignite thermite on walls.
    • -
    • Device cells now fit in wall rechargers.
    • -
    - -

    30 December 2016

    -

    Anewbe updated:

    -
      -
    • Changed run/walk speed to be based only on a config file.
    • -
    • Walking should be faster now.
    • -
    • Removed shoeless slowdown.
    • -
    -

    Atermonera updated:

    -
      -
    • Science grippers can install and remove borg components
    • -
    • Exosuit grippers can install exosuit equipment
    • -
    • Sheetloaders can load materials into protolathes and circuit imprinters.
    • -
    • Protolathes and circuit imprinters input materials like autolathes, taking as much of the fed stack as it can.
    • -
    -

    MagmaRam updated:

    -
      -
    • Beakers can now have longer labels.
    • -
    • Adds defibrilator crate for cargo.
    • -
    • Changed how certain stacks spawn behind the scenes. Should fix a few esoteric bugs without impacting anything else.
    • -
    -

    Neerti updated:

    -
      -
    • Subtracting, multiplying, and dividing with arithmetic circuits should actually occur now.
    • -
    • Added new arithmetic circuits; sign, round, and exponent.
    • -
    - -

    17 December 2016

    -

    Anewbe updated:

    -
      -
    • EVA rig now has insulated gauntlets.
    • -
    • Adds another slot to select languages, if desired.
    • -
    • The base device cell is now selectable in the loadout.
    • -
    -

    ForFoxSake updated:

    -
      -
    • Digital Valve pipes can now be made and moved.
    • -
    • Air Vents can now have their direction changed.
    • -
    • Atmospherics is now a little less cluttered.
    • -
    -

    MagmaRam updated:

    -
      -
    • Added a nice implant that allows humans to speak EAL.
    • -
    -

    N3X15 updated:

    -
      -
    • Added a changelog editing system that should cause fewer conflicts and more accurate timestamps.
    • -
    • Killed innocent kittens.
    • -
    - -

    01 December 2016

    -

    Anewbe updated:

    -
      -
    • Adult Diona should be able to name themselves properly now. Tweaked from a Baystation PR by FTangSteve.
    • -
    • Lightning spells and bioelectrogenesis will no longer stun outright.
    • -
    • FBPs should no longer get mutations from radiation.
    • -
    • Observe warning should properly show how long you have before you can join.
    • -
    • Adds a Toggle Shoe Layer verb to shoes, that let them be worn over the uniform (ie tucking your pants into your shoes).
    • -
    • Shoes now properly check if they can hold knives or not.
    • -
    • Sign language can now be used while muzzled.
    • -
    -

    Datraen updated:

    -
      -
    • Skrell are now more resistant to various chemicals, more susceptible to pepperspray.
    • -
    -

    ForFoxSake updated:

    -
      -
    • Fixed a possible href exploit allowing any living player to speak any language.
    • -
    • Organic beings can no longer speak Encoded Audio Language, although they can still understand it just fine.
    • -
    • Positronic brains can now speak Encoded Audio Language.
    • -
    • Station manufactured Full Body Prosthetics can now speak Encoded Audio Language.
    • -
    -

    MagmaRam updated:

    -
      -
    • Corpses will now process a select few chemicals, meaning you can now add blood into people who bled out before defibbing them.
    • -
    • Defibrilators fixed again.
    • -
    • R&D machines will now accept stacks of metal and glass from Cargo orders properly.
    • -
    -

    N3X15 updated:

    -
      -
    • Electrical storms no longer affect only cargo. If you're not cargo, your lights are no longer safe.
    • -
    -

    Nerezza updated:

    -
      -
    • APCs now have a new EMP behavior. Regular APCs shut off for a few minutes, critical APCs (engine and AI) shut off for 30ish seconds. Medbay will now not be permanently disabled by EMPs if no engineers are available to fix their APCs.
    • -
    • Bay's timed reboot interface for APCs has been ported for EMPed APCs.
    • -
    • APCs affected by grid checks say so on their nanoUI now.
    • -
    • APCs damaged by the apc_damage random event are now effectively emagged APCs. Anyone can operate their interface.
    • -
    • Emagged APCs can now be repaired by removing their power cell and using a multitool to 'reboot' them manually.
    • -
    • Nin and twiz no longer **** up APCs if they drain the battery completely.
    • -
    • Nin and twiz drain power from the wire an APC is connected to first, then drain from the power cell to fill the drain's 'quota'. Because the amount of power given from the power net is random, this means the battery will still drain but this also means you don't need to crowbar tiles in a room if the APC is empty.
    • -
    • Bluescreened APC wire panels now visibly open like they should.
    • -
    • Bashing APCs open was only effective under certain circumstances, but would spam everyone anyway. This has been changed to only spam the user and to be more indicative of when you can bash the cover off.
    • -
    • Full grammar pass on APCs.
    • -
    • Hazard shutters animate slightly and play a sound so players can more readily identify where shutters are being pried.
    • -
    • Two people can't pry the same shutter simultaneously anymore.
    • -
    • Fixed a bug causing shutters to immediately pry open when people didn't want the shutter open.
    • -
    • Inflatables can be deflated using ctrl-click.
    • -
    • Inflatables can be deployed on adjacent tiles by clicking them.
    • -
    • Bumping into closed inflatable doors will no longer freeze them for a few moments.
    • -
    -

    Yoshax updated:

    -
      -
    • All Heads of Staff now get multi-color pens in their office.
    • -
    • Doors that do not have an access requirement can now be opened when handcuffed.
    • -
    - -

    21 November 2016

    -

    Anewbe updated:

    -
      -
    • Drawing blood with a syringe now takes a moment.
    • -
    • Communicators no longer have a loadout cost.
    • -
    • Having more than 50 tox will now cause liver damage, rather than 60.
    • -
    • Adds Stimm, a homemade hyperzine made of sugar and welding fuel.
    • -
    • Hyperzine is now toxic.
    • -
    -

    Nerezza updated:

    -
      -
    • Space suits now hide jumpsuits, so excessively bulky jumpsuits no longer peek through.
    • -
    • Teshari wearing webbing now have the correct sprite overlay. More accessories need sprites, however.
    • -
    • Teshari sprites no longer show the majority of suit accessories, anyone who wants to pitch in to fix this are invited to do so!
    • -
    • Windoors can now be disassembled. Apply crowbar when open.
    • -
    • Engiborgs and drons can name door and windoor assemblines now. Click an adjacent assembly with no modules active.
    • -
    • Windoors now know how to name themselves. In addition, unnamed windoors now spawn with their default name instead of null.
    • -
    -

    RedStryker updated:

    -
      -
    • Added a colorable hairflower to the loadout.
    • -
    • Added a taqiyah to the loadout that can be colored with the color datum.
    • -
    • Fixed the sprite for the red Security Hat backwards sprite so that the 'N' on it is no longer backwards.
    • -
    -

    Yoshax updated:

    -
      -
    • All robots now get crowbars, flashes and fire extinguishers.
    • -
    • IV Drips are no longer dense, meaning they can be walked through like chairs.
    • -
    • Robots can now use the toggle lock verb on crates and lockers.
    • -
    • There is now an experimental welding tool, it regenerates its fuel on its own! One is given to the Chief Engineer, produced in Research, or found in Syndicate toolboxes.
    • -
    - -

    20 November 2016

    -

    Datraen updated:

    -
      -
    • Global announcer now has access to engineering channel.
    • -
    • Supermatter now uses the global announcer.
    • -
    -

    Nerezza updated:

    -
      -
    • Digital FBP/Cyborg brains no longer drop brains.
    • -
    • Digital FBP/Cyborg brains are tagged with their designation now.
    • -
    • All cyborgs can now unbuckle people from beds/chairs. Just attack the structure with no module selected.
    • -
    • Added the current station date to the Status tab. Ported from Baystation.
    • -
    -

    Yoshax updated:

    -
      -
    • Adds the ability for Hydroponics Trays to enter cryogenic stasis. You can do this by using a multitool on one. Wheh in stasis the plant will be frozen in time, it will neither grow nor die. Now you can have a life!
    • -
    - -

    18 November 2016

    -

    Anewbe updated:

    -
      -
    • Added .45 and tommygun AP ammo to the uplink.
    • -
    • CPR can be performed on corpses, doesn't actually help them.
    • -
    -

    Datraen updated:

    -
      -
    • Makes cameras faster, removing a large chunk of bloat relating to taking pictures. Specifically for taking pictures of angry cheetos.
    • -
    -

    MagmaRam updated:

    -
      -
    • Slimes will now properly process chems that have zero effect on them (that is, they'll get rid of them instead of clogging up their metabolism forever).
    • -
    -

    Nerezza updated:

    -
      -
    • Added Lemon Juice to soda dispensers across the station. Reagent cartridge refills can be ordered via cargo.
    • -
    • Added Lemon Juice and Milk Cartons to the bar's Booze-o-Mat. You can now order milkshakes and not get shot (maybe).
    • -
    -

    Yoshax updated:

    -
      -
    • Being unable to breathe and having oxyloss will now cause brain damage that scales with the amount of oxyloss you have. Without oxygen, the brain takes damage and will EVENTUALLY die (but you would most likely die of actual oxyloss before that point.)
    • -
    - -

    17 November 2016

    -

    Anewbe updated:

    -
      -
    • Slowdown in armor sets moved to chest and legs, rather than arms and legs.
    • -
    • Bullets and lasers will now show up on Autopsy Reports.
    • -
    • Fixed all ERT calls being silent, regardless of selected option.
    • -
    • Flashlights can now fit in rechargers.
    • -
    • Added flashlights, maglights, and the secHUD sunglasses (Sec only) to the loadout.
    • -
    -

    TheGreyWolf updated:

    -
      -
    • Added Sign language, which can be selected from character setup.
    • -
    - -

    13 November 2016

    -

    Anewbe updated:

    -
      -
    • Adds a list to prevent certain jobs from being certain roundstart antags, rather than outright preventing them.
    • -
    • Surplus crates won't make more surplus crates.
    • -
    • Random buys from uplinks will no longer buy anything out of the Badassery tab.
    • -
    • Loincloth now has an on-mob sprite.
    • -
    • Ported Bay's tape recorders (which actually work).
    • -
    -

    Broseph Stylin updated:

    -
      -
    • Added HUD aviators to the loadout. They're restricted to security, and can toggle between HUD and flash protection modes, but won't offer both at once.
    • -
    -

    MagmaRam updated:

    -
      -
    • Holsters can be concealed by some suit-slot items, others conceal all accessories.
    • -
    • Fixed certain suit-slot items not hiding jumpsuits properly.
    • -
    -

    RedStryker updated:

    -
      -
    • Adds a Guy Fawkes mask.
    • -
    -

    Yoshax updated:

    -
      -
    • Clipboards can now be made out of wood.
    • -
    - -

    25 October 2016

    -

    Anewbe updated:

    -
      -
    • The effects from empty-handed disarming now have a cooldown.
    • -
    • HoS and Detective equipment is less protective.
    • -
    - -

    24 October 2016

    -

    Anewbe updated:

    -
      -
    • The color selectable beret should now be more vibrantly colored.
    • -
    • Bullet armor has a higher chance of preventing an embed.
    • -
    • The actual system by which embed works has been changed. The overall effect should be negligible.
    • -
    • Flashlights use device cells. Time of use should be roughly unchanged.
    • -
    • Device cells have a chance to spawn where normal cells do.
    • -
    • Internal Affairs Agent HUD icon added.
    • -
    • Command, QM, and Bridge Secretary icons are now blue.
    • -
    • Research department icons are now purple.
    • -
    • Supply department icons are now brown.
    • -
    • Chemist icon is now white and red, like the rest of medical.
    • -
    • Using a roll of tape on a person requires the same level of grip as handcuffs.
    • -
    • The disclocation chance when using disarm intent with a weapon has had its' formula changed, meaning the threshold for always disclocatiing is now higher, and no longer 15 force. Meaning weapons will dislocate limbs less often and will also do less damage.
    • -
    -

    MagmaRam updated:

    -
      -
    • Rates of blood loss now depend on the type of wound inflicted and where the wound is inflicted, as well as the damage.
    • -
    -

    Neerti updated:

    -
      -
    • Changes how the grid check event works. A new machine called the grid checker exists in engineering, near the engineering substation. The actual event now involves a power spike originating from the engine, which the grid checker will activate upon sensing it, and causing a blackout. Engineering can restore power faster if they hack the grid checker correctly. A piece of paper left in the substation has more details.
    • -
    • Adds new 'spell power' mechanic, currently tied to technomancer cores. Certain cores will augment various characteristics of spells, such as damage, radius, etc Base spell power is 100% (internally 1.0) and some cores may raise or lower it.
    • -
    • Adds new 'info' tab for Technomancers that hopefully tells new them what they need to know.
    • -
    • Round-end now shows every spell each technomancer has, as well as their core type.
    • -
    • Ability HUD buttons can be re-ordered by clickdragging one button onto another.
    • -
    • Recycling core now actually works.
    • -
    • Adds two new cores. The Safety Core, which reduces instability by 70%, however it hass less energy, lower recharge rate and lower spell power. Also the Overcharged Core which uses more energy, caused more instability, but has far higher spell potency.
    • -
    • Adds a new Spyglass item, that functions exactly like a pair of binoculars. This is for Techomancers.
    • -
    • Technomancer Resurrect now has a deadline of 30 minutes until a dead person can't be revived, instead of 10 minutes.
    • -
    • Technomancer Radiance is now three times as strong. Also Radiance with a Scepter prevents the caster and allies from being afflicted.
    • -
    -

    PapaDrow updated:

    -
      -
    • Striped undergarments now exist.
    • -
    -

    Redstryker updated:

    -
      -
    • Added a blue variant of the Medical voidsuit called the 'Emergency Medical Response Voidsuit' that can be obtained from the suit cycler.
    • -
    - -

    10 October 2016

    -

    Anewbe updated:

    -
      -
    • The base device cell has been shrunk, for use in non-weapon devices.
    • -
    • Adds another class of device cell, for use in weapons.
    • -
    • Belts can now hold device cells.
    • -
    • Cryopods (including the portal and elevator) no longer consume ammo or device cells.
    • -
    • Low Yield EMP grenades now have the proper EMP radii.
    • -
    -

    Redstryker updated:

    -
      -
    • Allows promotion to Colony Director on the ID console.
    • -
    - -

    08 October 2016

    -

    Anewbe updated:

    -
      -
    • Unloading an energy weapon should now correctly show what was unloaded.
    • -
    • Borg stun baton is back to the old cost, for balance reasons.
    • -
    -

    Redstryker updated:

    -
      -
    • 'Overseer' added as an alt title to Colony Director alt titles list.
    • -
    -

    Spades Neil updated:

    -
      -
    • Adds the ability to hack Jukeboxes.
    • -
    -

    Yoshax updated:

    -
      -
    • Flashlights now take powercells.
    • -
    • Flashlights now have multiple brightness levels, including low, medium and high.
    • -
    - -

    06 October 2016

    -

    Anewbe updated:

    -
      -
    • Energy weapons and stunbatons now use special device power cells, these can still be recharged.
    • -
    • Energy weapons can be unloaded and reloaded by clicking them with an empty hand or a device cell, respectively. The process of loading a cell takes a few moments.
    • -
    • Stunbatons no longer require a screwdriver to switch cells.
    • -
    • Tweaked the order in which stunbatons check for power, they should now visibly power off when their cell hits 0, instead of one hit after.
    • -
    • Security lockers (HoS, Warden, and Officer) now have an extra device cell in them.
    • -
    • Protolathe can print device cells.
    • -
    • Adds start_recharge() proc to energy weapons. When called, this should cause the affected weapon to begin self-charging.
    • -
    • Weapons that self-recharge won't do so for a short period after firing.
    • -
    • On weapons that can fire both lethally and non-lethally, lasers drain twice as much power as tasers.
    • -
    • Laser cannon, LWAP, and self_recharging weapons cannot switch cells.
    • -
    • Map has been changed to include more rechargers. Merc and ERT bases include extra device cells.
    • -
    -

    Neerti updated:

    -
      -
    • Cleaned up the work in progress event system.
    • -
    • Added framework for a new grid check for the new event system.
    • -
    -

    Spades Neil updated:

    -
      -
    • Replaced Station Administrator with Colony Director, based on feedback literally from NASA.
    • -
    -

    Yoshax updated:

    -
      -
    • You can now only fit one pizza per box, and pizzas will no longer vanish to pizza gnomes.
    • -
    • Energy swords will now produce a small light. The light is determined by the color of the blade.
    • -
    • Simple mobs such as slimes, or carp, will now ignore intent requirements for passing applied tape.
    • -
    • Long records will no longer be devoured by long-record-goblins when attempting to edit them using a console in-round.
    • -
    • AIs with special roles will now get access to the fancy law manager.
    • -
    - -

    05 October 2016

    -

    Redstryker updated:

    -
      -
    • Added four sounds that are randomly played when bones break. Also allows the Technomancer to play the bone break sound.
    • -
    • Adds a black variety of the Security Voidsuit called the 'Crowd Control' voidsuit. It can be obtained from a Suit Cycler with Security clearence.
    • -
    • Codes in icon state for the Press Vest.
    • -
    • Added a child of the Medical armband with a red cross on it. It is available on the loadout.
    • -
    - -

    02 October 2016

    -

    Anewbe updated:

    -
      -
    • Pain from burn damage is now equal to that of brute damage.
    • -
    • Removed the exploit by which you could gain cargo points by ordering plastic crates.
    • -
    • Upped cargo point gain by 50%.
    • -
    • Parapen in SpecOps crate replaced with a 4th smoke grenade.
    • -
    -

    HarpyEagle updated:

    -
      -
    • Adds applying pressure to body parts to reduce bleeding. With desired body part selected, help-intent click yourself or get an aggressive grab, then help-intent attack with the grab item. Each person should only be able to apply pressure to one body part on one person at a time, so choose wisely. Applying pressure will get blood on your hands.
    • -
    -

    Yoshax updated:

    -
      -
    • Armbands can now be attached to things that go in the outer suit slot.
    • -
    • Shanking has been added. You can shank someone by getting an aggressive grab on them, targetting their chest and attacking them with a sharp item. This has a special attack that has greatly increased chance to do internal damage, also does bonus damage for weapons that are both sharp and have edge.
    • -
    -

    Zuhayr updated:

    -
      -
    • Added /vg/ direct-action ventcrawling. You will now crawl through the actual pipe network, a step at a time. Have fun.
    • -
    - -

    19 September 2016

    -

    Anewbe updated:

    -
      -
    • Blood Drain now heals internal damage, including broken bones and internal bleeding.
    • -
    • Adds the Command Secretary job.
    • -
    • CE hardsuit now has proper magboots and insulated gauntlets.
    • -
    • Powersinks should actually explode again, after a while.
    • -
    -

    MagmaRam updated:

    -
      -
    • Lasers and energy projectiles in general now glow in the dark.
    • -
    • Robotic and prosthetic limbs can now be used in creation of simple robots, rather than just the robotic (lawed-chasis) limbs.
    • -
    -

    Zuhayr updated:

    -
      -
    • Added /vg/ direct-action ventcrawling. You will now crawl through the actual pipe network, a step at a time. Have fun.
    • -
    - -

    16 September 2016

    -

    Anewbe updated:

    -
      -
    • Explosive implants should no longer gib the target if the setting is Localized Limb.
    • -
    • Lasercannon has 4 shots and fires slightly faster.
    • -
    • Lasercannon shots are slightly weaker to compensate for increased sustain.
    • -
    • Changes Unathi sprites slightly.
    • -
    • The advanced egun, laser carbine, and lasercannon now take up a bit more space in bags.
    • -
    • Prosthetic limbs and extremities no longer increase body temperature.
    • -
    • Ninja and Technomancer now require 5 players to start in either secret or voted.
    • -
    • Split skirts into 'skirts', which are just a skirt, and 'skirt outfits', which cover the upper body. Check your loadouts, they should remain otherwise unchanged.
    • -
    • Splints are no longer reusable.
    • -
    • Water is now more effective at dousing burning people.
    • -
    • Ninjas now vanish in a cloud of smoke, rather than exploding.
    • -
    -

    Chinsky updated:

    -
      -
    • Added a hawaii shirt to loadout accessories. Can be attached to clothing like suit jackets etc. Can also be found in mixed wardrobes.
    • -
    -

    Yoshax updated:

    -
      -
    • People bleed faster and more.
    • -
    • Splints are once again reusable and have been improved behind the scenes.
    • -
    • Removing splints will now correctly give you the splint used to splint the organ.
    • -
    - -

    03 September 2016

    -

    Yosh updated:

    -
      -
    • Projectile flash rounds will now do the same as a flash when it hits the target. As such, it will blind, confuse and blur the eyes of thw target. Pistol and machine gun rounds last the same length as a flash, shotgun rounds last longer.
    • -
    • Changeling recursive enhancement is now a toggleable passive ability, instead of a one-time use active ability.
    • -
    • You can now vomit by using the vomit emote.
    • -
    -

    Yoshax updated:

    -
      -
    • Changeling armor and space armor can now be cast off regardless of your stored chemicals.
    • -
    - -

    02 September 2016

    -

    Yosh updated:

    -
      -
    • DNA Lockable guns have been finished. Any gun can be made into a DNA Lockable gun by inserting a DNA Chip Lock. These are not currently available, and are adminspawn only. Please refer to your nearest staffmember/developer to begin discussion for future implementations of this feature.
    • -
    • A new hairstyle has been added named poofy2.
    • -
    -

    Yoshax updated:

    -
      -
    • Autotraitor now needs 0 players to start in secret.
    • -
    • Diona are now slightly faster!
    • -
    - -

    01 September 2016

    -

    Alberyk updated:

    -
      -
    • Added more horns and horns related facial options for Unathi.
    • -
    -

    Anewbe updated:

    -
      -
    • Hyperzine metabolizes twice as quickly.
    • -
    • Changeling space suits now have magboots.
    • -
    • Armblade now has suicide_act text.
    • -
    -

    Techhead updated:

    -
      -
    • Medical splints can now also be applied to hands and feet (in addition to arms and legs).
    • -
    • For those that miss the old functionality, ghetto splints have been added. These can be crafted with a roll of tape and a metal rod and can only splint arms and legs.
    • -
    -

    Yosh updated:

    -
      -
    • The secure briefcase is now available in the loadout for anyone who wishes to use it.
    • -
    • Leaving a space area and entering a non-space area will no longer leave your sprite floating.
    • -
    • Ponchos can now be attached to your uniform as an accessory. In addition they can also be attached to suits!
    • -
    • Changeling regenerative stasis will now properly regrow limbs.
    • -
    • Changeling regenerative stasis will no longer runtime and refuse to work when you have a missing limb.
    • -
    • The shuttle during revolution will no longer take forever and a day to arrive and such.
    • -
    - -

    30 August 2016

    -

    Anewbe updated:

    -
      -
    • Arm and leg guards are now slightly less slowing.
    • -
    • Mining RIG is now faster
    • -
    • Tweaks security voidsuit armor values.
    • -
    • Hardsuits (RIGs) now have an inbuilt suit cooling system, toggled via HUD button. This only works when the hardsuit is fully deployed, and drains charge from its power cell.
    • -
    -

    Neerti updated:

    -
      -
    • Emitters can be examined to see if they are damaged. They can also be repaired by applying metal sheets to them.
    • -
    • Emitters now only explode on death if they are on a powered wire with significant power flowing through it.
    • -
    • Emitters don't explode in one hit, or by tasers or non-damaging projectiles anymore.
    • -
    - -

    29 August 2016

    -

    Haswell updated:

    -
      -
    • Modules installed within a hardsuit will now be listed when examining the hardsuit control module while being held or worn, if the maintenance panel is open.
    • -
    -

    Hubblenaut updated:

    -
      -
    • Bottles will now actually sell for their set prices.
    • -
    • Chief Medical Officer and Medical Doctors now spawn with a health analyzer instead of a penlight.
    • -
    -

    Sin4 updated:

    -
      -
    • Camera Console swaps to active camera upon clicking on.
    • -
    • Hugs gender correctly.
    • -
    • Prometheans gender correctly and have a gender identity.
    • -
    • Meatspike no longer takes you prisoner upon placing something on it.
    • -
    • Lighting someone on fire now tells the admins.
    • -
    • Wiping something down with a damp rag no longer wets the floor.
    • -
    • Captains gloves now appear when put on.
    • -
    • Fixes Station Administrator Spawn point and access/restrictions.
    • -
    • Renamed items from captain to station administrator.
    • -
    -

    Yoshax updated:

    -
      -
    • IDs can now actually be put onto your ears.
    • -
    • Lungs will now once again rupture when you are in an area where you cannot breathe. This has a relatively small chance to happen.
    • -
    - -

    15 August 2016

    -

    Anewbe updated:

    -
      -
    • Changed some words to match current Tajaran lore.
    • -
    -

    Hubblenaut updated:

    -
      -
    • Adds a verb for toggling whether to show specific pieces of underwear.
    • -
    • Changes medical belt sprite. Mostly white now so they go nicely with all medical uniforms.
    • -
    -

    Yoshax updated:

    -
      -
    • Dirt accumulation on tiles will now work again.
    • -
    • The change appearance window provided to antagoniss such as mercenaries, heisters or suchlike (including traders!) will now properly allow people to select species they are whitelisted for.
    • -
    - -

    13 August 2016

    -

    Yoshax updated:

    -
      -
    • The ERT camera monitor on the shuttle will now connect to the right network.
    • -
    • The 'choose sprite' verb as a ghost will no longer prematurely clear you sprite and will now return your sprite to what it was previous when you press 'no'. However, it will not allow you to get back the sprite of your actual character because those are horrible snowflakes.
    • -
    • The Atmos Substation is now a proper substation with a breaker box and all!
    • -
    • Diona Nymphs now get a popup window on evolution to allow them to input a name.
    • -
    • Changeling revive will now close any surgical incisions.
    • -
    - -

    08 August 2016

    -

    Kelenius updated:

    -
      -
    • Xenoarcheology code has been partially redone.
    • -
    • Pick set will now sort the picks inside it.
    • -
    • Removed useless random numbers from GPS coordinates in various places. I'm sure we have not lost the arcane knowledge of rounding 500 years into the future.
    • -
    • Picks renamed to show their excavation depths.
    • -
    • Suspension generator's power use lowered.
    • -
    • Suspension generator's different field types removed. By the way, remember that they can suspend any item and even mobs.
    • -
    • Archeology belts and pick sets can now hold small pickaxes. Pick sets still only have 7 slots. Brushes fit on your ears.
    • -
    • Empty rock drop rate reduced.
    • -
    • Empty rock renamed from 'rock' to 'small rock' so you can tell if you are clicking on a turf or an item when hovering over it.
    • -
    • Empty boulder spawn rate reduced.
    • -
    • Tape measuring is a bit faster.
    • -
    • Scanner now shows the lowest and the highest depth of the find (highest is depth + clearance) for easier calculations. Ideally, you need to hit exactly the lowest spot. Less ideally, hit anywhere between higest and lowest. Hit below lowest and you have a chance to break the find.
    • -
    • You can now use a brush to clear strange rocks. Welder uses less fuel for that than before.
    • -
    • Anomaly analyser's report made a bit easier to read.
    • -
    • Anomaly locater will now also locate normal finds.
    • -
    • Gas masks will now correctly spawn as archeological finds.
    • -
    • Digsites will now properly contain several (4-12) turfs in a 5x5 radius. Be careful when digging near your finds.
    • -
    • Suspension generator will now correctly turn off (qdel issue).
    • -
    • Archeology overlays won't disappear when the icon is updated (e.g. when mining next to it).
    • -
    • Archeology overlays won't overlap each other and will properly disappear when you mine out a find.
    • -
    • Some spawning oddities were fixed.
    • -
    • Checks for whether you get a strange rock or a clean item were fixed (previously it always gave you clean item where it should have been rolling a random number).
    • -
    • Can no longer get rid of any item by putting it into evidence bag and bag into core sampler.
    • -
    • Can no longer irreversibly fold pick set into cardboard.
    • -
    • CO2 generator effect now has a type.
    • -
    • Phoron generator effect will now always generate phoron, not sometimes phoron and sometimes oxygen.
    • -
    -

    Sin4 updated:

    -
      -
    • Scheduler ported from Baystation's port of Paradise's scheduler.
    • -
    -

    Yoshax updated:

    -
      -
    • Some items such as commonly found tools are now slightly more effective when wielded as weapons. This change has been made because many of them were too low, and low because of mostly holdovers from other servers where things such as grey tide are big concerns.
    • -
    - -

    07 August 2016

    -

    HarpyEagle updated:

    -
      -
    • Severe enough burn damage now causes one-time blood loss due to blistering and body fluid cook-off.
    • -
    -

    Sin4 updated:

    -
      -
    • Fixed ERT icon not showing up properly for sechuds.
    • -
    • Fixed instances of the game mode's config_tag being displayed instead of the game mode name.
    • -
    -

    Yoshax updated:

    -
      -
    • Attacking yourself, or anyone else with a stack of five or more telecrystals will teleport the attacked person to a random, safe (not in space) location within 14 metres.
    • -
    • All telecrystals ammounts have been multiplied by 10. This means the base amount is now 120, and an emag for example costs 30, vs the previous 12 and 3, respectively.
    • -
    • You can once again use telecrystals on an emag to add more uses to it. You get 1 use per every 2 telecrystals.
    • -
    • Instead of only being able to remove 1 telecrystal from your uplink, you can now remove 1, 5, 10, 25, 50.
    • -
    - -

    05 August 2016

    -

    Anewbe updated:

    -
      -
    • Changeling Self-Respiration is now a toggle. By default they breathe normally, but if they use the power they no longer require oxygen, or experience the effects of inhaled gasses.
    • -
    • Heat based damage has been increased. This includes fire.
    • -
    -

    Hubblenaut updated:

    -
      -
    • Windoor assemblies can now be named with a pen.
    • -
    • Windoor and airlock assemblies now show their custom name during construction phase.
    • -
    • Windoors can now be made out of two sheets of glass or reinforced glass, for normal and secure windoors respectively.
    • -
    • Windoors now automatically close after construction.
    • -
    • Adjusts the algorism for how windoors and windows are placed on construction (when there are already windows co on the same turf).
    • -
    • Windoors will now drop exactly the materials they were made of.
    • -
    • Prying a broken circuit out of a windoor will no longer cause duplicates to drop.
    • -
    • Airlocks no longer spark after spawn and several other icon update issues were fixed.
    • -
    • Fixes reinforced walls not being constructable with one sheet left in stack.
    • -
    • Windows that were busted out of their frame by force are now correctly rotatable.
    • -
    • Lots of spellchecking and code cleanup in windoor and airlock code.
    • -
    • Killed innocent kittens.
    • -
    -

    Sin4 updated:

    -
      -
    • Advanced Body Scanners are now deconstructable
    • -
    • You can now add coolant to the Radiocarbon Spectrometers
    • -
    • Frame code revamped and cleaned up.
    • -
    • R&D server circuitboards can be swapped between core and robotics types using a screwdriver.
    • -
    -

    Yoshax updated:

    -
      -
    • Wounds will now once again bleed.
    • -
    • Xeno loadout items will now properly be reloaded into a slot when the server restarts.
    • -
    • A new item has been added to the uplink. Package bombs. These come in two variants, small and big, which cost 20 TC and 40 TC respectively. These come in a box with an explosive, a disguised detonator and a screwdriver. The use the detonator you muse apply the screwdriver to configure it into detonator mode. This must be done when it is closed.
    • -
    - -

    31 July 2016

    -

    Anewbe updated:

    -
      -
    • Sprays now respect shields.
    • -
    -

    Yoshax updated:

    -
      -
    • Certain items such as pills and suchlike will once again be usable on someone who is on a surgical table/table.
    • -
    - -

    25 July 2016

    -

    PsiOmegaDelta updated:

    -
      -
    • Robot upgrades produced in robotics to be applied to Cyborgs can now once again actually be applied.
    • -
    -

    Rymdmannen updated:

    -
      -
    • Added department specific rubber stamps for cargo and warden.
    • -
    • Replaced 'small rubber stamp' with corresponding new ones in cargo area and warden's office.
    • -
    • Renamed ''quartermaster's stamp'' to ''quartermaster's rubber stamp''.
    • -
    -

    Superbee29 updated:

    -
      -
    • Ghosts can now see the power in a cable when examining it.
    • -
    -

    Yoshax updated:

    -
      -
    • Flashes no longer provide an instant stun. Flashes now confuse and blind the affected person for five seconds and in addition makes their eyes blurry for ten seconds.
    • -
    • The empty box supply crate has been replaced with a shipping crate. Which contains what you need to send stuff places!
    • -
    • The chef now gets a destination tagger and packaging paper to send people food.
    • -
    • Drinking glasses now have a material cost in the autolathe.
    • -
    • When emagged security bots such as the Securitron and ED-209 will now move and pursue faster.
    • -
    • Securty bots such as mentioned above will now be properly emagged.
    • -
    • The cost of items in the antag uplink have been tweaked. Some are cheaper, some are more expensive. In addition, you can now buy singular grenades isntead of boxes. Buying a box has a discount over the singular.
    • -
    • Repairing burn damage on FBPs will now once again properly work.
    • -
    • Undislocating limbs will now once again properly work.
    • -
    • The phoron assembly crate in cargo has been renamed to a Phoron research crate and now contains more supplies including tank transfer valves.
    • -
    • The cooldown between discount offers in the antag uplink is now 10 minutes versus the previous 15 minutes.
    • -
    • The ordering of the items in the autolathe will now be somewhat diferrent due to a code overhaul. It is now in alphabetic order.
    • -
    • Security robots such as the Securitron or ED-209 are now more hardy and can take more damage before dying.
    • -
    • The silenced pistol no longer has any recoil and can be fired faster with less delay in between shots.
    • -
    - -

    22 July 2016

    -

    Anewbe updated:

    -
      -
    • Removes assault carbine from uplink.
    • -
    • Speeds up the toxin reagents
    • -
    -

    EmperorJon updated:

    -
      -
    • Having between 20 and 100 nutrition and over 45 toxin damage will no longer cause you to gag ad-infinitum and die. It now respects vomit time restraints.
    • -
    • Gagging now occurs only when the mob has no nutrition at all. It no longer causes three toxin damage, only weakens as before.
    • -
    • Vomiting and/or gagging from toxins now occurs regardless of nutrition, not only 20+.
    • -
    -

    Neerti updated:

    -
      -
    • Adds ability for ghosts to send and receive text messages via communicator.
    • -
    -

    Yoshax updated:

    -
      -
    • Drop pod contents have been adjusted. In general, you will get something more useful and the less useful contents have been made more interesting. There is a total of 12 drop pod content lists and 7/12 are useful, 4/12 are useless, 1/12 is potentially useful.
    • -
    • Stun Revolvers will no longer be able to spawn from random energy weapon spawns. In addition, some of the other random item spawns have new items and adjusted probablities.
    • -
    • Tajaran are no longer negatively affected by coffee.
    • -
    • Bucklecuffing as it has been known for the longest time is no longer a thing. When you resist when cuffed and buckled to something, you will now resist out of the handcuffs first, allowing you to simply unbuckle yourself once done.
    • -
    - -

    13 July 2016

    -

    Anewbe updated:

    -
      -
    • Removed detonating borgs via Robotics Console
    • -
    -

    Yoshax updated:

    -
      -
    • Emagging a cargo supply console will now properly hack it and will also remove the access requirement.
    • -
    • Languages selected during character setup will once again be properly added to mobs.
    • -
    -

    xDarkSapphire updated:

    -
      -
    • Adds a new hairstyle: Spiky Ponytail.
    • -
    - -

    10 July 2016

    -

    Anewbe updated:

    -
      -
    • Changelings will no longer remain stunned or suchlike when attempting to regenerate.
    • -
    -

    Cirra/ updated:

    -
      -
    • Added a chemistry gripper for Crisis borgs.
    • -
    -

    GinjaNinja32 updated:

    -
      -
    • Adds 3x & 4x upscaling options for players with very large monitors.
    • -
    -

    HarpyEagle updated:

    -
      -
    • Runtime can now become friends with anyone, regardless of their initial job.
    • -
    -

    Neerti updated:

    -
      -
    • Mining can now be done with explosives. The effectiveness depends on the spot chosen to explode, so using an ore scanner is advised.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • MedHUD overlays now have more stages, both for 'normal' and critical stages of injury, for improved quick-diagnosis.
    • -
    -

    Redstryker updated:

    -
      -
    • Communicators will no longer show up on camera networks by default.
    • -
    • Adds a selection of flannels to the loadout. These can have their sleeves rolled up, their buttons buttoned up, be tucked in and any combination of those.
    • -
    -

    Techhead updated:

    -
      -
    • New Random Event: Solar Storms. Similar to a radiation storm, but anywhere inside the station is safe. Also boosts solar panel output significantly for the duration.
    • -
    -

    Yoshax updated:

    -
      -
    • Ports an Advanced Who verb that allows normal players to see what players are in game, and which aren't.
    • -
    -

    Zuhayr updated:

    -
      -
    • Modifies the health HUD element to display limb damage individually. It will reflect your species, prosthetics, loss of limbs, as well as being on fire.
    • -
    - -

    08 July 2016

    -

    EmperorJon updated:

    -
      -
    • Adds admin functionality to call a trader ship event with the Beruang in the same manner as ERT dispatches.
    • -
    • Adds a Trader 'antagonist' as they use the antagonist framework. Not considered an actual antagonist, like the ERT.
    • -
    • Alters Beruang base to provide some clothing for Traders plus a locked-down area for admins to spawn cargo.
    • -
    • Alters Beruang access to a new Trader-ID-only access requirement.
    • -
    -

    Neerti updated:

    -
      -
    • Restructred the AI core massively, and the upload slightly.
    • -
    • Adds a new material type, called Durasteel, which is made from plasteel and diamonds. It's incredibly tough and also reflective. The inner walls of the AI core contain this new material to protect it.
    • -
    • New turret subtype just for the AI core, that is more durable, has a chance to shrug off EMP, and fires xray lasers. They even turn green.
    • -
    • Turrets now wait to go back down in their covers upon losing sight of a target.
    • -
    • Emitters now have health, and can be damaged by projectiles. They will explode on death.
    • -
    • Critical APCs (the type found in the engine and AI core) are now more resistant to EMP. Equipment and Enviroment stays on during an EMP, and less of the cell is drained.
    • -
    -

    Sin4 updated:

    -
      -
    • Added benches.
    • -
    • Added floor lamps.
    • -
    • Added water-cooler cup dispenser.
    • -
    -

    Yoshax updated:

    -
      -
    • Adds recipes for four new non-alcoholic cocktails. Shirley Temples, Roy Rogers, Arnold Palmers and Collins Mixes.
    • -
    • Adds five new Tajaran hairstyles ported from Aurora.
    • -
    - -

    01 July 2016

    -

    Aztectornado updated:

    -
      -
    • Clicking a stack of sheets (Metal, phoron...) in your other hand now asks how many you want to split off the stack, courtesy of Baycode
    • -
    -

    Datraen updated:

    -
      -
    • Antagonistic factions can now be set and viewed on the uplink. Visibilities can be set for these as well, to help identify sympathizers/potential aids, or to hide the information from those outside of your faction.
    • -
    -

    Yosh updated:

    -
      -
    • Increases max records and book length to ridiculous levels.
    • -
    -

    Yoshax updated:

    -
      -
    • The PTR Sniper is now more accurate when scoped, but less accurate when unscoped. In addition it now has more recoil.
    • -
    • The Laser Cannon no longer holds multiple shots. It holds charge for one shot at a time. This is because the beams it fires now do 90 damage with 100 armor penetration. Furthermore, it is now considerably more accurate. Lastly, to counteract it only holding one shot at a time, it now autorecharges, which takes 60 seconds.
    • -
    -

    Zuhayr updated:

    -
      -
    • Ports/adapted several kitchen machines from Apollo Station.
    • -
    - -

    27 June 2016

    -

    Sin4 updated:

    -
      -
    • Added NanoUI for Advanced Body Scanners, Arcade, Atmospherics Control Computer, Chemmaster, Cloning Console, Fax Machines, Guestpass Console, Holodeck Computer, Laptop Vendors, Operating Computer, and Photocopiers.
    • -
    • Fixes chemmaster not putting pills in pill bottles.
    • -
    - -

    21 June 2016

    -

    HarpyEagle updated:

    -
      -
    • Fixes disarm-attack dislocation chances being so low that you were very likely to break the targeted limb before it would dislocate.
    • -
    • It is now possible to disarm-attack with stunbatons like with other melee weapons. Note that this means that using a stunbaton on disarm intent will hurt people.
    • -
    • Trying to move while being grabbed will now automatically resist.
    • -
    • Small mobs are no longer able to pin larger mobs.
    • -
    • Resisting a smaller mob's grab is more likely to be successful.
    • -
    • Fixed being able to climb onto a larger mob while restrained, weakened, unconscious, or dead.
    • -
    -

    JerTheAce updated:

    -
      -
    • CentCom Fax, Admin Prayer, and CentCom emergency messages now prompt admins with a pleasing sound effect.
    • -
    • Fax machines now sound like fax machines and not polaroid cameras.
    • -
    - -

    15 June 2016

    -

    Yoshax updated:

    -
      -
    • The categories for items in the cargo ordering console have been reworked. Items shoulw now be in more sensible categories. If you cannot find something, try the sensible category.
    • -
    - -

    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:

    -
      -
    • There is now more soap on the map. The chef also gets a dropper.
    • -
    • Changes in gravity now stun for much longer.
    • -
    • Bullets now have a better chance of penetrating objects such as filing cabinets, consoles, fax machines, etc. This applies to all bullets.
    • -
    • The research outpost toxins department now has reinforced phoron windows.
    • -
    • Spears now do their correct damage instead of doing around half.
    • -
    - -

    07 June 2016

    -

    Datraen updated:

    -
      -
    • Adds a trait tool for Xenobio2. It was supposed to be in the initial implementation, but fell through the cracks, sorry!
    • -
    • Fixed the xenobio smartfridge not displaying it's starting core amount.
    • -
    • Fixed an inverted check with slimes.
    • -
    -

    EmperorJon updated:

    -
      -
    • Increased loadout points from 10 back to 15. We've added so many things like lunchboxes and communicators that everyone just takes by default, so a few more points will be nice.
    • -
    -

    JerTheAce updated:

    -
      -
    • Adds a variety of new guns. Some of these guns and and their ammunition are purchasable through antag uplink, cargo, or can be spawned during Renegade or Heist modes.
    • -
    • Adds ammunition clips for reloading magazines and some guns (such as bolt-actions).
    • -
    • All magazines and ammunitions can now be produced with the autolathe.
    • -
    • New bullpup SMG is available in armory area on CentCom level.
    • -
    • Revolvers now use 6 shots. Finally.
    • -
    • Most guns that didn't use magazines before for some reason (such as the Uzi) now use magazines.
    • -
    • All casings now update icons if they have been spent.
    • -
    • Corrects Pulse Rifle charge cost consistency.
    • -
    • Corrects and improves a number of icons for guns, including a couple of energy guns, and adds fallback icons so they do not turn invisible when held or strapped to your back.
    • -
    • Made the icons for some guns look differently depending on what magazine is loaded into them.
    • -
    • Made antag uplink menu for guns and ammo more informative.
    • -
    • Machinegun magazines no longer fit in pockets.
    • -
    • Made names and descriptions for all projectile guns and ammo consistent while removing grammar and spelling errors.
    • -
    • Autolathe no longer exploitable for ammo by repeatedly recycling empty magazines.
    • -
    • Guns now check a list of compatible magazines.
    • -
    • Ranged mobs no longer drop usable .357 casings.
    • -
    • Added a variety of new gun sound effects, and swapped out the old default gun sound.
    • -
    - -

    30 May 2016

    -

    EmperorJon updated:

    -
      -
    • Ports Baystation's setup screen changes, thanks to PsiOmegaDelta.
    • -
    • Includes character preview with toggleable equipment, visible loadout items, ghost character sprites, and custom colour underwear. Your underwear will have reset, so you'll need to set it back.
    • -
    - -

    29 May 2016

    -

    Datraen updated:

    -
      -
    • Injecting people with mutationtoxin no longer mutates them into slime people.
    • -
    • Removes amutationtoxin.
    • -
    • Removes slime core recipies.
    • -
    • Adds slime monkey cubes, which are created by injecting monkey cubes with mutationtoxin and activating like a posibrain.
    • -
    • Maps for Xenobio2 research labs/stations.
    • -
    -

    Zuhayr updated:

    -
      -
    • Backend change: allowed accessories to be placed on any clothing item with the appropriate variables set.
    • -
    - -

    27 May 2016

    -

    Yoshax updated:

    -
      -
    • Added a new preference that allows you to disable fake nanoui styling on relevant windows. However, if it is your first time loading with this new preference you will need to save your character slot, as there is a problem with satanisiation and it believes the preference is set to disable the nanoui styling.
    • -
    - -

    25 May 2016

    -

    Serithi updated:

    -
      -
    • Adds in lavender.
    • -
    -

    Yoshax updated:

    -
      -
    • Cables of any color can now be merged.
    • -
    • More and different colors are now available to be used by cable.
    • -
    • Adjusting your suit sensors now displays a message to other people in range that you did so. In addition, seeing someone else adjust someone's suit sensors no longer informs you to what level.
    • -
    • Added towels to the loadout. These can be worn on the head, belt or outwear slots. You can also whip people with them for a special message and sound! In addition, using them in-hand will produce an emote where your towel yourself off.
    • -
    - -

    17 May 2016

    -

    SilveryFerret updated:

    -
      -
    • Changes the Death Alarms from announcing over Common channel, to announcing only over Medical and Security channels.
    • -
    -

    Yoshax updated:

    -
      -
    • Added shotglasses. These can contain 10 units. They have their whole contents swalloed in one gulp. They can be produced in the autolathe or found in the booze vending machine in the bar.
    • -
    - -

    16 May 2016

    -

    Yoshax updated:

    -
      -
    • Uplinks now have a discounted item every 15 minutes. This is per uplink, and random, the discount is also random, but weighted as such that a low discount such as 10% off, or 20% off has a higher chance of happening than a high discount such as 90% of. An item will never cost less than 1.
    • -
    • Mercenaries now spawn with their own, personal uplinks.
    • -
    • Faked announcements are now once again purchasable from the uplink, and actually work.
    • -
    • Adds several new items to the uplink including tactical knives, metal foam grenades, ambrosia seeds and much more.
    • -
    - -

    13 May 2016

    -

    HarpyEagle updated:

    -
      -
    • Shotgun flare illumination now lasts longer, around 3-4 minutes.
    • -
    • Fixed attack animation playing when using flashes even if the flash was not actually used due to being broken or recharging.
    • -
    • Fixed lightswitches layering over darkness. Now only the light layers above shadow. Lightswitch illumination is now much more subtle.
    • -
    -

    Yoshax updated:

    -
      -
    • Processing strata floor can now be pried up with a crowbar.
    • -
    • Blue carpet can now also be removed with a crowbar, and has had it's ability to burn and have corners restored.
    • -
    • Changelings will now store and apply the flavor text of their victims when they absorb and transform into them.
    • -
    • Gives Diona a starting funds wage the same as Tajaran and Unathi.
    • -
    • Brain damage no longer prevent implant removal surgery.
    • -
    - -

    12 May 2016

    -

    Yoshax updated:

    -
      -
    • Doubles the maximum length of records and names to 6144 & 52, respectively. Also increases book length to 12288. (All numbers are in characters.)
    • -
    • Makes various services in the antag uplink purchasable once again. This includes the fake crew arrival.
    • -
    • Neckgrabs will no longer force people to the ground. In addition, weakened people can no longer resist.
    • -
    • All vending machines now have a small chance of vending an additional item.
    • -
    • Smoke from smoke bombs now lasts approximately 3 times as long and spawns some more smoke to make a heavier cloud.
    • -
    • Smoke from smoke bombs now properly does a small amount of oxygen loss damage. This damage is per cloud of smoke.
    • -
    - -

    05 May 2016

    -

    Datraen updated:

    -
      -
    • Added three mixed modes, 'Mercenaries & Wizard', 'Mercenaries & Renegades', and 'Traitors & Renegades'.
    • -
    -

    Hubblenaut updated:

    -
      -
    • Hydroponics vendor and biogenerator offer full bottles of fertilizer. Prices and amount available adjusted to accomodate.
    • -
    -

    Kelenius updated:

    -
      -
    • Move delay after clicking has been removed.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • Can now prefill the loadout flask and vacuum-flask with a relevant liquid of your choice.
    • -
    -

    Yoshax updated:

    -
      -
    • Splits gender into biological gender and gender identity. Biological gender modifies the sprite (for between male and female) and gender identity determines what pronouns show up when examined or suchlike. Both are displayed in medical records and such.
    • -
    • Smoke grenades can now have their smoke color set by using a multitool on them.
    • -
    - -

    17 April 2016

    -

    Datraen updated:

    -
      -
    • Manually ports /tg/station's dark click code https://github.com/tgstation/-tg-station/pull/10272 by Razharas.
    • -
    • Teshari smocks now spawn as smocks, and not aqua jumpsuits.
    • -
    • Checks to see if new a two-handed weapon can be wielded when dropped.
    • -
    -

    EmperorJon updated:

    -
      -
    • Robotics Console now correctly shows the operational/lockdown state and button based off if it thinks the synthetic is locked down or not.
    • -
    • Autotraitor synths now behave the same as Traitor synths - they are not locked down.
    • -
    -

    Kelenius updated:

    -
      -
    • Solars now start wired.
    • -
    -

    Neerti updated:

    -
      -
    • Ports Bay's volume-based inventory system. It works off by weight classes instead of just slots, allowing you to hold more light items than you could previously.
    • -
    • Bulky items can now go in your backpack, however it will require twice the space of a normal sized item.
    • -
    • Spacesuits, RIGs, and sniper rifles made heavier.
    • -
    - -

    07 April 2016

    -

    Datraen updated:

    -
      -
    • If a slice of an item is spawned independently, it will get generic settings.
    • -
    -

    Kelenius updated:

    -
      -
    • Changelings will now change appearance and species together when transforming.
    • -
    • Changelings no longer have gender honorifics in lingchat.
    • -
    • Absorbing the DNA from any source will allow you to use its name, species, and languages.
    • -
    • DNA extract sting won't produce a strange message if there's no target.
    • -
    • Cultists no longer need to research words.
    • -
    - -

    04 April 2016

    -

    Kelenius updated:

    -
      -
    • Monkeys can ventcrawl once again.
    • -
    -

    Yoshax updated:

    -
      -
    • Tasks that take time to perform now have a progress bar.
    • -
    • Visibility of progress bars can be toggled in preferences. Default is on.
    • -
    - -

    29 March 2016

    -

    Datraen updated:

    -
      -
    • Added Three New Mixed Gamemodes: Lizard, Changeling + Wizard; Intrigue, Traitors + Ninja; Visitors, Ninja + Wizard.
    • -
    • Created a variable for latespawning antagonist templates, for customization of autospawning antagonists in mixed game modes.
    • -
    • Fixes the buckled check limiting whether or not someone can interact while sitting.
    • -
    • Resisting while buckled and cuffed will process the hand and leg cuffs before unbuckling.
    • -
    • Removed JSON encoding of the PDA Manifest list.
    • -
    • Microwaves no longer try cooking their components while cooking.
    • -
    • Adds a check to prison breaks that makes sure the APC is on before continuing.
    • -
    • Artifacts will no longer spawn on floor turfs.
    • -
    • Stops traitorborgs from being able to hack other borgs.
    • -
    • Stops traitorAIs from being able to hack unlinked borgs.
    • -
    -

    Yoshax updated:

    -
      -
    • Player preferences has been overhauled. Please update your preferences, found at "Character Setup" > "Global" > "Preferences", as they have been reset.
    • -
    - -

    16 March 2016

    -

    Datraen updated:

    -
      -
    • Harmbaton no longer causes halloss while inactive.
    • -
    -

    Kelenius updated:

    -
      -
    • Potassium and nitroglycerin explosive grenades now work.
    • -
    - -

    11 March 2016

    -

    Datraen updated:

    -
      -
    • Adds ckeys, player panel to the antagonists panel.
    • -
    • Fragmentation grenades are no longer launchable.
    • -
    • Adds amount of telecrystals to the set telecrystal verb.
    • -
    • Added a verb to just add to telecrystals.
    • -
    -

    Kelenius updated:

    -
      -
    • Drying rack now has a new sprite.
    • -
    • Beekeeping materials and a honey extractor have been added to hydroponics.
    • -
    • There is now a ten-second delay for carding the AI.
    • -
    -

    Zuhayr updated:

    -
      -
    • Small species now take smaller bites/gulps from food and drink.
    • -
    • Small species are now effected by alchol and toxins twice as much.
    • -
    • blood_volume is now a species-level var and Teshari have lowered blood volume.
    • -
    • Hunger is a species var and Teshari get hungry faster.
    • -
    • Small mobs have a reduced climb delay.
    • -
    • Teshari gain more nutrition from meat.
    • -
    - -

    11 February 2016

    -

    Datraen updated:

    -
      -
    • Moderators can now see and use AOOC.
    • -
    • Other synthetics given EAL.
    • -
    • Trays now drop items when placed on table, dropped.
    • -
    • Objects can now be yanked out of synthetics.
    • -
    • Respawn time moved down from 30 minutes to 15 minutes.
    • -
    • Telecrystal item added for trading telecrystals between traitors and mercenaries.
    • -
    • Telecrystal item now has tech values.
    • -
    -

    EmperorJon updated:

    -
      -
    • Traitor synths can no longer be locked down from the robotics console. Attempting to lock them down (or release the lockdown) notifies the synth of the attempt and updates the console's UI as normal.
    • -
    -

    Neerti updated:

    -
      -
    • Suit cooling units can now be attached to voidsuits. Note that coolers and air tanks are mutually exclusive.
    • -
    • EMP no longer hits twice on humans.
    • -
    • EMP drains powercells using the cell's current charge, and not the cell's maximum potential charge, to ensure two blasts do not completely disable a synthetic.
    • -
    • EMP hitting a prosthetic limb or organ will now do less damage.
    • -
    • EMP hitting a cyborg will no longer outright stun them. Instead, they gain the 'confused' status for a few moments, making movement difficult. In addition, their HUD gets staticy, and their modules are forced to be retracted.
    • -
    • Stasis bags will protect the occupant from the outside enviroment's atmosphere.
    • -
    • Stasis bags can be hit with a health analyzer to analyze the occupant.
    • -
    -

    Zuhayr updated:

    -
      -
    • Drones can now pull a variety of things (such as scrubbers). This came with a pulling refactor so please report any strangeness with pulling in general.
    • -
    • Drones (and any mob that can be picked up) can be bashed against airlocks and such to use their internal access, so long as the person using them does not have an ID card equipped.
    • -
    • Added foam weapons to cargo for LARP shenanigans.
    • -
    • Added the ability to equip grenades to the mask slot, and to prime them by clicking someone with harm intent targeting the mouth.
    • -
    • Removed the species restrictions on transplanted internal organs. Have fun.
    • -
    • Added 'full body' prosthetic options to character generation.
    • -
    • Removed IPC. No tears were shed.
    • -
    • RE: borgs, Renamed 'robot' type to 'drone' and 'android' type to 'robot' for clarity with new 'android' human mobs.
    • -
    • Rejuvenate will now reapply robolimb/autopsy data.
    • -
    • Lots of backend work relating to the above. If you're a coder go look at the PR or ask Zuhayr for details.
    • -
    • Removed brute and burn resist from robolimbs, removed sever vulnerability from robolimbs.
    • -
    • Added a config option for visible human death messages.
    • -
    • pAIs and small mobs can now bump open doors.
    • -
    • Added functionality for two-handed guns; these guns will give an accuracy penalty if fired without an empty offhand.
    • -
    • Unified two-handed melee weapons with the above; while the offhand is empty, the weapon will count as wielded.
    • -
    - -

    16 December 2015

    -

    HarpyEagle updated:

    -
      -
    • Fixed a couple of bugs causing phoron gas fires to burn cooler and slower than they were supposed to.
    • -
    • Merc bombs are now appropriately explosive again. Same goes for bombs made by toxins.
    • -
    -

    Hubblenaut updated:

    -
      -
    • Airlock backup power test light properly offline when backup power down.
    • -
    • Empty flavor texts no longer draw an empty line on examination.
    • -
    • Material stacks now properly merge upon creation.
    • -
    • Messages for adding to existing stack appear again.
    • -
    -

    TheWelp updated:

    -
      -
    • Removed higher Secret player requirements.
    • -
    - -

    06 December 2015

    -

    Datraen updated:

    -
      -
    • Changes standard and specific plant traits, more diverse plants.
    • -
    -

    HarpyEagle updated:

    -
      -
    • Fabricated power cells start uncharged.
    • -
    -

    Hubblenaut updated:

    -
      -
    • Welding a broken camera will use the correct icon.
    • -
    • Camera assemblies remember their tag and network from previous usage.
    • -
    • Light replacers can be refilled by clicking on a storage item.
    • -
    • Light replacers now hold up to 32 light bulbs.
    • -
    • Light replacers can be obtained through janitorial supply crates.
    • -
    • A sheet of glass fills the light replacer by 16 bulbs.
    • -
    • Material stacks now properly merge upon creation.
    • -
    • Messages for adding to existing stack appear again.
    • -
    • Mobs on help intent will not push others that aren't.
    • -
    • Adds tape for atmospherics.
    • -
    • Tape graphics and algorithm changes. Looks a lot more appealing now.
    • -
    • Starting and ending tape on the same turf will connect it to all surrounding walls/windows.
    • -
    • Lifting a part of the tape will lift an entire tape section.
    • -
    • Mobs on help intent do stop for tape.
    • -
    • Crumpled tape does not affect tape breaking behavior anymore.
    • -
    • Fixes vending machines not adding stored goods when maintenance panel is closed.
    • -
    • Doors do only buzz once on failed closing attempt.
    • -
    -

    MagmaRam updated:

    -
      -
    • Fixed cloners killing fresh clones instantly with brain damage.
    • -
    • Fixed a bug where disposals pipes would show up above floors despite being installed under them.
    • -
    -

    Neerti updated:

    -
      -
    • Adds NanoUI for communicators, the ability for communicators to call other communicators on the station, the ability for station-bound people to call ghosts, and for ghosts to toggle their visibility to communicators on or off in character preferences (defaults to off). Communicators can now also support more than one call at the same time, for both ghosts and normal communicators.
    • -
    • Adds new machine to telecomms, the Exonet node. It is very basic in terms of functionality, but certain services can be selectively disabled from it, such as newscaster updates, communicators, or external PDA messages. Adds methods for building and deconstructing Exonet nodes.
    • -
    • Adds framework for a fake-networking system called EPv2 that communicators will now use, and perhaps other machines will in the future, for good or for evil.
    • -
    • Changeling Spacearmor reduced in protective ability.
    • -
    • Cryogenic String and Delayed Toxic Sting now have a three minute cooldown upon stinging someone.
    • -
    • Cryotoxin, the chemical used in Cryogenic String, is 25% less potent now.
    • -
    • The rune to summon Narsie has been changed. Narsie is no longer summoned, but Hell still comes.
    • -
    • Spooky mobs spawned from spooky portals as a result of Hell coming have had their speed, health, and damage reduced.
    • -
    • Manifested humans no longer count for summoning Hell.
    • -
    • Changes how armor calculations work. All the armor values remain the same, but the 'two dice rolls' system has been replaced with a mix of reliable damage reduction and a bit of RNG to keep things interesting. The intention is to make weaker armor more relevent and stronger armor less overpowered.
    • -
    • When you are hit, it uses the armor protection as a base amount to protect you from, then it does a roll between +25% and -25% of that base protection, and adds it to the base protection. The result of that is how much damage is reduced from the attack. For example, if you are hit by an energy sword in the chest while wearing armor that has 50 melee protection, the base protection is 50, then RNG can make the final protection be between 37.5 and 62.5 percent. The damage you'd take could range from 11.25 to 18.75, instead of 0, 15, or 30. Remember that some weapons can penetrate armor.
    • -
    • Added personal communicators, a device that enables someone to talk to someone else at vast distances. You can talk to people who are far from the station, so long as telecommunications remains operational.
    • -
    • To use, become a ghost, then use the appropiate verb and pick a communicator to call. Then you wait until someone picks up. Once that occurs, you will be placed inside the communicator. The voice you use is your currently loaded character. Languages are supported as well.
    • -
    • Round-end is now three minutes instead of one, and counts down, to allow for some more post-round roleplay. If the station blows up for whatever reason, the old one minute restart is retained.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • Manual radio frequency changes can no longer go outside the standard frequency span.
    • -
    • Users with sufficient access can instead select pre-defined channels outside this span, such as department channels, when using intercoms.
    • -
    -

    Zuhayr updated:

    -
      -
    • Aiming has been rewritten, keep an eye out for weird behavior.
    • -
    • Removed the detective scanner and associated machinery.
    • -
    • Added a microscope, machine forensic scanner, etc. from Aurora forensics.
    • -
    - -

    22 November 2015

    -

    neersighted updated:

    -
      -
    • Laptop Vendors now accept ID Containers (PDA, Wallet, etc).
    • -
    • Personal Lockers now accept ID Containers (PDA, Wallet, etc).
    • -
    - -

    27 October 2015

    -

    HarpyEagle updated:

    -
      -
    • When affected by pepperspray, eye protection now prevents blindness and face protection now prevents stun, instead of face protection doing both.
    • -
    - -

    26 September 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • Meteor events now select a map edge to arrive from, with a probability for each individual wave to come from either neighboring edge. Meteors will never arrive from opposite the starting edge.
    • -
    - -

    11 September 2015

    -

    HarpyEagle updated:

    -
      -
    • Made flares brighter.
    • -
    • Coffee is now poisonous to tajaran, much like how animal protein is poisonous to skrell.
    • -
    - -

    08 September 2015

    -

    Soadreqm updated:

    -
      -
    • Increased changeling starting genetic points to 25.
    • -
    -

    Zuhayr updated:

    -
      -
    • Auto-traitor should now be fixed.
    • -
    • The Secret game mode should now be fixed.
    • -
    - -

    07 September 2015

    -

    GinjaNinja32 updated:

    -
      -
    • Added an auto-hiss system for those who would prefer the game do their sss or rrr for them. Activate via Toggle Auto-Hiss in the OOC tab.
    • -
    • Auto-hiss system in 'basic' mode will extend 's' for Unathi and 'r' for Tajara. 'Full' mode adds 'x' to 'ks' for Unathi, and is identical to 'basic' mode for Tajara.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • Changed the language prefix keys to the following: , # -
    • -
    • Language prefix keys can be changed in the Character Setup. Changes are currently not global, but per character.
    • -
    - -

    05 September 2015

    -

    Chinsky updated:

    -
      -
    • Made capguns into proper guns code-wise. It means you can now take people hostage with them, stick in your mouth, and all other things you can do with real guns but probably shouldn't.
    • -
    • Russian roulette! Fun for whole sec team! Unload some shells from revolver, spin the cylinder(verb) and you're good to go!
    • -
    -

    HarpyEagle updated:

    -
      -
    • Shields no longer block attacks from directly behind the player.
    • -
    • Riot shields no longer stop bullets or beams (except for beanbags and rubber bullets), however they are now more effective at blocking melee attacks and thrown objects.
    • -
    • Energy shields block melee attacks as effectively as riot shields do. Their ability to block projectiles is largely unchanged.
    • -
    • Melee weapons now only block melee attacks.
    • -
    • Two handed weapons have a small chance of blocking melee attacks when wielded in two hands.
    • -
    • Sound and visual effects when blocking attacks with an energy shield or energy sword.
    • -
    • Fixed dead or unconscious people blocking stuff with shields.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • Cargo now sorts under its own department on station manifests.
    • -
    • Manual radio frequency changes can no longer go outside the standard frequency span.
    • -
    • Users with sufficient access can instead select pre-defined channels outside this span, such as department channels, when using intercoms.
    • -
    - -

    02 September 2015

    -

    Atlantis updated:

    -
      -
    • Converted phoron glass to borosilicate glass, adjusted heat resistances accordingly, got rid of copypaste fire code. Fire resistance is now handled by variables so completely fireproof windows are possible with varedit.
    • -
    • Windows take fire damage when heat exceeds 100C regular windows, 750C reinforced regular, 2000C borosilicate and 4000C reinforced borosilicate. For comparsions, reinforced walls begin taking damage around 6000.
    • -
    -

    Hubblenaut updated:

    -
      -
    • Adds glass bottles for Cola, Space Up and Space Mountain Wind to Booze-O-Mat.
    • -
    • Some bar drink recipes have been amended to easily sum to 30 units for drinking glasses.
    • -
    • Vendors now have a product receptor for accepting goods. Opening the maintenance painel is no longer required.
    • -
    • Wrenching a vending machine is no longer a silent action.
    • -
    • Stepup: Item placement on 4x4 grids seemed to work great. Now we'll try 8x8.
    • -
    -

    Kelenius updated:

    -
      -
    • Mechfab can now be upgraded using RPED, and now uses NanoUI.
    • -
    -

    Matthew951 updated:

    -
      -
    • Added Vincent Volaju's hair.
    • -
    • Added Vincent Volaju's beard.
    • -
    -

    Zuhayr updated:

    -
      -
    • Added the ability for AIs in hardsuits to control suit modules and movement with a dead or unconcious wearer.
    • -
    • Added ballistic supply drop pods.
    • -
    • Added diona gestalt random map template.
    • -
    • Swapped the singularity beacon out for a hacked supply beacon.
    • -
    - -

    24 August 2015

    -

    HarpyEagle updated:

    -
      -
    • Girders are now reinforced by using a screwdriver on the girder before applying the material sheets. Use a screwdriver again instead to cancel reinforcing.
    • -
    • Mechanical traps no longer spawn in the janitor's locker.
    • -
    • Mechanical traps can now be printed with a hacked autolathe.
    • -
    • Adds armour penetration mechanic for projectiles and melee weapons.
    • -
    • Laser carbines, LWAP, and shotgun now have a small amount of armour penetration, ballistic rifles (not SMGs) have moderate amounts, laser cannon has high armour penetration, and the PTR mostly ignores body armour.
    • -
    • Shotgun slugs and Z8/STS damage has been lowered slightly to accomodate for their higher penetration. In general ballistics deal less damage but have higher penetration than comparable laser weapons. Notable exception: X-Ray lasers have had their damage lowered slightly but gain very high armour penetration.
    • -
    • Energy swords now have very high armour penetration. Ninja blades do less damage but ignore armour completely.
    • -
    -

    Kelenius updated:

    -
      -
    • Click cooldowns have been removed on pretty much everything that isn't an attack.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • Adds the option to set the icon size to 48x48, found under the Icons menu, along with 32x32, 64x64, and stretch to fit.
    • -
    • Active AI cores now provides coverage on the AI camera network. Does not utilize actual cameras, thus will not show up on security consoles.
    • -
    • The Dinnerware vending machine now offer both utensil knives and spoons without first having to hack them.
    • -
    • Synths now have id cards with access levels which is checked when operating most station equipment.
    • -
    • Station synthetics still have full station access but can no longer interact with syndicate equipment, and syndicate borgs now start with only syndicate access.
    • -
    • Syndicate borgs can copy the access from other cards by utilizing their own id card module, similar to how syndicate ids work.
    • -
    • When examined up close id cards now offer a more detailed view.
    • -
    • Agent ids now offer much greater customization, allowing changing name, age, DNA, toggling of AI tracking termination (using the electronic warfware option), and more.
    • -
    • As AI tracking can now be enabled/disabled at will AI players should not feel the need to hesitate before informing relevant crew members when camera tracking is explicitly terminated.
    • -
    • Uplink menu now more organized and with new categories.
    • -
    • Now possible to cause falsified ion storm announcements.
    • -
    • Now possible to cause falsified radiation storm announcements, with expected maintenance access changes.
    • -
    • Now possible for mercenaries to create falsified Central Command Update messages.
    • -
    • Now possible for mercenaries to create falsified crew arrival messages and records.
    • -
    -

    RavingManiac updated:

    -
      -
    • Sound environments tweaked to feel more claustrophobic
    • -
    • Being drugged, hallucinating, dizzy, or in low-pressure or vacuum will alter sounds you hear
    • -
    • Sound environment in holodeck will change to reflect the loaded program
    • -
    -

    Vivalas updated:

    -
      -
    • A new uplink item has been added! A briefcase full 'o thalla can now be bought by traitors for bribes and such!
    • -
    -

    Zuhayr updated:

    -
      -
    • Pariahs are now a subspecies of Vox with less atmos/cold protection, a useless brain, and lower health.
    • -
    • Leap now only gives a passive grab and has a shorter range. It also stuns Pariahs longer than it does their target.
    • -
    • Rewrote tiling. White floors, dark floors and freezer floors now have associated tiles.
    • -
    • Changed how decals work in the mapper. floor_decal is now used instead of an icon in floors.dmi.
    • -
    • The floor painter has been rewritten to use decals. Click it in-hand to set direction and decal.
    • -
    • Floor lights are now built from the autholathe, secured with a screwdriver, activated by clicking them with an empty hand, and repaired with a welding torch.
    • -
    • Unathi now have minor slowdown and 20% brute resist.
    • -
    • Tajarans now have lower bonus speed and a flat 15% malus to brute and burn.
    • -
    • Vox can now eat monkeys and small animals.
    • -
    • Tajarans can now eat small animals.
    • -
    • Unarmed attack damage has been lowered across the board.
    • -
    - -

    17 August 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • Station time and duration now available in the Status tab.
    • -
    - -

    16 August 2015

    -

    HarpyEagle updated:

    -
      -
    • The unathi breacher is now only wearable by unathi.
    • -
    - -

    15 August 2015

    -

    Kelenius updated:

    -
      -
    • Bees have been updated and are totally worth checking out (beekeeping crate at cargo).
    • -
    • Sleeper consoles removed. All interaction is now done by clicking on the sleeper itself.
    • -
    • To put people into sleeper, you now have to click-drag people to it. Grabs no longer work. To exit the sleeper, move.
    • -
    • Sleeper now uses a NanoUI.
    • -
    - -

    14 August 2015

    -

    HarpyEagle updated:

    -
      -
    • Renames many guns to follow a consistent naming style. Updated and changed gun description text to be more lore-friendly.
    • -
    • Throwing a booze bottle at something nearby while on harm intent causes it to smash, splashing it's contents over whatever it hits.
    • -
    • Rags can now be wrung out over a container or the floor, emptying it's contents into the container or splashing them on the floor.
    • -
    • Rags can now be soaked using the large water and fuel tanks instead of just beakers.
    • -
    • Rags soaked in welding fuel can be lit on fire.
    • -
    • Rags can now be stuffed into booze bottles. When the bottle smashes, the stuffed rag is dropped onto the ground.
    • -
    • Fixed eggs having a ridiculously large chemical volume.
    • -
    • T-Ray scanner effects are now only visible to the person holding the scanner.
    • -
    • Traitors can now purchase the C-20r and the STS-35 for telecrystals.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • The amount you start with in your station account is now affected by species, rank, and NT's stance towards you.
    • -
    -

    TheWelp updated:

    -
      -
    • Bookcases are now movable/buildable/destroyable.
    • -
    • Paper can now be crumpled by using in-hand while on hurt intent.
    • -
    • Library Computer External Archive is now sortable.
    • -
    -

    Zuhayr updated:

    -
      -
    • Click a hat on a drone with help intent to equip it. Drag the drone onto yourself with grab intent to remove it.
    • -
    - -

    13 August 2015

    -

    GinjaNinja32 updated:

    -
      -
    • Changed language selection to allow multiple language selections, changed humans/unathi/tajarans/skrell to not automatically gain their racial language, instead adding it to the selectable languages for that species. Old slots will warn when loaded that the languages may not be what you expect.
    • -
    -

    Orelbon updated:

    -
      -
    • Changed the HoP's suit to more bibrant colors and hopefully you will like it.
    • -
    - -

    11 August 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • 0.1.19 is live.
    • -
    • Crew monitors now update every 5th second instead of every other. Reduces lag and gives antags a larger window of opportunity to disable suit sensors if they have to harm someone.
    • -
    - -

    31 July 2015

    -

    HarpyEagle updated:

    -
      -
    • Fixed projectiles being able to hit people in body parts that they don't have. This will also mean that the less limbs someone has the less effective they will be as a body shield.
    • -
    - -

    29 July 2015

    -

    Karolis2011 updated:

    -
      -
    • Made tagger and sorting pipes dispensible.
    • -
    • Unwelding and welding sorting/tagger pipes, no longer delete data about them.
    • -
    - -

    27 July 2015

    -

    Kelenius updated:

    -
      -
    • Borg shaker now works similarly to hypospray. It generates reagents that can be poured into glasses.
    • -
    • Therefore, they can no longer duplicate rare reagents such as phoron.
    • -
    - -

    14 July 2015

    -

    HarpyEagle updated:

    -
      -
    • Fixes wrong information being reported when analyzing locked abandoned crates with a multitool.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • Ninjas can no longer teleport unto turfs that contain solid objects.
    • -
    • Wizards can no longer etheral jaunt unto turfs that contain solid objects.
    • -
    - -

    11 July 2015

    -

    HarpyEagle updated:

    -
      -
    • Added inhand sprites for flashes, flashbangs, emp and other grenades.
    • -
    -

    Loganbacca updated:

    -
      -
    • Turrets no longer burn holes through the AI.
    • -
    • Projectiles now have a chance of hitting mobs riding cargo trains.
    • -
    • Fixed visual bugs with projectile effects.
    • -
    - -

    10 July 2015

    -

    Zuhayr updated:

    -
      -
    • Ninja now spawns on a little pod on Z2 and can teleport to the main level.
    • -
    - -

    06 July 2015

    -

    GinjaNinja32 updated:

    -
      -
    • 'Provisional' is now also a valid temporary position prefix for manifest sorting.
    • -
    - -

    04 July 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • Portable turrets now only blocks movement while deployed.
    • -
    • Portable turrets are no longer invincible while undeployed, however they have increased damage resistance in this state.
    • -
    • Crescent portable turrets should no longer act up during attempts to (un)wrench and alter their settings.
    • -
    - -

    30 June 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • Non-general areas on Crescent are now protected by blast doors to enforce area restrictions. Admins can operate these from the central checkpoint.
    • -
    - -

    24 June 2015

    -

    HarpyEagle updated:

    -
      -
    • Fixed Tajaran name generation producing names without a space between first and last.
    • -
    • Adds docking to the mercenary shuttle. Works similarly to other shuttles, except docking and undocking is manually initiated and not automatic. A system to approve or deny dock requests still to be implemented.
    • -
    • Toolboxes can now hold larger items, such as stacks of metal or power cells, at the cost of having less space for other things.
    • -
    • Gloves/shoes can now be worn even if you have one hand/foot missing. The other one still has to be present, of course. The items still drop when you first lose the hand/foot.
    • -
    • Budget insulated gloves are somewhat less useless. On average, they will stop half the damage from getting shocked, and the worst case insulation is not as bad as it used to be. Budget gloves that are as good as regular insulated gloves are still as rare as they were before though.
    • -
    • PTR bullets are now hitscan, to make them somewhat better for actual sniping.
    • -
    • The telecoms server room now has an actual cycling airlock into it.
    • -
    • Non-vital body parts will no longer take further damage above a certain amount, and will inflict paincrit effects instead. On most humaniods the head, chest, and groin are vital.
    • -
    • Engineers now spawn with industrial workboots (credit: ChessPiece/Bishop).
    • -
    • Damaged robotic legs now more likely to have an effect.
    • -
    • Fixed bug preventing internal organs from taking damage in some cases.
    • -
    • New flavours of tables around the station. Engineering starts with more plastic.
    • -
    • Fixed worn items not appearing in some cases. Most notably crossbows and certain guns when worn on the back. As a side effect, laundry machines no longer transform items.
    • -
    • Crit oxyloss now runs in game time instead of real time. So if lag is slowing your movement the same slowdown applies to the dying person you're trying to reach.
    • -
    • Breathmasks can now be adjusted by clicking on them in your hand, in addition to the verb.
    • -
    • Wearing a space helmet or similar face-covering gear now prevents eating and force-feeding food, drink, and pills.
    • -
    • Phoron in air ignites above it's flashpoint temperature and a certain (very small) minimum concentration. Environments that have oxygen and are hot enough, and have phoron but not enough concentration to burn will produce flareouts, which are mostly a visual effect.
    • -
    • Adds animation when making unarmed attacks or attacking with melee weapons, to help make it clearer who is attacking.
    • -
    • Opening an unpowered door now has an appropriate sound.
    • -
    • Ingesting diseased blood may contract the disease.
    • -
    - -

    22 June 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • The traitor uplink no longer displays all items in a long list, instead has categories which when accessed shows the relevant items.
    • -
    - -

    19 June 2015

    -

    HarpyEagle updated:

    -
      -
    • Prevents being on fire from merely warming mobs up slightly in some cases. Mob fires also burn hotter.
    • -
    • Matches can now be used to light things adjacent to you when thrown.
    • -
    • Made the effects of having a damaged robotic leg more prominent.
    • -
    • Robot limbs no longer cause pain messages. A reminder that you can still check their status with 'Help Intent' -> 'Click Self'.
    • -
    • Knifing damage scales with weapon force and throat protection. Helmets only provide throat protection if they are air tight. Trying to cut someone's throat with wirecutters and/or while wearing an armoured sealed helmet will require several attempts before the victim passes out.
    • -
    • Knifing switches on harm intent, in case you just wanted to beat on the victim for some reason.
    • -
    • Prevents knifing bots or silicons.
    • -
    - -

    16 June 2015

    -

    Chinsky updated:

    -
      -
    • Updated penlights to be more of use in diagnostics, they now show following conditions:
    • -
    • Eye damage
    • -
    • Blurry eyes (overall slower reaction)
    • -
    • Brain damage (one eye reacts slower)
    • -
    • Opiates use (pinpoint pupils)
    • -
    • Drugs use (dilated pupils)
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • Observers can now follow both the AI and its eye upon speech.
    • -
    • Observers can now follow both observers and their body, if they ever had one, upon speech.
    • -
    • Observers can now follow hivemind speakers if the speaker is not using an alias or antagHUD is enabled.
    • -
    • Turret controls now glow, with the color depending on the current mode.
    • -
    -

    Techhead updated:

    -
      -
    • Converted Request Console interface into NanoUI.
    • -
    - -

    09 June 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • Ports /tg/'s meteor event. Meteors now appear to be more accurate, come in a greater variety, and may drop ores on their final destruction.
    • -
    - -

    08 June 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • The AI chassis now glows, with the color depending on the currently selected display.
    • -
    - -

    05 June 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • Split stacks no longer lose their coloring.
    • -
    • Can no longer merge cables of different colors.
    • -
    • Blobs and simple mobs now attack all external organs instead of a subset. The overall damage remains the same but the number of fractures caused will, in general, be fewer.
    • -
    • Spider nurses now have a chance of injecting their victims with spider eggs which eventually hatch. If the limb is removed from the host, the host dies, or the spiderling has matured sufficiently it will crawl out into freedom. Medical scanners will pick upp eggs and spiderlings as foreign bodies.
    • -
    -

    Yoshax updated:

    -
      -
    • Makes hyposprays start empty instead of filled with Tricord.
    • -
    • Makes the special wizard projectile staffs, Animate, Change, Focus and any future ones only usable by wizards. Also makes it so only wizards can use spellbooks and teleportation scrolls.
    • -
    - -

    04 June 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • AI eyes can now be found in the observer follow list.
    • -
    • Synths can now review all law modules that can be found on the station from their law manager.
    • -
    • Synths can state these laws if desired, however this is strongly discouraged unless subverted/malfunctioning.
    • -
    • Astral projecting mobs, such as wizards or cultists, may no longer respawn as something else while their body lives.
    • -
    -

    Techhead updated:

    -
      -
    • Prison break event has been expanded to include Virology or Xenobiology
    • -
    • Prison break event will warn Enginering and the AI beforehand so they can take preventive measures.
    • -
    • Disabling area power will now prevent doors from opening during the event
    • -
    - -

    02 June 2015

    -

    Techhead updated:

    -
      -
    • Re-adds extended capacity emergency oxygen tanks to relevant jobs.
    • -
    - -

    30 May 2015

    -

    Atlantis updated:

    -
      -
    • Malfunction Overhaul - Whole gamemode was completely reworked from scratch. Most old abilities have been removed and quite a lot of new abilities was added. AI also has to hack APCs to unlock higher tier abilities faster, instead of having access to them from the round start. Most forced things, such as, shuttle recalling were removed and are instead controlled by the AI. Code is fully modular allowing for future modifications.
    • -
    -

    HarpyEagle updated:

    -
      -
    • Fixes Engineer ERT gloves not being insulated.
    • -
    • IV stands are no longer bullet shields. They also allow mice, drones, pAIs et al to pass though.
    • -
    -

    Kelenius updated:

    -
      -
    • AI now hears LOOC both around its eye and its core, and speaks in LOOC around its eye. Keep in mind that you won't hear and won't be heard if there is a wall between your eye and the target.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • You can now review the server revision date and hash by using the 'Show Server Revision' verb in the OOC category.
    • -
    - -

    27 May 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • The inactive check process now respects client holder status and can be configured how long clients may remain inactive before being kicked.
    • -
    -

    Zuhayr updated:

    -
      -
    • Unfolded pAIs can now be scooped up and worn as hats.
    • -
    • Scoop-up behavior is now standardized to selecting help intent and dragging their icon onto yours.
    • -
    - -

    26 May 2015

    -

    Atlantis updated:

    -
      -
    • NanoUI for Robotics Control Console
    • -
    • NanoUI for Supermatter Crystal - AI/Robot only, purely informational
    • -
    -

    Chinsky updated:

    -
      -
    • Meat limbs now can be attached. Use limb on missing area, then hemostat to finalize it.
    • -
    • Limbs from other races can be now attached. They'll cause rejection, but it can be kept at bay with spaceacilline to some point. Species special attack is carried over too, i.e. you can clawn people if you sew a cathand to yourself.
    • -
    • Limbs that are left in open will rot in ~7 minutes. Use freezers or cryobags to stop it. You can still attach them, but you wish you couldn't.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • Both the pulse taker and target must now remain still for the duration of the check or it will fail.
    • -
    -

    RavingManiac updated:

    -
      -
    • Tape recorders now record hearable emotes and action messages (e.g. gunshots).
    • -
    • You can now see actions from inside mechs and closets.
    • -
    -

    Techhead updated:

    -
      -
    • Removed gaseous reagents from the chemistry system and replaced with real-world organic chemistry precursors.
    • -
    • Hydrogen has been replaced with hydrazine, a highly toxic, flammable liquid.
    • -
    • Oxygen has been replaced with acetone, a mildly toxic liquid. Ethanol's ink-sovlent capabilities have been copied to it.
    • -
    • Chlorine has been replaced with hydrochloric acid. It is a stronger acid than sulphuric but less toxic.
    • -
    • Nitrogen has been replaced with ammonia. Ammonia now acts as a Dexalin-equivalent for Vox.
    • -
    • Flourine has also been replaced with hydrazine in its one recipe. Flourosurficant has been renamed azosurficant.
    • -
    • Being splashed with liquid Phoron will burn eyes and contaminate clothes like being exposed to Phoron gas.
    • -
    -

    Zuhayr updated:

    -
      -
    • Added a ghost requisition system for posibrains and living plants.
    • -
    • Added attack_ghost() to hydro trays and posibrains to allow ghosts to enter them.
    • -
    • Prosthetic limbs are now only repairable with welders/cable coils if they have suffered below 30 combined damage.
    • -
    • Surgery steps that cause no pain and have no failure wounding have been added: screwdriver for 'incision', crowbar to open, multitool to 'decouple' a prosthetic organ. Hemostat is still used to take an organ out.
    • -
    • Using a welder or a cable coil as a surgical tool after opening a maintenance hatch will repair damage beyond the 30 damage cap. In other words, severe damage to robolimbs requires expert repair from someone else.
    • -
    • Eye and brain surgery were removed; they predate the current organ system and are redundant.
    • -
    • IPC are now simply full prosthetic bodies using a specific manufacturer (Morpheus Cyberkinetics).
    • -
    • IPC can 'recharge' in a cyborg station to regain nutriment. They no longer interface with APCs.
    • -
    • NO_BLOOD flag now bypasses ingested and blood reagent processing.
    • -
    • NO_SCAN now bypasses mutagen reagent effects.
    • -
    • Cyborg analyzers now show damage to prosthetic limbs and organs on humans.
    • -
    • Prosthetic EMP damage was reduced.
    • -
    • Several organ files were split up/moved around.
    • -
    - -

    22 May 2015

    -

    Ccomp5950 updated:

    -
      -
    • Beepsky no longer kills goats.
    • -
    • Goats will move towards vines that are 4 spaces away now instead of 1
    • -
    • Goats will eat the spawning plants for vines as well as the vines themselves.
    • -
    -

    Chinsky updated:

    -
      -
    • Ghetto diagnosis. Grab patient, aim at bodypart you want to check, click on them with help intent. This will tell you about their wounds, fractures and other oddities (toxins/oxygen) for that bodypart.
    • -
    • Fractures are visible on very damaged limbs. Dislocations are always visible. Surgery incisions now visible too.
    • -
    • Stethoscopes actually make sense now. They care for heart/lungs status when reporting pulse and respiration now.
    • -
    -

    HarpyEagle updated:

    -
      -
    • Re-implemented fuel fires. Tweaked fire behaviour overall.
    • -
    -

    Yoshax updated:

    -
      -
    • Bear traps now do damage when stood on, enough to break bones! Bear traps can now affect any limb of a person who is on the ground, including head! Bear traps are no longer legcuffs and instead embed in the limb they attack.
    • -
    • Bear traps now take several seconds to deploy and cannot be picked up when armed, they must be disarmed by clicking on them. They also cannot be moved then they are deployed.
    • -
    -

    Zuhayr updated:

    -
      -
    • Massive material refactor. Walls, beds, chairs, stools, tables, ashtrays, knives, baseball bats, axes, simple doors, barricades, so on.
    • -
    • Tables are now built via steel then another sheet on the resulting frame. They can then be reinforced by dragging a stack of sheets onto the table.
    • -
    • Walls are built with steel for girders, then right-click the girder and select the reinforce verb while holding a stack, then click the girders with a final sheet.
    • -
    • Various things can be built with various sheet types. Experiment! Just keep in mind that uranium is now radioactive and phoron is now flammable.
    • -
    - -

    18 May 2015

    -

    Hubblenaut updated:

    -
      -
    • Adds a light for available backup power on airlocks.
    • -
    -

    Kelenius updated:

    -
      -
    • There has been a big update to the reagent system. A full-ish changelog can be found here: http://pastebin.com/imHXTRHz. In particular:
    • -
    • Reagents now differentiate between being ingested (food, pills, smoke), injected (syringes, IV drips), and put on the skin (sprays, beaker splashing).
    • -
    • Injecting food and drinks will cause bad effects.
    • -
    • Healing reagents, generally speaking, have stronger effects when injected.
    • -
    • Toxins now work slower and deal more damage. Seek medical help!
    • -
    • Alcohol robustness has been lowered.
    • -
    • Acid will no longer melt large numbers of items at once.
    • -
    • Synaptizine is no longer hilariously deadly.
    • -
    -

    Loganbacca updated:

    -
      -
    • Changed MULE destination selection to be list based.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • Destroying a camera by brute force now has a chance to break the wiring within.
    • -
    • Turf are now processed. This, for example, causes radioactive walls to regularly irradiate nearby mobs.
    • -
    • Welders should now always update their icon and inhand states properly.
    • -
    - -

    17 May 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • Teleporter artifacts should no longer teleport mobs inside objects.
    • -
    - -

    16 May 2015

    -

    GinjaNinja32 updated:

    -
      -
    • Rewrote tables. To construct a table, use steel to make a table frame, then plate the frame with a material such as steel, gold, wood, etc. Hold a stack in your hand and drag it to the table to reinforce it. To deconstruct a table, use a screwdriver to remove the reinforcements (if present), then a wrench to remove the plating, and a wrench again to dismantle the frame. Use a welder to repair any damage. Use a carpet tile on a table to add felt, and a crowbar to remove it.
    • -
    -

    HarpyEagle updated:

    -
      -
    • Adds tail animations for tajaran and unathi. Animations are controlled using emotes.
    • -
    - -

    14 May 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • Should now be more evident that the brig disposal chute sends its goods to the common brig area.
    • -
    • Cells now drain when using more charge than what is available.
    • -
    • The rig stealth module now requires as much power to run as the energy blade module.
    • -
    -

    Techhead updated:

    -
      -
    • Vox will spawn with emergency nitrogen tanks in their survival boxes.
    • -
    • Diona will spawn with an emergency flare instead of a survival box.
    • -
    • Engineers no longer spawn with extended-capacity oxygen tanks.
    • -
    • Vox spawning without backpacks will have their nitrogen tank equipped to their back.
    • -
    • The Bartender's spare beanbag shells have been moved into bar backroom with the shotgun.
    • -
    • Portable air pumps now fill based on external/airtank pressure when pumping in.
    • -
    - -

    12 May 2015

    -

    Dennok updated:

    -
      -
    • New buildmode icons made by BartNixon.
    • -
    -

    HarpyEagle updated:

    -
      -
    • Masks and helmets that cover the face block feeding food, drinks, and pills.
    • -
    -

    MrSnapwalk updated:

    -
      -
    • Added seven new AI core displays.
    • -
    • Changed the pAI sprite and added several new expressions.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • The space vine event now comes with a station announcement.
    • -
    - -

    11 May 2015

    -

    Mloc updated:

    -
      -
    • Rewritten lighting system.
    • -
    • Better coloured lights.
    • -
    • Animated transitions.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • As an observer, using antagHUD should now always restrict you from respawning without admin intervention.
    • -
    -

    Techhead updated:

    -
      -
    • Voidsuits can have tanks inserted into the storage slot.
    • -
    • Voidsuits display helpful information on their contents on examine.
    • -
    • Magboots can be equipped over other shoes. Except other magboots.
    • -
    - -

    10 May 2015

    -

    GinjaNinja32 updated:

    -
      -
    • Acting jobs on the manifest will now sort with their non-acting counterparts. All assignments beginning with the word 'acting', 'temporary', or 'interim' will do this.
    • -
    -

    Yoshax updated:

    -
      -
    • Removes sleepy chems from being cloned, adds a consistent period of 30 tick sleep.
    • -
    - -

    09 May 2015

    -

    Yoshax updated:

    -
      -
    • Maps in the top mounted 9mm practice rounds, .45 practice rounds, and practice shotgun shells into the armory.
    • -
    - -

    07 May 2015

    -

    HarpyEagle updated:

    -
      -
    • Breaking out of lockers now has sound and animation.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • The cloning computer can again successfully locate nearby cloning vats and DNA scanners at round start.
    • -
    • Security equipment now treats individuals with CentCom ids with the greatest respect.
    • -
    • Adds stretches of power cable around the construction outpost, ensuring one does not have to climb over machines to being laying cables.
    • -
    -

    RavingManiac updated:

    -
      -
    • Muzzle-flash lighting effect for guns
    • -
    • Energy guns now display shots remaining on examine
    • -
    - -

    06 May 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • Examining a pen or crayon now lists the available special commands in the examine tab.
    • -
    - -

    05 May 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • Grilles no longer return too many rods when destroyed (using means other than wirecutters).
    • -
    -

    RavingManiac updated:

    -
      -
    • Intent menu now appears while zooming with a sniper rifle.
    • -
    - -

    02 May 2015

    -

    HarpyEagle updated:

    -
      -
    • Neck-grabbing someone now stuns them properly.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • The spider infestation event now makes an announcement much sooner.
    • -
    • Admins can now toggle OOC/LOOC separately.
    • -
    • Mice are now numbered to aid admins.
    • -
    -

    Yoshax updated:

    -
      -
    • Adds an option and verb to the AI to send emergency messages to Central, functions same as comms console option.
    • -
    • Changes comms console to only have one level of ID require, meaning all heads of staff have what was captain access, allowing them to change alert, send emergency messages and make announcements.
    • -
    • Adds an emergency bluespace relay machine which is mapped into teletcomms, this machine takes emergency messages and sends them to central, if one does not exist on any Z, you cannot send any emergency messages.
    • -
    • Adds an emergency bluespace relay assembly kit orderable from cargo for when the ones on telecomms are destroyed. Assembly is required.
    • -
    • Adds the emergency bluespace relay circuitboard to be researchable and printable in R&D, with sufficient tech levels.
    • -
    - -

    30 April 2015

    -

    Yoshax updated:

    -
      -
    • Adds more items to custom loadout, including a number of dressy suits and some other things.
    • -
    - -

    29 April 2015

    -

    Daranz updated:

    -
      -
    • Paper bundles can now have papers inserted at arbitrary points. This can be done by clicking the previous/next page links with a sheet of paper in hand.
    • -
    -

    HarpyEagle updated:

    -
      -
    • Added new fire modes to various guns: c20r, STS-35, WT-550, Z8, L6 SAW, and double barreled shotgun. The firing modes work the same way as the egun; click on the weapon with it in your active hand to cycle between modes. Unloading these weapons now requires that you click on them with an empty hand.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • Portable atmospheric pumps and scrubbers now use NanoUI.
    • -
    • Two new events which will cause damage to APCs or cameras when triggered.
    • -
    - -

    28 April 2015

    -

    Jarcolr updated:

    -
      -
    • Added 9 new bar sign designs/sprites.
    • -
    -

    Kelenius updated:

    -
      -
    • Good news to the roboticists! The long waited firmware update for the bots has arrived. You can expect the following changes:
    • -
    • Medbots have improved the disease detection algorithms.
    • -
    • Floorbot firmware has been bugtested. In particular, they will no longer get stuck near the windows, hopelessly trying to fix the floor under the glass.
    • -
    • Floorbots have also received an internal low-power metal synthesizer. They will use it to make their own tiles. Slowly.
    • -
    • Following the complains from humanitarian organizations regarding securitron brutality, stength of their stunners has been toned down. They will also politely demand that you get on the floor before arresting you. Except for the taser-mounted guys, they will still tase you down.
    • -
    • Other minor fixes.
    • -
    • The lasertag bots are now forbidden to build and use following the incident #1526672. Please don't let it happen again.
    • -
    • The farmbot design has been finished! Made from a watertank, robot arm, plant analyzer, bucket, minihoe and a proximity sensor, these small (not really) bots will be a useful companion to any gardener and/or xenobotanist.
    • -
    • Spider learning alert: they have learned to recognize the bots and will mercilessly attack them.
    • -
    • An experimental CPU upgrade would theoretically allow any of the bots to function with the same intelligence capacity as the maintenance drones. We still have no idea what causes it to boot up. Science!
    • -
    • INCOMING TRANSMISSION: Greetings to agents, pirates, operatives, and anyone who otherwise uses our equipment. Following the NT update of bot firmware, we have updated the cryptographic sequencer's hacking routines as well. The medbots you emag will not poison you anymore, the clanbots won't clean after themselves immediately, and floorbots... wear a space suit. Oh, and it works on the new farmbots, too.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • Beware. Airlocks can now crush more things than just mobs.
    • -
    • AIs now have a personal atmospherics control subsystem.
    • -
    • Some borg modules now have additional subsystems.
    • -
    • Improves borg module handling.
    • -
    • Secure airlocks now buzz when access is denied.
    • -
    • The mental health office door now requires psychiatrist access, and the related button now opens/closes the door instead of bolting.
    • -
    • Restores an old soundtrack 'Thunderdome.ogg'.
    • -
    • Some holodeck programs now have custom ambience tracks.
    • -
    -

    RavingManiac updated:

    -
      -
    • The phoron research lab has been renovated to include a heat-exchange system, a gas mixer/filter and a waste gas disposal pump.
    • -
    • Candles now burn for about 30 mintutes.
    • -
    -

    Yoshax updated:

    -
      -
    • Adds items to the orderable antag surgical kit so its actually useful for surgery.
    • -
    • Adjusts custom loadout costs to be more standardised and balances. Purely cosmetic items, shoes, hats, and all things that do not provide a straight advtange (sterile mask, or pAI, protection from viruses and possible door hacking or records access, respectively), each cost 1 point, items that provide an advantage like those just mentioned, or provide armor or storage cost 2 points.
    • -
    • Adds practice rounds, both .45 for Sec and Detective's guns, also 9mm top mounted for the Saber, and for the Bulldog.
    • -
    • Adds the .45 and 9mm practice rounds to the armory.
    • -
    • Adds all the practice rounds to the autolathe.
    • -
    • Adds r_walls to the back of the firing range, leaves the sides normal.
    • -
    • Fixes HoS' office door to not be CMO locked.
    • -
    - -

    24 April 2015

    -

    Dennok updated:

    -
      -
    • Fixes overmap ship speed calculations.
    • -
    • Adds overmap ship rotation.
    • -
    • Added a floorlayer.
    • -
    - -

    23 April 2015

    -

    Dennok updated:

    -
      -
    • Added an automatic pipelayer.
    • -
    • Added an automatic cablelayer.
    • -
    -

    PsiOmegaDelta updated:

    -
      -
    • Shower curtains no longer lose their default color upon being washed.
    • -
    • Emergency shutters can again be examined, and from the proper distance.
    • -
    • The virus event will now only infect mobs on the station, currently controlled by player that has been active in the last 5 minutes.
    • -
    • Laptops now use the proper proc for checking camera status.
    • -
    • Makes it possible to eject PDA cartridges using a verb.
    • -
    • Makes it possible to shake tables with one's bare hands to stop climbers.
    • -
    • Added a mass driver door in disposals to prevent trash from floating out into space before proper ejection.
    • -
    • Rig/Hardsuit module tab - Less informative than the NanoUI hardsuit interface but allows quicker access to the various rig modules.
    • -
    • Silicons with the medical augmentation sensors enabled now also see alive/dead status if sensors are set accordingly.
    • -
    • Emergency shutters opened by silicons are now treated as having been forced open by a crowbar.
    • -
    • An active AI chassis can now be pushed, just as an empty chassis can be.
    • -
    • The AI can now use the crew monitor console to track crew members with full sensors enabled.
    • -
    • The AI now has a shortcut to track people holding up messages to cameras.
    • -
    • The AI now has a shortcut to track people sending PDA messages.
    • -
    • Multiple AIs can now share the same holopad.
    • -
    • Admin ghosts can now transfer other ghosts into mobs by drag-clicking.
    • -
    • Ghosts can now toggle seeing darkness and other ghosts separately.
    • -
    • Moving while dead now auto-ghosts you.
    • -
    • Two new random events: Space dust and gravitation failure.
    • -
    • Upgraded wizard spell interface and new spells.
    • -
    • More uplink items.
    • -
    • Uplink items now have rudimentary descriptions.
    • -
    -

    Yoshax updated:

    -
      -
    • Adjusts fruits and other stuff to have a minmum of 10 units of juice and stuff.
    • -
    - -

    18 April 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • Added a changelog editing system that should cause fewer conflicts and more accurate timestamps.
    • -
    - -

    07 April 2015

    -

    RavingManiac updated:

    -
      -
    • You can now pay vending machines and EFTPOS scanners without removing your ID from your PDA or wallet. Clicking on the vending machine with your ID/PDA/wallet/cash also brings up the menu now instead of attacking the vending machine.
    • -
    - -

    24 February 2015

    -

    Zuhayr updated:

    -
      -
    • Major changes to the kitchen and hydroponics mechanics. Review the detailed changelog here,
    • -
    - -

    18 February 2015

    -

    PsiOmegaDelta updated:

    -
      -
    • Synths now have timestamped radio and chat messages.
    • -
    • New and updated uplink items.
    • -
    • Multiple AIs can now share the same holopad.
    • -
    • The AI now has built-in consoles, accessible from the subsystem tab.
    • -
    - -

    16 February 2015

    -

    RavingManiac updated:

    -
      -
    • Say hello to the new Thermoelectric Supermatter Engine. Read the operating manual to get started.
    • -
    - -

    12 February 2015

    -

    Daranz updated:

    -
      -
    • Vending machines now use NanoUI and accept cash. The vendor account can now be suspended to disable all sales in all machines on station.
    • -
    - -

    04 February 2015

    -

    RavingManiac updated:

    -
      -
    • Holodeck is now bigger and better, with toggleable gravity and a new courtroom setting
    • -
    -

    TwistedAkai updated:

    -
      -
    • Purple Combs should now be visible and have their proper icon
    • -
    - -

    09 January 2015

    -

    Zuhayr updated:

    -
      -
    • Voice changers no longer use ID cards. They have Toggle and Set Voice verbs on the actual mask object now.
    • -
    • Readded moonwalking. Alt-dir to face new dir, or Face-Direction verb to face current dir.
    • -
    - -

    22 November 2014

    -

    Zuhayr updated:

    -
      -
    • Added the /obj/item/weapon/rig class - back-mounted deployable hardsuits.
    • -
    • Replaced existing hardsuits with 'voidsuits', functionally identical.
    • -
    • Removed the mounted device and helmet/boot procs from voidsuits.
    • -
    • Refactored a shit-ton of ninja code into the new rig class.
    • -
    • This is more than likely going to take a lot of balancing to get into a good place.
    • -
    - -

    08 November 2014

    -

    PsiOmegaDelta updated:

    -
      -
    • Service personnel now have their own frequency to communicate over. Use "say :v".
    • -
    • The AI can now has proper quick access to its private channel. Use "say :o".
    • -
    • Newscasters supports photo captions. Simply pen one on the attached photo.
    • -
    • Once made visible by a cultist ghosts can toggle visiblity at will.
    • -
    • Detonating cyborgs using the cyborg monitor console now notifies the master AI, if any.
    • -
    • More machinery, such as APCs, air alarms, etc., now support attaching signalers to the wires.
    • -
    • Random event overhaul. Admins may wish check the verb "Event Manager Panel".
    • -
    - -

    04 November 2014

    -

    TwistedAkai updated:

    -
      -
    • Almost any window which has been fully unsecured can now be dismantled with a wrench.
    • -
    - -

    01 November 2014

    -

    PsiOmegaDelta updated:

    -
      -
    • Adds the last missing step to deconstruct fire alarms. Apply wirecutters.
    • -
    • There's a "new" mining outpost nearby the Research outpost.
    • -
    • Manifest ghosts now have spookier names.
    • -
    • Adds a gas monitor computer for the toxin mixing chamber.
    • -
    • AI can now change the display of individual AI status screens.
    • -
    • More ion laws..
    • -
    • All turrets have been replaced with portable variants. Potential targets can be configured on a per turret basis.
    • -
    • Improved crew monitor map positioning.
    • -
    • Can now order plastic, body-, and statis bags from cargo
    • -
    • PDAs now receive newscasts.
    • -
    • (De)constructable emergency shutters.
    • -
    • Borgs can now select to simply state their laws or select a radio channel, same as the AI.
    • -
    - -

    01 October 2014

    -

    RavingManiac updated:

    -
      -
    • Zooming with the sniper rifle now adds a view offset in the direction you are facing.
    • -
    • Added binoculars - functionally similar to sniper scope. Adminspawn-only for now.
    • -
    • Bottles from chemistry now, like beakers, use chemical overlays instead of fixed sprites.
    • -
    • Being in space while not magbooted to something will cause your sprite to bob up and down.
    • -
    -

    Zuhayr updated:

    -
      -
    • Added species organ checks to several areas (phoron burn, welder burn, appendicitis, vox cortical stacks, flashes).
    • -
    • Added VV option to add or remove organs.
    • -
    • Added simple bioprinter (adminspawn).
    • -
    • Added smashing/slashing behavior from xenos to some unarmed attacks.
    • -
    • Added some new state icons for diona nymphs.
    • -
    • Added borer husk functionality (cortical borers can turn dead humans into zombies).
    • -
    • Added tackle verb.
    • -
    • Added NO_SLIP.
    • -
    • Added species-specific orans to Dionaea, new Xenomorphs and vox.
    • -
    • Added colour and species to blood data.
    • -
    • Added lethal consequences to missing your heart.
    • -
    • Removed robot_talk_understand and alien_talk_understand.
    • -
    • Removed attack_alien() and several flavours of is_alien() procs.
    • -
    • Removed /mob/living/carbon/alien/humanoid.
    • -
    • Removed alien_hud().
    • -
    • Removed IS_SLOW, NEEDS_LIGHT and RAD_ABSORB.
    • -
    • Renamed is_larva() to is_alien().
    • -
    • Refactored a ton of files, either condensing or expanding them, or moving them to new directories.
    • -
    • Refactored some attack vars from simple_animal to mob/living level.
    • -
    • Refactored internal organs to /mob/living/carbon level.
    • -
    • Refactored rad and light absorbtion to organ level.
    • -
    • Refactored brains to /obj/item/organ/brain.
    • -
    • Refactored a lot of blood splattering to use blood_splatter() proc.
    • -
    • Refactored broadcast languages (changeling and alien hiveminds, drone and binary chat) to actual languages.
    • -
    • Refactored xenomorph abilities to work for humans.
    • -
    • Refactored xenomorphs into human species.
    • -
    • Rewrote larva_hud() and human_hud(). The latter now takes data from the species datum.
    • -
    • Rewrote diona nymphs as descendents of /mob/living/carbon/alien.
    • -
    • Rewrote xenolarva as descendents of /mob/living/carbon/alien.
    • -
    • Rewrote /mob/living/carbon/alien.
    • -
    • Moved alcohol and toxin processing to the liver.
    • -
    • Moved drone light proc to robot level, added integrated_light_power and local_transmit vars to robots.
    • -
    • Moved human brainloss onto the brain organ.
    • -
    • Shuffled around and collapsed several redundant procs down to carbon level (hide, ventcrawl, Bump).
    • -
    • Fixed species swaps from NO_BLOOD to those with blood killing the subject instantly.
    • -
    - -

    28 September 2014

    -

    Gamerofthegame updated:

    -
      -
    • Hoverpods fully supported, currently orderable from cargo. Two slots, three cargo, space flight and a working mech for all other intents and purposes.
    • -
    • Added the Rigged laser and Passenger Compartment equipment. The rigged laser is a weapon for working exosuits - just a ordinary laser, but with triple the cool down and rather power inefficient. The passenger compartment allows other people to board and hitch a ride on the mech - such as in fire rescue or for space flight.
    • -
    -

    Zuhayr updated:

    -
      -
    • Organs can now be removed and transplanted.
    • -
    • Brain surgery is now the same as chest surgery regarding the steps leading up to it.
    • -
    • Appendix and kidney now share the groin and removing the first will prevent appendicitis.
    • -
    • Lots of backend surgery/organ stuff, see the PR if you need to know.
    • -
    - -

    20 September 2014

    -

    HarpyEagle updated:

    -
      -
    • Fixes evidence bags and boxes eating each other. Evidence bags now store items by dragging the bag onto the item to be stored.
    • -
    - -

    05 September 2014

    -

    RavingManiac updated:

    -
      -
    • NewPipe implemented: Supply and scrubber pipes can be run in parallel without connecting to each other.
    • -
    • Supply pipes will only connect to supply pipes, vents and Universal Pipe Adapters(UPAs).
    • -
    • Scrubber pipes will only connect to scrubber pipes, scrubbers and UPAs.
    • -
    • UPAs will connect to regular, scrubber and supply pipes.
    • -
    - -

    31 August 2014

    -

    Whitellama updated:

    -
      -
    • Matches and candles can be used to burn papers, too.
    • -
    • Observers have a bit more time (20 seconds, instead of 7.5) before the Diona join prompt disappears.
    • -
    - -

    27 August 2014

    -

    Whitellama updated:

    -
      -
    • Made destination taggers more intuitive so you know when you've tagged something
    • -
    • Ported package label and tag sprites
    • -
    • Ported using a pen on a package to give it a title, or to write a note
    • -
    • Donut boxes and egg boxes can be constructed out of cardboard
    • -
    - -

    05 August 2014

    -

    HarpyEagle updated:

    -
      -
    • Atmos Rewrite. Many atmos devices now use power according to their load and gas physics
    • -
    • Pressure regulator device. Replaces the passive gate and can regulate input or output pressure
    • -
    • Gas heaters and gas coolers are now constructable and can be upgraded with parts from research
    • -
    • Fixes recharger and cell charger power draw. Rechargers draw 15 kW, wall chargers draw 25 kW, and heavy-duty cell chargers draw 40 kW. Cyborg charging stations draw 75 kW.
    • -
    • Laptops, and various other machines, now draw more reasonable amounts of power
    • -
    • Machines will periodically update their powered status if moved from a powered to an unpowered area and vice versa
    • -
    - -

    02 August 2014

    -

    Whitellama updated:

    -
      -
    • Arcane tomes can now be stored on bookshelves.
    • -
    • Dionaea players no longer crash on death, and now become nymphs properly.
    • -
    - -

    31 July 2014

    -

    HarpyEagle updated:

    -
      -
    • Stun batons now work like tasers and deal agony instead of stun
    • -
    • Being hit in the hands with a stun weapon will cause whatever is being held to be dropped
    • -
    • Handcuffs now require an aggressive grab to be used
    • -
    - -

    26 July 2014

    -

    Whitellama updated:

    -
      -
    • Added dynamic flavour text.
    • -
    • Fixed bug with suit fibers and fingerprints.
    • -
    - -

    20 July 2014

    -

    PsiOmegaDelta updated:

    -
      -
    • AI can now store up to five camera locations and return to them when desired.
    • -
    • AI can now alt+left click turfs in camera view to list and interact with the objects.
    • -
    • AI can now ctrl+click turret controls to enable/disable turrets.
    • -
    • AI can now alt+click turret controls to toggle stun/lethal mode.
    • -
    • AI can now select which channel to state laws on.
    • -
    - -

    06 July 2014

    -

    HarpyEagle updated:

    -
      -
    • Re-enabled and rewrote the wound infection system
    • -
    • Infections can be prevented by properly bandaging and salving wounds
    • -
    • Infections are cured by spaceacillin
    • -
    - -

    01 July 2014

    -

    Various updated:

    -
      -
    • Hardsuit breaching.
    • -
    • Rewritten fire.
    • -
    • Supermatter now glows and sucks things into it as it approaches criticality.
    • -
    • Station Vox (Vox pariahs) are now available.
    • -
    • Wheelchairs.
    • -
    • Cargo Trains.
    • -
    • Hardsuit cycler machinery.
    • -
    • Rewritten lighting (coloured lights!)
    • -
    • New Mining machinery and rewritten smelting.
    • -
    • Rewritten autolathe
    • -
    • Mutiny mode.
    • -
    • NanoUI airlock and docking controllers.
    • -
    • Completely rewritten shuttle code.
    • -
    • Derelict Z-level replacement: construction site.
    • -
    • Computer3 laptops.
    • -
    • Constructable SMES units.
    • -
    • Omni-directional atmos machinery.
    • -
    • Climbable tables and crates.
    • -
    • Xenoflora added to Science.
    • -
    • Utensils can be used to eat food.
    • -
    • Decks of cards are now around the station.
    • -
    • Service robots can speak languages.
    • -
    • Xenoarch updates and fixes.
    • -
    • Rewritten species-specific gear icon handling.
    • -
    • Cats and borers can be picked up.
    • -
    • Botanist renamed to Gardener.
    • -
    • Hydroponics merged with the Kitchen.
    • -
    • Latejoin spawn points (Arrivals, Cryostorage, Gateway).
    • -
    • Escape pods only launch automatically during emergency evacuations
    • -
    • Escape pods can be made to launch during regular crew transfers using the control panel inside the pod, or by emagging the panel outside the pod
    • -
    • When swiped or emagged, the crew transfer shuttle can be delayed in addition to being launched early
    • -
    - -

    20 June 2014

    -

    Cael_Aislinn updated:

    -
      -
    • New discoverable items added to xenoarchaeology, and new features for some existing ones. Artifact harvesters can now harvest the secondary effect of artifacts as well as the primary one.
      -
    • -
    • Artifact utilisers should be much nicer/easier to use now.
      -
    • Alden-Saraspova counters and talking items should work properly now.
      -
    • -
      -
    - -

    19 June 2014

    -

    Chinsky updated:

    -
      -
    • Adds guest terminals on the map. These wall terminals let anyone issue temporary IDs. Only access that issuer has can be granted, and maximum time pass can be issued for is 20 minutes. All operations are logged in terminals.
    • -
    - -

    15 June 2014

    -

    HarpyEagle updated:

    -
      -
    • Fixed wound autohealing regardless of damage amount. The appropriate wound will now be assigned correctly based on damage amount and type
    • -
    • Fixed several other bugs related wounds that resulted in damage magically disappearing
    • -
    • Fixed various sharp objects not being counted as sharp, bullets in particular
    • -
    • Fixed armour providing more protection from bullets than it was supposed to
    • -
    - -

    13 June 2014

    -

    HarpyEagle updated:

    -
      -
    • Added docking ports for shuttles
    • -
    • Shuttle airlocks will automatically open and close, preventing people from being sucked into space by because someone on another z-level called a shuttle
    • -
    • Some docking ports can also double as airlocks
    • -
    • Docking ports can be overriden to prevent any automatic action. Shuttles will wait for players to open/close doors manually
    • -
    • Shuttles can be forced launched, which will make them not wait for airlocks to be properly closed
    • -
    - -

    03 June 2014

    -

    Hubblenaut updated:

    -
      -
    • Added wheelchairs
    • -
    • Replaced stool in Medical Examination with wheelchair
    • -
    • Using a fire-extinguisher to propel you on a chair can have consequences (drive into walls and people, do it!)
    • -
    - -

    31 May 2014

    -

    Jarcolr updated:

    -
      -
    • 21 New cargo crates, go check them out!
    • -
    • Peanuts have now been added, food items are now being developed.
    • -
    • 2 new cargo groups, Miscellaneous and Supply.
    • -
    • Sugarcane seeds can now be gotten from the seed dispenser.
    • -
    • 5 new satchels when selecting "satchel" for RD, scientist, botanist, virologist, geneticist (disabled) and chemist.
    • -
    • Clicking on a player with a paper/book when you have the eyes selected shows them the book/paper forcefully.
    • -
    - -

    28 May 2014

    -

    Chinsky updated:

    -
      -
    • Adds few new paperBBcode tags, to make up for HTML removal.
    • -
    • [logo] tag draws NT logo image (one from wiki).
    • -
    • [table] [/table] tags mark borders of tables. [grid] [/grid] are borderless tables, useful of making layouts. Inside tables following tags are used: [row] marks beginning of new table row, [cell] - beginning of new table cell.
    • -
    - -

    23 May 2014

    -

    Hubble updated:

    -
      -
    • Personal lockers are now resettable
    • -
    • Take off people's accessories or change their sensors in the drag and drop-interface
    • -
    • Merge paper bundles by hitting one with another
    • -
    • Line breaks in Security, Medical and Employment Records
    • -
    • Record printouts will have names on it
    • -
    • Set other people's internals in belt and suit storage slots
    • -
    • No longer changing suit sensors while cuffed
    • -
    • No longer emptying other people's pockets when they are not full yet
    • -
    - -

    16 May 2014

    -

    HarpyEagle updated:

    -
      -
    • Silicon mob types (AI, cyborgs, PAI) can now speak certain species languages depending on type and module
    • -
    • Languages can now be whispered when using the language code with either the whisper verb or the whisper speech code
    • -
    - -

    06 May 2014

    -

    Hubble updated:

    -
      -
    • Clip papers together by hitting a paper with a paper or photo
    • -
    • Adds icons for copied stamps
    • -
    - -

    03 May 2014

    -

    Cael_Aislinn updated:

    -
      -
    • Coming out of nowhere the past few months, the Garland Corporation has made headlines with a new prehistoric theme park delighting travellers with species thought extinct. Now available for research stations everywhere is the technology that made it all possible! Features include:
      - - 13 discoverable prehistoric species to clone from fossils (including 5 brand new ones).
      - - 11 discoverable prehistoric plants to clone from fossils (including 9 brand new ones).
      - - New minigame that involves correctly ordering the genomes inside each genetic sequence to unlock an animal/plant.
      - - Some prehistoric animals and plants may seem strangely familiar... while others may bring more than the erstwhile scientist bargains for.
      -




    • -
    - -

    29 April 2014

    -

    HarpyEagle updated:

    -
      -
    • Webbing vest storage can now be accessed by clicking on the item in inventory
    • -
    • Holsters can be accessed by clicking on them in inventory
    • -
    • Webbings and other suit attachments are now visible on the icon in inventory
    • -
    • Removing jumpsuits now requires drag and drop to prevent accidental undressing
    • -
    • Added an action icon for magboots that can be used to toggle them similar to flashlights
    • -
    • Fuel tanks now spill fuel when wrenched open
    • -
    - -

    25 April 2014

    -

    Various updated:

    -
      -
    • Overhauled saycode, you can now use languages over the radio.
    • -
    • Chamelon items beyond just the suit.
    • -
    • NanoUI Virology
    • -
    • 3D Sounds
    • -
    • AI Channel color for when they want to be all sneaky
    • -
    • New inflatable walls and airlocks for your breach sealing pleasure.
    • -
    • Carbon Copy papers, so you can subject everyone to your authority and paperwork, but mainly paperwork
    • -
    • Undershirts and rolling down jumpsuits
    • -
    • Insta-hit tasers, can be shot through glass as well.
    • -
    • Changeling balances, an emphasis put more on stealth.
    • -
    • Genetics disabled
    • -
    • Telescience removed, might be added again when we come up with a less math headache enducing version of it.
    • -
    • Bugfixes galore!
    • -
    - -

    11 April 2014

    -

    Jarcolr updated:

    -
      -
    • You can now flip coins like a D2
    • -
    • Miscellaneous cargo crates got a tiny buff, Standard Costume crate is now Costume Crate
    • -
    • Grammar patch,telekinesis/amputated arm exploit fixes,more in the future
    • -
    • Grille kicking now does less damage
    • -
    • TELESCOPIC baton no longer knocks anybody down,still got a lot of force though
    • -
    • Other small-ish changes and fixes that aren't worth mentioning
    • -
    - -

    06 April 2014

    -

    RavingManiac updated:

    -
      -
    • Tape recorders and station-bounced radios now work inside containers and closets.
    • -
    - -

    30 March 2014

    -

    RavingManiac updated:

    -
      -
    • Inflatable walls and doors added. Useful for sealing off hull breaches, but easily punctured by sharp objects and Tajarans.
    • -
    - -

    10 March 2014

    -

    Chinsky updated:

    -
      -
    • Viruses now affect certain range of species, different for each virus
    • -
    • Spaceacilline now prevents infection, and has a small chance to cure viruses at Stage 1. It does not give them antibodies though, so they can get sick again!
    • -
    • Biosuits and spacesuits now offer more protection against viruses. Full biosuit competely prevents airborne infection, when coupled with gloves they both protect quite well from contact ones
    • -
    • Sneezing now spreads viruses in front of mob. Sometimes he gets a warning beforehand though
    • -
    - -

    05 March 2014

    -

    RavingManiac updated:

    -
      -
    • Smartfridges added to the bar, chemistry and virology. No more clutter!
    • -
    • A certain musical instrument has returned to the bar.
    • -
    • There is now a ten second delay between ingesting a pill/donut/milkshake and regretting it.
    • -
    - -

    01 March 2014

    -

    Various updated:

    -
      -
    • Paint Mixing, red and blue makes purple!
    • -
    • New posters to tell you to respect those darned cat people
    • -
    • NanoUI for APC's, Canisters, Tank Transfer Valves and the heaters / coolers
    • -
    • PDA bombs are now less annoying, and won't always blow up / cause internal bleeding
    • -
    • Blob made less deadly
    • -
    • Objectiveless Antags now a configuration option, choose your own adventure!
    • -
    • Engineering redesign, now with better monitoring of the explodium supermatter!
    • -
    • Security EOD
    • -
    • New playable race, IPC's, go beep boop boop all over the station!
    • -
    • Gamemode autovoting, now players don't have to call for gamemode votes, it's automatic!
    • -
    - -

    19 February 2014

    -

    Aryn updated:

    -
      -
    • New air model. Nothing should change to a great degree, but temperature flow might be affected due to closed connections not sticking around.
    • -
    - -

    01 February 2014

    -

    Various updated:

    -
      -
    • NanoUI for PDA
    • -
    • Write in blood while a ghost in cult rounds with enough cultists
    • -
    • Cookies, absurd sandwiches, and even cookable dioanae nymphs!
    • -
    • A bunch of new guns and other weapons
    • -
    • Species specific blood
    • -
    - -

    01 January 2014

    -

    Various updated:

    -
      -
    • AntagHUD and MedicalHUD for ghosts, see who the baddies are, check for new configuration options.
    • -
    • Ghosts will now have bold text if they are in the same room as the person making conversations easier to follow.
    • -
    • New hairstyles! Now you can use something other then hotpink floor length braid.
    • -
    • DNA rework, tell us how you were cloned and became albino!
    • -
    • Dirty floors, so now you know exactly how lazy the janitors are!
    • -
    • A new UI system, feel free to color it yourself, don't set it to completely clear or you will have a bad time.
    • -
    • Cryogenic storage, for all your SSD needs.
    • -
    • New hardsuits for those syndicate tajaran
    • -
    - -

    18 December 2013

    -

    RavingManiac updated:

    -
      -
    • Mousetraps can now be "hidden" through the right-click menu. This makes them go under tables, clutter and the like. The filthy rodents will never see it coming!
    • -
    • Monkeys will no longer move randomly while being pulled.
    • -
    - -

    01 December 2013

    -

    Various Developers banged their keyboards together: updated:

    -
      -
    • New Engine, the supermatter, figure out what a cooling loop is, or don't and blow up engineering!
    • -
    • Each department will have it's own fax, make a copy of your butt and fax it to the admins!
    • -
    • Booze and soda dispensers, they are like chemmasters, only with booze and soda!
    • -
    • Bluespace and Cryostasis beakers, how do they work? Fuggin bluespace how do they work?
    • -
    • You can now shove things into vending machines, impress your friends on how things magically disappear out of your hands into the machine!
    • -
    • Robots and Androids (And gynoids too!) can now use custom job titles
    • -
    • Various bugfixes
    • -
    - -

    24 November 2013

    -

    Yinadele updated:

    -
      -
    • Supermatter engine added! Please treat your new engine gently, and report any strangeness!
    • -
    • Rebalanced events so people don't explode into appendicitis or have their organs constantly explode.
    • -
    • Vending machines have had bottled water, iced tea, and grape soda added.
    • -
    • Head reattachment surgery added! Sew heads back on proper rather than monkey madness.
    • -
    • Pain crit rebalanced - Added aim variance depending on pain levels, nerfed blackscreen severely.
    • -
    • Cyborg alt titles: Robot, and Android added! These will make you spawn as a posibrained robot. Please enjoy!
    • -
    • Fixed the sprite on the modified welding goggles, added a pair to the CE's office where they'll be used.
    • -
    • Fixed atmos computers- They are once again responsive!
    • -
    • Added in functionality proper for explosive implants- You can now set their level of detonation, and their effects are more responsively concrete depending on setting.
    • -
    • Hemostats re-added to autolathe!
    • -
    • Added two manuals on atmosia and EVA, by MagmaRam! Found in engineering and the engineering bookcase.
    • -
    • Fixed areas in medbay to have fully functional APC sectors.
    • -
    • Girders are now lasable.
    • -
    • Please wait warmly, new features planned for next merge!
    • -
    - -

    23 November 2013

    -

    Ccomp5950 updated:

    -
      -
    • Players are now no longer able to commit suicide with a lasertag gun, and will feel silly for doing so.
    • -
    • Ghosts hit with the cult book shall now actually become visible.
    • -
    • The powercells spawned with Exosuits will now properly be named to not confuse bearded roboticists.
    • -
    • Blindfolded players will now no longer require eye surgery to repair their sight, removing the blindfold will be sufficient.
    • -
    • Atmospheric Technicians will now have access to Exterior airlocks.
    • -
    - -

    01 November 2013

    -

    Various updated:

    -
      -
    • Autovoting, Get off the station when your 15 hour workweek is done, thanks unions!
    • -
    • Some beach props that Chinsky finds useless.
    • -
    • Updated NanoUI
    • -
    • Dialysis while in sleepers - removes reagents from mobs, like the chemist, toss him in there!
    • -
    • Pipe Dispensers can now be ordered by Cargo
    • -
    • Fancy G-G-G-G-Ghosts!
    • -
    - -

    29 October 2013

    -

    Cael_Aislinn updated:

    -
      -
    • Xenoarchaeology's chemical analysis and six analysis machines are gone, replaced by a single one which can be beaten in a minigame.
    • -
    • Sneaky traitors will find new challenges to overcome at the research outpost, but may also find new opportunities (transit tubes can now be traversed).
    • -
    • Finding active alien machinery should now be made significantly easier with the Alden-Saraspova counter.
    • -
    - -

    06 October 2013

    -

    Chinsky updated:

    -
      -
    • Return of dreaded side effects. They now manifest well after their cause disappears, so curing them should be possible without them reappearing immediately. They also lost last stage damaging effects.
    • -
    - -

    24 September 2013

    -

    Snapshot updated:

    -
      -
    • Removed hidden vote counts.
    • -
    • Removed hiding of vote results.
    • -
    • Removed OOC muting during votes.
    • -
    • Crew transfers are no longer callable during Red and Delta alert.
    • -
    • Started work on Auto transfer framework.
    • -
    - -

    18 September 2013

    -

    Kilakk updated:

    -
      -
    • Fax machines! The Captain and IA agents can use the fax machine to send properly formatted messages to Central Command.
    • -
    • Gave the fax machine a fancy animated sprite. Thanks Cajoes!
    • -
    - -

    08 August 2013

    -

    Erthilo updated:

    -
      -
    • Raise Dead rune now properly heals and revives dead corpse.
    • -
    • Admin-only rejuvenate verb now heals all organs, limbs, and diseases.
    • -
    • Cyborg sprites now correctly reset with reset boards. This means cyborg appearances can now be changed without admin intervention.
    • -
    - -

    04 August 2013

    -

    Chinsky updated:

    -
      -
    • Health HUD indicator replaced with Pain indicator. Now health indicator shows pain level instead of actual vitals level. Some types of damage contribute more to pain, some less, usually feeling worse than they really are.
    • -
    - -

    01 August 2013

    -

    Asanadas updated:

    -
      -
    • The Null Rod has recovered its de-culting ability, for balance reasons. Metagaming with it is a big no-no!
    • -
    • Holy Water as a liquid is able to de-cult. Less effective, but less bloody. May be changed over the course of time for balance.
    • -
    -

    CIB updated:

    -
      -
    • Chilis and cold chilis no longer kill in small amounts
    • -
    • Chloral now again needs around 5 units to start killing somebody
    • -
    -

    Cael Aislinn updated:

    -
      -
    • Security bots will now target hostile mobs, and vice versa.
    • -
    • Carp should actually emigrate now, instead of just immigrating then squatting around the outer hull.
    • -
    • Admins and moderators have been split up into separate 'who' verbs (adminwho and modwho respectively).
    • -
    -

    CaelAislinn updated:

    -
      -
    • Re-added old ion storm laws, re-added grid check event.
    • -
    • Added Rogue Drone and Vermin Infestation random events.
    • -
    • Added/fixed space vines random event.
    • -
    • Updates to the virus events.
    • -
    • Spider infestation and alien infestation events turned off by default.
    • -
    • Soghun, taj and skrell all have unique language text colours.
    • -
    • Moderators will no longer be listed in adminwho, instead use modwho.
    • -
    -

    Cael_Aislinn updated:

    - -

    Chinsky updated:

    -
      -
    • Old new medical features:
    • -
    • Autoinjectors! They come preloaded with 5u of inapro, can be used instantly, and are one-use. You can replace chems inside using a syringe. Box of them is added to Medicine closet and medical supplies crate.
    • -
    • Splints! Target broken liimb and click on person to apply. Can be taken off in inventory menu, like handcuffs. Splinted limbs have less negative effects.
    • -
    • Advanced medikit! Red and mean, all doctors spawn with one. Contains better stuff - advanced versions of bandaids and aloe heal 12 damage on the first use.
    • -
    • Wounds with damage above 50 won't heal by themselves even if bandaged/salved. Would have to seek advanced medical attention for those.
    • -
    -

    Erthilo updated:

    -
      -
    • Fixed SSD (logged-out) players not staying asleep.
    • -
    • Fixed set-pose verb and mice emotes having extra periods.
    • -
    • Fixed virus crate not appearing and breaking supply shuttle.
    • -
    • Fixed newcaster photos not being censored.
    • -
    -

    Gamerofthegame updated:

    -
      -
    • Miscellaneous mapfixes.
    • -
    -

    GauHelldragon updated:

    -
      -
    • Servicebots now have RoboTray and Printing Pen. Robotray can be used to pick up and drop food/drinks. Printing pen can alternate between writing mode and rename paper mode by clicking it.
    • -
    • Farmbots. A new type of robot that weeds, waters and fertilizes. Use robot arm on water tank. Then use plant analyzer, mini-hoe, bucket and finally proximity sensor.
    • -
    • Chefs can clang their serving trays with a rolling pin. Just like a riot shield!
    • -
    -

    Jediluke69 updated:

    -
      -
    • Added 5 new drinks (Kira Special, Lemonade, Brown Star, Milkshakes, Rewriter)
    • -
    • Nanopaste now heals about half of what it used to
    • -
    • Ballistic crates should now come with shotguns loaded with actual shells no more beanbags
    • -
    • Iced tea no longer makes a glass of .what?
    • -
    -

    Jupotter updated:

    -
      -
    • Fix the robotiscist preview in the char setupe screen
    • -
    -

    Kilakk updated:

    -
      -
    • Added the Xenobiologist job. Has access to the research hallway and to xenobiology.
    • -
    • Removed Xenobiology access from Scientists.
    • -
    • Removed the Xenobiologist alternate title from Scientists.
    • -
    • Added "Xenoarchaeology" to the RD, Scientists, and to the ID computer.
    • -
    • Changed the Research Outpost doors to use "Xenoarchaeology" access.
    • -
    -

    Meyar updated:

    -
      -
    • The syndicate shuttle now has a cycling airlock during Nuke rounds.
    • -
    • Restored the ability for the syndicate Agent ID to change the name on the card (reforge it) more than once.
    • -
    • ERT Radio now functional again.
    • -
    • Research blast doors now actually lock down the entirety of station-side Research.
    • -
    • Added lock down buttons to the wardens office.
    • -
    • The randomized barsign has made a return.
    • -
    • Syndicate Agent ID's external airlock access restored.
    • -
    -

    NerdyBoy1104 updated:

    -
      -
    • New Botany additions: Rice and Plastellium. New sheet material: Plastic.
    • -
    • Plastellium is refined into plastic by first grinding the produce to get plasticide. 20 plasticide + 10 polytrinic acid makes 10 sheets of plastic which can be used to make crates, forks, spoons, knives, ashtrays or plastic bags from.
    • -
    • Rice seeds grows into rice stalks that you grind to get rice. 10 Rice + 5 Water makes boiled rice, 10 rice + 5 milk makes rice pudding, 10 rice + 5 universal enzyme (in beaker) makes Sake.
    • -
    -

    RavingManiac updated:

    -
      -
    • You can now stab people with syringes using the "harm" intent. This destroys the syringe and transfers a random percentage of its contents into the target. Armor has a 50% chance of blocking the syringe.
    • -
    -

    Segrain updated:

    -
      -
    • Meteor showers actually spawn meteors now.
    • -
    • Engineering tape fits into toolbelt and can be placed on doors.
    • -
    • Pill bottles can hold paper.
    • -
    -

    SkyMarshal updated:

    -
      -
    • Fixed ZAS
    • -
    • Fixed Fire
    • -
    -

    Spamcat updated:

    -
      -
    • Figured I should make one of these. Syringestabbing now produces a broken syringe complete with fingerprints of attacker and blood of a victim, so dispose your evidence carefully. Maximum transfer amount per stab is lowered to 10.
    • -
    -

    VitrescentTortoise updated:

    -
      -
    • Added a third option for not getting any job preferences. It allows you to return to the lobby instead of joining.
    • -
    -

    Whitellama updated:

    -
      -
    • One-antag rounds (like wizard/ninja) no longer end automatically upon death
    • -
    • Space ninja has been implemented as a voteable gamemode
    • -
    • Space ninja spawn landmarks have been implemented (but not yet placed on the map), still spawn at carps-pawns instead. (The code will warn you about this and ask you to report it, it's a known issue.)
    • -
    • Five new space ninja directives have been added, old directives have been reworded to be less harsh
    • -
    • Space ninjas have been given their own list as antagonists, and are no longer bundled up with traitors
    • -
    • Space ninjas with a "steal a functional AI" objective will now succeed by downloading one into their suits
    • -
    • Space ninja suits' exploding on death has been nerfed, so as not to cause breaches
    • -
    • A few space ninja titles/names have been added and removed to be slightly more believable
    • -
    • The antagonist selector no longer chooses jobbanned players when it runs out of willing options
    • -
    -

    Zuhayr updated:

    -
      -
    • Added pneumatic cannon and harpoons.
    • -
    • Added embedded projectiles. Bullets and thrown weapons may stick in targets. Throwing them by hand won't make them stick, firing them from a cannon might. Implant removal surgery will get rid of shrapnel and stuck items.
    • -
    -

    faux updated:

    -
      -
    • Mixed Wardrobe Closet now has colored shoes and plaid skirts.
    • -
    • Dress uniforms added to the Captain, RD, and HoP wardrobe closets. A uniform jacket has also been added to the Captain's closet. HoS' hat has been re-added to their closet. I do not love the CMO and CE enough to give them anything.
    • -
    • Atheletic closet now has five different swimsuits *for the ladies* in them. If you are a guy, be prepared to be yelled at if you run around like a moron in one of these. Same goes for ladies who run around in shorts with their titties swaying in the space winds.
    • -
    • A set of dispatcher uniforms will spawn in the security closet. These are for playtesting the dispatcher role.
    • -
    • New suit spawns in the laundry room. It's for geezer's only. You're welcome, Book.
    • -
    • Nurse outfit variant, orderly uniform, and first responder jacket will now spawn in the medical wardrobe closet.
    • -
    • A white wedding dress will spawn in the chaplain's closet. There are also several dresses currently only adminspawnable. Admins: Look either under "bride" or "dress." The bride one leads to the colored wedding dresses, and there are some other kinds of dresses under dress.
    • -
    • No more luchador masks or boxing gloves or boxing ring. You guys have a swimming pool now, dip in and enjoy it.
    • -
    • he meeting hall has been replaced with an awkwardly placed security office meant for prisoner processing.
    • -
    • Added a couple more welding goggles to engineering since you guys liked those a lot.
    • -
    • Flasks spawn behind the bar. Only three. Don't fight over them. I don't know how to add them to the bar vending machine otherwise I would have done that instead. Detective, you have your own flask in your office, it's underneath the cigarettes on your desk.
    • -
    • Added two canes to the medical storage, for people who have leg injuries and can't walk good and stuff. I do not want to see doctors pretending to be House. These are for patients. Do not make me delete this addition and declare you guys not being able to have nice things.
    • -
    • Secondary entance to EVA now directly leads into the medbay hardsuit section. Sorry for any inconviences this will cause. The CMO can now fetch the hardsuits whenever they want.
    • -
    • Secondary security hardsuit has been added to the armory. Security members please stop stealing engineer's hardsuits when you guys want to pair up for space travel.
    • -
    • Firelocks have been moved around in the main hallways to form really ghetto versions of airlocks.
    • -
    • Violin spawns in theatre storage now. I didn't put the piano there though, that was someone else.
    • -
    • Psych office in medbay has been made better looking.
    • -
    -

    proliberate updated:

    -
      -
    • Station time is now displayed in the status tab for new players and AIs.
    • -
    - -

    30 July 2013

    -

    Erthilo updated:

    -
      -
    • EFTPOS and ATM machines should now connect to databases.
    • -
    • Gravitational Catapults can now be removed from mechs.
    • -
    • Ghost manifest rune paper naming now works correctly.
    • -
    • Fix for newscaster special characters. Still not recommended.
    • -
    -

    Kilakk updated:

    -
      -
    • Added colored department radio channels.
    • -
    - -

    28 July 2013

    -

    Segrain updated:

    -
      -
    • Camera console circuits can be adjusted for different networks.
    • -
    • Nuclear operatives and ERT members have built-in cameras in their helmets. Activate helmet to initialize it.
    • -
    - -

    26 July 2013

    -

    Kilakk updated:

    -
      -
    • Brig cell timers will no longer start counting down automatically.
    • -
    • Separated the actual countdown timer from the timer controls. Pressing "Set" while the timer is counting down will reset the countdown timer to the time selected.
    • -
    - -

    11 July 2013

    -

    Chinsky updated:

    -
      -
    • Gun delays. All guns now have delays between shots. Most have less than second, lasercannons and pulse rifles have around 2 seconds delay. Automatics have zero, click-speed.
    • -
    - -

    06 July 2013

    -

    Chinsky updated:

    -
      -
    • Humans now can be infected with more than one virus at once.
    • -
    • All analyzed viruses are put into virus DB. You can view it and edit their name and description on medical record consoles.
    • -
    • Only known viruses (ones in DB) will be detected by the machinery and HUDs.
    • -
    • Viruses cause fever, body temperature rising the more stage is.
    • -
    • Humans' body temperature does not drift towards room one unless there's big difference in them.
    • -
    • Virus incubators now can transmit viuses from dishes to blood sample.
    • -
    • New machine - centrifuge. It can isolate antibodies or viruses (spawning virus dish) from a blood sample in vials. Accepts vials only.
    • -
    • Fancy vial boxes in virology, one of them is locked by ID with MD access.
    • -
    • Engineered viruses are now ariborne too.
    • -
    - -

    05 July 2013

    -

    Spamcat updated:

    -
      -
    • Pulse! Humans now have hearbeat rate, which can be measured by right-clicking someone - Check pulse or by health analyzer. Medical machinery also has heartbeat monitors. Certain meds and conditions can influence it.
    • -
    - -

    03 July 2013

    -

    Segrain updated:

    -
      -
    • Security and medical cyborgs can use their HUDs to access records.
    • -
    - -

    28 June 2013

    -

    Segrain updated:

    -
      -
    • AIs are now able to examine what they see.
    • -
    - -

    27 June 2013

    -

    Segrain updated:

    -
      -
    • ID cards properly setup bloodtype, DNA and fingerprints again.
    • -
    - -

    26 June 2013

    -

    Segrain updated:

    -
      -
    • Autopsy scanner properly displays time of wound infliction and death.
    • -
    • Autopsy scanner properly displays wounds by projectile weapons.
    • -
    -

    Whitellama updated:

    -
      -
    • One-antag rounds (like wizard/ninja) no longer end automatically upon death
    • -
    • Space ninja has been implemented as a voteable gamemode
    • -
    • Space ninja spawn landmarks have been implemented (but not yet placed on the map), still spawn at carps-pawns instead. (The code will warn you about this and ask you to report it, it's a known issue.)
    • -
    • Five new space ninja directives have been added, old directives have been reworded to be less harsh
    • -
    • Space ninjas have been given their own list as antagonists, and are no longer bundled up with traitors
    • -
    • Space ninjas with a "steal a functional AI" objective will now succeed by downloading one into their suits
    • -
    • Space ninja suits' exploding on death has been nerfed, so as not to cause breaches
    • -
    • A few space ninja titles/names have been added and removed to be slightly more believable
    • -
    • The antagonist selector no longer chooses jobbanned players when it runs out of willing options
    • -
    - -

    23 June 2013

    -

    Segrain updated:

    -
      -
    • Airlocks of various models can be constructed again.
    • -
    -

    faux updated:

    -
      -
    • There has been a complete medbay renovation spearheaded by Vetinarix. http://baystation12.net/forums/viewtopic.php?f=20&t;=7847 <-- Please put any commentary good or bad, here.
    • -
    • Some maintenance doors within RnD and Medbay have had their accesses changed. Maintenance doors in the joint areas (leading to the research shuttle, virology, and xenobiology) are now zero access. Which means anyone in those joints can enter the maintenance tunnels. This was done to add additional evacuation locations during radiation storms. Additional maintenance doors were added to the tunnels in these areas to prevent docs and scientists from running about.
    • -
    • Starboard emergency storage isn't gone now, it's simply located in the escape wing.
    • -
    • An engineering training room has been added to engineering. This location was previously where surgery was located. If you are new to engineering or need to brush up on your skills, please use this area for testing.
    • -
    - -

    22 June 2013

    -

    Cael_Aislinn updated:

    -
      -
    • The xenoarchaeology depth scanner will now tell you what energy field is required to safely extract a find.
    • -
    • Excavation picks will now dig faster, and xenoarchaeology as a whole should be easier to do.
    • -
    - -

    21 June 2013

    -

    Jupotter updated:

    -
      -
    • Fix the robotiscist preview in the char setupe screen
    • -
    - -

    18 June 2013

    -

    Segrain updated:

    -
      -
    • Fixed some bugs in windoor construction.
    • -
    • Secure windoors are made with rods again.
    • -
    • Windoors drop their electronics when broken. Emagged windoors can have theirs removed by crowbar.
    • -
    • Airlock electronics can be configured to make door open for any single access on it instead of all of them.
    • -
    • Cyborgs can preview their icons before choosing.
    • -
    - -

    13 June 2013

    -

    Kilakk updated:

    -
      -
    • Added the Xenobiologist job. Has access to the research hallway and to xenobiology.
    • -
    • Removed Xenobiology access from Scientists.
    • -
    • Removed the Xenobiologist alternate title from Scientists.
    • -
    • Added "Xenoarchaeology" to the RD, Scientists, and to the ID computer.
    • -
    • Changed the Research Outpost doors to use "Xenoarchaeology" access.
    • -
    - -

    12 June 2013

    -

    Zuhayr updated:

    -
      -
    • Added pneumatic cannon and harpoons.
    • -
    • Added embedded projectiles. Bullets and thrown weapons may stick in targets. Throwing them by hand won't make them stick, firing them from a cannon might. Implant removal surgery will get rid of shrapnel and stuck items.
    • -
    - -

    11 June 2013

    -

    Meyar updated:

    -
      -
    • Fixes a security door with a firedoor ontop of it.
    • -
    • Fixed a typo relating to the admin Select Equipment Verb. (It's RESPONSE team not RESCUE team)
    • -
    • ERT are now automated, from their spawn to their shuttle. Admin intervention no longer required! (Getting to the mechs still requires admin permission generally)
    • -
    • Added flashlights to compensate for the weakened PDA lights
    • -
    • ERT Uniforms updated to be in line with Centcom uniforms. No more turtlenecks, no sir.
    • -
    - -

    09 June 2013

    -

    Segrain updated:

    -
      -
    • Emagged supply console can order SpecOp crates again.
    • -
    - -

    06 June 2013

    -

    Asanadas updated:

    -
      -
    • Added a whimsical suit to the head of personnel's secret clothing locker.
    • -
    -

    Meyar updated:

    -
      -
    • Disposal's mail routing fixed. Missing pipes replaced.
    • -
    • Chemistry is once again a part of the disposals delivery circuit.
    • -
    • Added missing sorting junctions to Security and HoS office.
    • -
    • Fixed a duplicate sorting junction.
    • -
    - -

    05 June 2013

    -

    Chinsky updated:

    -
      -
    • Load bearing equipment - webbings and vests for engineers and sec. Attach to jumpsuit, use 'Look in storage' verb (object tab) to open.
    • -
    -

    Segrain updated:

    -
      -
    • Exosuits now can open firelocks by walking into them.
    • -
    - -

    01 June 2013

    -

    Chinsky updated:

    -
      -
    • Bloody footprints! Now stepping in the puddle will dirty your shoes/feet and make you leave bloody footprints for a bit.
    • -
    • Blood now dries up after some time. Puddles take ~30 minutes, small things 5 minutes.
    • -
    • Untreated wounds now heal. No more toe stubs spamming you with pain messages for the rest of the shift.
    • -
    • On the other side, everything is healed slowly. Maximum you cna squeeze out of first aid is 0.5 health per tick per organ. Lying down makes it faster too, by 1.5x factor.
    • -
    • Lids! Click beaker/bottle in hand to put them on/off. Prevent spilling
    • -
    • Added 'hailer' to security lockers. If used in hand, says "Halt! Security!". For those who can't run and type.
    • -
    - -

    31 May 2013

    -

    Segrain updated:

    -
      -
    • Portable canisters now properly connect to ports beneath them on map load.
    • -
    • Fixed unfastening gas meters.
    • -
    - -

    30 May 2013

    -

    Segrain updated:

    -
      -
    • Meteor showers actually spawn meteors now.
    • -
    • Engineering tape fits into toolbelt and can be placed on doors.
    • -
    • Pill bottles can hold paper.
    • -
    -

    Spamcat updated:

    -
      -
    • Pill bottle capacity increased to 14 items.
    • -
    • Fixed Lamarr (it now spawns properly)
    • -
    -

    proliberate updated:

    -
      -
    • Station time is now displayed in the status tab for new players and AIs.
    • -
    - -

    28 May 2013

    -

    Erthilo updated:

    -
      -
    • Fixes everyone being able to understand alien languages. HERE IS YOUR TOWER OF BABEL
    • -
    -

    VitrescentTortoise updated:

    -
      -
    • Wizard's forcewall now works.
    • -
    - -

    26 May 2013

    -

    Chinsky updated:

    -
      -
    • Tentacles! Now clone damage will make you horribly malformed like examine text says.
    • -
    -

    Meyar updated:

    -
      -
    • The syndicate shuttle now has a cycling airlock during Nuke rounds.
    • -
    • Restored the ability for the syndicate Agent ID to change the name on the card (reforge it) more than once.
    • -
    • ERT Radio now functional again.
    • -
    • Research blast doors now actually lock down the entirety of station-side Research.
    • -
    • Added lock down buttons to the wardens office.
    • -
    • The randomized barsign has made a return.
    • -
    • Syndicate Agent ID's external airlock access restored.
    • -
    -

    VitrescentTortoise updated:

    -
      -
    • Added a third option for not getting any job preferences. It allows you to return to the lobby instead of joining.
    • -
    - -

    25 May 2013

    -

    Erthilo updated:

    -
      -
    • Fixes alien races appearing an unknown when speaking their language.
    • -
    • Fixes alien races losing their language when cloned.
    • -
    • Fixes UI getting randomly reset when trying to change it in Genetics Scanners.
    • -
    - -

    21 May 2013

    -

    SkyMarshal updated:

    -
      -
    • ZAS will now speed air movement into/out of a zone when unsimulated tiles (e.g. space) are involved, in relation to the number of tiles.
    • -
    • Portable Canisters will now automatically connect to any portable connecter beneath them on map load.
    • -
    • Bug involving mis-mapped disposal junction fixed
    • -
    • Air alarms now work for atmos techs (whoops!)
    • -
    • The Master Controller now properly stops atmos when it runtimes.
    • -
    • Backpacks can no longer be contaminated
    • -
    • ZAS no longer logs air statistics.
    • -
    • ZAS now rebuilds as soon as it detects a semi-complex change in geometry. (It was doing this already, but in a convoluted way which was actually less efficient)
    • -
    • General code cleanup/commenting of ZAS
    • -
    • Jungle now initializes after the random Z-level loads and atmos initializes.
    • -
    - -

    15 May 2013

    -

    Spamcat updated:

    -
      -
    • Added telescopic batons to HoS's and captain's lockers. These are quite robust and easily concealable.
    • -
    - -

    14 May 2013

    -

    Cael_Aislinn updated:

    -
      -
    • Depth scanners can now be used to determine what material archaeological deposits are made of, meaning lab analysis is no longer required.
    • -
    • Some useability issues with xenoarchaeology tools have been resolved, and the transit pods cycle automatically now.
    • -
    - -

    24 April 2013

    -

    Jediluke69 updated:

    -
      -
    • Added 5 new drinks (Kira Special, Lemonade, Brown Star, Milkshakes, Rewriter)
    • -
    • Nanopaste now heals about half of what it used to
    • -
    • Ballistic crates should now come with shotguns loaded with actual shells no more beanbags
    • -
    • Iced tea no longer makes a glass of .what?
    • -
    -

    NerdyBoy1104 updated:

    -
      -
    • New Botany additions: Rice and Plastellium. New sheet material: Plastic.
    • -
    • Plastellium is refined into plastic by first grinding the produce to get plasticide. 20 plasticide + 10 polytrinic acid makes 10 sheets of plastic which can be used to make crates, forks, spoons, knives, ashtrays or plastic bags from.
    • -
    • Rice seeds grows into rice stalks that you grind to get rice. 10 Rice + 5 Water makes boiled rice, 10 rice + 5 milk makes rice pudding, 10 rice + 5 universal enzyme (in beaker) makes Sake.
    • -
    -

    faux updated:

    -
      -
    • Mixed Wardrobe Closet now has colored shoes and plaid skirts.
    • -
    • Dress uniforms added to the Captain, RD, and HoP wardrobe closets. A uniform jacket has also been added to the Captain's closet. HoS' hat has been re-added to their closet. I do not love the CMO and CE enough to give them anything.
    • -
    • Atheletic closet now has five different swimsuits *for the ladies* in them. If you are a guy, be prepared to be yelled at if you run around like a moron in one of these. Same goes for ladies who run around in shorts with their titties swaying in the space winds.
    • -
    • A set of dispatcher uniforms will spawn in the security closet. These are for playtesting the dispatcher role.
    • -
    • New suit spawns in the laundry room. It's for geezer's only. You're welcome, Book.
    • -
    • Nurse outfit variant, orderly uniform, and first responder jacket will now spawn in the medical wardrobe closet.
    • -
    • A white wedding dress will spawn in the chaplain's closet. There are also several dresses currently only adminspawnable. Admins: Look either under "bride" or "dress." The bride one leads to the colored wedding dresses, and there are some other kinds of dresses under dress.
    • -
    • No more luchador masks or boxing gloves or boxing ring. You guys have a swimming pool now, dip in and enjoy it.
    • -
    • he meeting hall has been replaced with an awkwardly placed security office meant for prisoner processing.
    • -
    • Added a couple more welding goggles to engineering since you guys liked those a lot.
    • -
    • Flasks spawn behind the bar. Only three. Don't fight over them. I don't know how to add them to the bar vending machine otherwise I would have done that instead. Detective, you have your own flask in your office, it's underneath the cigarettes on your desk.
    • -
    • Added two canes to the medical storage, for people who have leg injuries and can't walk good and stuff. I do not want to see doctors pretending to be House. These are for patients. Do not make me delete this addition and declare you guys not being able to have nice things.
    • -
    • Secondary entance to EVA now directly leads into the medbay hardsuit section. Sorry for any inconviences this will cause. The CMO can now fetch the hardsuits whenever they want.
    • -
    • Secondary security hardsuit has been added to the armory. Security members please stop stealing engineer's hardsuits when you guys want to pair up for space travel.
    • -
    • Firelocks have been moved around in the main hallways to form really ghetto versions of airlocks.
    • -
    • Violin spawns in theatre storage now. I didn't put the piano there though, that was someone else.
    • -
    • Psych office in medbay has been made better looking.
    • -
    - -

    17 April 2013

    -

    SkyMarshal updated:

    -
      -
    • ZAS is now more deadly, as per decision by administrative team. May be tweaked, but currently AIRFLOW is the biggest griefer.
    • -
    • World startup optimized, many functions now delayed until a player joins the server. (Reduces server boot time significantly)
    • -
    • Zones will now equalize air more rapidly.
    • -
    • ZAS now respects active magboots when airflow occurs.
    • -
    • Airflow will no longer throw you into doors and open them.
    • -
    • Race condition in zone construction has been fixed, so zones connect properly at round start.
    • -
    • Plasma effects readded.
    • -
    • Fixed runtime involving away mission.
    • -
    - -

    11 April 2013

    -

    SkyMarshal updated:

    -
      -
    • Fire has been reworked.
    • -
    • In-game variable editor is both readded and expanded with fire controlling capability.
    • -
    - -

    09 April 2013

    -

    SkyMarshal updated:

    -
      -
    • Fire Issues (Firedoors, Flamethrowers, Incendiary Grenades) fixed.
    • -
    • Fixed a bad line of code that was preventing autoignition of flammable gas mixes.
    • -
    • Volatile fuel is burned up after a point.
    • -
    • Partial-tile firedoors removed. This is due to ZAS breaking when interacting with them.
    • -
    - -

    04 April 2013

    -

    SkyMarshal updated:

    -
      -
    • Fixed ZAS
    • -
    • Fixed Fire
    • -
    -

    Spamcat updated:

    -
      -
    • Blood type is now saved in character creation menu, no need to edit it manually every round.
    • -
    - -

    27 March 2013

    -

    Asanadas updated:

    -
      -
    • The Null Rod has recovered its de-culting ability, for balance reasons. Metagaming with it is a big no-no!
    • -
    • Holy Water as a liquid is able to de-cult. Less effective, but less bloody. May be changed over the course of time for balance.
    • -
    - -

    26 March 2013

    -

    Spamcat updated:

    -
      -
    • Chemmaster now puts pills in pill bottles (if one is inserted).
    • -
    • Stabbing someone with a syringe now deals 3 damage instead of 7 because 7 is like, a crowbar punch.
    • -
    • Lizards can now join mid-round again.
    • -
    • Chemicals in bloodstream will transfer with blood now, so don't get drunk before your blood donation. Viruses and antibodies transfer through blood too.
    • -
    • Virology is working again.
    • -
    - -

    15 March 2013

    -

    Cael_Aislinn updated:

    -
      -
    • Mapped a compact research base on the mining asteroid, with multiple labs and testing rooms. It's reachable through a new (old) shuttle dock that leaves from the research wing on the main station.
    • -
    - -

    14 March 2013

    -

    Spamcat updated:

    -
      -
    • Figured I should make one of these. Syringestabbing now produces a broken syringe complete with fingerprints of attacker and blood of a victim, so dispose your evidence carefully. Maximum transfer amount per stab is lowered to 10.
    • -
    - -

    11 March 2013

    -

    CIB updated:

    -
      -
    • Cloning now requires you to put slabs of meat into the cloning pod to replenish biomass.
    • -
    -

    Cael Aislinn updated:

    -
      -
    • The xenoarchaeology update is here. This includes a major content overhaul and a bunch of new features for xenoarchaeology.
    • -
    • Digsites (strange rock deposits) are now much more nuanced and interesting, and a huge number of minor (non-artifact) finds have been added.
    • -
    • Excavation is now a complex process that involves digging into the rock to the right depth.
    • -
    • Chemical analysis is required for safe excavation of the digsites, in order to determine how best to extract the finds.
    • -
    • Anomalous artifacts have been overhauled and many longstanding bugs with existing effects have been fixed - the anomaly utiliser should now work much more often.
    • -
    • Numerous new artifact effects have been added and some new artifact types can be dug up from the asteroid.
    • -
    • New tools and equipment have been added, including normal and spaceworthy versions of the anomaly suits, excavation tools and other neat gadgets.
    • -
    • Five books have been written by subject matter experts from around the galaxy to help the crew of the Exodus come to grips with this exacting new science (over 3000 words of tutorials!).
    • -
    -

    Chinsky updated:

    -
      -
    • Sec HUDs now can see short versions of sec records.on examine. Med HUDs do same for medical records, and can set medical status of patient.
    • -
    • Damage to the head can now cause brain damage.
    • -
    - -

    09 March 2013

    -

    Cael Aislinn updated:

    -
      -
    • Beekeeping is now possible. Construct an apiary of out wood and embed it into a hydroponics tray, then get a queen bee and bottle of BeezEez from cargo bay. - Hives produce honey and honeycomb, but be wary if the bees start swarming.
    • -
    - -

    06 March 2013

    -

    Cael Aislinn updated:

    -
      -
    • Type 1 thermoelectric generators and the associated binary circulators are now moveable (wrench to secure/unsecure) and orderable via Quartermaster.
    • -
    • code/maps/rust_test.dmm contains an example setup for a functional RUST reactor. Maximum output is in the range of 12 to 20MW (12 to 20 million watts).
    • -
    • Removed double announcement for gridchecks, reduced duration of gridchecks.
    • -
    -

    RavingManiac updated:

    -
      -
    • You can now stab people with syringes using the "harm" intent. This destroys the syringe and transfers a random percentage of its contents into the target. Armor has a 50% chance of blocking the syringe.
    • -
    - -

    05 March 2013

    -

    CIB updated:

    -
      -
    • Added internal organs. They're currently all located in the chest. Use advanced scanner to detect damage. Use the same surgery as for ruptured lungs to fix them.
    • -
    -

    Cael Aislinn updated:

    -
      -
    • Set roundstart music to randomly choose between space.ogg and traitor.ogg (see http://baystation12.net/forums/viewtopic.php?f=5&t;=6972)
    • -
    • All RUST components except for TEGs (which generate the power) are now obtainable ingame, bored engineers should get hold of them and setup an experimental reactor for testing purposes.
    • -
    - -

    27 February 2013

    -

    Gamerofthegame updated:

    -
      -
    • Added the (base gear) ERT preset for the debug command.
    • -
    • Map fixes, Virology hole fixed. Atmospheric fixes for mining and, to a less extent, the science outpost. (No, not cycling airlocks)
    • -
    • Fiddled with the ERT set up location on Centcom. Radmins will now have a even easier time equiping a team of any real pratical size, especially coupled with the above debug command.
    • -
    - -

    25 February 2013

    -

    Cael Aislinn updated:

    -
      -
    • As well as building hull shield generators, normal shield gens can now be built (see http://baystation12.net/forums/viewtopic.php?f=1&t;=6993).
    • -
    • New random events: multiple new system wide-events have been have been added to the newscaster feeds, some not quite as respectable as others.
    • -
    • New random event: some lucky winners will win the TC Daily Grand Slam Lotto, while others may be the target of malicious hackers.
    • -
    - -

    23 February 2013

    -

    Cael Aislinn updated:

    -
      -
    • RUST machinery components should now be researchable (with high requirements) and orderable through QM (with high cost).
    • -
    • Shield machinery should now be researchable (with high requirements) and orderable through QM (with high cost). This one is reportedly buggy.
    • -
    • Rogue vending machines should revert back to normal at the end of the event.
    • -
    • New Unathi hair styles.
    • -
    - -

    22 February 2013

    -

    Chinsky updated:

    -
      -
    • Change to body cavity surgery. Can only put items in chest, groind and head. Max size for item - 3 (chest), 2 (groin), 1 (head). For chest surgery ribs should be bent open, (lung surgery until second scalpel step). Surgery step needs preparation step, with drill. After that you can place item inside, or seal it with cautery to do other step instead.
    • -
    - -

    20 February 2013

    -

    Chinsky updated:

    -
      -
    • Added new surgery: putting items inside people. After you use retractor to keep incision open, just click with any item to put it inside. But be wary, if you try to fit something too big, you might rip the veins. To remove items, use implant removal surgery.
    • -
    • Crowbar can be used as alternative to retractor.
    • -
    • Can now unload guns by clicking them in hand.
    • -
    • Fixed distance calculation in bullet missing chance computation, it was always assuming 1 or 0 tiles. Now distace REALLY matters when you shoot.
    • -
    • To add more FUN to previous thing, bullets missed to not disappear but keep going until they hit something else.
    • -
    • Compressed Matter and Explosive implants spawn properly now.
    • -
    • Tweaks to medical effects: removed itch caused by bandages. Chemical effects now have non-100 chance of appearing, the stronger medicine, the more probality it'll have side effects.
    • -
    - -

    18 February 2013

    -

    Cael Aislinn updated:

    -
      -
    • Security bots will now target hostile mobs, and vice versa.
    • -
    • Carp should actually emigrate now, instead of just immigrating then squatting around the outer hull.
    • -
    • Admins and moderators have been split up into separate 'who' verbs (adminwho and modwho respectively).
    • -
    - -

    14 February 2013

    -

    CIB updated:

    -
      -
    • Medical side-effects(patients are going to come back for secondary treatment)
    • -
    • NT loyalty setting(affects command reports and gives antags hints who might collaborate with them)
    • -
    • Simple animal balance fixes(They're slower now)
    • -
    -

    CaelAislinn updated:

    -
      -
    • Re-added old ion storm laws, re-added grid check event.
    • -
    • Added Rogue Drone and Vermin Infestation random events.
    • -
    • Added/fixed space vines random event.
    • -
    • Updates to the virus events.
    • -
    • Spider infestation and alien infestation events turned off by default.
    • -
    • Soghun, taj and skrell all have unique language text colours.
    • -
    • Moderators will no longer be listed in adminwho, instead use modwho.
    • -
    -

    Gamerofthegame updated:

    -
      -
    • Miscellaneous mapfixes.
    • -
    - -

    13 February 2013

    -

    Erthilo updated:

    -
      -
    • Fixed SSD (logged-out) players not staying asleep.
    • -
    • Fixed set-pose verb and mice emotes having extra periods.
    • -
    • Fixed virus crate not appearing and breaking supply shuttle.
    • -
    • Fixed newcaster photos not being censored.
    • -
    - -

    31 January 2013

    -

    CIB updated:

    -
      -
    • Chilis and cold chilis no longer kill in small amounts
    • -
    • Chloral now again needs around 5 units to start killing somebody
    • -
    - -

    23 January 2013

    -

    Cael_Aislinn updated:

    - - -

    21 January 2013

    -

    Cael_Aislinn updated:

    -
      -
    • Satchels and ore boxes can now hold strange rocks.
    • -
    • Closets and crates can now be built out of 5 and 10 plasteel respectively.
    • -
    • Observers can become mice once more.
    • -
    - -

    13 January 2013

    -

    Chinsky updated:

    -
      -
    • If you get enough (6) blood drips on one tile, it'll turn into a blood puddle. Should make bleeding out more visible.
    • -
    • Security belt now able to hold taser, baton and tape roll.
    • -
    • Added alternative security uniform to Security wardrobes.
    • -
    • Ported Urist cult runes. Down with the crayon drawings! Example: http://dl.dropbox.com/u/26846767/images/SS13/255_symbols.PNG
    • -
    • Engineering tape now require engineer OR atmos access instead of both.
    • -
    • Implants now will react to EMP, possibly in !!FUN!! ways
    • -
    -

    GauHelldragon updated:

    -
      -
    • Servicebots now have RoboTray and Printing Pen. Robotray can be used to pick up and drop food/drinks. Printing pen can alternate between writing mode and rename paper mode by clicking it.
    • -
    • Farmbots. A new type of robot that weeds, waters and fertilizes. Use robot arm on water tank. Then use plant analyzer, mini-hoe, bucket and finally proximity sensor.
    • -
    • Chefs can clang their serving trays with a rolling pin. Just like a riot shield!
    • -
    - -

    07 January 2013

    -

    Cael_Aislinn updated:

    - -

    Chinsky updated:

    -
      -
    • Implants: Explosvie implant, exploding when victim hears the codephrase you set.
    • -
    • Implants: Compressed Matter implat, scan item (making it disappear), inject yourself and recall that item on will!
    • -
    • Implant removal surgery, with !!FUN!! results if you mess up it.
    • -
    • Coats now have pockets again.
    • -
    • Bash people on tabetops. an windows, or with stools. Grab people to bash them on tables or windows (better grab for better hit on windows). Drag stool sprite on you to pick it up, click on it in hand to make it usual stool again.
    • -
    • Surgical caps, and new sprites for bloodbags and fixovein.
    • -
    • Now some surgery steps will bloody your hands, Full-body blood coat in case youy mess up spectacualry.
    • -
    • Ported some crates (Art, Surgery, Sterile equiplemnt).
    • -
    • Changed contraband crates. Posters moved to Art Crate, cigs and lipstick ot party crate. Now contraband crate has illegal booze and illicit drugs.
    • -
    • Finally got evac party lights
    • -
    • Now disfigurment,now it WILL happen when damage is bad enough.
    • -
    • Now if you speak in depressurized area (less than 10 kPa) only people next to you can hear you. Radios still work though.
    • -
    -
    - -
    Baystation 12 Credit List - - - - -
    - Current BS12 Project Maintainers: -Click Here-
    - Currently Active GitHub BS12 contributor list: -Click Here-
    - Code: Abi79, Aryn, Cael_Aislinn, Ccomp5950, Chinsky, cib, CompactNinja, DopeGhoti, Erthilo, Hawk_v3, Head, Ispil, JoeyJo0, Lexusjjss, Melonstorm, Miniature, Mloc, NerdyBoy1104, PsiOmegaDelta, SkyMarshal, Snapshot, Spectre, Strumpetplaya, Sunfall, Tastyfish, Uristqwerty
    - Sprites: Apple_Master, Arcalane, Chinsky, CompactNinja, Deus Dactyl, Erthilo, Flashkirby, JoeyJo0, Miniature, Searif, Xenone, faux
    - Sounds: Aryn
    - Main Testers: Anyone who has submitted a bug to the issue tracker.
    -
    - -GoonStation 13 Development Team -
    - Coders: Stuntwaffle, Showtime, Pantaloons, Nannek, Keelin, Exadv1, hobnob, Justicefries, 0staf, sniperchance, AngriestIBM, BrianOBlivion
    - Spriters: Supernorn, Haruhi, Stuntwaffle, Pantaloons, Rho, SynthOrange, I Said No
    -
    -
    -

    Creative Commons License
    Except where otherwise noted, Goon Station 13 is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 License.
    Rights are currently extended to SomethingAwful Goons only.

    -

    Some icons by Yusuke Kamiyamane. All rights reserved. Licensed under a Creative Commons Attribution 3.0 License.

    -
    - - + + + + Polaris Changelog + + + + + + + +
    + + + + +
    +
    Space Station 13
    + +

    + Code licensed under AGPLv3. Content licensed under CC BY-SA 3.0.

    + Visit our IRC channel: #polaris on irc.sorcery.net +
    + +
    Polaris Credit List + + + + +
    + Current Project Maintainers: -Click Here-
    + Currently Active GitHub contributor list: -Click Here-
    + Main Testers: Anyone who has submitted a bug to the issue tracker.
    + Thanks to: Baystation 12, /tg/ station, /vg/station, GoonStation devs, the original SpaceStation developers and Mockingjay00 for the title image.
    Also a thanks to anybody who has contributed who is not listed here. Ask to be added here on irc.
    +
    Have a bug to report?
    Visit our Issue Tracker.
    +
    + + +
    +

    02 February 2021

    +

    None updated:

    +
      +
    • Appended /centcom to the escape shuttle again to fix transfer message. Added some escape pods to the list.
    • +
    • /🆑
    • +
    + +

    19 January 2021

    +

    Cerebulon updated:

    +
      +
    • Added button sounds to various machines.
    • +
    +

    KasparoVy updated:

    +
      +
    • Adds orange Teshari goggles, selectable in the loadout.
    • +
    • Adds blindfold & new white (recolorable) blindfold to loadout.
    • +
    • Adds species-fitted Teshari ring sprites.
    • +
    • Adds species-fitted Teshari hudpatches & white blindfold.
    • +
    • Adds full selection of Teshari belted cloaks.
    • +
    • Adds full selection of non-job Teshari hooded cloaks.
    • +
    • Adds a bunch of Teshari worksuits (sprites already existed).
    • +
    • Adds some species-fitted Teshari jacket accessories (tan, charcoal, navy, burgundy, checkered).
    • +
    • Updates all Teshari undercoats and cloaks with new sprites from downstreams.
    • +
    • Fixes Teshari captain glove sprites.
    • +
    +

    Mechoid updated:

    +
      +
    • Adds Wurmwoad, a suspiciously worm-like plant that produces pods of spice.
    • +
    • Adds Wurmwoad to the service borg synthesizer.
    • +
    • Service borgs can work with kitchenware again.
    • +
    • Added system for exosuit over-encumbrance. Combat mechs and Ripleys have higher than default.
    • +
    • Move Rig modules to more granular files
    • +
    • Add RIG components to robotics mechfab, plus incredibly basic belt-voidsuit RIG.
    • +
    • Add Graphite, made by compressing coal, presently only used heavily in RIG components.
    • +
    • Hardpoint Actuator equipment for Exosuits, allowing them (And most effectively, Ripleys) to swap components on the fly, after a short delay.
    • +
    • Exo Inflatables Deployer, allowing exosuits to pick up and deploy inflatables.
    • +
    • Exo screwdriver, wirecutters, and welding laser, to help round-out the tool-based equipment types.
    • +
    • Fire modifiers based on stacks added, to be used by the damage system tweaked above.
    • +
    • Incendiary exo weapons tweaked to conform with fire change.
    • +
    • Ignition effects from weapons changed from the old fire-system to the modifier fire system.
    • +
    • Shocker now retaliates properly against melee.
    • +
    • Animals can be butchered for organs and hide. Requires scraping (sharp), washing (water or washing machine), and then drying (bonfire or drying rack).
    • +
    • Organs can be butchered for meat, named "[organ] meat". Heart meat, liver meat, etc. Brains from player mobs cannot be butchered.
    • +
    +

    Meghan-Rossi updated:

    +
      +
    • Fixed omni filters reacting incorrectly to configuration changes that swap ports.
    • +
    • Fixed borosilicate glass not producing shards in most situations.
    • +
    • Fat (triglyceride) now tastes greasy instead of bitter.
    • +
    • Blood from artifacts will no longer break the pathogenic isolator.
    • +
    • The Tesla Generator is now available from cargo. Coils and grounding rods for it may be printed on the protolathe and autolathe, respectively.
    • +
    • Cooking a mouse into a mouseburger now uses up the mouse.
    • +
    • If you try to put someone in one of their own slots using the stripping menu, now you will instead try to strip that slot.
    • +
    • The tesla energy ball will now eventually disappear if not kept charged with the particle accelerator
    • +
    • Fixed some objects giving duplicate results when an analyzer was used on them
    • +
    • Fixed some mountain POIs sometimes overlapping in odd ways
    • +
    • If you place wall-mounted machines such as status displays on a window, they will no longer be hidden underneath the window.
    • +
    +

    Neerti updated:

    +
      +
    • The 'cut' and 'pulse' buttons in the hacking interface now check all available hands for tools, instead of only the active hand.
    • +
    • The textual indicators at the bottom of the hacking window will now go bold when they change, until the next window refresh.
    • +
    • Hacking an Autolathe no longer requires you to hack it using the Autolathe's main window, but instead opens the hacking window like everything else.
    • +
    +

    Poojawa updated:

    +
      +
    • Added my fancy vore sounds.
    • +
    • Porting of a few QoL Citadel changes to vore menu related to sounds.
    • +
    • Applies Feeding and Devourable prefs.
    • +
    • Made VoreUI toggles a lot more clear of what mode they're in.
    • +
    +

    RunaDacino updated:

    +
      +
    • Enabled research borgs equipped with 'exosuit gripper' to be able to replace internal exosuit parts like actuators, to upgrade or to repair
    • +
    +

    Subber updated:

    +
      +
    • Added two new antag augments to traitor uplink: armblade and handblade.
    • +
    +

    Woodrat updated:

    +
      +
    • Changes vote notification sound to that of World Server in order to help people realize there is a vote occurring.
    • +
    +

    schnayy updated:

    +
      +
    • Adds the reagent yeast. It can be found in the kitchen vendor and in cargo kitchen supply crates.
    • +
    • Bread now calls for 5 units yeast instead of an egg, and baguettes and croissants call for 5 units yeast in addition to former ingredients.
    • +
    • Corn oil added to the Dinnerware vendor and the Booze-o-Mat.
    • +
    • Sprites for peanut butter, mayo, and yeast condiments.
    • +
    • Boiled slime core now links to the proper sprite.
    • +
    + +

    06 September 2020

    +

    Atermonera updated:

    +
      +
    • You can use Move Up/Down to traverse ladders. No popup 'Which way do you want to go?' windows required for bidirectional ladders!.
    • +
    +

    Killian updated:

    +
      +
    • Added a bunch more random spawners for mapping use.
    • +
    • You can now inject reagents directly into a synth's 'blood' stream using syringes and hypos (inc. borg hypos). Taking oil/coolant samples is still impossible.
    • +
    +

    Kot updated:

    +
      +
    • Mecha drills can now butcher dead mobs better. Like gibs and gore and guts stuff.
    • +
    +

    Lorilili updated:

    +
      +
    • You can now pet borgs on help intent and punch on hurt intent. Old behavior is now grab intent.
    • +
    +

    Lorilili (Port from Aurora) updated:

    +
      +
    • Added knee-high and thigh-high jackboots.
    • +
    • Replaced laceup and leather shoes with oxford shoes.
    • +
    • Replaced standard shoe and high-top sprites with newer ones.
    • +
    +

    Mechoid updated:

    +
      +
    • Mapped distillery into Chemistry, beside the Grinder.
    • +
    • Moves wrapper, spacecleaner, and labeller from the grinder table to the Chem locker.
    • +
    • Added distilling recipe for Synthetic Plasma, which acts as a blood-restoration of 1.2 units per synthplas. Also orderable in cargo.
    • +
    +

    Rykka Stormheart updated:

    +
      +
    • Adds Ambience Chance and Repeating Ambience Preferences into Globals, underneath Client FPS
    • +
    • Random-Ambience-Frequency controls how long before it checks if it can play ambience to you again. Setting it to 0 disables the random re-play of ambience.
    • +
    • Ambience Chance affects the % chance to play ambience to your client. It defaults to 35%, but can be set from 0 to 100 to disable it or always play every time you move into an area or have the Random Ambience check called.
    • +
    +

    Shadow Larkens updated:

    +
      +
    • Added the ability to right click and lower preferences for jobs in the Occupation Menu.
    • +
    +

    SplinterGP updated:

    +
      +
    • Adds new hailer masks with quotes with sound, allowing you to use a hailer on a face mask to combine them.
    • +
    • Adds new sound effects for hailer face masks.
    • +
    + +

    20 August 2020

    +

    Atermonera updated:

    +
      +
    • Mapped Overmap sensors onto the Southern Cross. Deck 2, central ring, starboard side. Departmental sensor installations and dedicated rooms may be added in the future.
    • +
    • To use the new sensors, you first have to click on them, hit 'Reconnect' on the window, close the window, then reopen it to get the console to link up with the sensors properly.
    • +
    • Enabled overmap event generation. This doesn't really do anything yet because the shuttles haven't been upgraded, but it's very pretty!
    • +
    +

    BlinsKot updated:

    +
      +
    • You can now alt-click to turn on the washing machine.
    • +
    • You can now alt-click on a mech while piloting it to toggle strafing.
    • +
    +

    Blinskot updated:

    +
      +
    • You can now alt-click on a mech while piloting it to toggle strafing.
    • +
    • You can now alt-click to turn on the washing machine.
    • +
    +

    Cerebulon updated:

    +
      +
    • Added extended flavour text to most things related to commercial vending machines and their contents.
    • +
    • Added chewing gum, lollipops and chewing tobacco. Unwrap it and place it in your mask slot like a cigarette.
    • +
    • Added snack food, vending drink and beer brand variety.
    • +
    • New booze bottle, coffee, juice, snack and cigarette packet sprites.
    • +
    +

    Lorilili updated:

    +
      +
    • Skrellian blood is now hemocyanin-based and regenerates with copper, not iron.
    • +
    • You can now wear caution signs and warning cones.
    • +
    • You can now point using shift and middle mouse button.
    • +
    +

    Mechoid updated:

    +
      +
    • Mortiferin added in place of old Necroxadone as a normal chem recipe.
    • +
    • Necroxadone changed to a more powerful alternative to Mortiferin which works even on corpses without bloodflow.
    • +
    • Added reagent pumps. You can refill water tanks planetside!
    • +
    • Added reagent hoses. Only used player-side by tanks, pumps, and spray nozzles to move reagents from one container to another.
    • +
    +

    Meghan Rossi updated:

    +
      +
    • Cyborgs can now put things into oven dishes with their grippers
    • +
    • Cyborgs can now put oven dishes in the oven with their grippers
    • +
    • Bots that are idle in doorways (including firedoors and blastdoors) will move out of the way.
    • +
    • Multiple cleanbots will no longer attempt to clean the same tile at the same time.
    • +
    • Cleanbots will now clean tiles closer to them first.
    • +
    • You can now use duct tape on yourself.
    • +
    • Ghosts now have a toggleable security HUD. Use the 'Toggle Security HUD' verb in the ghost tab to enable it
    • +
    • Ghosts can now shift-click things to examine them.
    • +
    • Ghosts can now alt-click adjacent things to open the turf tab.
    • +
    • You can now build plating on grass with floor tiles.
    • +
    • Improved descriptions for some floors.
    • +
    • The rapid service fabricator (found on service borgs) can now produce metamorphic pint glasses.
    • +
    • The party supplies and bar supplies crates orderable from cargo now contain metamorphic pint glasses.
    • +
    • The autolathe can now produce metamorphic pint and half-pint glasses.
    • +
    • The autolathe can now produce all drinking glasses in batches of 5 or 10.
    • +
    +

    Nyria updated:

    +
      +
    • Added volume settings, available in character setup or from the Preferences tab.
    • +
    • More settings and affected sounds may be added at a later date.
    • +
    • Added a TGui window to control the new settings with shiny sliders.
    • +
    +

    Rykka Stormheart updated:

    +
      +
    • Adds a mech vs mech combat system for the toy mechs earned from arcades and found around the station.
    • +
    • You can initiate combat with yourself by hitting a toy mech with another toy mech, or fight another player if you attack a player holding a mech toy with your own mech toy while not on harm intent.
    • +
    • Each mech has its own health stat and special ability that they'll use in combat against each other.
    • +
    +

    SplinterGP updated:

    +
      +
    • Added verb for FBP's to change their monitor display.
    • +
    • Removed monitor mask item(replaced by verb).
    • +
    +

    Subber updated:

    +
      +
    • Added a new prosthetic sprite set: Cyber Solutions - Outdated.
    • +
    + +

    06 August 2020

    +

    Cerebulon updated:

    +
      +
    • Added new mobs Fire Bugs, Ice Hares, Tymisian Moths and Siffets to surface spawnlists. Also added a new dog breed, woof.
    • +
    +

    ForFoxSake updated:

    +
      +
    • Ported tgstation styled magazine restocking. Hit a bullet on a table or floor with a partially empty magazine to start restocking.
    • +
    +

    Mechoid updated:

    +
      +
    • Exosuits now have internal components, mostly like borgs, but larger.
    • +
    • Autolathes can use plastic and plasteel.
    • +
    • Autolathes can have tiered recipes, based on their manipulator rating.
    • +
    • Exosuit base health has been lowered due to the changes to damage processing.
    • +
    +

    Rykka Stormheart updated:

    +
      +
    • Blast Doors will now crush people, if they are on the same turf when it closes, and throw them to an adjacent open turf.
    • +
    • The damage should be delayed enough that you can walk out of the door before the sprite animation finishes and you will be safe. The delay is being reviewed, and will likely be adjusted after sufficient feedback is gathered.
    • +
    • Blast doors and shutters (the types that go on bar/kitchen/etc) will also throw items on their tiles.
    • +
    + +

    03 August 2020

    +

    Cerebulon updated:

    +
      +
    • Added new book sprites, replaced old book sprites.
    • +
    • Added sticky notes, orderable from cargo
    • +
    • You can now carve graffiti into suitable walls/floors with sharp objects.
    • +
    • Trash, graffiti, dirt (Not blood), noticeboards and stickynotes are now persistent across rounds. This is admin-toggleable.
    • +
    +

    Mechoid updated:

    +
      +
    • Adds a glass jar subtype, the glass tank, that can be used to hold live fish. Remember to add water!
    • +
    +

    Rykka Stormheart updated:

    +
      +
    • Ported over Aurora Cooking from AuroraStation and Citadel-RP!
    • +
    • Recipes are separate per appliance, and all appliances have a use!
    • +
    • Please take note, Chefs, to pre-heat you appliances at the start of your shift.
    • +
    • Fryer Recipes require batter before they can be made!
    • +
    • Fire alarms will go off if you burn food!
    • +
    • The largest change - Cooking takes TIME. Around 6 minutes for the largest recipes in the game.
    • +
    • Too many other changes to list - refer to PR #7344 https://github.com/PolarisSS13/Polaris/pull/7344
    • +
    + +

    21 June 2020

    +

    Arokha updated:

    +
      +
    • New sprites for janicart
    • +
    • Alt-click helpers for stowing mop, chemicals on janicart
    • +
    +

    Atermonera updated:

    +
      +
    • Added verb to export vchat logs, found in OOC tab when vchat has successfully loaded.
    • +
    • Vchat only sends you enough messages to fill your buffer on reconnect, instead of all of them.
    • +
    +

    Billy Bangles updated:

    +
      +
    • Light and dark marble floor tiles can now be crafted with marble sheets.
    • +
    +

    Greenjoe updated:

    +
      +
    • Added a wrist-bound PDA, selectable from the PDA selection menu in char setup. it can go in the glove slot along with the ID and belt slots, and shows on your character's wrist no matter which of those 3 slots you put it in!
    • +
    +

    KasparoVv updated:

    +
      +
    • You can now quickly cycle hrough previous or next hair/facial styles at character creation.
    • +
    • Use the -mv- button to pick a marking and place it above of another on your character. Saves you from pressing up or down a bunch.
    • +
    • Ports color_square() from Paradise for colour previews, cleaning up pref. code & correct alignment issue w/ nested tables.
    • +
    • Markings are now properly aligned within a table.
    • +
    + +

    13 May 2020

    +

    Atermonera updated:

    +
      +
    • Added a preference to control multilingual parsing behaviour, with a few different modes. Should hopefully be less punishing to people who stutter and use hyphens as a language key.
    • +
    • The examine mode preference should now persist across reconnections during a single round, but if the server is fully restarted it still appears to reset. This issue is also present for the multilingual preference, and I'm still looking into it. Savefiles are cryptic.
    • +
    +

    Layne updated:

    +
      +
    • Added Promethean language.
    • +
    +

    Mechoid updated:

    +
      +
    • Adds more interactions with animals, like shearing and taming.
    • +
    • New PoIs
    • +
    • Thermal poncho attachment, has minor slowdown, but gives thermal protection to the armor it is attached to.
    • +
    • Mercenaries now drop their guns again. Most likely to be broken, however they can be repaired. Examining when adjacent will allow you to inspect the gun for what is needed.
    • +
    • Mercenary Snipers now exist. They will telegraph their shots approximately 2 seconds in advance, and can fire at 14 tiles away. Will occasionally drop pieces of their PTRs that survive combat.
    • +
    • Clothing can now check attachments for temperature resistance.
    • +
    • MHD Howitzer beam effect actually exists again.
    • +
    • Xenoresin ground cover is properly colored again.
    • +
    +

    atlantiscze updated:

    +
      +
    • Robots can now search loot piles.
    • +
    • Hardsuits now allow backpacks to be carried in storage slot. This is limited to hardsuits which are worn on the back slot.
    • +
    • SMES units now have automatic load balancing both on inputs and outputs
    • +
    • SMES units (and derived objects, such as PSUs) can now have more than one input terminal. This allows for input from more otherwise isolated power networks.
    • +
    • Completely redesigned cell rack PSUs, removed ghetto variant. Cell rack PSUs now support multiple power cells and hot-swapping of cells during operation. This allows for either charging multiple cells at once in one device (directly from power cable) or for powering up various machinery with only a power cell. They are still inferior to SMESes in pretty much all aspects.
    • +
    • Multitool on a cable now shows nicer results with large currents (uses kW or MW accordingly)
    • +
    • Multitool may be now used to change colour of cable coils.
    • +
    • Supermatter delamination effects have been tweaked. Delamination is considerably less laggy, and less directly destructive. Instead, it causes larger health hazard and secondary engineering problems such as power outage or partial damage of solar arrays.
    • +
    + +

    29 April 2020

    +

    Leshana updated:

    +
      +
    • Ship Helm, Sensors, Navigation, and Engine Control consoles are now de-/constructable.
    • +
    • Exploration (Overmap) Shuttle Console is now de-/constructable.
    • +
    • Mappers no longer need to varedit shuttle_tag on shuttle consoles.
    • +
    • Admin Start Now verb can be used at any time during startup and it won't actually start the game until initialization is completed.
    • +
    • Lobby stat panel shows time remaining on lobby votes and if the server is done initializing.
    • +
    +

    Neerti updated:

    +
      +
    • You can now eat as much food as you want, even while 'full'.
    • +
    +

    Novacat updated:

    +
      +
    • Re-enabled dual wielding penalties for most weapons that had them.
    • +
    • New dual-wielding sprites for weapons that needed them and did not have them.
    • +
    +

    Shadow Quill updated:

    +
      +
    • Fixes the 'broken/damaged' message when an airlock is just broken.
    • +
    • Heavy duty cell chargers now have flashing lights as they charge! When all the lights are flashing, that means the cell is done.
    • +
    +

    atlantiscze updated:

    +
      +
    • Shutoff valve monitoring is now also available as a modular computer program. Its UI has also been cleaned up a little.
    • +
    • Research robot module now has basic exploration and xenoarchaeology tools.
    • +
    + +

    20 April 2020

    +

    Atermonera updated:

    +
      +
    • Circuit clothes can have accessories attached.
    • +
    • Control-shift-click on circuit clothes to use items on the circuit.
    • +
    • Employment records can have comments similar to medical records.
    • +
    • Added a preference to switch between a few extra modes of examining things. Verb in the preferences tab.
    • +
    • Added Combat Logs filter category, to filter messages from things hitting you. This category will also eat up most other messages that are red and bold, please report any such messages that aren't specifically related to punching things.
    • +
    • Added categories for sorting various types of admin logs.
    • +
    • Adds a preference to forcibly disable (or enable) VChat. Useful mostly for people on linux, to skip the 60s waiting period where it tries to work and keeps you from seeing chat. Reloading VChat or reconnecting to the server are required for any changes to the preference to take effect. Support for issues that arise as a result of this preference is not guaranteed.
    • +
    +

    Leshana updated:

    +
      +
    • Glass Emergency Shutters are now constructable and deconstructing them will give you the glass back.
    • +
    +

    Neerti updated:

    +
      +
    • All sources of stasis (sleepers, stasis bags) will prolong the amount of time that lets someone be revived by a defib, proportional to how powerful the stasis effect is.
    • +
    • Opening a stasis bag that's being used now gives a prompt to confirm if you want to open it and make the bag expire. No more misclicks making doctors want to murder you.
    • +
    + +

    05 April 2020

    +

    Atermonera updated:

    +
      +
    • Headphones (and other two-ear clothing items) don't break the off-ear slot when click-dragged to unequip.
    • +
    +

    Neerti updated:

    +
      +
    • The eject button on both the Chemical Dispenser and Chem Master will place the ejected beaker into your hands, instead of on top of the machine, if possible. (Requested by Nalarac.)
    • +
    • Suit sensor consoles now display a friendly textual indicator of what z-level someone is on, instead of a number. They will also now avoid spoiling the names of Points of Interest.
    • +
    • The beakers containing Cryoxadone near cryogenics are now labeled. (Requested by Nalarac.)
    • +
    • The sleeper consoles now finally face towards the sleepers, at last. It only took a year for someone to fix it.
    • +
    +

    novacat updated:

    +
      +
    • Adds action buttons for scoping all sniper weapons.
    • +
    + +

    27 March 2020

    +

    Arokha updated:

    +
      +
    • Ported VChat. If you find any messages that are not sorted by any filters, or that you feel are sorted incorrectly, please submit a bug report on our issue tracker on github.
    • +
    +

    Atermonera updated:

    +
      +
    • Basic distillery (not the industrial-) will ping when it reaches its target temperature.
    • +
    • Basic distillery uses logistic curve to determine temperature change, and should be much faster.
    • +
    • Industrial distillery respects gas laws, particularly as pertains to low temperatures.
    • +
    • Prometheans can be slipped by disarm intent again
    • +
    +

    Leshana updated:

    +
      +
    • Added skybox parallax background for space.
    • +
    • Baystation12 style Overmap
    • +
    • Make transit turfs (shuttle transit) actually look like they move in the right direction.
    • +
    +

    Mechoid updated:

    +
      +
    • Artifact shields now work again.
    • +
    • Anomaly batteries work again.
    • +
    • Archaeology sites can have unique batteries, syringes, rings, and 'clubs'.
    • +
    • Multiple artifact effects added, in order to provide more spice, from naughty to nice.
    • +
    • Tweaks to normal artifact finds to be more unique.
    • +
    +

    Shadow-Quill updated:

    +
      +
    • Adds emergency backup cells to most light fixtures
    • +
    • AIs can turn emergency lighting on and off by clicking light fixtures. Flickering the lights has been moved to alt-click.
    • +
    + +

    20 March 2020

    +

    Aronai/Arokha updated:

    +
      +
    • You can now fill buckets (, beakers, etc.,) from water tiles.
    • +
    +

    Cerebulon updated:

    +
      +
    • Added sounds when dropping/throwing items. Toggleable in preferences.
    • +
    • Added incidental sounds to several item interactions.
    • +
    +

    Mechoid updated:

    +
      +
    • Energy Daggerpens (20): Disguised energy-knives, which do 15 searing on melee, or 30 when thrown.
    • +
    • Thieves gloves (30): Special gloves that allow you to peep in others' backpacks and belts, and plant items in their bags / pockets.
    • +
    • Buzzer Ring (30): Makes your first two punches electrically charged, first with 25 damage in a shock, then approximately 12.5 damage in the second. If the charge is over 90%, you can force-defib a corpse, even if it's a mindless one. Damage rules still apply, however time-of-death does not.
    • +
    • Resource Crate (60): A crate of uranium, phoron, gold, silver, osmium, and plasteel.
    • +
    • Exotic Plantlife Crate (20): A crate of numerous random seeds.
    • +
    • Spare Organ Crate (20): A crate of bioprinted organs.
    • +
    • Graviton goggles (15): A pair of combined meson/material goggles.
    • +
    • Integrated Circuit Printer (10): An upgraded circuit printer used to make integrated machine.
    • +
    • Flamethrower (60): A large, flame-based weapon.
    • +
    • 8 Concussion Grenades (30): A box of eight concussion grenades.
    • +
    • 4 Hunting Traps (30): A box of four hunting-traps, similar to those found in the explorer vendor.
    • +
    • 3 Virus Samples (40): A box of three unique virus samples.
    • +
    • Quickdraw Syringe Case (20): A case that can hold six syringes, and rapidly deploy them. Fits in your pocket.
    • +
    • Clotting Injector Case (20): A case that starts with 3 clotting med injectors instead.
    • +
    • Bonemed Injector Case (20): A case that starts with bonemeds.
    • +
    • Announcement costs lowered to be more equivalent.
    • +
    • Egun changed from 60 to 30 TC. It is nowhere near as powerful as a lascannon.
    • +
    • Exosuit rigged laser from 60 to 30 TC.
    • +
    • Xray gun from 85 to 60 TC.
    • +
    • Augments can now be used by everyone, as robot-specific ones will require FBP organ revamp.
    • +
    • Augment guns use slightly less blood / system instability to charge, so it doesn't kill you dead in moments.
    • +
    • Anti-Materiel Rifle can once again be used with thermals.
    • +
    • Energy Shields work again, and can be colored.
    • +
    +

    Meghan-Rossi updated:

    +
      +
    • Language keys are now case-sensitive.
    • +
    • The language key for Chimpanzee has changed from 6 to C to resolve a conflict with EAL.
    • +
    • The language key for Bird has changed from m to B to resolve a conflict with Mouse.
    • +
    • All other language keys are now lowercase-only.
    • +
    +

    Neerti updated:

    +
      +
    • Holsters can now be worn alongside webbing vests.
    • +
    • Receiving an antag role will now play a sound to the new antagonist.
    • +
    • Having laws changed as a silicon (AI or Borg) will now play a sound and show the changed law in the chat.
    • +
    • Being offered a ghost role while a ghost will now play a sound.
    • +
    • Someone attempting to revive someone else will play a sound to the player being revived, if they are not in their body.
    • +
    • Most Non-hitscan projectiles now have a pixel-perfect visual effect when they impact something, or when they expire from moving too far without hitting anything.
    • +
    • Projectiles can now have sounds for when they hit someone. They can also have a different sound when they hit something solid like a wall.
    • +
    • A sound is now played when a projectile 'narrowly misses' someone.
    • +
    • Getting hit with a projectile is now more noticeable in the chat log, with bigger text. Only the person who got hit will see the bigger text.
    • +
    +

    PrismaticGynoid updated:

    +
      +
    • Fixes xenoarch artifacts breaking when performing excavation correctly.
    • +
    +

    TheFurryFeline updated:

    +
      +
    • Fixes lack of easily accessible Response Team shortcut to type in. Type .k or :k to speak on the channel.
    • +
    +

    schnayy updated:

    +
      +
    • Adds Sabitsuki and Bedhead Longest hairstyles.
    • +
    • Adjusts pixels on the Jessica, Celeb Curls, and Beach Waves hairstyles.
    • +
    + +

    11 March 2020

    +

    Cerebulon updated:

    +
      +
    • Added button sounds to various machines.
    • +
    +

    Mechoid updated:

    +
      +
    • Added Hardpoint Actuator equipment for Exosuits, allowing them (And most effectively, Ripleys) to swap components on the fly, after a short delay.
    • +
    • Added Exosuit Inflatables Deployer, allowing exosuits to pick up and deploy inflatables.
    • +
    • Added Exosuit-mounted screwdriver, wirecutters, and welding laser, to help round-out the tool-based equipment types.
    • +
    • Incendiary exo weapons now use fire modifiers instead of fire stacks.
    • +
    • Ignition effects from weapons now use fire modifiers instead of fire stacks.
    • +
    • Exosuit shocker armor now retaliates properly against melee.
    • +
    • Add RIG components to robotics mechfab, plus incredibly basic belt-voidsuit RIG.
    • +
    • Add Graphite, made by compressing coal, presently only used heavily in RIG components.
    • +
    +

    Neerti updated:

    +
      +
    • The 'cut' and 'pulse' buttons in the hacking interface now check both hands for tools, instead of only the active hand.
    • +
    • The textual indicators at the bottom of the hacking window will now go bold when they change, until the next window refresh.
    • +
    • Hacking an Autolathe no longer requires you to hack it using the Autolathe's main window, but instead opens the hacking window like everything else.
    • +
    +

    schnayy updated:

    +
      +
    • Adds yeast as a reagent. It can be found in the kitchen vendor and in cargo kitchen supply crates.
    • +
    • Bread now calls for 5 units yeast instead of an egg, and baguettes and croissants call for 5 units yeast in addition to former ingredients.
    • +
    • Corn oil added to the Dinnerware vendor and the Booze-o-Mat.
    • +
    • Sprites for peanut butter, mayo, and yeast condiments.
    • +
    • Boiled slime core now links to the proper sprite.
    • +
    + +

    28 February 2020

    +

    Cerebulon updated:

    +
      +
    • Added cataloguer info for the radioactive manhole cover and decoupled engine PoIs
    • +
    • Renamed several PoIs to have more descriptive/immersive names
    • +
    • Most items can now be placed precisely on tables and racks.
    • +
    • Thrown items now land on a random spot on the target tile.
    • +
    +

    Nalarac updated:

    +
      +
    • The 'enable helmet camera' verb has been moved from the object tab to the hardsuit tab.
    • +
    +

    Neerti updated:

    +
      +
    • Adds an in-game feedback system that can be activated in the server configuration. Can be accessed from the lobby, with a button next to the other lobby buttons. Additional features and restrictions on usage are controlled by the server configuration.
    • +
    +

    leshana updated:

    +
      +
    • NTNet Quantum Relay can be constructed/deconstructed without runtimes.
    • +
    +

    lorilili updated:

    +
      +
    • You can now place defibs in rechargers.
    • +
    • Adds Holographic PDA type.
    • +
    • Skrell may now *warble.
    • +
    + +

    14 February 2020

    +

    Atermonera updated:

    +
      +
    • Radiation has to accumulate at least a little bit before it starts to become damaging. Very low levels of radiation can be safe for a number of minutes before you are at risk of injury.
    • +
    • Unless you idle for several minutes near the supermatter before it's been turned on, you should no longer be at risk of taking toxloss (Including those few spots in cargo maintenance).
    • +
    • Shutoff valve monitoring console can now remotely control shutoff valves.
    • +
    +

    Heroman3003 updated:

    +
      +
    • FBP repair can no longer be done through the space suits.
    • +
    • Surgery can no longer be done through the space suits.
    • +
    +

    Shadow Quill updated:

    +
      +
    • Batons will no longer harmbaton on disarm intent, instead doing so on grab/harm.
    • +
    +

    Woodrat updated:

    +
      +
    • Added sofas (no options to build one in round yet, will be added after this pull).
    • +
    • Add neonsigns, currently one neon sign, Cafe. (Code is copy pasta from holosigns).
    • +
    • Add boxes with mugs and cups.
    • +
    • Neon signs and holosigns now emit light while on.
    • +
    • Merged the Coffee Shop with the Library.
    • +
    • Moved the Locker Room to where the Coffee Shop was, adjusted the holodeck.
    • +
    • Old Locker Room turned into a construction area.
    • +
    • Adjusted holodeck maps to new orientation.
    • +
    • Changed sprite of barcode scanner.
    • +
    • Cleaned up furniture icon dmi, fixed arm rest icons for shuttle chairs.
    • +
    + +

    03 February 2020

    +

    Atermonera updated:

    +
      +
    • Added a printer to all preset (mapped-in) modular computers, so that word processors can actually print stuff or something.
    • +
    • Unregulated pressure regulators (Regulation set to OFF) no longer limit flow rate, and instead act as one-way opened valves. For best results, place away from other pumps.
    • +
    • Automatic Shutoff Valves are more intelligent about finding leaks, and won't close if there's other operating shutoff valves between them and the leak
    • +
    +

    PrismaticGynoid updated:

    +
      +
    • Adds a few toys to the loadout.
    • +
    +

    schnayy updated:

    +
      +
    • Adds book cart to library.
    • +
    + +

    21 January 2020

    +

    Heroman3003 updated:

    +
      +
    • A thin sheet of lead properly defeats radiation once more, but steel beams remain permeable.
    • +
    +

    TheFurryFeline updated:

    +
      +
    • Name and desc vars switched for changeling combat boots so removal of item doesn't output an excessively long name.
    • +
    • Fixes light frames returning 5 steel per deconstruction when 2 steel is used to create the frame.
    • +
    +

    schnayy updated:

    +
      +
    • Added the Pyralis borg sprites.
    • +
    + +

    31 December 2019

    +

    Atermonera updated:

    +
      +
    • Radiation has been made more potent and is no longer defeated by a thin sheet of lead.
    • +
    +

    Cerebulon updated:

    +
      +
    • Added decaf coffee to the coffee shop.
    • +
    • Added 6 types of bagel
    • +
    • Modified the coffee shop to have extra counter space and a microwave for bagels.
    • +
    • Removed chef lock on kitchen cabinet.
    • +
    • Removed reference to outdated skrell lore from naewa cube box.
    • +
    +

    TheFurryFeline updated:

    +
      +
    • Changes light replacers to allow you to automatically transfer used bulbs into the item and get a new one every 4 bulbs replaced. Additionally, this allows you to both use the replacer on a box of bulbs to get the bulbs added as well as clicking the item with a box of bulbs to put them inside it.
    • +
    • Spray bottles can now be printed in the Autolathe.
    • +
    + +

    16 December 2019

    +

    Atermonera updated:

    +
      +
    • Ghosts can join as drones after only 5 minutes have passed, down from 10.
    • +
    +

    Mechoid updated:

    +
      +
    • Multiple new organs added. Humans and Skrell received spleens, all species expected to have a stomach and intestine organ have them.
    • +
    • Augment 'slots' organized.
    • +
    • Multiple augments added, currently only available in the Traitor / Mercenary uplinks as easy-to-install implants.
    • +
    • Anesthetic / Oxygen pumps added. A mobile stabilizer has been added. All three are available in Cargo.
    • +
    • Medical MRE rations added to Cargo.
    • +
    • Roundstart implants now become invisible until being handled.
    • +
    • Neural implant added to loadout, makes the brain of the user count as an assisted organ. Does not affect MMIs or their subtypes.
    • +
    • Bioprinters now unlock more organs upon being upgraded, once they pass the anomalous tier, they unlock quite probably illegal organs.
    • +
    • Three medical exosuit components have been added. Crisis and Hazmat response drones, and a mounted advanced medical analyzer.
    • +
    • Medical analyzers now detect on-skin reagents.
    • +
    • Multiple new chemicals added, two used for upgrading bandage kits.
    • +
    • Brute-based medical stacks can be upgraded.
    • +
    • Crude brute kits can be made with cloth.
    • +
    • Stacks can now pass their colors onto objects produced by them. (Colored cloth, painted wood, etcetera.)
    • +
    • Two combined surgical tools added, for opening / closing ribcages and skulls, and removing organs respectively.
    • +
    • Two dud implants added to the loadout. They do literally nothing but hurt you if you're EMP'd.
    • +
    • The larynx now controls the ability to speak. Damage to it will stop you from being able to speak anything but non-verbal languages.
    • +
    • Damage to the brain can now affect the pulse.
    • +
    • Only the critical blood level causes toxin damage, meaning individuals who die of standard oxygen loss from bloodloss can possibly be saved, but exsanguinated persons are unlikely.
    • +
    • Bioaugment.dm is now just augment.dm
    • +
    • Robotic hearts do not have a pulse.
    • +
    • Brain damage can now cause loss of breath.
    • +
    • Paracetamol is now the precursor to tramadol.
    • +
    • Calcium is now in the chemical vendor.
    • +
    +

    Nalarac updated:

    +
      +
    • ED-209 and ED-CLN now properly accept names given with a pen.
    • +
    • Removed maintenance access from ED-CLN to prevent maintenance wandering.
    • +
    • Enables all channels on captain's and HoP's headset by default.
    • +
    • Power cells and device cells both properly show as empty when printed from the protolathe and mech fabricator.
    • +
    • Items with cells printed from the protolathe now start empty (e.g. phoron pistol).
    • +
    +

    Novacat updated:

    +
      +
    • Adds a teshari plush.
    • +
    +

    PrismaticGynoid updated:

    +
      +
    • You can now choose what type of graffiti or rune to draw when using crayons/markers.
    • +
    +

    TheFurryFeline updated:

    +
      +
    • Tweaks desk lamps to output twice as much light as before to compensate for a refactor.
    • +
    • Changes mouse plushie sprite to be cuter and not break the hearts of rodent lovers. :3 Seriously, the change is from a dead mouse duplicate to one of a brown mouse resting in place.
    • +
    • Add a new sprite for the orange jumpsuit.
    • +
    • Refactors prison jumpsuits into its own thing, change a few files and dmis.
    • +
    • Fixes strange rocks size. Normal -> Small like it used to be before a refactor.
    • +
    +

    Woodrat updated:

    +
      +
    • Rework of the civilian wing, merging the kitchen and the bar into one area.
    • +
    • Minor movement of the mining vendor.
    • +
    • Adjustment of the kitchen and bar.
    • +
    • Area in the coffee shop.
    • +
    • Missing Ducky in the codelab.
    • +
    • Fix missing scrubber in engineering.
    • +
    • Shutter added to Kitchen door.
    • +
    • Pressure Regulators at atmospheric cutoffs start unregulated at roundstart.
    • +
    • Set Modular Computers layer to 2.9 to bring them inline with regular computer layering.
    • +
    • Pump to distro set to 301 kpa to help offset issues with cutoff valves.
    • +
    • One phase pistol to each explorer locker.
    • +
    • One holster to each explorer locker.
    • +
    • Removed the old size modifier traits for mobs.
    • +
    • Port and tweak of the size modifiers from World Server for mobs.
    • +
    + +

    07 September 2019

    +

    Heroman3003 updated:

    +
      +
    • Desk bells can now be picked up like normal items.
    • +
    • Desk bells can now be deconstructed with a wrench while on the ground.
    • +
    • Desk bells can now only be made out of steel.
    • +
    +

    MisterLayne updated:

    +
      +
    • Material weapons that should not conduct, do not conduct.
    • +
    • Glass shards now do damage when you attack with them, based on the type of gloves you are wearing.
    • +
    +

    Novacat updated:

    +
      +
    • Ports MREs from Baystation, and adds a few supply crates with them to cargo.
    • +
    • Adds liquidprotein rations, currently only found in emergency MREs.
    • +
    +

    Woodrat updated:

    +
      +
    • Mining vendor added to cargo foyer.
    • +
    • Explorer vendor added to research foyer.
    • +
    • Handful of more pipe clamps added to engineering (atmos monitoring and EVA storage).
    • +
    • Adjustment to layout of chapel mass driver.
    • +
    +

    chaoko99 updated:

    +
      +
    • Ported Bay's stomach pump.
    • +
    + +

    21 August 2019

    +

    Atermonera updated:

    +
      +
    • Atmospherics is now bigger, with more room for fun and sanity-destroying spaghetti!
    • +
    +

    Mechoid updated:

    +
      +
    • Exosuits are now targetted by turrets again.
    • +
    • Mining charge strength lowered, price increased. Can be upgraded through R&D laser components.
    • +
    • Searing damage type added. Energy axe now uses searing damage.
    • +
    • Survey points added. Vendor added for explorer use. Costs are universally 'lower' compared to the mining vendor due to the rarity of points.
    • +
    • Swiping an ID card on a cataloguer will transfer the points to the card.
    • +
    • Any melee energy weapon can now be made to use a cell and charge.
    • +
    • Energy Axe prototype added to R&D.
    • +
    • Anomalous 'hunting trap' added to R&D. Useful for an initial stun on mobs for explorer scanning.
    • +
    • Beartraps now stun for a quarter of a second, so they are actually useful again, due to resistability.
    • +
    • Emergency welding pack added. Incredibly slow, but requires no protection.
    • +
    • Random turf modifier added for mapping use. Random humanoid remains spawner added for mapping use.
    • +
    • Plants under obj/structure/flora now can be made to be harvestable / forage-able.
    • +
    • Sif trees now occasionally have fruit containing useful microbes. Microbes slow blood flow resulting in slower chemical absorption and blood loss.
    • +
    • Flora by default are now under mobs, on the same layer as turf decals. Flora can now also randomize their size, previously only codified in Sivian trees.
    • +
    • Moss tendrils added to Sif, making eye-plants more rare.
    • +
    • Multiple PoIs added. 'Blue shuttle down' variant, 'UFO Frigate', multiple geysers, cliffs, and two variants of SFR which take drastically different approaches to the SFR standard. A vault was added, too.
    • +
    • Vault PoIs are now in a template group.
    • +
    • Generic AI-controlled humanoids added. Subtype made for use on Sif, clad in weak armor and temperature resistance, used as 'mindless clones'.
    • +
    • More artifice added.
    • +
    • Fultons made to be [somewhat] sane. Now only useable planetside.
    • +
    • Graviton Visor moved to R&D from the mining equipment vendor. Silver and Diamond pickaxes removed.
    • +
    • Added multiple new organs for Prometheans. Removing them will cause them to take large amounts of Toxloss untill they are Regenerated using the active regeneration verb.
    • +
    • Organ: pneumatic network, a series of skeletal tubes with high pressure used to move nutrients and waste.
    • +
    • Organs: -regenesis systems, different 'networks' of clumped cellular matter that allow Prometheans to recover rapidly from small injuries. Large or numerous injuries cause un-needed stress, and pain.
    • +
    • Internal organs now properly add themselves to the internal organ-by-name list, the one referenced 99.9% of the time.
    • +
    • Active regeneration will now replace internal organs if they are nonexistant, as it does for limbs.
    • +
    +

    Nalarac updated:

    +
      +
    • Mech cable layer works again.
    • +
    • Added setting for turrets to fire upon downed/laying targets.
    • +
    +

    TheFurryFeline updated:

    +
      +
    • New orange jumpsuit for loadout that doesn't get locked to tracking.
    • +
    • Prison jumpsuit filepath changed accordingly and closets with obj updated.
    • +
    +

    Woodrat updated:

    +
      +
    • Made the solgov uniforms use accessories for denoting department instead of having several different sprites in the uniform dmi folder.
    • +
    • Removed redundant solgov uniforms from uniform.dmi and moved the sprites for the solgov uniforms to their own dmi.
    • +
    • Fixed storage vests and drop pouches disappearing when one rolls down a uniform.
    • +
    + +

    08 August 2019

    +

    Mechoid updated:

    +
      +
    • Adds two new integrated circuit components: an advanced Text to Speech, and a Sign-Language reading camera.
    • +
    +

    Nalarac updated:

    +
      +
    • Lowered Chance of bots being emagged during ion storm.
    • +
    • Changes space helmet cameras to be a verb instead of on toggling lights.
    • +
    • Toggling helmet camera resets user upon activation (so you can have a new user).
    • +
    • Medibots will no longer attempt to heal FBPs.
    • +
    • Heavy-duty cell chargers can be built and upgraded.
    • +
    • Cyborgs can upgrade rechargers now.
    • +
    • Security bots will smack attackers once more.
    • +
    • Security bots will cable cuff people with hardsuit gauntlets instead of stun-locking.
    • +
    • Cut real time for security bots demanding surrender in half (6 seconds).
    • +
    • Updates the Supermatter Engine Operating Manual.
    • +
    +

    mistyLuminescence updated:

    +
      +
    • Serenity mech can now be built by robotics.
    • +
    + +

    30 July 2019

    +

    Atermonera updated:

    +
      +
    • Added a shutoff monitoring console, which displays the status and location of all automatic shutoff valves. Currently mapped into the atmos monitoring room and the auxiliary engineering room on deck 1.
    • +
    + +

    27 July 2019

    +

    Mechoid updated:

    +
      +
    • Pipes will now leak if their ends are unsealed.
    • +
    • Added stasis clamps, which act as valves that can be placed on existing straight pipe segments.
    • +
    • Added automatic shutoff valves, which can automatically close if a leak appears anywhere on their pipe network.
    • +
    • Added a Xenobio-compatible ED-209.
    • +
    +

    Nalarac updated:

    +
      +
    • Repairing bots (like Beepsky) works now.
    • +
    • Emagged bots can be repaired with proximity sensors.
    • +
    • Combat mechs can punch more things. Mech punch sounds like juggernaut now
    • +
    • Simple mobs can attack more things.
    • +
    • Cult pylons take damage from bullets.
    • +
    • Click delay added on attacking simple doors and security barricades.
    • +
    • Material doors and barricades have different attacked sounds depending if its metal, wood, or resin.
    • +
    • Fixes ability of cyborg meson to see holes in ceiling.
    • +
    • Gives cyborgs a roofing synthesizer.
    • +
    • Husking bodies requires more burn.
    • +
    • Ripley speed boost module that can be built in robotics.
    • +
    • Added transmission and capacitance SMES coils to supply console.
    • +
    • Adds laser tag turrets orderable from cargo.
    • +
    • Turrets will shoot people laying down if emagged or set to lethal.
    • +
    • Turrets can not be lethal if built with non-lethal weapon.
    • +
    • Alien pistol fire noise moved to projectile. Now the turret will use the proper noise.
    • +
    • Turrets will have new colors based on projectile used.
    • +
    • Projectile lastertag is no more. It is now properly lasertag.
    • +
    • Integrated circuit printers no longer take fractions of a sheet.
    • +
    +

    Schnayy updated:

    +
      +
    • Replaces Cindi Kate's and Boot Knives bar sign sprites with new ones.
    • +
    • Added new clothes to the loadout: cardigans, pleated skirt, lilac dress, ugly Christmas sweater, flowery sweater, and red turtleneck.
    • +
    + +

    19 July 2019

    +

    Nalarac updated:

    +
      +
    • Add xenobio/xenobot to farmbots.
    • +
    +

    Woodrat updated:

    +
      +
    • Added a clotting kit to the Raider Shuttle.
    • +
    • Swapped out the ai turrets for industrial turrets in the teleporter rooms.
    • +
    • Adjusted access to the turret controls to heads of staff access, moved them outside of the rooms.
    • +
    + +

    07 July 2019

    +

    Heroman3003 updated:

    +
      +
    • Broken components now have matter worth of 1000 steel units (half a sheet).
    • +
    • Components dropped from loot piles will now use random proper sprite instead of default placeholder.
    • +
    +

    mistyLuminescence updated:

    +
      +
    • Now available in Cargo: xenoarch technology (100 points) and tactical light armor (75 points)!
    • +
    • Tactical light armor is like regular tactical armor, but lighter (a full set is 0.5 slowdown), warmer (protects against moderate snow) and a little less protective.
    • +
    • Leg guards can now store bootknives.
    • +
    • Xenoarch brushes and pickaxes now have a reasonable force rating instead of hitting like a truck.
    • +
    • Adds the 'POI - ' prefix to the POI location names to make it easier for ghosts to teleport to them- e.g. 'POI - Rocky2' rather than just 'Rocky2'.
    • +
    • Fixes a runtime caused by attempting to use a crew monitor console while on an invalid Z-level.
    • +
    • Fixes GPSes not detecting other GPSes while on an invalid Z-level. Transit Z is unaffected by this- no spying on other shuttles!
    • +
    + +

    23 June 2019

    +

    Mechoid updated:

    +
      +
    • E-swords and Changeling arm-weapons can now block projectiles (again).
    • +
    +

    Novacat updated:

    +
      +
    • Adds greyscale pills, which are colored by their reagent
    • +
    • Adds colored pill bottles, most pre-spawned pill bottles are colored
    • +
    • Prespawn pills and pill bottles have had their names simplified
    • +
    • Attempts to make lighting less uniform
    • +
    • Cleans up lighting code
    • +
    +

    TheFurryFeline updated:

    +
      +
    • Fixes infinite frame production for some machinery objects such as grounding rods or exonet nodes. If there's no available circuit board to get, then don't return anything when attempting deconstruction. Ported from Cit RP. Eliminates 'Cannot read null.board_type' runtimes where they apply.
    • +
    • Allows hydroponic machines to be unwrenched.
    • +
    +

    Woodrat updated:

    +
      +
    • Turrets and respective controls added to each teleporter room.
    • +
    • Air tank on shuttles switched out with an air canister.
    • +
    • Roundstart Tcomms SMES starts fully charged.
    • +
    • Air tanks on station have the same amount in them as air canisters.
    • +
    • Expanded atmospheric tanks to be 2 by 3 instead of 2 by 2.
    • +
    • Wilderness Shuttle landing point shelter updated.
    • +
    • Teleporter room hand tele can now spawn in one of 4 places.
    • +
    • Halved the warm up time when the autopilot on the shuttles start at round start from ten minutes to five and nine respectively. Should mean the first shuttle will be taking from the outpost when the second shuttle leaves the station.
    • +
    • Reduced transit time from 75 seconds with pilot, 150 seconds without to 60 and 120 respectively.
    • +
    • Amount of phoron in the outposts reduced.
    • +
    • Ground Xenobio and Xenoflora torn down partially.
    • +
    • Reduction of the amount of steel and glass in engineering by half.
    • +
    • Reduction of the amount of steel and glass in EVA by half.
    • +
    • Fix for Dock 2 Transfer Shuttle airlock buttons not working.
    • +
    • Intercoms added to arrivals shuttle.
    • +
    • Modular computers scattered around the main station.
    • +
    • Elevator can be accessed at centcomm.
    • +
    • Fix Bridge Secretary Quarters tint.
    • +
    • Landmarks for Bluespacerift added.
    • +
    • Wilderness Shuttle landing sides should no longer shiskabob shuttles.
    • +
    • Modular Computers replacing wrong computers.
    • +
    • Chapel Mass Driver.
    • +
    • Merc Turrets function properly.
    • +
    • Map issues on the main outpost.
    • +
    +

    mistyLuminescence updated:

    +
      +
    • Splints now work on all areas of the body.
    • +
    • When the supermatter explodes, it now leaves behind a shattered plinth that continues to emit radiation. You should probably get rid of it.
    • +
    • If you destroy the supermatter early (e.g. through admin deletion shenanigans), it no longer irradiates everyone forever.
    • +
    • Welding lockers now actually updates their sprites properly.
    • +
    • Every floor tile now has a minor (2%) chance to spawn with some dirt on it. The Janitor now has a job again.
    • +
    • Similarly, every Sif grass tile now has a minor (5%) chance to spawn with some fancy eyebulb grass on it. It can be removed by clicking on it with harm intent.
    • +
    • Adds cats-in-boxes, which can be activated (once) to spawn cats. There's an orange tabby (Cargo cats) and a tuxedo (Runtime) version.
    • +
    • Fixes a material duplication exploit.
    • +
    + +

    04 June 2019

    +

    Chaoko99 updated:

    +
      +
    • The medibot's minimum configurable threshhold has been lowered to 0, from 5. Perfect for silly-billies coming into medical with 2 brute boo boos, thanks to accidentally throwing something at themselves or.. something.
    • +
    +

    Heroman3003 updated:

    +
      +
    • Restricts Alarm Monitor modular computer program to engineering access.
    • +
    • Removed access to departmental networks on camera modular computer program for average people.
    • +
    • Added access to full network on camera modular computer program for heads.
    • +
    +

    Mechoid updated:

    +
      +
    • Borers can speak through nearby mobs if they have a sufficient build-up of chemicals.
    • +
    • Borers have a max chemical volume.
    • +
    • The Sakimm, Frostfly, Glitterfly, River Leech, Crystal-Feathered Duck, and Kururak are now able to be used on the map and PoIs.
    • +
    • Glass jars can now hold glitterflies, river leeches, and frostflies.
    • +
    • Glass jars now respect mobs that exist over the lighting plane, adding a special overlay visible when on the ground.
    • +
    +

    Nalarac updated:

    +
      +
    • Closed all bugs on tracker that are no longer relevant or a bug.
    • +
    +

    Novacat updated:

    +
      +
    • Attempts to fix the timer SS to be moore robust
    • +
    • Fixes bug with custom laptops.
    • +
    • Raises cost of the elite model to 7 loadout points.
    • +
    +

    chaoko99 updated:

    +
      +
    • Adds the clientside 'ping' and 'reconnect' commands to the file menu.
    • +
    +

    mistyLuminescence updated:

    +
      +
    • Prone people can no longer interact with an empty hand.
    • +
    • Two-handed items are now correctly unwielded when the user's offhand is severed.
    • +
    • Mecha syringe guns now respect pierceproof clothing.
    • +
    • Securitrons now correctly ignore attacks when disabled.
    • +
    • Rechargers now correctly benefit from upgraded capacitors.
    • +
    • Medical record laptops and detective TV camera consoles no longer turn into regular consoles when de- and re-constructed.
    • +
    • Zaddat Shrouds now retain their base name when damaged, if the shroud has been customized.
    • +
    • Adds the makeover kit to the traitor uplink for 5 TC, also available in the Infiltrator bundle null crate in Cargo. Makeover kits can be used to change the user's hair style and color, and eye color.
    • +
    • Random event timers now wait until the round starts to begin counting down.
    • +
    + +

    06 May 2019

    +

    Mechoid updated:

    +
      +
    • Added fishing mechanics, and fishing gear.
    • +
    • Cloth can make normal cloth things.
    • +
    +

    Novacat updated:

    +
      +
    • Ports Bay code to allow hiding accessories when jumpsuits are rolled down/sleeve rolled.
    • +
    • Ports medals and ribbons from SEV Torch.
    • +
    • Ports initial infrastructure for modular computers from Baystation.
    • +
    • Cameras now have a slight static when viewing through them.
    • +
    • Adds Digital Warrant Program, to set warrants. Comes with a device.
    • +
    • Adds Supermatter Monitor program.
    • +
    • Chemistry processes instantly again.
    • +
    • Nanoui sends stuff even after client connect.
    • +
    • Shortwave radios now can transmit across connected Z levels.
    • +
    • Relays on moving platforms (shuttles) will now function.
    • +
    + +

    26 April 2019

    +

    Heroman3003 updated:

    +
      +
    • Allows voidsuits to have parts attached and removed while held in hand (but still not when worn).
    • +
    • Syringes will now immediately inject 5 units per injection into reagent containers. Does not change how injecting mobs work
    • +
    • Tape rolls can now be used on tiles with directional windows as long as they don't directly obstruct them.
    • +
    +

    Mechoid updated:

    +
      +
    • Reagents can now have a list of organs specified to slow their processing.
    • +
    • Reagents now process in the bloodstream at a rate determined by current pulse. No pulse, for any reason, will cause slightly slower processing if your species has a heart.
    • +
    • The heart organ determines the 'standard pulse' if the species has one.
    • +
    • Modifiers can set pulse directly, or shift it.
    • +
    • Adds Robobags and Corp-Tags to Robotics.
    • +
    • Re-adds the Space Worm with New and Improved [Doesn't Break The Universe] logic.
    • +
    • Sterilizine now hurts slimes, similar to water.
    • +
    +

    N3X15 updated:

    +
      +
    • Cyborgs can now use ladders regardless of whether they have a tool enabled or not.
    • +
    +

    Neerti updated:

    +
      +
    • During severe weather such as storms and blizzards, wind can cause you to move slower or faster in specific directions.
    • +
    • Weather application in the communicator displays wind direction and severity.
    • +
    • Holding umbrellas while in a storm no longer stuns you.
    • +
    +

    chaoko99 updated:

    +
      +
    • Ore bags will automatically pick up items when held, belted, or pocketed, and automatically deposit ore in boxes if one is being pulled.
    • +
    + +

    17 April 2019

    +

    Anewbe updated:

    +
      +
    • The Subspace Jammer traitor item now lasts about 10 minutes. It now blocks signalers from sending or receiving, and also obscures suit sensors around it.
    • +
    +

    N3X15 (MistyLuminescence) updated:

    +
      +
    • Departmental winter coats can now hold the same items as their standard departmental suit items - labcoats, hazard vests, body armor, aprons, etc.
    • +
    +

    Neerti updated:

    +
      +
    • Removes ability for AI to print and inhabit maintenance and construction drones. This has been replaced with a system which allows for AIs to inhabit special cyborg shells, called AI Shells, which are built with a new MMI type in Robotics. Most of the regular cyborg mechanics applies to AI Shells.
    • +
    +

    Novacat updated:

    +
      +
    • Adds new status displays for all alert levels
    • +
    • Adds yellow, violet, and orange alert levels
    • +
    • Added Stasis Cages, which allows safe transport of mobs.
    • +
    +

    PrismaticGynoid updated:

    +
      +
    • Adds the ability to copy a character slot onto another one, allowing for easier rearranging of characters, or wiping characters by copying empty slots.
    • +
    • Adds three new crashed escape pod PoIs.
    • +
    +

    Woodrat updated:

    +
      +
    • Arrivals dock should not stay locked shut
    • +
    • Two windoors in xenobio stationside lacking access requirements
    • +
    +

    mistyLuminescence updated:

    +
      +
    • Lays the foundation for RIGs to be worn on the belt slot. Doesn't apply to any RIGs currently, unless VV'd, but stay tuned!
    • +
    • Large autoinjectors are now scannable and syringeable again, just like they used to be. Unidentified autoinjectors still aren't, unless you ID them first.
    • +
    • Adds beakers to the hydroponics lockers and NutriMax vendors.
    • +
    • More jobs can now take certain items in the loadout.
    • +
    • Adds departmental turtlenecks, available in department wardrobes or the loadout selection. Look good... in space.
    • +
    + +

    04 March 2019

    +

    Anewbe updated:

    +
      +
    • Vedahq is now properly locked behind a whitelist.
    • +
    • Headgibbing is now determined by config
    • +
    • Promethean regeneration has been toned down. It will no longer provide healing if the Promethean is wet, too hungry, too hot, or too cold.
    • +
    • Prometheans are no longer shock resistant. It should now be more possible to catch them alive.
    • +
    • Promethean body temperature is now the default room temperature. They also hit cold_level_2 at a higher temperature.
    • +
    +

    Atermonera updated:

    +
      +
    • Rigsuits have been resupplied following a mass-recall after a number of suits were reported to have defective pressure-sealant mechanisms. The new sealant mechanisms have been thoroughly tested and should be less prone to failure.
    • +
    +

    Mechoid updated:

    +
      +
    • Tweaked Respiro- Cordra- Gastiro- and Hepanephro- Daxons to be more effective with dealing with the side-effects of damaged organs.
    • +
    +

    kartagrafi updated:

    +
      +
    • Adds several clothing items to loadout such as: Nock masks, cowls and robes.
    • +
    + +

    07 February 2019

    +

    Atermonera updated:

    +
      +
    • Stairs have been straightened and now connect to both the heavens and hells, formerly just the hells.
    • +
    +

    Elgeonmb updated:

    +
      +
    • Added the Zaddat species, voidsuit-clad fragile bug people. Whitelist applications will be available at a later date.
    • +
    • Added glucose hypos to the SWEATMAX vendors and a few other places thoughout the station.
    • +
    • Zaddat equipment is now available through cargo.
    • +
    • Some new, very very chuuni accessories to play with; the half cape, the full cape, and the sash
    • +
    • Most accessories can now fit on suits.
    • +
    • Dionaea and vox can no longer use station rigs.
    • +
    +

    Mechoid updated:

    +
      +
    • Flashes now actually run the risk of burning out.
    • +
    • Flashes that burn out can be repaired after approximately 40 seconds and with some luck, via a screwdriver.
    • +
    • Cyborg flashes use charge only, and do not have the 10 flash limit. They instead begin burning large amounts of charge.
    • +
    • Flashes use miniscule charge in addition to their capacitor burn-out, totalling 12 uses, taking 4 to down a human. They can be charged within a standard charger.
    • +
    + +

    01 February 2019

    +

    Anewbe updated:

    +
      +
    • Pilot consoles now require pilot access to use.
    • +
    +

    Atermonera updated:

    +
      +
    • Powersink drains have been unclogged and work once more
    • +
    +

    Mechoid updated:

    +
      +
    • Oversight regarding Changeling revive not removing restraints fixed.
    • +
    • Straight Jackets can now be resisted out of in 8 minutes, or as low as 5 depending on species attacks. Shredding or hulked humans will break out in 20 seconds, destroying the jacket.
    • +
    • Xenomorph plasma vessels now regenerate phoron passively, at an incredibly slow rate. Can be accelerated by consuming liquid phoron.
    • +
    • Xenomorph organs now give their respective abilities when implanted.
    • +
    • Virtual Reality pods cleaned up.
    • +
    • Replicant organs added, versions of many organs that do not reject in their host. Two currently exist that give special passives.
    • +
    + +

    25 January 2019

    +

    Anewbe updated:

    +
      +
    • The hyphen (-) is no longer a default language key, as people use it to represent other things. If you are still having issues with Gibberish, reset your language keys, or at least make sure they don't include any characters you regularly start speech with.
    • +
    +

    Atermonera updated:

    +
      +
    • Stasis bags don't squish organics with high pressure when organics try to seek shelter from flesh wounds.
    • +
    • Body- and stasis bags can be tread upon when open.
    • +
    • Suit coolers and rigsuit coolers now protect FBPs against vacuum again.
    • +
    • Bot sound files have been decrypted following a bizarre ransomware attack by Boiling Point remnants. Securitrons, cleanbots, et al should no longer spew gibberish.
    • +
    +

    Cerebulon updated:

    +
      +
    • Added teshari hardsuit sprites.
    • +
    + +

    16 January 2019

    +

    Anewbe updated:

    +
      +
    • Adds a Gibberish language that gets used when you goof on a language key.
    • +
    • Voice changing masks no longer give up when you put on a hardsuit.
    • +
    • Mask voice changers start on.
    • +
    • Mask voice changers that do not have a set voice will now default to your worn ID's name.
    • +
    • Mask voice changers now have a verb to reset their name.
    • +
    • Eguns take 4 shots to stun, rather than 3.
    • +
    +

    Atermonera updated:

    +
      +
    • Clothing now has pressure protection variables, that set lower and upper pressure bounds within which they will protect you from pressure-based harm.
    • +
    • Protection falls off when exceeding the pressure limits from 100% protection at the boundary to 0% at 10% in excess (above the max or below the min) boundary.
    • +
    • Currently, only hat and suit slots are checked for this protection (No change).
    • +
    • Anomaly suits (The orange ones) now offer limited pressure protection in case anomalies start making or draining air.
    • +
    • Firesuits are no longer spaceproof, but still offer protection against the high pressures of fire.
    • +
    +

    Cerebulon updated:

    +
      +
    • Added customizable religious icons to the chaplain's office.
    • +
    • Added black and white candles.
    • +
    • Updated religion lists in character setup to be lore friendly.
    • +
    + +

    06 January 2019

    +

    Mechoid updated:

    +
      +
    • Slimes now respect slime colors as their faction when dealing with other slimes.
    • +
    • Taser and Security xeno-taser shot count dropped from 10 to 5.
    • +
    +

    Neerti updated:

    +
      +
    • Adds a lot of sounds, and the code to let them loop seemlessly. Things made audible now include the microwave, deep fryer, showers, the supermatter when it's active, the TEGs when active, geiger counters, and severe weather on Sif. The weather has different sounds for when indoors and when outdoors.
    • +
    • Weather sounds and the supermatter hum can be disabled in your preferences.
    • +
    • Adds a few more weather types that can only be activated by admin powers, such as ash storms and fallout.
    • +
    +

    Novacat updated:

    +
      +
    • All emergency air tanks now spawn at full capacity.
    • +
    + +

    08 December 2018

    +

    Cerebulon updated:

    +
      +
    • Added 12 new loadout items plus colour variants: Utility pants, sleek overalls, sari, modern wrap jacket, ascetic garb, asymmetrical jackets, cowled vest, kamishimo, jingasa, maang tikka, thin-frame glasses, rimless glasses.
    • +
    +

    Mechoid updated:

    +
      +
    • Research and Engineering borgs now have 'Circuit Grippers', used for constructing and operating integrated circuit machinery.
    • +
    • Grippers now allow interaction with their contents, by attacking the gripper itself with an item when one is held. I.E., drawing from a beaker with a syringe.
    • +
    • Grippers now show their held item's examine information when examined. Tab information added.
    • +
    • Cyborgs can now interact with integrated circuit printers and machines when adjacent to them.
    • +
    • Multitools now have a menu to switch modes between standard use and integrated circuit reference scanning. Antag multi-tools untouched for now.
    • +
    • Integrated circuit printer now respects adjacency, if it is not set to debug.
    • +
    + +

    30 November 2018

    +

    Cerebulon updated:

    +
      +
    • Added 1000+ surnames and 1200+ forenames from various world cultures to human namelists
    • +
    +

    LBnesquik updated:

    +
      +
    • Replaced the plant clippers with a reskinned pair of hedgetrimmers.
    • +
    +

    Lbnesquik updated:

    +
      +
    • General biogenerator improvements:
    • +
    • Added feedback noise to the processing.
    • +
    • Allow for cream dispensing.
    • +
    • Allow for plant bag creation.
    • +
    • Allow for 5 units of meat to be dispensed at once.
    • +
    • Allow for 5 units of liquids to be dispensed at once totalling 50u.
    • +
    • Add and allow the creation of larger plant bags for easier ferrying of plants..
    • +
    • Add a description to the machine itself.
    • +
    +

    Mechoid updated:

    +
      +
    • Prometheans are no longer murdered by blood, and instead process it like a weak nutrient. Will slow the regeneration of toxins due to water content.
    • +
    • Ctrl clicking a Rapid Service Fabricator when held will allow you to choose the container it deploys.
    • +
    • The Rapid Service Fabricator's icon is correctly set.
    • +
    +

    Neerti updated:

    +
      +
    • Rewrites the AI system for mobs. It should be more responsive and robust. Some mobs have special AIs which can do certain things like kiting, following you on a lark, or telling you to go away before shooting you.
    • +
    • Rewrites literally every 'simple_animal' mob into new, shinier, and hopefully more interesting 'simple_mob' mobs, some with new mechanics, like spiders, fake mechas, and hivebots. There are so many changes that it wouldn't be possible to list them here.
    • +
    • RCDs can now build grilles and windows, with a new mode. They can also finish walls when used on girders on floor/wall mode.
    • +
    • Adds various new RCDs that are not obtainable at the moment.
    • +
    +

    Woodrat updated:

    +
      +
    • Xenoflora and Xenobio moved to station, first deck.
    • +
    • Minor bugfixes including mislabeled lockers in robotics and floor decals.
    • +
    +

    kartagrafi updated:

    +
      +
    • Adds new hairstyle 'Sharp Ponytail'
    • +
    • Adds several new underwear - 'Binder', 'Strapless Binder', 'Longsleeve Striped Shirt, Pink', 'Pink Wing Shirt', 'Pink and Black T-Shirt', 'Leggings'
    • +
    • Changes name of 'Supernova' hairstyle to 'Glossy', and makes the sprite somewhat neater
    • +
    • Fixes a hairstyle not appearing
    • +
    + +

    13 October 2018

    +

    Anewbe updated:

    +
      +
    • You can no longer have ALL of your blood punched out.
    • +
    • Haemophiliacs will no longer spontaneously have ALL of their blood go missing from ~90%.
    • +
    • Emitters can be locked while off, too.
    • +
    • Graves are now a thing in the code, will need some testing and probably more work before they get more common.
    • +
    +

    Mechoid updated:

    +
      +
    • Added a RIG customization kit.
    • +
    • RIGs now use a var called suit_state to determine the basis for their component icons, rather than the rig's icon state.
    • +
    + +

    22 September 2018

    +

    Mechoid updated:

    +
      +
    • Adds two vehicles to Robotics and Cargo, the Quad and Spacebike.
    • +
    +

    Poojawa updated:

    +
      +
    • Ported /vg/ instrument code, improved the UI of instruments.
    • +
    • Added a client side pref that mutes instruments being played for you.
    • +
    +

    Woodrat updated:

    +
      +
    • Adds two rig suits. Military Rig suit from Bay and PMC rigsuit
    • +
    • Adds four exploration and pilot voidsuits (alternate sprites by Naidh)
    • +
    • Adds exploration and pilot voidsuits
    • +
    + +

    28 August 2018

    +

    Mechoid updated:

    +
      +
    • Mechs now have multiple equipment slot types, and more slots in total for greater customization.
    • +
    • A large number of Mech weapon modules and their jury rigged versions.
    • +
    + +

    08 August 2018

    +

    Atermonera updated:

    +
      +
    • The supply controller has been refactored and shifted to nanoUI.
    • +
    • The ordering and control consoles are now generally upgraded in terms of information and options.
    • +
    +

    Mechoid updated:

    +
      +
    • Hallucinations are no longer only Pun Pun.
    • +
    +

    Neerti updated:

    +
      +
    • Adds new ambience sounds for various areas, especially on the surface of Sif.
    • +
    • Removes low and high-pitched droning from available ambience. Consider trying ambience again if you had turned it off to avoid those.
    • +
    + +

    01 August 2018

    +

    KasparoVv updated:

    +
      +
    • You can now change the order of your body markings at character creation. Shift markings up or down layers at will to design the character you've always wanted, more easily than ever before.
    • +
    +

    Mechoid updated:

    +
      +
    • Added the Gigaphone. Currently unused.
    • +
    +

    Mewchild updated:

    +
      +
    • Ports several AI core sprites from ages and places past
    • +
    +

    PrismaticGynoid updated:

    +
      +
    • Adds four types of colorblindness to the traits in the setup menu.
    • +
    • pAIs can now be picked up while unfolded, and can display more than 9 emotions.
    • +
    + +

    14 July 2018

    +

    Anewbe updated:

    +
      +
    • Certain languages now require assistance for a species to speak, but not understand, much like EAL.
    • +
    • Alai can only be `spoken` by Taj and Teshari.
    • +
    • Adds a voicebox/larynx organ. Its only purpose at the moment is to assist in speaking certain langauges.
    • +
    • Language implants, like the EAL implant, now affect the voicebox organ, instead of being a freefloating implant.
    • +
    • Adds a language implant for Common Skrellian.
    • +
    +

    Atermonera updated:

    +
      +
    • Steel sheets can be used to construct Roofing Tiles
    • +
    • Roofing tiles can be used on tiles under open spaces or space tiles in multiZ maps to place a lattice and plating on the space above
    • +
    • Roofing tiles can be used on outdoor turfs to make them indoors
    • +
    • Both functions work together on multiZ maps with outdoor turfs, only one roofing tile is used per tile roofed.
    • +
    +

    Mechoid updated:

    +
      +
    • Adds a new surgical procedure for fixing brute and burn on limbs.
    • +
    + +

    12 July 2018

    +

    Anewbe updated:

    +
      +
    • Technomancer Apportation now properly checks for range and scepter, again.
    • +
    + +

    21 June 2018

    +

    Anewbe updated:

    +
      +
    • Added a biomass reagent, made from protein, sugar, and phoron.
    • +
    • Cloners and bioprinters now use the biomass reagent. Both can be refilled or have their capacity increased by replacing the bottles they spawn with.
    • +
    • Mapped in a bioprinter, for further testing.
    • +
    • Adds the ability to make robolimb brands more or less vulnerable to brute or burn.
    • +
    • Makes VeyMed limbs more vulnerable to brute and burn.
    • +
    +

    Mechoid updated:

    +
      +
    • Allow AIs to create and take control of mindless drones from fabricators.
    • +
    + +

    08 June 2018

    +

    Anewbe updated:

    +
      +
    • Merc mobs in PoIs no longer drop gear. This is to help us balance the PoIs that contain them, and by extension every other PoI.
    • +
    • Merc mobs have been shuffled around in their PoIs. At some point, this may actually be randomized, but for now, expect slightly different placements.
    • +
    • Adds a laser rifle and ion rifle version of the Merc mob, for variety.
    • +
    • PoI turrets are lethal again, and will likely shoot crawlers.
    • +
    • Certain mobs, namely robots and mercs, now have some amount of armor.
    • +
    • Ranged mercs will now knife people when cornered, rather than punch them really hard.
    • +
    +

    Mechoid updated:

    +
      +
    • Added some background things for Events.
    • +
    • Ion rifles hit the correct 3x3 instead of 5x5
    • +
    • Seed Storage Vendors are now hackable. Can choose from various lists of concerning plants.
    • +
    + +

    24 May 2018

    +

    Anewbe updated:

    +
      +
    • Moving items out of one's active hand cancels any zoom-in they may be providing.
    • +
    • Meteor events should be a lot less brutal.
    • +
    +

    Arokha updated:

    +
      +
    • Added a 'Client FPS' setting in the Global tab of character setup for adjusting the FPS to your preference.
    • +
    • Added a 'fake SSAO' toggle to Global in character setup, ported from /tg/. Looks like drop shadows on (almost) everything.
    • +
    +

    Atermonera updated:

    +
      +
    • Laptops no longer consume IDs indefinitely.
    • +
    +

    Mechoid updated:

    +
      +
    • Promethean limbs store more damage.
    • +
    • Promethean limbs, in addition to normal severing rules, have a higher chance to be splattered or ashed once they reach maximum damage.
    • +
    • Limbs can now spread their damage to neighbors with the spread_dam var, when reaching max damage.
    • +
    +

    PrismaticGynoid updated:

    +
      +
    • Added laser pointers. Available in your loadout, and printed and upgraded by R&D.
    • +
    +

    lorwp updated:

    +
      +
    • Search and Rescue can now add certain medical restricted items to their loadouts
    • +
    + +

    01 May 2018

    +

    Mechoid updated:

    +
      +
    • Skrell can be affected by flashbangs from a range of 8 tiles without protection.
    • +
    • Promethean regen consumes additional nutrition.
    • +
    • Many healing chemicals are less effective on Prometheans due to the natural regeneration.
    • +
    • Lots of other Promethean tweaks. No seriously, I'm not putting the list here.
    • +
    +

    PrismaticGynoid updated:

    +
      +
    • Adds new skrell sprites to hardsuit helmets that were missing them.
    • +
    + +

    28 April 2018

    +

    Anewbe updated:

    +
      +
    • Communicator visibility (the thing that lets people see your communicator when you're a ghost) is now saved to character slots, rather than globally.
    • +
    • Jobs that are set to Never on your preferences are hidden by default on the Late Join selection menu. There is a button to reveal them.
    • +
    +

    Arokha updated:

    +
      +
    • Nerve reattaching surgery now works correctly. (Hemostat on limb)
    • +
    • Limbs dropped by people have appropriate flags.
    • +
    +

    Atermonera updated:

    +
      +
    • Human examine code has received a major refactor. If you encounter unusual behaviour that seems wrong, please report it.
    • +
    +

    Cerebulon updated:

    +
      +
    • Pumpkins are no longer green ovals. They now grow on actual vines.
    • +
    +

    schnayy updated:

    +
      +
    • Space carp plushies now load sprites and are all selectable from loadout.
    • +
    • Adds several newer plushies to the gift vendor as well as adjusting cost of gift vendor's contents.
    • +
    + +

    19 April 2018

    +

    Anewbe updated:

    +
      +
    • AOOC is no longer available to traitors, renegades, and thugs.
    • +
    +

    Woodrat updated:

    +
      +
    • Flashers in brig cells should work now, extra floor flash in communal brig to deal with crims.
    • +
    • Improper access, SMES rooms.
    • +
    • Trader start point is no longer dark.
    • +
    • Medical Vendor Plus has more advanced burn and trauma kits.
    • +
    • Cell 1 and 2 in the brig can now be accessed by detectives.
    • +
    • Additional r-walls next to the engine room to help with rads.
    • +
    • Floor decals in a couple areas.
    • +
    • RD office now has its telescreen back.
    • +
    +

    lorwp updated:

    +
      +
    • Pilot headsets can now fallback to shortwave radio
    • +
    + +

    01 April 2018

    +

    Anewbe updated:

    +
      +
    • Medical Doctors and EMTs spawn with white medkits.
    • +
    +

    Cameron653 updated:

    +
      +
    • Adds a xenoarch excavation tool, craftable in R&D. Allows depth selection of 1-30
    • +
    • Adds a xenoarch multitool, craftable in R&D. Has xenoarch counter, measure tool, and depth scanner all in one.
    • +
    +

    Heroman3003 updated:

    +
      +
    • Attaching exosuit equipment with a gripper correctly removes it from the gripper.
    • +
    • Engineering gripper can no longer duplicate frame parts.
    • +
    +

    MistyLuminescence updated:

    +
      +
    • Wallets can now hold a wider variety of objects.
    • +
    +

    Woodrat updated:

    +
      +
    • Added two 44 cal revolvers.
    • +
    • Added 44 cal speedloader for revolvers.
    • +
    • Added 44 cal rubber rounds.
    • +
    • Fixed the icon_state for 'structure/plushie/carp' and the random first aid kit spawner.
    • +
    • Added a random chance tool spawn for power tools (most of the time it should still just be regular tools).
    • +
    • Adjusted the spawn rate of medkits, combat medkits should be more rare.
    • +
    • Cash split into its own loot item.
    • +
    • Plushies split into large and small plushies.
    • +
    • All the extra plushie spawns added to the random plushie spawn.
    • +
    • Eightball and conch shell added to toy spawns.
    • +
    • Added spawn points for the large plushies, cash, and the power tools to the station.
    • +
    +

    battlefieldCommander updated:

    +
      +
    • Added permanent markers, an alternative to crayons.
    • +
    • The chemistry recipe for paint now uses marker ink instead of crayon dust.
    • +
    • Removed crayon boxes from the map. They can still be ordered from cargo in case you need a snack.
    • +
    + +

    15 March 2018

    +

    Anewbe updated:

    +
      +
    • Pills and ingested reagents actually process at half speed, rather than just ignoring half of the reagents.
    • +
    • Robotic limbs now need internal repair at 30 composite damage, rather than 30 of burn or brute.
    • +
    • Syringes now inject their entire payload with one click, but in 5 unit increments. There is a delay in between each of these.
    • +
    • Assisted robotic organs (internals, eyes) are less vulnerable to EMP.
    • +
    • Lifelike robotic organs (currently VeyMed) are more vulnerable to EMP.
    • +
    +

    Cerebulon updated:

    +
      +
    • Added Akhani language for Tajaran.
    • +
    • Fixed incorrect singular form of Tajaran in several places.
    • +
    +

    MisterLayne updated:

    +
      +
    • Added a version of the ED-209 called the ED-CLN. It is a more efficient Cleanbot.
    • +
    • Reinforced snowballs can now actually be made in a reasonable time limit.
    • +
    +

    Nerezza updated:

    +
      +
    • Broken APCs can be bashed open with slightly smaller objects now. This means wrenches are acceptable, no need to hunt down a fire extinguisher.
    • +
    • EVA rigsuit/hardsuit no longer holds toolboxes in suit storage since those have been a volume inventory for some time now. RIP ghetto satchel.
    • +
    • CE's rigsuit/hardsuit no longer holds pickaxes and ore satchels, but can now hold inflateables.
    • +
    • Retracting rigsuit/hardsuit helmets with no valid mask equipped now disables internals.
    • +
    • Offline rigsuits/hardsuits are no longer considered valid air supplies by the internals button. Before, your internals would instantly shut off before you could get a breath out of the rigsuit. Now, the internals button will look for a different tank instead.
    • +
    • Tajaran now get to keep their tails when they wear the EVA, RD, or Industrial rigsuits/hardsuits. Unathi sprites to come soon!
    • +
    • Sifwood floor tiles now correctly use their double-stacked icon instead of disappearing.
    • +
    +

    Woodrat updated:

    +
      +
    • Added in a weapons crate for explorers that has bolt action rifles.
    • +
    • Weapon powercells can be ordered from cargo (security access crate).
    • +
    • Automatic weapons crate split into two crates now. One for SMGs one for the rifle. Minor adjustments to other munitions and security supply packs as well.
    • +
    • The automatic weapons ammo crate has also been split.
    • +
    • Names of the crates for the munitions and security catogory supply packs have been adjusted slightly. In certain places contents also adjusted.
    • +
    • Holoplant now comes in a crate.
    • +
    + +

    05 March 2018

    +

    Anewbe updated:

    +
      +
    • Removes Command Liaison, Bridge Secretary, Hydroponicist, Prospector, Sanitation Technician, Professor, and Historian alt-titles.
    • +
    • Removed universal translators from the loadout.
    • +
    • RnD can print earpiece translators.
    • +
    +

    Mechoid updated:

    +
      +
    • Add a surgical operation for repairing the brainstem of a decapitated individual.
    • +
    • Add a permanent modifier for frankensteining individuals.
    • +
    +

    Nerezza updated:

    +
      +
    • Package bomb detonators can be re-bound by hitting the new package bomb with them.
    • +
    +

    PrismaticGynoid updated:

    +
      +
    • The succumb verb will now work on species that can't take oxyloss damage.
    • +
    + +

    28 February 2018

    +

    Atermonera updated:

    +
      +
    • Adds umbrellas to the loadout, for 3 points. Colorable!
    • +
    +

    Nerezza updated:

    +
      +
    • Using tape (police/medical/engineering) on a hazard shutter now tapes the hazard shutter instead of trying to open the hazard shutter.
    • +
    • Added /tg/-style floor tile swapping. Equip crowbar/screwdriver in offhand and click the floor tiles you want to directly swap with a stack of new floor tiles (like teal carpet).
    • +
    +

    Woodrat updated:

    +
      +
    • Heavy rework of the wilderness, minor adjustments to mining and outpost z-levels. To get to the wilderness you now have to travel through the mine z-level to do so, follow the green flagged path. Through the mine.
    • +
    • Shuttles can now land at a site near the enterance to the wilderness. Removal of the mine shuttle landing pad to move to the wilderness.
    • +
    • New addition of warning sign, thanks to Schnayy.
    • +
    +

    battlefieldCommander updated:

    +
      +
    • Added craftable joints. Dry something (ideally ambrosia) on the drying rack and apply it to a rolling paper to create a joint you can smoke.
    • +
    • Added a box of rolling papers to the cigarette vending machine.
    • +
    + +

    25 February 2018

    +

    Anewbe updated:

    +
      +
    • Splinted bodyparts act broken 30% of the time.
    • +
    • Splinted legs still slow you down like broken ones.
    • +
    +

    Leshana updated:

    +
      +
    • Added a client preference setting for wether Hotkeys Mode should be enabled or disabled by default.
    • +
    • CTRL+NUMPAD8 while playing a robot won't runtime anymore.
    • +
    • Grounding rods act intuitively, only having an expanded lighting catch area when anchored.
    • +
    +

    Nerezza updated:

    +
      +
    • Fixes not being able to install the different carpet colors. Finally.
    • +
    • Removes certain unusable duplicate stacks of tiles from the code.
    • +
    +

    Schnayy updated:

    +
      +
    • Added Gilthari Luxury Champagne. Drink responsibly.
    • +
    • Added a singular AlliCo Baubles and Confectionaries vending machine in the locker rooms. Dispenses a variety of gifts.
    • +
    • Removed hot drinks vendor from locker room.
    • +
    + +

    22 February 2018

    +

    Anewbe updated:

    +
      +
    • Added Warden and HoS helmets.
    • +
    • Clothing items must be click+dragged to be unequipped. A lot of them already had this, but the system is now standardized.
    • +
    • Accessories now apply slowdown to what they're attached to.
    • +
    • Certain items, notably Technomancer spells, no longer show up when you examine the mob wearing them.
    • +
    • Flashbangs confuse, instead of stunning.
    • +
    +

    Atermonera updated:

    +
      +
    • GPS units are generally more useful, providing both coordinate locations and, so long as you're on the same Z level, direction with x-y component distances, to 1m accuracy
    • +
    • Added a halogen counter tool, functions as the PDA function.
    • +
    • Analyzers can now analyze gas containers, in addition to providing atmosphere readouts, as the PDA gas scanner function.
    • +
    • Added umbrellas.
    • +
    +

    battlefieldCommander updated:

    +
      +
    • Added fireplaces which operate similarly to bonfires.
    • +
    • Fixed an oversight that allowed for an in-between state in bonfires where the fire would mysteriously go out after adding wood.
    • +
    • Added blue sifwood floor tiles.
    • +
    • Fixed blue carpet, now known as teal carpet
    • +
    • Added the ability to dig up tree stumps with a shovel.
    • +
    + +

    21 February 2018

    +

    Anewbe updated:

    +
      +
    • Headsets for jobs that spend a lot of time planetside can now function as local radios when comms are down.
    • +
    • Most headsets now have on-mob sprites.
    • +
    • Added a Planetside Gun Permit item, specifying permission to possess a firearm on the planet's surface. Explorers should spawn with these by default, and a further two can be found in their gun locker.
    • +
    • Prometheans now react to water. Being soaked will stop their regen and deal minor toxin damage. Drinking or being injected with water will deal slightly more toxin damage.
    • +
    • Suit Coolers now properly cool FBPs in slightly burning rooms. If it gets too hot for your suit, you're still dead.
    • +
    +

    Leshana updated:

    +
      +
    • Makes electrochromatic glass buildable and programmable in game. Use cable and multitool.
    • +
    +

    Woodrat updated:

    +
      +
    • Additions of 6 new POIs for the cave area.
    • +
    + +

    17 February 2018

    +

    Anewbe updated:

    +
      +
    • Added a random mine spawner, for use in PoIs. Replaces mines in PoIs with the random spawner.
    • +
    • Mines now give a visible message when they go off.
    • +
    • Land mines on the ground can no longer be told apart from one another, to prevent gaming the system.
    • +
    • Hovering mobs (viscerators, drones, Poly, carp) no longer set off land mines.
    • +
    • Arming a land mine now takes concentration. If you move, it will boom.
    • +
    • RINGS AND CERTAIN GLOVES INCREASE PUNCHING DAMAGE.
    • +
    • BRASS KNUCKLES HAVE BEEN TURNED INTO GLOVES AND REBALANCED. THEY DO LESS DAMAGE PER HIT BECAUSE IT'S HARD TO DISARM A PAIR OF GLOVES.
    • +
    • Cyborg Chargers now decrease radiation on FBPs.
    • +
    • Falling one floor now does a lot less damage, on average.
    • +
    • Falling one floor in a Mech no longer hurts the occupant.
    • +
    +

    PrismaticGynoid updated:

    +
      +
    • A lot more machines can now be moved with a wrench, mostly kitchen, hydroponics, and virology machines.
    • +
    • Changed department ponchos to be open to any job, just like department jackets.
    • +
    +

    Schnayy updated:

    +
      +
    • Adds bouquets. Can be ordered via 'gift crate' in cargo.
    • +
    • Adds fake bouquets for the cheap. Can currently be won from arcade machines.
    • +
    • Adds chocolate heart-shaped boxes. Can be ordered via 'gift crate' in cargo.
    • +
    • Adds gift cards with four cover variations. Function like paper. Can be ordered via 'gift crate' in cargo.
    • +
    +

    battlefieldCommander updated:

    +
      +
    • Added packed snow brick material. Craft it using snow piles.
    • +
    • Added snow girders and igloo walls. Craft them using snow bricks.
    • +
    • Added various snowmen. Craft them using snow piles. Punch 'em to destroy.
    • +
    + +

    10 February 2018

    +

    Atermonera updated:

    +
      +
    • Ethylredoxrazine actively removes alcohol from the stomach and bloodstream
    • +
    • GPS units won't report the exact location of other GPS units, just range and approximate direction
    • +
    • POI gps units won't give any information about the POI, merely its location
    • +
    • Adds EMP mines.
    • +
    +

    Cerebulon updated:

    +
      +
    • Adds antibiotic resistance chance to viruses, capped at 90% without admin edits.
    • +
    • Adds adminspawned non-transmittable viruses
    • +
    • Adds several new disease symptoms
    • +
    • Vomit is now a disease vector
    • +
    • Viruses have a lower chance of curing themselves without medical intervention
    • +
    • Virus food no longer infinitely generates in incubator beakers
    • +
    • Xenomorphs and supernatural begins can no longer catch the flu
    • +
    +

    Hubblenaut updated:

    +
      +
    • If a cycling airlock is already near the target pressure, pressing the buttons will toggle the doors instead of making it reenter the cycle process.
    • +
    +

    Leshana and mustafakalash updated:

    +
      +
    • A new 'planetary' mode for airlocks which makes them purge the chamber contents to the exterior atmosphere before filling with clean air, and vice versa.
    • +
    +

    MistyLuminescence updated:

    +
      +
    • Mines are now very, /very/ dangerous to step on (so don't do that). You can disarm them with a multitool and wirecutters - ping is good, beep is bad - or by shooting or exploding them from a distance. Be careful!
    • +
    +

    Woodrat updated:

    +
      +
    • Shaft Miner, Search & Rescue, Explorer can now select webbing vests and pouches from the loadout.
    • +
    • Allow utility uniforms to roll up their sleeves.
    • +
    • Shuttle upgraded with enviroment sensors and shuttle doors that can be detected from the shuttle console.
    • +
    • secure gun cabinets in the hangar control rooms. Locked to armory, explorer, and pilot access.
    • +
    • Redesign of medical surgery rooms, replacement of the closets with wall closets.
    • +
    • Multiple map bugfixes including distro and scrubber lines to deck 3.
    • +
    + +

    07 February 2018

    +

    Anewbe updated:

    +
      +
    • Lessens the bomb, bio, and rad protection on the Explorer Suit.
    • +
    • Replaces the Hunting Rifle cabinets with a Phase Pistol cabinet. Same general purpose, shoot animals, kill animals. Shoot people, get laughed at.
    • +
    • Gloves are generally less protective from shocks.
    • +
    • Budget Insulated Gloves will almost always be better than any other non-insulated glove.
    • +
    • Hyposprays and autoinjectors now have a delay on use when the target is conscious and not in Help Intent.
    • +
    • You need a parachute to survive atmospheric reentry. Closets, mechs, and other impromptu parachutes will not longer prevent splatting.
    • +
    +

    Atermonera updated:

    +
      +
    • ID computer can set command secretary and IAA access
    • +
    • Command secretary has keycard auth. access
    • +
    +

    Cerebulon updated:

    +
      +
    • Added toggleable 'Open' sign to bar hallway so you can tell if it's open without walking inside.
    • +
    +

    Mechoid updated:

    +
      +
    • Adds material girders.
    • +
    • Girder decon time is now partially dependant on material. Stronger girders take slightly longer.
    • +
    • Wall girders are now under the integrity-based construction listing. Material-Name Wall Girder.
    • +
    • Explosive-resistant girders in walls have a chance to survive as an unanchored girder, if their wall is destroyed.
    • +
    • Radioactive girders affect the completed wall's radioactivity.
    • +
    +

    SunnyDaff updated:

    +
      +
    • Added new food items.
    • +
    • Added Onions.
    • +
    • Changed Apple and Lemon Sprite
    • +
    + +

    25 January 2018

    +

    Anewbe updated:

    +
      +
    • Southern Cross Map is now live
    • +
    +

    Arokha updated:

    +
      +
    • Remove borg hud items as they have normal huds as their sensor augs now, and can see records with them.
    • +
    +

    Atermonera updated:

    +
      +
    • Communicators have a flashlight under the settings menu, functions as the PDA one
    • +
    • Station-bound synthetics now have gps units
    • +
    +

    Cerebulon updated:

    +
      +
    • Added 19 food recipes from /tg/station
    • +
    +

    Leshana updated:

    +
      +
    • Sounds of Tesla engine lighting bolts
    • +
    • Sprites for grounding rod and Tesla coil
    • +
    • Sprites for lighting bolts
    • +
    • The Tesla Engine, Tesla Coils, and Grounding Rods
    • +
    • Wiki search URL is now configurable in config.txt
    • +
    • Breaker boxes can be constructed in game.
    • +
    • Construction of heat exchange pipes, vents, and scrubbers now works properly again.
    • +
    • Fix singularity energy balance so it is stable under normal operation.
    • +
    • Fix emitter beams and PA effects from being grav pulled or consumed.
    • +
    • Added the operating manual book for the Tesla Engine.
    • +
    +

    Mechoid updated:

    +
      +
    • Brains can be set to be a source of genetic information.
    • +
    • Promethean cores can be inserted into a cloning scanner to be cloned. This gives them a worse modifier upon completion.
    • +
    • Promethean cores can now have chemicals added or removed from them. Base for future slime cloner.
    • +
    • Species-based cloning sicknesses possible.
    • +
    • Cyboernetic - > Cybernetic
    • +
    +

    Neerti updated:

    +
      +
    • Adds boats that can be ridden by multiple people, which use oars. Can be crafted with large amounts of wooden planks.
    • +
    • Adds autopilot functionality to Southern Cross Shuttle One and Shuttle Two.
    • +
    • Adds ability to rename certain shuttles on the Southern Cross.
    • +
    • Areas about to be occupied by a shuttle will display a visual warning, of a bunch of circles growing over five seconds.
    • +
    +

    SunnyDaff updated:

    +
      +
    • Added new food items.
    • +
    • Added Cider.
    • +
    • Added Apple Juice to bar vending machine.
    • +
    • Fixed Vodka recipe.
    • +
    • Fixed Apple and Carrot cake recipes
    • +
    • Changed Cake recipes to not include fruit juice
    • +
    +

    ZeroBits updated:

    +
      +
    • Added the ability to have multiple loadouts per character.
    • +
    +

    battlefieldCommander updated:

    +
      +
    • Adds a communicator watch, a variant of the communicator you can wear on your wrist.
    • +
    • Replaces the communicator in the loadout with a communicator selection. Choose either the traditional communicator, or the new commwatch.
    • +
    + +

    12 January 2018

    +

    Atermonera updated:

    +
      +
    • Communicators now have a weather app.
    • +
    • Mobs in VR can switch between translucent and opaque forms.
    • +
    +

    Leshana updated:

    +
      +
    • Examining construction frames shows which circuit board (if any) is installed.
    • +
    • Convert the machinery controller to a StonedMC subsystem
    • +
    +

    MrStonedOne updated:

    +
      +
    • Added admin verb 'Display del() Log' displaying garabage collector statistics.
    • +
    +

    PrismaticGynoid updated:

    +
      +
    • Adds the ability to 'crawl' to an adjacent turf by click-dragging yourself to it, after a delay. This can be used to move while unable to stand. You can also do this with other movable objects, if you really wanted to.
    • +
    • Conscious mobs lying on the ground can now buckle themselves to chairs/beds. This includes people missing legs.
    • +
    + +

    29 November 2017

    +

    Anewbe updated:

    +
      +
    • FBPs are now affected by Radiation, it gives them ToxLoss. Wear your PPE.
    • +
    • FBPs can have ToxLoss decreased by going into a charger.
    • +
    • It is now possible to move FBPs and robots into chargers, via click+drag or grabs.
    • +
    +

    Atermonera updated:

    +
      +
    • AI verbs are no longer hidden on the tabs.
    • +
    • Incapacitated mobs can no longer open your inventory and steal your gubbins.
    • +
    +

    MoondancerPony updated:

    +
      +
    • Fixed a mislabeled pulse pin on the microphone.
    • +
    • Fixed an issue with reference pins and multiplexers, and reference pins in general.
    • +
    +

    PrismaticGynoid updated:

    +
      +
    • Adjusts the amount of camera locations the AI can store from 10 to 30.
    • +
    + +

    06 November 2017

    +

    Atermonera updated:

    +
      +
    • AI's can speak local rootspeak.
    • +
    • Implements Virtual Reality.
    • +
    +

    Woodrat updated:

    +
      +
    • Added 'see down' in open spaces from Vore.
    • +
    • Added talking and visible messages upward through open space from Vore.
    • +
    • Added a Syndicate ID with all access (admin spawn only).
    • +
    • Port of 'Syndicate id cards now listen for owner destruction' from Bay.
    • +
    + +

    24 September 2017

    +

    Belsima updated:

    +
      +
    • Replaced air tank sprites.
    • +
    • Added new xeno weed, egg, and resin sprites.
    • +
    • Added two new bar sign sprites.
    • +
    • Replaced blast door sprites.
    • +
    • Microwave is no longer a proper noun.
    • +
    • Added croissants to the available recipes.
    • +
    • Added new status displays for the AI.
    • +
    • Made spelling of corporations and planets more consistent.
    • +
    • Added more planets to character setup.
    • +
    • Added a bunch of new hairstyles.
    • +
    • Added a new holographic hud.
    • +
    • Added a grinder and enzyme to the abandoned bar, for illicit operations.
    • +
    • Replaced solar panel sprites.
    • +
    • Replaced shield generator sprites with ones from the Eris.
    • +
    • Added Qerr-quem and Talum-quem, a pair of Skrellian drugs.
    • +
    • Added a variety of sounds for opening cans, explosions, sparks, falling down, mechs, and bullet casings.
    • +
    • Added a new death sound for mice.
    • +
    • Vox have been entirely resprited.
    • +
    • Added wood buckets, craftable with hydropnoics.
    • +
    • Added sounds for chopping wood.
    • +
    • Fixed a bug that would make default Zippo lighters invisible.
    • +
    +

    Chaoko99 updated:

    +
      +
    • Nitrous Oxide is now an oxidizer.
    • +
    • Removed all instances of Volatile Fuel ever being simulated. To devs: It still exists. Please, for the love of god, only use it with assume_gas.
    • +
    +

    Cyantime updated:

    +
      +
    • Tabling now requires a completed aggressive grab.
    • +
    +

    Nalarac updated:

    +
      +
    • Removes the module restraint for the cyborg jetpack upgrade
    • +
    • Added the hand drill and jaws of life to the protolathe
    • +
    • Syndicate toolbox now comes with power tools
    • +
    +

    Neerti updated:

    +
      +
    • Adds the Lost Drone, which can be found on the Surface of the future map.
    • +
    • You can now modify an unslaved borg's laws by hitting it with a law module, after a significant delay.
    • +
    • Adds several new lawsets. Currently there are no lawboards for these.
    • +
    • Adds new 'shocker' baton, for the Lost Drone.
    • +
    • Combat borg shields are now easier to use, only requiring that they sit on one of your hands and not your active hand. The shield is also more energy efficent.
    • +
    +

    PrismaticGynoid updated:

    +
      +
    • You now keep your languages when removed from/transplanted into a body.
    • +
    • AIs and borgs load languages from preferences when spawning.
    • +
    • Fixed sign language being usable while lacking both hands.
    • +
    • Brains are no longer able to hear binary (robot talk).
    • +
    • Adds the ability for research to print drone brains.
    • +
    • Makes all MMIs, posibrains, and drone brains radio-enabled. Anyone holding the brain can also disable the radio for antag purposes.
    • +
    +

    SpadesNeil updated:

    +
      +
    • Windows can no longer be damaged by very weak attacks.
    • +
    +

    Woodrat updated:

    +
      +
    • Ported floor types and floor sprites (Techfloors) from Vorestation (who ported them from Eris). Brought our floortypes in line with how Vorestation has theirs set up.
    • +
    • Missing Techfloor floor tile sprites added.
    • +
    • Floor sprites from Vorestation not yet ported. To be done once we go to the new map.
    • +
    • Added catwalks and railings to SC station. Fixed first Z-level.
    • +
    • Added the ability to make catwalks and railings as ported from vore.
    • +
    • Cable heavy duty file tweaks to remove red overlay color from them.
    • +
    • Added in a color icon for centcomm beach areas.
    • +
    • Fixed issues with SC centcomm z that prevented it from loading.
    • +
    • Rework of xenobio/xenoflora outpost on SC planetside main map.
    • +
    • Added Wilderness z-level for SC, teleportation transition to it may be bugged.
    • +
    • Cable ender file added. Allows power transfer between z-levels.
    • +
    • Southern cross files for areas and defines in relation to z-level work.
    • +
    + +

    26 August 2017

    +

    Belsima updated:

    +
      +
    • Replaced APC sprites with better shaded ones.
    • +
    • Adjusted some atmos sprites for visibility.
    • +
    • Added cough and sneeze noises for Teshari.
    • +
    • Turning on flashlights and locking lockers both make a click sound.
    • +
    • Replaced soda cans with new soda cans.
    • +
    • Added a tiedye shirt.
    • +
    +

    MagmaRam updated:

    +
      +
    • Tesla relays no longer draw power when their attached power cell is full.
    • +
    + +

    20 August 2017

    +

    Anewbe updated:

    +
      +
    • The names of 5.56 and 7.62 ammo have been swapped, as have the guns that use them. The magazines should look the same, and the guns will do the same damage they used to do.
    • +
    +

    Atermonera updated:

    +
      +
    • Borgs can now raise an evil army of slimes
    • +
    +

    Belsima updated:

    +
      +
    • Added a lot of new lore-friendly drinks.
    • +
    • Adjusted the descriptions of some drinks.
    • +
    • Added fingerless gloves to the loadout.
    • +
    • Added several new robot icons.
    • +
    • Added animations to some robots.
    • +
    • Fixed Usagi's eyes not turning off when dead.
    • +
    • Added several new pAI sprites.
    • +
    • Added a load of sweaters to the accessories tab of the loadout.
    • +
    • Added a new swimsuit to the pool.
    • +
    +

    Cirra updated:

    +
      +
    • Added a unified radiation system. Radiation is lessened by obstacles, and distance.
    • +
    • Added a geiger counter for measuring radiation levels, which can be found in certain vending machines and radiation closets.
    • +
    +

    Leshana updated:

    +
      +
    • During the gravity failure event, you can now buckle yourself to a chair to prevent falling when gravity returns.
    • +
    • Added an admin verb to debug the map datum.
    • +
    • Added nanomap capability to the Power Monitoring Computer
    • +
    • Added nanomap capability to the Atmos Control Computer
    • +
    • Expanded nanomap on Camera Console to all station z-levels by default.
    • +
    • Crew Monitoring nanomap will support crew monitors built on other station map z levels.
    • +
    • Updated z1 nanomap for Northern Star
    • +
    • Generated z5 nanomap for Northern Star
    • +
    • Optimized the unified radiation system. Made the radiation cutoff level configurable.
    • +
    • Standing still won't save you from radiation storms.
    • +
    • Bedsheets can be put into washing machines again.
    • +
    +

    LorenLuke updated:

    +
      +
    • Ghosts can now choose from a number of animal sprites.
    • +
    • Gives IECs some TLC (see below).
    • +
    • Adds 'Separator' circuit, allowing the player to now divide strings.
    • +
    • Adds 'grenade' circuit, allowing the player to detonate a stored grenade in an assembly.
    • +
    • Adds 'device' electronic assembly, allowing an 'assembly'-type (signaler/igniter) circuit to be used to interact with others.
    • +
    • Modifies some storage and complexity constants.
    • +
    • Adds 'size' variable for manual setting.
    • +
    • No longer requires screwdriver to remove components.
    • +
    • Enables multitool to wire/debug circuits with lesser functionality (can disable via variable).
    • +
    • IECs no longer drown the player in windows, each assembly always uses only one window.
    • +
    • Added functionality to UI to help with user experience of above point.
    • +
    • Adds 'on set' output pulses to multiplexer and memory circuits.
    • +
    • Fixes multiplexer and memory circuits not pushing data to attached circuits.
    • +
    • Number to string converts null inputs as '0' due to engine limitations (at least they work).
    • +
    • Gun manipulator circuit now functions properly (and can read '0' value inputs).
    • +
    • Phase 1/2 for wiring rework.
    • +
    +

    MagmaRam updated:

    +
      +
    • Nerfed health regeneration, especially on bruises.
    • +
    +

    Nalarac updated:

    +
      +
    • Modifies the illegal equipment module for borgs to scrambled equipment module that only activates the special items and doesn't actually emag the borg
    • +
    • Mining cyborg diamond drill is now obtainable in a more sensible manner
    • +
    • Click dragging has been added to the cryogenics tubes, cloning pod, and all methods of cryostorage
    • +
    • Some quality of life changes for research, crisis, surgeon, and service cyborgs
    • +
    • Jumper cables readded
    • +
    • Construction cyborgs merged back with engineering cyborgs
    • +
    +

    PrismaticGynoid updated:

    +
      +
    • Replaces intelliCards with intelliCores.
    • +
    • Wheelchairs can now be collapsed like rollerbeds for ease of storage and movement. Too big to put in backpacks though.
    • +
    • Wheelchairs are now available in a color-customizable form via the loadout, under utility. Now you can ride in style, and keep your feet too.
    • +
    • Wheelchair users can now enter the gateway and residential elevator without being forced to leave behind their mobility aid.
    • +
    +

    Sarmie updated:

    +
      +
    • Dionaea have remembered how to regrow their limbs properly.
    • +
    + +

    09 May 2017

    +

    Anewbe updated:

    +
      +
    • Ports but does not enable Bay's MultiZAS.
    • +
    +

    Leshana updated:

    +
      +
    • Optimized (but still not enabled) multi-z ZAS
    • +
    • Multi-Z explosion transfer coefficient is now configurable
    • +
    +

    N3X15 updated:

    +
      +
    • Flashlights on the high setting are no longer Beacons of Gondor.
    • +
    +

    Neerti updated:

    +
      +
    • Tesla armor now retaliates against ranged attacks if within 3 tiles, and recharges in 15 seconds, from 20.
    • +
    • Technomancer Instability fades away slower.
    • +
    • Fire and frost auras made more potent.
    • +
    • Gambit can now give rare spells unobtainable by other means, based on spell power.
    • +
    • Mend Wounds and Mend Burns combined into Mend Life. Mend Metal and Mend Wires combined into Mend Synthetic.
    • +
    • Adds Lesser Chain Lightning, a more spammable version, but weaker.
    • +
    • Adds Destabilize, which makes an area glow with instability for 20 seconds.
    • +
    • Adds Ionic Bolt, which ruins the lives of synthetics.
    • +
    • Oxygenate made cheaper.
    • +
    +

    SiegDerMaus updated:

    +
      +
    • Adds one new haircut, a chin-length bob.
    • +
    +

    Yosh updated:

    +
      +
    • Ports a bunch of hair from Bay. Knock yourself out.
    • +
    + +

    05 May 2017

    +

    Anewbe updated:

    +
      +
    • Adds a cup for dice games, in the loadout.
    • +
    • Thermals now let you see in the dark.
    • +
    +

    Arokha updated:

    +
      +
    • Sleepers now have a 'stasis' level setting, that will ignore varying numbers of life() ticks on the patient.
    • +
    • Stasis bags and Ody sleepers now use a fixed level of this new stasis system (ignore 2/3 life ticks).
    • +
    • You can escape from being asleep in a sleeper, similar to escaping from a cryotube.
    • +
    • You can now use grabs on sleepers to insert patients, same as scanners.
    • +
    +

    Datraen updated:

    +
      +
    • Xenobiological traits are made unique on each mutate, avoiding mutating other mobs with same trait data.
    • +
    +

    Leshana updated:

    +
      +
    • Resetting a fire alert will no longer open firedoors if atmos alert is in effect and vice versa
    • +
    +

    LorenLuke updated:

    +
      +
    • Unfucks the screen bug on roundstart changelings.
    • +
    • Changeling now display 'alive' status on Medhuds properly.
    • +
    • Refactors changeling ranged stings not passing over tables. Can now pass over tables, any machinery (except doors), machine frames, and past closet subtypes.
    • +
    • You can now view an active video call by using the communicator in hand.
    • +
    • Guns on harm intent in aim mode will target, rather than shoot pointblank on first click.
    • +
    • You can now put handcuffs on yourself.
    • +
    + +

    25 April 2017

    +

    Anewbe updated:

    +
      +
    • Cultist armor now has better protection from strange energies.
    • +
    • Adds the ion pistol to the uplink.
    • +
    • The ion pistol can now be holstered.
    • +
    • Sprites on the smoking pipes should be fixed.
    • +
    +

    Atermonera updated:

    +
      +
    • Brain type (Organic, cyborg, posi, or drone) is now displayed in all records.
    • +
    +

    Belsima updated:

    +
      +
    • Changes relaymove() code in bodybags.
    • +
    • Above tweak used to allow exiting bodybag while in closed morgue tray.
    • +
    +

    Leshana updated:

    +
      +
    • Implements footstep sound system and adds sounds to various floor types including plating, tiles, wood, and carpet.
    • +
    +

    LorenLuke updated:

    +
      +
    • Allows people who are bucked to give/receive items.
    • +
    • Can click-drag people onto chairs/beds from 1 tile away to buckle them.
    • +
    • Allows you to place tape masks/restraints back on the roll (roll is still infinite).
    • +
    • Fixes ventcrawling for spiderbots/implants/etc.
    • +
    +

    Neerti updated:

    +
      +
    • Drones will now spawn with an EIO-mandated ID card alongside their NT ID.
    • +
    • Fabricate Clothing for Changelings costs one point instead of two, and is fabricated twice as fast.
    • +
    • Dead changelings can no longer hear deadchat or freely ghost.
    • +
    • Shrieks now share a 10 second cooldown.
    • +
    • Lings cannot transform or shriek inside containers such as closets and pipes.
    • +
    • Regen. Stasis timer adjusted to be between 2 to 4 minutes.
    • +
    • Visible Camo. should end if the user is stunned.
    • +
    • Visible Camo. now blocks AI tracking when active.
    • +
    • Recursive Visible Camo. no longer gives true invis.
    • +
    • Recursive Visible Camo. will allow the changeling to run while cloaked instead.
    • +
    • Ling chemical meter on HUD now has a blinking exclaimation mark if below 20 chemicals, to warn that they cannot revive if they should die while still below 20.
    • +
    +

    Yoshax updated:

    +
      +
    • Tape color is different now. Security tape is red rather than yellow, Engineering tape remains yellow and Atmos tape is a lighter cyan rather than blue.
    • +
    + +

    19 April 2017

    +

    Anewbe updated:

    +
      +
    • Unathi ribcages now reach down to their lower torso.
    • +
    • Unathi no longer have appendices or kidneys, the function of the kidneys is now a function of their liver.
    • +
    • Unathi are more slightly more difficult to damage.
    • +
    • Unathi now process medicine 15% slower. Additionally, it's harder for them to get drunk.
    • +
    • Unathi age range is now 32 to 260.
    • +
    • Unathi are not as slowed by heavy items.
    • +
    +

    Atermonera updated:

    +
      +
    • Translators no longer try to translate null languages.
    • +
    +

    LorenLuke updated:

    +
      +
    • Allows Blast doors to be attacked and broken like regular airlocks.
    • +
    • Changelings can bank up to a maximum of 3 respecs at one time.
    • +
    • Changelings begin with 2 respecs.
    • +
    • Firing a silenced weapon gives a message in text to the user.
    • +
    +

    MagmaRam updated:

    +
      +
    • Added instructions on how to use the changelog updating scripts.
    • +
    • Updated in-game EVA manual.
    • +
    +

    Neerti updated:

    +
      +
    • Adds makeshift armor for the head and chest regions. How protective they are depends on the material used to craft it. The helmet is made by using wirecutters on a bucket, then using a stack of material. The chestpiece is made by crafting two armor plate, using wires on one of them, then hiting one with the other.
    • +
    +

    Yoshax updated:

    +
      +
    • Water such as the pool will no longer apply fire stacks when you enter, meaning you will no longer be flammable from swimming.
    • +
    + +

    16 April 2017

    +

    Anewbe updated:

    +
      +
    • Bartenders now spawn with their shotgun permit. Click on it in hand to name it.
    • +
    • Lessens the bloodloss from severe burn damage.
    • +
    • Hardhats now give some ear protection.
    • +
    • Hardhats can no longer fit in pockets.
    • +
    +

    LorenLuke updated:

    +
      +
    • Allows removal of PDA ID with alt-click.
    • +
    +

    Yosh updated:

    +
      +
    • Scrubbers now scrub Phoron by default.
    • +
    • Scrubbers now have the first dangerzone at anything more than 0 Phoron.
    • +
    • No longer will you attack Alarms with your ID when trying to unlock them.
    • +
    + +

    12 April 2017

    +

    Anewbe updated:

    +
      +
    • Material weapons now go dull instead of shattering. Certain weapons, like spears, will still shatter.
    • +
    • Dull weapons do less damage, but can be sharpened with a whetstone.
    • +
    • Whetstones can be crafted using plasteel.
    • +
    +

    Belsima updated:

    +
      +
    • Replaces cypherkey sprites with improved ones.
    • +
    +

    Sin4 updated:

    +
      +
    • You can no longer ascend a table by walking from a flipped table to a non-flipped one.
    • +
    + +

    08 April 2017

    +

    Anewbe updated:

    +
      +
    • Aprons now have pockets.
    • +
    • Automute shouldn't trigger if you don't type anything.
    • +
    • Adds the Chief of Security alt title for the HoS.
    • +
    • Wooden circlets can now be worn on the head.
    • +
    • Package bombs now beep when activated, and have a delay before exploding.
    • +
    • Package bombs are more expensive.
    • +
    • Robolimbs can take a bit more damage before they start malfunctioning.
    • +
    • Shrieking now decloaks changelings.
    • +
    • Drying yourself off with a towel should actually dry you off a bit now.
    • +
    +

    Arokha updated:

    +
      +
    • Simple animals resist out of buckles and lockers
    • +
    • Simple animals with retaliate but not hostile assist each other better if they also have cooperative
    • +
    • E-nets now are resist-out-of (or clickable) by the one inside or outside, rather than having HP, and can be dragged around
    • +
    +

    Atermonera updated:

    +
      +
    • FBPs can now have numbers in their name. The first character cannot be a number.
    • +
    • Common simple animals now have their own language, and as such are no longer understandable by humans.
    • +
    • Translators can't understand the same languages that recorders can't, including the new animal languages.
    • +
    +

    Leshana updated:

    +
      +
    • Upgrades the automatic pipe layer to modernize its code and make it constructable! Constructs and deconstruts like other machines now. Circuits are buildable in the autolathe. Uses steel to make pipes.
    • +
    +

    Magmaram updated:

    +
      +
    • Splints will now show up in examine text on hands and feet as well as arms and legs.
    • +
    +

    Sin4 updated:

    +
      +
    • Fixed back icons for Z8 Carbine, C20r, fireaxe, spear, and baseball bat.
    • +
    • If observing before roundstart, you may respawn.
    • +
    + +

    31 March 2017

    +

    Anewbe updated:

    +
      +
    • Added a number of crates to cargo.
    • +
    • Added the electric welder as a hidden autolathe recipe.
    • +
    • Added a few colored (in sprite, not in color) flashlights, to the loadout. Sprites c/o Schnayy.
    • +
    • Maps in a pair of jumper cable kits. Use these to revive FBPs.
    • +
    + +

    30 March 2017

    +

    Anewbe updated:

    +
      +
    • Italics in chat are now trigged with | , rather than / .
    • +
    • Energy weapons, flashlights, stunbatons, and welders can now be moved from hand to hand by click+dragging.
    • +
    • Flashlights can now be placed in wall rechargers.
    • +
    • Adds jumper cables, that act a bit like a defib for FBPs.
    • +
    • Bicaridine and Myelamine should now properly repair internal bleeding.
    • +
    • Overdoses are now more dangerous.
    • +
    • Chloral Hydrate overdoses are now even more dangerous.
    • +
    +

    Arokha updated:

    +
      +
    • Adds body markings and tattoos.
    • +
    +

    MagmaRam updated:

    +
      +
    • Borgs and assorted robits can now use grinders in chemistry and the kitchen.
    • +
    + +

    28 March 2017

    +

    Anewbe updated:

    +
      +
    • Disregard the last changelog on the spelling of HI, the correct spelling is Hephaestus. My bad.
    • +
    • Added a changelog editing system that should cause fewer conflicts and more accurate timestamps.
    • +
    • Added Myelamine, a blood clotting chemical. This is available to antags, and can be ordered from cargo or mixed.
    • +
    • Added Osteodaxon, a bone fixing medicine. This is available to antags, and can be mixed.
    • +
    • Added Carthatoline, a stronger anti-toxin.
    • +
    • Added Spidertoxin, which comes from spiders (duh), and is used in making Myelamine.
    • +
    • Death Alarms can now be ordered from cargo.
    • +
    • Dexalin Plus is half as strong (still pretty strong, though).
    • +
    • Ninja, Merc, and ERT-M Hardsuits can now inject myelamine.
    • +
    • Inaprovaline now decreases the effects of bloodloss, and lessens brain damage taken from OxyLoss.
    • +
    • Prosthetic organs now take randomised damage when emp'd, this should roughly average out to the old values.
    • +
    • The effects of heart damage have been tweaked, should be slightly easier to survive now.
    • +
    • Some of the stronger chems have side effects, like confusion or blurry vision. These should be fairly minor, and we may be tweaking them in the future.
    • +
    • The suiciding var now wears off, making it possible to save suicide victims if quick action is taken.
    • +
    • Death Alarms now announce on General comms again.
    • +
    • Borgs can climb tables.
    • +
    • Skrell can now be up to 130 years old.
    • +
    • Skrell are more vulnerable to flashes, due to their large eyes.
    • +
    • Tajaran no longer have appendicies.
    • +
    • Tajaran are more vulnerable to flashes.
    • +
    • Unathi have less brute resist, but some burn resist.
    • +
    • Unathi gender is now unclear to non-Unathi.
    • +
    + +

    22 March 2017

    +

    Anewbe updated:

    +
      +
    • Oxyloss now shows up as cyan in scanners.
    • +
    +

    Arokha updated:

    +
      +
    • Having less than 30% blood (as a result of literally having that little blood, or a broken heart) causes 75 oxyloss per tick rather than 300 toxins and instant death, to allow for heart transplants.
    • +
    • Infections now spread and process properly between external organs.
    • +
    • Infections now have appropriate symptoms that indicate to a player that they have one.
    • +
    • Infections are now diagnosable more accurately in a medscanner, or visually for high level infections or dead limbs.
    • +
    +

    Atermonera updated:

    +
      +
    • EAL, Sign language, and emotes will no longer use autohiss
    • +
    • Surgeon Borgs now have a proper medical hud module
    • +
    + +

    24 February 2017

    +

    Anewbe updated:

    +
      +
    • Fake command reports now make the paper show up.
    • +
    • Mining cameras should work now.
    • +
    +

    MagmaRam updated:

    +
      +
    • There is now a short delay before being able to fire when using hostage-taking mode, and a short delay between shots. This should make hostage mode useful for taking hostages and ambushes, rather than as an aimbot in actual firefights.
    • +
    • Sandwiches at max size can be eaten with a fork.
    • +
    +

    Yosh updated:

    +
      +
    • Some vending machines now log the items they've vended and had stocked, storing the name of the user, the time and the item. These can be found by using the new verb for vending machines, or from the right click menu.
    • +
    +

    Zuhayr updated:

    +
      +
    • Adminhelps now have a TAKE button that allow an admin to claim it, and inform the adminhelper that someone is on the case.
    • +
    + +

    28 January 2017

    +

    Anewbe updated:

    +
      +
    • Added Medical and Meson aviators.
    • +
    • Medical and Meson aviators are now in the loadout, department locked.
    • +
    • Meson Scanners have been added to the loadout, department locked.
    • +
    • Medical hardsuit has a toggleable sprint.
    • +
    • Carbon and Hematite should show up in asteroid walls.
    • +
    • Readded the random crates from mining.
    • +
    • Digging through an artifact sometimes doesn't destroy the artifact.
    • +
    • Space and cracked sand should no longer stop mining drills.
    • +
    • Diona can regenerate organs and limbs.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • Resetting a character slot now requires confirmation.
    • +
    +

    Zuhayr updated:

    +
      +
    • Added a reset slot button to chargen.
    • +
    + +

    23 January 2017

    +

    Anewbe updated:

    +
      +
    • Can now just click ones boots to draw a holstered knife.
    • +
    • More boots can hold knives now.
    • +
    • Added an action button for breath masks, making it easier to toggle them.
    • +
    • Space Carp have a chance of sticking around after their event completes.
    • +
    • Robotic limbs will no longer show up on the health scanners.
    • +
    • Medics and Security can open firedoors. Do so at your own risk.
    • +
    • Chaplain hoodie now has pockets and an actual hood.
    • +
    • Winter coat hoods have the same armor values as their coats.
    • +
    • Characters will now spawn in at a random level of hunger.
    • +
    • Assisted and Prosthetic organs now have sprites.
    • +
    • Surgical tools will not attack while on help intent, this should prevent people getting accidentally stabbed in surgery.
    • +
    • Tajaran now process reagents slightly faster.
    • +
    • Taj are now allergic to coffee again, per loremaster request.
    • +
    • Taj now get drunk faster.
    • +
    • Hyperzine is now more toxic to Taj.
    • +
    • Readded the Vox for admin/antag use and testing. They breathe Phoron now, rather than Nitrogen.
    • +
    • The Xenotaser should work properly.
    • +
    +

    FTangSteve updated:

    +
      +
    • RootSpeak is now split into a local and a global variant. For now the global acts as a hivemind.
    • +
    +

    Hubblenaut updated:

    +
      +
    • Can now click on turfs with trash bags and similar to quick-gather everything on it. No longer pixelhunting for cigarettes and bullets.
    • +
    • Buckets and other reagent holders will no longer simply be put into the janitorial cart's trash bag.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • The round start and auto-antag spawners can now check if players have played long enough to be eligable for selection.
    • +
    +

    Techhead updated:

    +
      +
    • Added a new random event: Shipping Error - A random crate is mistakenly shipped to the station.
    • +
    + +

    12 January 2017

    +

    Anewbe updated:

    +
      +
    • Ported over a bunch of hairstyles and underclothes from Baystation.
    • +
    • Nurse spiders inject eggs less frequently.
    • +
    • Nurse spiders give a warning to the victim when they implant eggs.
    • +
    +

    Neerti updated:

    +
      +
    • Hand-held flashes and flash rounds will now stun upon repeated applications, similar to stun batons.
    • +
    + +

    03 January 2017

    +

    Anewbe updated:

    +
      +
    • Farmbots should be buildable again.
    • +
    • FBPs with vital (head/torso/groin) damage will now show up on the crew monitor as being damaged.
    • +
    • Flashes should now properly affect accuracy in hand-to-hand.
    • +
    • Taj should no longer be poisoned by any sort of coffee. Looks like we missed a spot last time.
    • +
    • Recording tapes can now hold 30 minutes of chat.
    • +
    • Tape recorders and their tapes now fit in security and detective belts.
    • +
    • Lasers can now ignite thermite on walls.
    • +
    • Device cells now fit in wall rechargers.
    • +
    + +

    30 December 2016

    +

    Anewbe updated:

    +
      +
    • Changed run/walk speed to be based only on a config file.
    • +
    • Walking should be faster now.
    • +
    • Removed shoeless slowdown.
    • +
    +

    Atermonera updated:

    +
      +
    • Science grippers can install and remove borg components
    • +
    • Exosuit grippers can install exosuit equipment
    • +
    • Sheetloaders can load materials into protolathes and circuit imprinters.
    • +
    • Protolathes and circuit imprinters input materials like autolathes, taking as much of the fed stack as it can.
    • +
    +

    MagmaRam updated:

    +
      +
    • Beakers can now have longer labels.
    • +
    • Adds defibrilator crate for cargo.
    • +
    • Changed how certain stacks spawn behind the scenes. Should fix a few esoteric bugs without impacting anything else.
    • +
    +

    Neerti updated:

    +
      +
    • Subtracting, multiplying, and dividing with arithmetic circuits should actually occur now.
    • +
    • Added new arithmetic circuits; sign, round, and exponent.
    • +
    + +

    17 December 2016

    +

    Anewbe updated:

    +
      +
    • EVA rig now has insulated gauntlets.
    • +
    • Adds another slot to select languages, if desired.
    • +
    • The base device cell is now selectable in the loadout.
    • +
    +

    ForFoxSake updated:

    +
      +
    • Digital Valve pipes can now be made and moved.
    • +
    • Air Vents can now have their direction changed.
    • +
    • Atmospherics is now a little less cluttered.
    • +
    +

    MagmaRam updated:

    +
      +
    • Added a nice implant that allows humans to speak EAL.
    • +
    +

    N3X15 updated:

    +
      +
    • Added a changelog editing system that should cause fewer conflicts and more accurate timestamps.
    • +
    • Killed innocent kittens.
    • +
    + +

    01 December 2016

    +

    Anewbe updated:

    +
      +
    • Adult Diona should be able to name themselves properly now. Tweaked from a Baystation PR by FTangSteve.
    • +
    • Lightning spells and bioelectrogenesis will no longer stun outright.
    • +
    • FBPs should no longer get mutations from radiation.
    • +
    • Observe warning should properly show how long you have before you can join.
    • +
    • Adds a Toggle Shoe Layer verb to shoes, that let them be worn over the uniform (ie tucking your pants into your shoes).
    • +
    • Shoes now properly check if they can hold knives or not.
    • +
    • Sign language can now be used while muzzled.
    • +
    +

    Datraen updated:

    +
      +
    • Skrell are now more resistant to various chemicals, more susceptible to pepperspray.
    • +
    +

    ForFoxSake updated:

    +
      +
    • Fixed a possible href exploit allowing any living player to speak any language.
    • +
    • Organic beings can no longer speak Encoded Audio Language, although they can still understand it just fine.
    • +
    • Positronic brains can now speak Encoded Audio Language.
    • +
    • Station manufactured Full Body Prosthetics can now speak Encoded Audio Language.
    • +
    +

    MagmaRam updated:

    +
      +
    • Corpses will now process a select few chemicals, meaning you can now add blood into people who bled out before defibbing them.
    • +
    • Defibrilators fixed again.
    • +
    • R&D machines will now accept stacks of metal and glass from Cargo orders properly.
    • +
    +

    N3X15 updated:

    +
      +
    • Electrical storms no longer affect only cargo. If you're not cargo, your lights are no longer safe.
    • +
    +

    Nerezza updated:

    +
      +
    • APCs now have a new EMP behavior. Regular APCs shut off for a few minutes, critical APCs (engine and AI) shut off for 30ish seconds. Medbay will now not be permanently disabled by EMPs if no engineers are available to fix their APCs.
    • +
    • Bay's timed reboot interface for APCs has been ported for EMPed APCs.
    • +
    • APCs affected by grid checks say so on their nanoUI now.
    • +
    • APCs damaged by the apc_damage random event are now effectively emagged APCs. Anyone can operate their interface.
    • +
    • Emagged APCs can now be repaired by removing their power cell and using a multitool to 'reboot' them manually.
    • +
    • Nin and twiz no longer **** up APCs if they drain the battery completely.
    • +
    • Nin and twiz drain power from the wire an APC is connected to first, then drain from the power cell to fill the drain's 'quota'. Because the amount of power given from the power net is random, this means the battery will still drain but this also means you don't need to crowbar tiles in a room if the APC is empty.
    • +
    • Bluescreened APC wire panels now visibly open like they should.
    • +
    • Bashing APCs open was only effective under certain circumstances, but would spam everyone anyway. This has been changed to only spam the user and to be more indicative of when you can bash the cover off.
    • +
    • Full grammar pass on APCs.
    • +
    • Hazard shutters animate slightly and play a sound so players can more readily identify where shutters are being pried.
    • +
    • Two people can't pry the same shutter simultaneously anymore.
    • +
    • Fixed a bug causing shutters to immediately pry open when people didn't want the shutter open.
    • +
    • Inflatables can be deflated using ctrl-click.
    • +
    • Inflatables can be deployed on adjacent tiles by clicking them.
    • +
    • Bumping into closed inflatable doors will no longer freeze them for a few moments.
    • +
    +

    Yoshax updated:

    +
      +
    • All Heads of Staff now get multi-color pens in their office.
    • +
    • Doors that do not have an access requirement can now be opened when handcuffed.
    • +
    + +

    21 November 2016

    +

    Anewbe updated:

    +
      +
    • Drawing blood with a syringe now takes a moment.
    • +
    • Communicators no longer have a loadout cost.
    • +
    • Having more than 50 tox will now cause liver damage, rather than 60.
    • +
    • Adds Stimm, a homemade hyperzine made of sugar and welding fuel.
    • +
    • Hyperzine is now toxic.
    • +
    +

    Nerezza updated:

    +
      +
    • Space suits now hide jumpsuits, so excessively bulky jumpsuits no longer peek through.
    • +
    • Teshari wearing webbing now have the correct sprite overlay. More accessories need sprites, however.
    • +
    • Teshari sprites no longer show the majority of suit accessories, anyone who wants to pitch in to fix this are invited to do so!
    • +
    • Windoors can now be disassembled. Apply crowbar when open.
    • +
    • Engiborgs and drons can name door and windoor assemblines now. Click an adjacent assembly with no modules active.
    • +
    • Windoors now know how to name themselves. In addition, unnamed windoors now spawn with their default name instead of null.
    • +
    +

    RedStryker updated:

    +
      +
    • Added a colorable hairflower to the loadout.
    • +
    • Added a taqiyah to the loadout that can be colored with the color datum.
    • +
    • Fixed the sprite for the red Security Hat backwards sprite so that the 'N' on it is no longer backwards.
    • +
    +

    Yoshax updated:

    +
      +
    • All robots now get crowbars, flashes and fire extinguishers.
    • +
    • IV Drips are no longer dense, meaning they can be walked through like chairs.
    • +
    • Robots can now use the toggle lock verb on crates and lockers.
    • +
    • There is now an experimental welding tool, it regenerates its fuel on its own! One is given to the Chief Engineer, produced in Research, or found in Syndicate toolboxes.
    • +
    + +

    20 November 2016

    +

    Datraen updated:

    +
      +
    • Global announcer now has access to engineering channel.
    • +
    • Supermatter now uses the global announcer.
    • +
    +

    Nerezza updated:

    +
      +
    • Digital FBP/Cyborg brains no longer drop brains.
    • +
    • Digital FBP/Cyborg brains are tagged with their designation now.
    • +
    • All cyborgs can now unbuckle people from beds/chairs. Just attack the structure with no module selected.
    • +
    • Added the current station date to the Status tab. Ported from Baystation.
    • +
    +

    Yoshax updated:

    +
      +
    • Adds the ability for Hydroponics Trays to enter cryogenic stasis. You can do this by using a multitool on one. Wheh in stasis the plant will be frozen in time, it will neither grow nor die. Now you can have a life!
    • +
    + +

    18 November 2016

    +

    Anewbe updated:

    +
      +
    • Added .45 and tommygun AP ammo to the uplink.
    • +
    • CPR can be performed on corpses, doesn't actually help them.
    • +
    +

    Datraen updated:

    +
      +
    • Makes cameras faster, removing a large chunk of bloat relating to taking pictures. Specifically for taking pictures of angry cheetos.
    • +
    +

    MagmaRam updated:

    +
      +
    • Slimes will now properly process chems that have zero effect on them (that is, they'll get rid of them instead of clogging up their metabolism forever).
    • +
    +

    Nerezza updated:

    +
      +
    • Added Lemon Juice to soda dispensers across the station. Reagent cartridge refills can be ordered via cargo.
    • +
    • Added Lemon Juice and Milk Cartons to the bar's Booze-o-Mat. You can now order milkshakes and not get shot (maybe).
    • +
    +

    Yoshax updated:

    +
      +
    • Being unable to breathe and having oxyloss will now cause brain damage that scales with the amount of oxyloss you have. Without oxygen, the brain takes damage and will EVENTUALLY die (but you would most likely die of actual oxyloss before that point.)
    • +
    + +

    17 November 2016

    +

    Anewbe updated:

    +
      +
    • Slowdown in armor sets moved to chest and legs, rather than arms and legs.
    • +
    • Bullets and lasers will now show up on Autopsy Reports.
    • +
    • Fixed all ERT calls being silent, regardless of selected option.
    • +
    • Flashlights can now fit in rechargers.
    • +
    • Added flashlights, maglights, and the secHUD sunglasses (Sec only) to the loadout.
    • +
    +

    TheGreyWolf updated:

    +
      +
    • Added Sign language, which can be selected from character setup.
    • +
    + +

    13 November 2016

    +

    Anewbe updated:

    +
      +
    • Adds a list to prevent certain jobs from being certain roundstart antags, rather than outright preventing them.
    • +
    • Surplus crates won't make more surplus crates.
    • +
    • Random buys from uplinks will no longer buy anything out of the Badassery tab.
    • +
    • Loincloth now has an on-mob sprite.
    • +
    • Ported Bay's tape recorders (which actually work).
    • +
    +

    Broseph Stylin updated:

    +
      +
    • Added HUD aviators to the loadout. They're restricted to security, and can toggle between HUD and flash protection modes, but won't offer both at once.
    • +
    +

    MagmaRam updated:

    +
      +
    • Holsters can be concealed by some suit-slot items, others conceal all accessories.
    • +
    • Fixed certain suit-slot items not hiding jumpsuits properly.
    • +
    +

    RedStryker updated:

    +
      +
    • Adds a Guy Fawkes mask.
    • +
    +

    Yoshax updated:

    +
      +
    • Clipboards can now be made out of wood.
    • +
    + +

    25 October 2016

    +

    Anewbe updated:

    +
      +
    • The effects from empty-handed disarming now have a cooldown.
    • +
    • HoS and Detective equipment is less protective.
    • +
    + +

    24 October 2016

    +

    Anewbe updated:

    +
      +
    • The color selectable beret should now be more vibrantly colored.
    • +
    • Bullet armor has a higher chance of preventing an embed.
    • +
    • The actual system by which embed works has been changed. The overall effect should be negligible.
    • +
    • Flashlights use device cells. Time of use should be roughly unchanged.
    • +
    • Device cells have a chance to spawn where normal cells do.
    • +
    • Internal Affairs Agent HUD icon added.
    • +
    • Command, QM, and Bridge Secretary icons are now blue.
    • +
    • Research department icons are now purple.
    • +
    • Supply department icons are now brown.
    • +
    • Chemist icon is now white and red, like the rest of medical.
    • +
    • Using a roll of tape on a person requires the same level of grip as handcuffs.
    • +
    • The disclocation chance when using disarm intent with a weapon has had its' formula changed, meaning the threshold for always disclocatiing is now higher, and no longer 15 force. Meaning weapons will dislocate limbs less often and will also do less damage.
    • +
    +

    MagmaRam updated:

    +
      +
    • Rates of blood loss now depend on the type of wound inflicted and where the wound is inflicted, as well as the damage.
    • +
    +

    Neerti updated:

    +
      +
    • Changes how the grid check event works. A new machine called the grid checker exists in engineering, near the engineering substation. The actual event now involves a power spike originating from the engine, which the grid checker will activate upon sensing it, and causing a blackout. Engineering can restore power faster if they hack the grid checker correctly. A piece of paper left in the substation has more details.
    • +
    • Adds new 'spell power' mechanic, currently tied to technomancer cores. Certain cores will augment various characteristics of spells, such as damage, radius, etc Base spell power is 100% (internally 1.0) and some cores may raise or lower it.
    • +
    • Adds new 'info' tab for Technomancers that hopefully tells new them what they need to know.
    • +
    • Round-end now shows every spell each technomancer has, as well as their core type.
    • +
    • Ability HUD buttons can be re-ordered by clickdragging one button onto another.
    • +
    • Recycling core now actually works.
    • +
    • Adds two new cores. The Safety Core, which reduces instability by 70%, however it hass less energy, lower recharge rate and lower spell power. Also the Overcharged Core which uses more energy, caused more instability, but has far higher spell potency.
    • +
    • Adds a new Spyglass item, that functions exactly like a pair of binoculars. This is for Techomancers.
    • +
    • Technomancer Resurrect now has a deadline of 30 minutes until a dead person can't be revived, instead of 10 minutes.
    • +
    • Technomancer Radiance is now three times as strong. Also Radiance with a Scepter prevents the caster and allies from being afflicted.
    • +
    +

    PapaDrow updated:

    +
      +
    • Striped undergarments now exist.
    • +
    +

    Redstryker updated:

    +
      +
    • Added a blue variant of the Medical voidsuit called the 'Emergency Medical Response Voidsuit' that can be obtained from the suit cycler.
    • +
    + +

    10 October 2016

    +

    Anewbe updated:

    +
      +
    • The base device cell has been shrunk, for use in non-weapon devices.
    • +
    • Adds another class of device cell, for use in weapons.
    • +
    • Belts can now hold device cells.
    • +
    • Cryopods (including the portal and elevator) no longer consume ammo or device cells.
    • +
    • Low Yield EMP grenades now have the proper EMP radii.
    • +
    +

    Redstryker updated:

    +
      +
    • Allows promotion to Colony Director on the ID console.
    • +
    + +

    08 October 2016

    +

    Anewbe updated:

    +
      +
    • Unloading an energy weapon should now correctly show what was unloaded.
    • +
    • Borg stun baton is back to the old cost, for balance reasons.
    • +
    +

    Redstryker updated:

    +
      +
    • 'Overseer' added as an alt title to Colony Director alt titles list.
    • +
    +

    Spades Neil updated:

    +
      +
    • Adds the ability to hack Jukeboxes.
    • +
    +

    Yoshax updated:

    +
      +
    • Flashlights now take powercells.
    • +
    • Flashlights now have multiple brightness levels, including low, medium and high.
    • +
    + +

    06 October 2016

    +

    Anewbe updated:

    +
      +
    • Energy weapons and stunbatons now use special device power cells, these can still be recharged.
    • +
    • Energy weapons can be unloaded and reloaded by clicking them with an empty hand or a device cell, respectively. The process of loading a cell takes a few moments.
    • +
    • Stunbatons no longer require a screwdriver to switch cells.
    • +
    • Tweaked the order in which stunbatons check for power, they should now visibly power off when their cell hits 0, instead of one hit after.
    • +
    • Security lockers (HoS, Warden, and Officer) now have an extra device cell in them.
    • +
    • Protolathe can print device cells.
    • +
    • Adds start_recharge() proc to energy weapons. When called, this should cause the affected weapon to begin self-charging.
    • +
    • Weapons that self-recharge won't do so for a short period after firing.
    • +
    • On weapons that can fire both lethally and non-lethally, lasers drain twice as much power as tasers.
    • +
    • Laser cannon, LWAP, and self_recharging weapons cannot switch cells.
    • +
    • Map has been changed to include more rechargers. Merc and ERT bases include extra device cells.
    • +
    +

    Neerti updated:

    +
      +
    • Cleaned up the work in progress event system.
    • +
    • Added framework for a new grid check for the new event system.
    • +
    +

    Spades Neil updated:

    +
      +
    • Replaced Station Administrator with Colony Director, based on feedback literally from NASA.
    • +
    +

    Yoshax updated:

    +
      +
    • You can now only fit one pizza per box, and pizzas will no longer vanish to pizza gnomes.
    • +
    • Energy swords will now produce a small light. The light is determined by the color of the blade.
    • +
    • Simple mobs such as slimes, or carp, will now ignore intent requirements for passing applied tape.
    • +
    • Long records will no longer be devoured by long-record-goblins when attempting to edit them using a console in-round.
    • +
    • AIs with special roles will now get access to the fancy law manager.
    • +
    + +

    05 October 2016

    +

    Redstryker updated:

    +
      +
    • Added four sounds that are randomly played when bones break. Also allows the Technomancer to play the bone break sound.
    • +
    • Adds a black variety of the Security Voidsuit called the 'Crowd Control' voidsuit. It can be obtained from a Suit Cycler with Security clearence.
    • +
    • Codes in icon state for the Press Vest.
    • +
    • Added a child of the Medical armband with a red cross on it. It is available on the loadout.
    • +
    + +

    02 October 2016

    +

    Anewbe updated:

    +
      +
    • Pain from burn damage is now equal to that of brute damage.
    • +
    • Removed the exploit by which you could gain cargo points by ordering plastic crates.
    • +
    • Upped cargo point gain by 50%.
    • +
    • Parapen in SpecOps crate replaced with a 4th smoke grenade.
    • +
    +

    HarpyEagle updated:

    +
      +
    • Adds applying pressure to body parts to reduce bleeding. With desired body part selected, help-intent click yourself or get an aggressive grab, then help-intent attack with the grab item. Each person should only be able to apply pressure to one body part on one person at a time, so choose wisely. Applying pressure will get blood on your hands.
    • +
    +

    Yoshax updated:

    +
      +
    • Armbands can now be attached to things that go in the outer suit slot.
    • +
    • Shanking has been added. You can shank someone by getting an aggressive grab on them, targetting their chest and attacking them with a sharp item. This has a special attack that has greatly increased chance to do internal damage, also does bonus damage for weapons that are both sharp and have edge.
    • +
    +

    Zuhayr updated:

    +
      +
    • Added /vg/ direct-action ventcrawling. You will now crawl through the actual pipe network, a step at a time. Have fun.
    • +
    + +

    19 September 2016

    +

    Anewbe updated:

    +
      +
    • Blood Drain now heals internal damage, including broken bones and internal bleeding.
    • +
    • Adds the Command Secretary job.
    • +
    • CE hardsuit now has proper magboots and insulated gauntlets.
    • +
    • Powersinks should actually explode again, after a while.
    • +
    +

    MagmaRam updated:

    +
      +
    • Lasers and energy projectiles in general now glow in the dark.
    • +
    • Robotic and prosthetic limbs can now be used in creation of simple robots, rather than just the robotic (lawed-chasis) limbs.
    • +
    +

    Zuhayr updated:

    +
      +
    • Added /vg/ direct-action ventcrawling. You will now crawl through the actual pipe network, a step at a time. Have fun.
    • +
    + +

    16 September 2016

    +

    Anewbe updated:

    +
      +
    • Explosive implants should no longer gib the target if the setting is Localized Limb.
    • +
    • Lasercannon has 4 shots and fires slightly faster.
    • +
    • Lasercannon shots are slightly weaker to compensate for increased sustain.
    • +
    • Changes Unathi sprites slightly.
    • +
    • The advanced egun, laser carbine, and lasercannon now take up a bit more space in bags.
    • +
    • Prosthetic limbs and extremities no longer increase body temperature.
    • +
    • Ninja and Technomancer now require 5 players to start in either secret or voted.
    • +
    • Split skirts into 'skirts', which are just a skirt, and 'skirt outfits', which cover the upper body. Check your loadouts, they should remain otherwise unchanged.
    • +
    • Splints are no longer reusable.
    • +
    • Water is now more effective at dousing burning people.
    • +
    • Ninjas now vanish in a cloud of smoke, rather than exploding.
    • +
    +

    Chinsky updated:

    +
      +
    • Added a hawaii shirt to loadout accessories. Can be attached to clothing like suit jackets etc. Can also be found in mixed wardrobes.
    • +
    +

    Yoshax updated:

    +
      +
    • People bleed faster and more.
    • +
    • Splints are once again reusable and have been improved behind the scenes.
    • +
    • Removing splints will now correctly give you the splint used to splint the organ.
    • +
    + +

    03 September 2016

    +

    Yosh updated:

    +
      +
    • Projectile flash rounds will now do the same as a flash when it hits the target. As such, it will blind, confuse and blur the eyes of thw target. Pistol and machine gun rounds last the same length as a flash, shotgun rounds last longer.
    • +
    • Changeling recursive enhancement is now a toggleable passive ability, instead of a one-time use active ability.
    • +
    • You can now vomit by using the vomit emote.
    • +
    +

    Yoshax updated:

    +
      +
    • Changeling armor and space armor can now be cast off regardless of your stored chemicals.
    • +
    + +

    02 September 2016

    +

    Yosh updated:

    +
      +
    • DNA Lockable guns have been finished. Any gun can be made into a DNA Lockable gun by inserting a DNA Chip Lock. These are not currently available, and are adminspawn only. Please refer to your nearest staffmember/developer to begin discussion for future implementations of this feature.
    • +
    • A new hairstyle has been added named poofy2.
    • +
    +

    Yoshax updated:

    +
      +
    • Autotraitor now needs 0 players to start in secret.
    • +
    • Diona are now slightly faster!
    • +
    + +

    01 September 2016

    +

    Alberyk updated:

    +
      +
    • Added more horns and horns related facial options for Unathi.
    • +
    +

    Anewbe updated:

    +
      +
    • Hyperzine metabolizes twice as quickly.
    • +
    • Changeling space suits now have magboots.
    • +
    • Armblade now has suicide_act text.
    • +
    +

    Techhead updated:

    +
      +
    • Medical splints can now also be applied to hands and feet (in addition to arms and legs).
    • +
    • For those that miss the old functionality, ghetto splints have been added. These can be crafted with a roll of tape and a metal rod and can only splint arms and legs.
    • +
    +

    Yosh updated:

    +
      +
    • The secure briefcase is now available in the loadout for anyone who wishes to use it.
    • +
    • Leaving a space area and entering a non-space area will no longer leave your sprite floating.
    • +
    • Ponchos can now be attached to your uniform as an accessory. In addition they can also be attached to suits!
    • +
    • Changeling regenerative stasis will now properly regrow limbs.
    • +
    • Changeling regenerative stasis will no longer runtime and refuse to work when you have a missing limb.
    • +
    • The shuttle during revolution will no longer take forever and a day to arrive and such.
    • +
    + +

    30 August 2016

    +

    Anewbe updated:

    +
      +
    • Arm and leg guards are now slightly less slowing.
    • +
    • Mining RIG is now faster
    • +
    • Tweaks security voidsuit armor values.
    • +
    • Hardsuits (RIGs) now have an inbuilt suit cooling system, toggled via HUD button. This only works when the hardsuit is fully deployed, and drains charge from its power cell.
    • +
    +

    Neerti updated:

    +
      +
    • Emitters can be examined to see if they are damaged. They can also be repaired by applying metal sheets to them.
    • +
    • Emitters now only explode on death if they are on a powered wire with significant power flowing through it.
    • +
    • Emitters don't explode in one hit, or by tasers or non-damaging projectiles anymore.
    • +
    + +

    29 August 2016

    +

    Haswell updated:

    +
      +
    • Modules installed within a hardsuit will now be listed when examining the hardsuit control module while being held or worn, if the maintenance panel is open.
    • +
    +

    Hubblenaut updated:

    +
      +
    • Bottles will now actually sell for their set prices.
    • +
    • Chief Medical Officer and Medical Doctors now spawn with a health analyzer instead of a penlight.
    • +
    +

    Sin4 updated:

    +
      +
    • Camera Console swaps to active camera upon clicking on.
    • +
    • Hugs gender correctly.
    • +
    • Prometheans gender correctly and have a gender identity.
    • +
    • Meatspike no longer takes you prisoner upon placing something on it.
    • +
    • Lighting someone on fire now tells the admins.
    • +
    • Wiping something down with a damp rag no longer wets the floor.
    • +
    • Captains gloves now appear when put on.
    • +
    • Fixes Station Administrator Spawn point and access/restrictions.
    • +
    • Renamed items from captain to station administrator.
    • +
    +

    Yoshax updated:

    +
      +
    • IDs can now actually be put onto your ears.
    • +
    • Lungs will now once again rupture when you are in an area where you cannot breathe. This has a relatively small chance to happen.
    • +
    + +

    15 August 2016

    +

    Anewbe updated:

    +
      +
    • Changed some words to match current Tajaran lore.
    • +
    +

    Hubblenaut updated:

    +
      +
    • Adds a verb for toggling whether to show specific pieces of underwear.
    • +
    • Changes medical belt sprite. Mostly white now so they go nicely with all medical uniforms.
    • +
    +

    Yoshax updated:

    +
      +
    • Dirt accumulation on tiles will now work again.
    • +
    • The change appearance window provided to antagoniss such as mercenaries, heisters or suchlike (including traders!) will now properly allow people to select species they are whitelisted for.
    • +
    + +

    13 August 2016

    +

    Yoshax updated:

    +
      +
    • The ERT camera monitor on the shuttle will now connect to the right network.
    • +
    • The 'choose sprite' verb as a ghost will no longer prematurely clear you sprite and will now return your sprite to what it was previous when you press 'no'. However, it will not allow you to get back the sprite of your actual character because those are horrible snowflakes.
    • +
    • The Atmos Substation is now a proper substation with a breaker box and all!
    • +
    • Diona Nymphs now get a popup window on evolution to allow them to input a name.
    • +
    • Changeling revive will now close any surgical incisions.
    • +
    + +

    08 August 2016

    +

    Kelenius updated:

    +
      +
    • Xenoarcheology code has been partially redone.
    • +
    • Pick set will now sort the picks inside it.
    • +
    • Removed useless random numbers from GPS coordinates in various places. I'm sure we have not lost the arcane knowledge of rounding 500 years into the future.
    • +
    • Picks renamed to show their excavation depths.
    • +
    • Suspension generator's power use lowered.
    • +
    • Suspension generator's different field types removed. By the way, remember that they can suspend any item and even mobs.
    • +
    • Archeology belts and pick sets can now hold small pickaxes. Pick sets still only have 7 slots. Brushes fit on your ears.
    • +
    • Empty rock drop rate reduced.
    • +
    • Empty rock renamed from 'rock' to 'small rock' so you can tell if you are clicking on a turf or an item when hovering over it.
    • +
    • Empty boulder spawn rate reduced.
    • +
    • Tape measuring is a bit faster.
    • +
    • Scanner now shows the lowest and the highest depth of the find (highest is depth + clearance) for easier calculations. Ideally, you need to hit exactly the lowest spot. Less ideally, hit anywhere between higest and lowest. Hit below lowest and you have a chance to break the find.
    • +
    • You can now use a brush to clear strange rocks. Welder uses less fuel for that than before.
    • +
    • Anomaly analyser's report made a bit easier to read.
    • +
    • Anomaly locater will now also locate normal finds.
    • +
    • Gas masks will now correctly spawn as archeological finds.
    • +
    • Digsites will now properly contain several (4-12) turfs in a 5x5 radius. Be careful when digging near your finds.
    • +
    • Suspension generator will now correctly turn off (qdel issue).
    • +
    • Archeology overlays won't disappear when the icon is updated (e.g. when mining next to it).
    • +
    • Archeology overlays won't overlap each other and will properly disappear when you mine out a find.
    • +
    • Some spawning oddities were fixed.
    • +
    • Checks for whether you get a strange rock or a clean item were fixed (previously it always gave you clean item where it should have been rolling a random number).
    • +
    • Can no longer get rid of any item by putting it into evidence bag and bag into core sampler.
    • +
    • Can no longer irreversibly fold pick set into cardboard.
    • +
    • CO2 generator effect now has a type.
    • +
    • Phoron generator effect will now always generate phoron, not sometimes phoron and sometimes oxygen.
    • +
    +

    Sin4 updated:

    +
      +
    • Scheduler ported from Baystation's port of Paradise's scheduler.
    • +
    +

    Yoshax updated:

    +
      +
    • Some items such as commonly found tools are now slightly more effective when wielded as weapons. This change has been made because many of them were too low, and low because of mostly holdovers from other servers where things such as grey tide are big concerns.
    • +
    + +

    07 August 2016

    +

    HarpyEagle updated:

    +
      +
    • Severe enough burn damage now causes one-time blood loss due to blistering and body fluid cook-off.
    • +
    +

    Sin4 updated:

    +
      +
    • Fixed ERT icon not showing up properly for sechuds.
    • +
    • Fixed instances of the game mode's config_tag being displayed instead of the game mode name.
    • +
    +

    Yoshax updated:

    +
      +
    • Attacking yourself, or anyone else with a stack of five or more telecrystals will teleport the attacked person to a random, safe (not in space) location within 14 metres.
    • +
    • All telecrystals ammounts have been multiplied by 10. This means the base amount is now 120, and an emag for example costs 30, vs the previous 12 and 3, respectively.
    • +
    • You can once again use telecrystals on an emag to add more uses to it. You get 1 use per every 2 telecrystals.
    • +
    • Instead of only being able to remove 1 telecrystal from your uplink, you can now remove 1, 5, 10, 25, 50.
    • +
    + +

    05 August 2016

    +

    Anewbe updated:

    +
      +
    • Changeling Self-Respiration is now a toggle. By default they breathe normally, but if they use the power they no longer require oxygen, or experience the effects of inhaled gasses.
    • +
    • Heat based damage has been increased. This includes fire.
    • +
    +

    Hubblenaut updated:

    +
      +
    • Windoor assemblies can now be named with a pen.
    • +
    • Windoor and airlock assemblies now show their custom name during construction phase.
    • +
    • Windoors can now be made out of two sheets of glass or reinforced glass, for normal and secure windoors respectively.
    • +
    • Windoors now automatically close after construction.
    • +
    • Adjusts the algorism for how windoors and windows are placed on construction (when there are already windows co on the same turf).
    • +
    • Windoors will now drop exactly the materials they were made of.
    • +
    • Prying a broken circuit out of a windoor will no longer cause duplicates to drop.
    • +
    • Airlocks no longer spark after spawn and several other icon update issues were fixed.
    • +
    • Fixes reinforced walls not being constructable with one sheet left in stack.
    • +
    • Windows that were busted out of their frame by force are now correctly rotatable.
    • +
    • Lots of spellchecking and code cleanup in windoor and airlock code.
    • +
    • Killed innocent kittens.
    • +
    +

    Sin4 updated:

    +
      +
    • Advanced Body Scanners are now deconstructable
    • +
    • You can now add coolant to the Radiocarbon Spectrometers
    • +
    • Frame code revamped and cleaned up.
    • +
    • R&D server circuitboards can be swapped between core and robotics types using a screwdriver.
    • +
    +

    Yoshax updated:

    +
      +
    • Wounds will now once again bleed.
    • +
    • Xeno loadout items will now properly be reloaded into a slot when the server restarts.
    • +
    • A new item has been added to the uplink. Package bombs. These come in two variants, small and big, which cost 20 TC and 40 TC respectively. These come in a box with an explosive, a disguised detonator and a screwdriver. The use the detonator you muse apply the screwdriver to configure it into detonator mode. This must be done when it is closed.
    • +
    + +

    31 July 2016

    +

    Anewbe updated:

    +
      +
    • Sprays now respect shields.
    • +
    +

    Yoshax updated:

    +
      +
    • Certain items such as pills and suchlike will once again be usable on someone who is on a surgical table/table.
    • +
    + +

    25 July 2016

    +

    PsiOmegaDelta updated:

    +
      +
    • Robot upgrades produced in robotics to be applied to Cyborgs can now once again actually be applied.
    • +
    +

    Rymdmannen updated:

    +
      +
    • Added department specific rubber stamps for cargo and warden.
    • +
    • Replaced 'small rubber stamp' with corresponding new ones in cargo area and warden's office.
    • +
    • Renamed ''quartermaster's stamp'' to ''quartermaster's rubber stamp''.
    • +
    +

    Superbee29 updated:

    +
      +
    • Ghosts can now see the power in a cable when examining it.
    • +
    +

    Yoshax updated:

    +
      +
    • Flashes no longer provide an instant stun. Flashes now confuse and blind the affected person for five seconds and in addition makes their eyes blurry for ten seconds.
    • +
    • The empty box supply crate has been replaced with a shipping crate. Which contains what you need to send stuff places!
    • +
    • The chef now gets a destination tagger and packaging paper to send people food.
    • +
    • Drinking glasses now have a material cost in the autolathe.
    • +
    • When emagged security bots such as the Securitron and ED-209 will now move and pursue faster.
    • +
    • Securty bots such as mentioned above will now be properly emagged.
    • +
    • The cost of items in the antag uplink have been tweaked. Some are cheaper, some are more expensive. In addition, you can now buy singular grenades isntead of boxes. Buying a box has a discount over the singular.
    • +
    • Repairing burn damage on FBPs will now once again properly work.
    • +
    • Undislocating limbs will now once again properly work.
    • +
    • The phoron assembly crate in cargo has been renamed to a Phoron research crate and now contains more supplies including tank transfer valves.
    • +
    • The cooldown between discount offers in the antag uplink is now 10 minutes versus the previous 15 minutes.
    • +
    • The ordering of the items in the autolathe will now be somewhat diferrent due to a code overhaul. It is now in alphabetic order.
    • +
    • Security robots such as the Securitron or ED-209 are now more hardy and can take more damage before dying.
    • +
    • The silenced pistol no longer has any recoil and can be fired faster with less delay in between shots.
    • +
    + +

    22 July 2016

    +

    Anewbe updated:

    +
      +
    • Removes assault carbine from uplink.
    • +
    • Speeds up the toxin reagents
    • +
    +

    EmperorJon updated:

    +
      +
    • Having between 20 and 100 nutrition and over 45 toxin damage will no longer cause you to gag ad-infinitum and die. It now respects vomit time restraints.
    • +
    • Gagging now occurs only when the mob has no nutrition at all. It no longer causes three toxin damage, only weakens as before.
    • +
    • Vomiting and/or gagging from toxins now occurs regardless of nutrition, not only 20+.
    • +
    +

    Neerti updated:

    +
      +
    • Adds ability for ghosts to send and receive text messages via communicator.
    • +
    +

    Yoshax updated:

    +
      +
    • Drop pod contents have been adjusted. In general, you will get something more useful and the less useful contents have been made more interesting. There is a total of 12 drop pod content lists and 7/12 are useful, 4/12 are useless, 1/12 is potentially useful.
    • +
    • Stun Revolvers will no longer be able to spawn from random energy weapon spawns. In addition, some of the other random item spawns have new items and adjusted probablities.
    • +
    • Tajaran are no longer negatively affected by coffee.
    • +
    • Bucklecuffing as it has been known for the longest time is no longer a thing. When you resist when cuffed and buckled to something, you will now resist out of the handcuffs first, allowing you to simply unbuckle yourself once done.
    • +
    + +

    13 July 2016

    +

    Anewbe updated:

    +
      +
    • Removed detonating borgs via Robotics Console
    • +
    +

    Yoshax updated:

    +
      +
    • Emagging a cargo supply console will now properly hack it and will also remove the access requirement.
    • +
    • Languages selected during character setup will once again be properly added to mobs.
    • +
    +

    xDarkSapphire updated:

    +
      +
    • Adds a new hairstyle: Spiky Ponytail.
    • +
    + +

    10 July 2016

    +

    Anewbe updated:

    +
      +
    • Changelings will no longer remain stunned or suchlike when attempting to regenerate.
    • +
    +

    Cirra/ updated:

    +
      +
    • Added a chemistry gripper for Crisis borgs.
    • +
    +

    GinjaNinja32 updated:

    +
      +
    • Adds 3x & 4x upscaling options for players with very large monitors.
    • +
    +

    HarpyEagle updated:

    +
      +
    • Runtime can now become friends with anyone, regardless of their initial job.
    • +
    +

    Neerti updated:

    +
      +
    • Mining can now be done with explosives. The effectiveness depends on the spot chosen to explode, so using an ore scanner is advised.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • MedHUD overlays now have more stages, both for 'normal' and critical stages of injury, for improved quick-diagnosis.
    • +
    +

    Redstryker updated:

    +
      +
    • Communicators will no longer show up on camera networks by default.
    • +
    • Adds a selection of flannels to the loadout. These can have their sleeves rolled up, their buttons buttoned up, be tucked in and any combination of those.
    • +
    +

    Techhead updated:

    +
      +
    • New Random Event: Solar Storms. Similar to a radiation storm, but anywhere inside the station is safe. Also boosts solar panel output significantly for the duration.
    • +
    +

    Yoshax updated:

    +
      +
    • Ports an Advanced Who verb that allows normal players to see what players are in game, and which aren't.
    • +
    +

    Zuhayr updated:

    +
      +
    • Modifies the health HUD element to display limb damage individually. It will reflect your species, prosthetics, loss of limbs, as well as being on fire.
    • +
    + +

    08 July 2016

    +

    EmperorJon updated:

    +
      +
    • Adds admin functionality to call a trader ship event with the Beruang in the same manner as ERT dispatches.
    • +
    • Adds a Trader 'antagonist' as they use the antagonist framework. Not considered an actual antagonist, like the ERT.
    • +
    • Alters Beruang base to provide some clothing for Traders plus a locked-down area for admins to spawn cargo.
    • +
    • Alters Beruang access to a new Trader-ID-only access requirement.
    • +
    +

    Neerti updated:

    +
      +
    • Restructred the AI core massively, and the upload slightly.
    • +
    • Adds a new material type, called Durasteel, which is made from plasteel and diamonds. It's incredibly tough and also reflective. The inner walls of the AI core contain this new material to protect it.
    • +
    • New turret subtype just for the AI core, that is more durable, has a chance to shrug off EMP, and fires xray lasers. They even turn green.
    • +
    • Turrets now wait to go back down in their covers upon losing sight of a target.
    • +
    • Emitters now have health, and can be damaged by projectiles. They will explode on death.
    • +
    • Critical APCs (the type found in the engine and AI core) are now more resistant to EMP. Equipment and Enviroment stays on during an EMP, and less of the cell is drained.
    • +
    +

    Sin4 updated:

    +
      +
    • Added benches.
    • +
    • Added floor lamps.
    • +
    • Added water-cooler cup dispenser.
    • +
    +

    Yoshax updated:

    +
      +
    • Adds recipes for four new non-alcoholic cocktails. Shirley Temples, Roy Rogers, Arnold Palmers and Collins Mixes.
    • +
    • Adds five new Tajaran hairstyles ported from Aurora.
    • +
    + +

    01 July 2016

    +

    Aztectornado updated:

    +
      +
    • Clicking a stack of sheets (Metal, phoron...) in your other hand now asks how many you want to split off the stack, courtesy of Baycode
    • +
    +

    Datraen updated:

    +
      +
    • Antagonistic factions can now be set and viewed on the uplink. Visibilities can be set for these as well, to help identify sympathizers/potential aids, or to hide the information from those outside of your faction.
    • +
    +

    Yosh updated:

    +
      +
    • Increases max records and book length to ridiculous levels.
    • +
    +

    Yoshax updated:

    +
      +
    • The PTR Sniper is now more accurate when scoped, but less accurate when unscoped. In addition it now has more recoil.
    • +
    • The Laser Cannon no longer holds multiple shots. It holds charge for one shot at a time. This is because the beams it fires now do 90 damage with 100 armor penetration. Furthermore, it is now considerably more accurate. Lastly, to counteract it only holding one shot at a time, it now autorecharges, which takes 60 seconds.
    • +
    +

    Zuhayr updated:

    +
      +
    • Ports/adapted several kitchen machines from Apollo Station.
    • +
    + +

    27 June 2016

    +

    Sin4 updated:

    +
      +
    • Added NanoUI for Advanced Body Scanners, Arcade, Atmospherics Control Computer, Chemmaster, Cloning Console, Fax Machines, Guestpass Console, Holodeck Computer, Laptop Vendors, Operating Computer, and Photocopiers.
    • +
    • Fixes chemmaster not putting pills in pill bottles.
    • +
    + +

    21 June 2016

    +

    HarpyEagle updated:

    +
      +
    • Fixes disarm-attack dislocation chances being so low that you were very likely to break the targeted limb before it would dislocate.
    • +
    • It is now possible to disarm-attack with stunbatons like with other melee weapons. Note that this means that using a stunbaton on disarm intent will hurt people.
    • +
    • Trying to move while being grabbed will now automatically resist.
    • +
    • Small mobs are no longer able to pin larger mobs.
    • +
    • Resisting a smaller mob's grab is more likely to be successful.
    • +
    • Fixed being able to climb onto a larger mob while restrained, weakened, unconscious, or dead.
    • +
    +

    JerTheAce updated:

    +
      +
    • CentCom Fax, Admin Prayer, and CentCom emergency messages now prompt admins with a pleasing sound effect.
    • +
    • Fax machines now sound like fax machines and not polaroid cameras.
    • +
    + +

    15 June 2016

    +

    Yoshax updated:

    +
      +
    • The categories for items in the cargo ordering console have been reworked. Items shoulw now be in more sensible categories. If you cannot find something, try the sensible category.
    • +
    + +

    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:

    +
      +
    • There is now more soap on the map. The chef also gets a dropper.
    • +
    • Changes in gravity now stun for much longer.
    • +
    • Bullets now have a better chance of penetrating objects such as filing cabinets, consoles, fax machines, etc. This applies to all bullets.
    • +
    • The research outpost toxins department now has reinforced phoron windows.
    • +
    • Spears now do their correct damage instead of doing around half.
    • +
    + +

    07 June 2016

    +

    Datraen updated:

    +
      +
    • Adds a trait tool for Xenobio2. It was supposed to be in the initial implementation, but fell through the cracks, sorry!
    • +
    • Fixed the xenobio smartfridge not displaying it's starting core amount.
    • +
    • Fixed an inverted check with slimes.
    • +
    +

    EmperorJon updated:

    +
      +
    • Increased loadout points from 10 back to 15. We've added so many things like lunchboxes and communicators that everyone just takes by default, so a few more points will be nice.
    • +
    +

    JerTheAce updated:

    +
      +
    • Adds a variety of new guns. Some of these guns and and their ammunition are purchasable through antag uplink, cargo, or can be spawned during Renegade or Heist modes.
    • +
    • Adds ammunition clips for reloading magazines and some guns (such as bolt-actions).
    • +
    • All magazines and ammunitions can now be produced with the autolathe.
    • +
    • New bullpup SMG is available in armory area on CentCom level.
    • +
    • Revolvers now use 6 shots. Finally.
    • +
    • Most guns that didn't use magazines before for some reason (such as the Uzi) now use magazines.
    • +
    • All casings now update icons if they have been spent.
    • +
    • Corrects Pulse Rifle charge cost consistency.
    • +
    • Corrects and improves a number of icons for guns, including a couple of energy guns, and adds fallback icons so they do not turn invisible when held or strapped to your back.
    • +
    • Made the icons for some guns look differently depending on what magazine is loaded into them.
    • +
    • Made antag uplink menu for guns and ammo more informative.
    • +
    • Machinegun magazines no longer fit in pockets.
    • +
    • Made names and descriptions for all projectile guns and ammo consistent while removing grammar and spelling errors.
    • +
    • Autolathe no longer exploitable for ammo by repeatedly recycling empty magazines.
    • +
    • Guns now check a list of compatible magazines.
    • +
    • Ranged mobs no longer drop usable .357 casings.
    • +
    • Added a variety of new gun sound effects, and swapped out the old default gun sound.
    • +
    + +

    30 May 2016

    +

    EmperorJon updated:

    +
      +
    • Ports Baystation's setup screen changes, thanks to PsiOmegaDelta.
    • +
    • Includes character preview with toggleable equipment, visible loadout items, ghost character sprites, and custom colour underwear. Your underwear will have reset, so you'll need to set it back.
    • +
    + +

    29 May 2016

    +

    Datraen updated:

    +
      +
    • Injecting people with mutationtoxin no longer mutates them into slime people.
    • +
    • Removes amutationtoxin.
    • +
    • Removes slime core recipies.
    • +
    • Adds slime monkey cubes, which are created by injecting monkey cubes with mutationtoxin and activating like a posibrain.
    • +
    • Maps for Xenobio2 research labs/stations.
    • +
    +

    Zuhayr updated:

    +
      +
    • Backend change: allowed accessories to be placed on any clothing item with the appropriate variables set.
    • +
    + +

    27 May 2016

    +

    Yoshax updated:

    +
      +
    • Added a new preference that allows you to disable fake nanoui styling on relevant windows. However, if it is your first time loading with this new preference you will need to save your character slot, as there is a problem with satanisiation and it believes the preference is set to disable the nanoui styling.
    • +
    + +

    25 May 2016

    +

    Serithi updated:

    +
      +
    • Adds in lavender.
    • +
    +

    Yoshax updated:

    +
      +
    • Cables of any color can now be merged.
    • +
    • More and different colors are now available to be used by cable.
    • +
    • Adjusting your suit sensors now displays a message to other people in range that you did so. In addition, seeing someone else adjust someone's suit sensors no longer informs you to what level.
    • +
    • Added towels to the loadout. These can be worn on the head, belt or outwear slots. You can also whip people with them for a special message and sound! In addition, using them in-hand will produce an emote where your towel yourself off.
    • +
    + +

    17 May 2016

    +

    SilveryFerret updated:

    +
      +
    • Changes the Death Alarms from announcing over Common channel, to announcing only over Medical and Security channels.
    • +
    +

    Yoshax updated:

    +
      +
    • Added shotglasses. These can contain 10 units. They have their whole contents swalloed in one gulp. They can be produced in the autolathe or found in the booze vending machine in the bar.
    • +
    + +

    16 May 2016

    +

    Yoshax updated:

    +
      +
    • Uplinks now have a discounted item every 15 minutes. This is per uplink, and random, the discount is also random, but weighted as such that a low discount such as 10% off, or 20% off has a higher chance of happening than a high discount such as 90% of. An item will never cost less than 1.
    • +
    • Mercenaries now spawn with their own, personal uplinks.
    • +
    • Faked announcements are now once again purchasable from the uplink, and actually work.
    • +
    • Adds several new items to the uplink including tactical knives, metal foam grenades, ambrosia seeds and much more.
    • +
    + +

    13 May 2016

    +

    HarpyEagle updated:

    +
      +
    • Shotgun flare illumination now lasts longer, around 3-4 minutes.
    • +
    • Fixed attack animation playing when using flashes even if the flash was not actually used due to being broken or recharging.
    • +
    • Fixed lightswitches layering over darkness. Now only the light layers above shadow. Lightswitch illumination is now much more subtle.
    • +
    +

    Yoshax updated:

    +
      +
    • Processing strata floor can now be pried up with a crowbar.
    • +
    • Blue carpet can now also be removed with a crowbar, and has had it's ability to burn and have corners restored.
    • +
    • Changelings will now store and apply the flavor text of their victims when they absorb and transform into them.
    • +
    • Gives Diona a starting funds wage the same as Tajaran and Unathi.
    • +
    • Brain damage no longer prevent implant removal surgery.
    • +
    + +

    12 May 2016

    +

    Yoshax updated:

    +
      +
    • Doubles the maximum length of records and names to 6144 & 52, respectively. Also increases book length to 12288. (All numbers are in characters.)
    • +
    • Makes various services in the antag uplink purchasable once again. This includes the fake crew arrival.
    • +
    • Neckgrabs will no longer force people to the ground. In addition, weakened people can no longer resist.
    • +
    • All vending machines now have a small chance of vending an additional item.
    • +
    • Smoke from smoke bombs now lasts approximately 3 times as long and spawns some more smoke to make a heavier cloud.
    • +
    • Smoke from smoke bombs now properly does a small amount of oxygen loss damage. This damage is per cloud of smoke.
    • +
    + +

    05 May 2016

    +

    Datraen updated:

    +
      +
    • Added three mixed modes, 'Mercenaries & Wizard', 'Mercenaries & Renegades', and 'Traitors & Renegades'.
    • +
    +

    Hubblenaut updated:

    +
      +
    • Hydroponics vendor and biogenerator offer full bottles of fertilizer. Prices and amount available adjusted to accomodate.
    • +
    +

    Kelenius updated:

    +
      +
    • Move delay after clicking has been removed.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • Can now prefill the loadout flask and vacuum-flask with a relevant liquid of your choice.
    • +
    +

    Yoshax updated:

    +
      +
    • Splits gender into biological gender and gender identity. Biological gender modifies the sprite (for between male and female) and gender identity determines what pronouns show up when examined or suchlike. Both are displayed in medical records and such.
    • +
    • Smoke grenades can now have their smoke color set by using a multitool on them.
    • +
    + +

    17 April 2016

    +

    Datraen updated:

    +
      +
    • Manually ports /tg/station's dark click code https://github.com/tgstation/-tg-station/pull/10272 by Razharas.
    • +
    • Teshari smocks now spawn as smocks, and not aqua jumpsuits.
    • +
    • Checks to see if new a two-handed weapon can be wielded when dropped.
    • +
    +

    EmperorJon updated:

    +
      +
    • Robotics Console now correctly shows the operational/lockdown state and button based off if it thinks the synthetic is locked down or not.
    • +
    • Autotraitor synths now behave the same as Traitor synths - they are not locked down.
    • +
    +

    Kelenius updated:

    +
      +
    • Solars now start wired.
    • +
    +

    Neerti updated:

    +
      +
    • Ports Bay's volume-based inventory system. It works off by weight classes instead of just slots, allowing you to hold more light items than you could previously.
    • +
    • Bulky items can now go in your backpack, however it will require twice the space of a normal sized item.
    • +
    • Spacesuits, RIGs, and sniper rifles made heavier.
    • +
    + +

    07 April 2016

    +

    Datraen updated:

    +
      +
    • If a slice of an item is spawned independently, it will get generic settings.
    • +
    +

    Kelenius updated:

    +
      +
    • Changelings will now change appearance and species together when transforming.
    • +
    • Changelings no longer have gender honorifics in lingchat.
    • +
    • Absorbing the DNA from any source will allow you to use its name, species, and languages.
    • +
    • DNA extract sting won't produce a strange message if there's no target.
    • +
    • Cultists no longer need to research words.
    • +
    + +

    04 April 2016

    +

    Kelenius updated:

    +
      +
    • Monkeys can ventcrawl once again.
    • +
    +

    Yoshax updated:

    +
      +
    • Tasks that take time to perform now have a progress bar.
    • +
    • Visibility of progress bars can be toggled in preferences. Default is on.
    • +
    + +

    29 March 2016

    +

    Datraen updated:

    +
      +
    • Added Three New Mixed Gamemodes: Lizard, Changeling + Wizard; Intrigue, Traitors + Ninja; Visitors, Ninja + Wizard.
    • +
    • Created a variable for latespawning antagonist templates, for customization of autospawning antagonists in mixed game modes.
    • +
    • Fixes the buckled check limiting whether or not someone can interact while sitting.
    • +
    • Resisting while buckled and cuffed will process the hand and leg cuffs before unbuckling.
    • +
    • Removed JSON encoding of the PDA Manifest list.
    • +
    • Microwaves no longer try cooking their components while cooking.
    • +
    • Adds a check to prison breaks that makes sure the APC is on before continuing.
    • +
    • Artifacts will no longer spawn on floor turfs.
    • +
    • Stops traitorborgs from being able to hack other borgs.
    • +
    • Stops traitorAIs from being able to hack unlinked borgs.
    • +
    +

    Yoshax updated:

    +
      +
    • Player preferences has been overhauled. Please update your preferences, found at "Character Setup" > "Global" > "Preferences", as they have been reset.
    • +
    + +

    16 March 2016

    +

    Datraen updated:

    +
      +
    • Harmbaton no longer causes halloss while inactive.
    • +
    +

    Kelenius updated:

    +
      +
    • Potassium and nitroglycerin explosive grenades now work.
    • +
    + +

    11 March 2016

    +

    Datraen updated:

    +
      +
    • Adds ckeys, player panel to the antagonists panel.
    • +
    • Fragmentation grenades are no longer launchable.
    • +
    • Adds amount of telecrystals to the set telecrystal verb.
    • +
    • Added a verb to just add to telecrystals.
    • +
    +

    Kelenius updated:

    +
      +
    • Drying rack now has a new sprite.
    • +
    • Beekeeping materials and a honey extractor have been added to hydroponics.
    • +
    • There is now a ten-second delay for carding the AI.
    • +
    +

    Zuhayr updated:

    +
      +
    • Small species now take smaller bites/gulps from food and drink.
    • +
    • Small species are now effected by alchol and toxins twice as much.
    • +
    • blood_volume is now a species-level var and Teshari have lowered blood volume.
    • +
    • Hunger is a species var and Teshari get hungry faster.
    • +
    • Small mobs have a reduced climb delay.
    • +
    • Teshari gain more nutrition from meat.
    • +
    + +

    11 February 2016

    +

    Datraen updated:

    +
      +
    • Moderators can now see and use AOOC.
    • +
    • Other synthetics given EAL.
    • +
    • Trays now drop items when placed on table, dropped.
    • +
    • Objects can now be yanked out of synthetics.
    • +
    • Respawn time moved down from 30 minutes to 15 minutes.
    • +
    • Telecrystal item added for trading telecrystals between traitors and mercenaries.
    • +
    • Telecrystal item now has tech values.
    • +
    +

    EmperorJon updated:

    +
      +
    • Traitor synths can no longer be locked down from the robotics console. Attempting to lock them down (or release the lockdown) notifies the synth of the attempt and updates the console's UI as normal.
    • +
    +

    Neerti updated:

    +
      +
    • Suit cooling units can now be attached to voidsuits. Note that coolers and air tanks are mutually exclusive.
    • +
    • EMP no longer hits twice on humans.
    • +
    • EMP drains powercells using the cell's current charge, and not the cell's maximum potential charge, to ensure two blasts do not completely disable a synthetic.
    • +
    • EMP hitting a prosthetic limb or organ will now do less damage.
    • +
    • EMP hitting a cyborg will no longer outright stun them. Instead, they gain the 'confused' status for a few moments, making movement difficult. In addition, their HUD gets staticy, and their modules are forced to be retracted.
    • +
    • Stasis bags will protect the occupant from the outside enviroment's atmosphere.
    • +
    • Stasis bags can be hit with a health analyzer to analyze the occupant.
    • +
    +

    Zuhayr updated:

    +
      +
    • Drones can now pull a variety of things (such as scrubbers). This came with a pulling refactor so please report any strangeness with pulling in general.
    • +
    • Drones (and any mob that can be picked up) can be bashed against airlocks and such to use their internal access, so long as the person using them does not have an ID card equipped.
    • +
    • Added foam weapons to cargo for LARP shenanigans.
    • +
    • Added the ability to equip grenades to the mask slot, and to prime them by clicking someone with harm intent targeting the mouth.
    • +
    • Removed the species restrictions on transplanted internal organs. Have fun.
    • +
    • Added 'full body' prosthetic options to character generation.
    • +
    • Removed IPC. No tears were shed.
    • +
    • RE: borgs, Renamed 'robot' type to 'drone' and 'android' type to 'robot' for clarity with new 'android' human mobs.
    • +
    • Rejuvenate will now reapply robolimb/autopsy data.
    • +
    • Lots of backend work relating to the above. If you're a coder go look at the PR or ask Zuhayr for details.
    • +
    • Removed brute and burn resist from robolimbs, removed sever vulnerability from robolimbs.
    • +
    • Added a config option for visible human death messages.
    • +
    • pAIs and small mobs can now bump open doors.
    • +
    • Added functionality for two-handed guns; these guns will give an accuracy penalty if fired without an empty offhand.
    • +
    • Unified two-handed melee weapons with the above; while the offhand is empty, the weapon will count as wielded.
    • +
    + +

    16 December 2015

    +

    HarpyEagle updated:

    +
      +
    • Fixed a couple of bugs causing phoron gas fires to burn cooler and slower than they were supposed to.
    • +
    • Merc bombs are now appropriately explosive again. Same goes for bombs made by toxins.
    • +
    +

    Hubblenaut updated:

    +
      +
    • Airlock backup power test light properly offline when backup power down.
    • +
    • Empty flavor texts no longer draw an empty line on examination.
    • +
    • Material stacks now properly merge upon creation.
    • +
    • Messages for adding to existing stack appear again.
    • +
    +

    TheWelp updated:

    +
      +
    • Removed higher Secret player requirements.
    • +
    + +

    06 December 2015

    +

    Datraen updated:

    +
      +
    • Changes standard and specific plant traits, more diverse plants.
    • +
    +

    HarpyEagle updated:

    +
      +
    • Fabricated power cells start uncharged.
    • +
    +

    Hubblenaut updated:

    +
      +
    • Welding a broken camera will use the correct icon.
    • +
    • Camera assemblies remember their tag and network from previous usage.
    • +
    • Light replacers can be refilled by clicking on a storage item.
    • +
    • Light replacers now hold up to 32 light bulbs.
    • +
    • Light replacers can be obtained through janitorial supply crates.
    • +
    • A sheet of glass fills the light replacer by 16 bulbs.
    • +
    • Material stacks now properly merge upon creation.
    • +
    • Messages for adding to existing stack appear again.
    • +
    • Mobs on help intent will not push others that aren't.
    • +
    • Adds tape for atmospherics.
    • +
    • Tape graphics and algorithm changes. Looks a lot more appealing now.
    • +
    • Starting and ending tape on the same turf will connect it to all surrounding walls/windows.
    • +
    • Lifting a part of the tape will lift an entire tape section.
    • +
    • Mobs on help intent do stop for tape.
    • +
    • Crumpled tape does not affect tape breaking behavior anymore.
    • +
    • Fixes vending machines not adding stored goods when maintenance panel is closed.
    • +
    • Doors do only buzz once on failed closing attempt.
    • +
    +

    MagmaRam updated:

    +
      +
    • Fixed cloners killing fresh clones instantly with brain damage.
    • +
    • Fixed a bug where disposals pipes would show up above floors despite being installed under them.
    • +
    +

    Neerti updated:

    +
      +
    • Adds NanoUI for communicators, the ability for communicators to call other communicators on the station, the ability for station-bound people to call ghosts, and for ghosts to toggle their visibility to communicators on or off in character preferences (defaults to off). Communicators can now also support more than one call at the same time, for both ghosts and normal communicators.
    • +
    • Adds new machine to telecomms, the Exonet node. It is very basic in terms of functionality, but certain services can be selectively disabled from it, such as newscaster updates, communicators, or external PDA messages. Adds methods for building and deconstructing Exonet nodes.
    • +
    • Adds framework for a fake-networking system called EPv2 that communicators will now use, and perhaps other machines will in the future, for good or for evil.
    • +
    • Changeling Spacearmor reduced in protective ability.
    • +
    • Cryogenic String and Delayed Toxic Sting now have a three minute cooldown upon stinging someone.
    • +
    • Cryotoxin, the chemical used in Cryogenic String, is 25% less potent now.
    • +
    • The rune to summon Narsie has been changed. Narsie is no longer summoned, but Hell still comes.
    • +
    • Spooky mobs spawned from spooky portals as a result of Hell coming have had their speed, health, and damage reduced.
    • +
    • Manifested humans no longer count for summoning Hell.
    • +
    • Changes how armor calculations work. All the armor values remain the same, but the 'two dice rolls' system has been replaced with a mix of reliable damage reduction and a bit of RNG to keep things interesting. The intention is to make weaker armor more relevent and stronger armor less overpowered.
    • +
    • When you are hit, it uses the armor protection as a base amount to protect you from, then it does a roll between +25% and -25% of that base protection, and adds it to the base protection. The result of that is how much damage is reduced from the attack. For example, if you are hit by an energy sword in the chest while wearing armor that has 50 melee protection, the base protection is 50, then RNG can make the final protection be between 37.5 and 62.5 percent. The damage you'd take could range from 11.25 to 18.75, instead of 0, 15, or 30. Remember that some weapons can penetrate armor.
    • +
    • Added personal communicators, a device that enables someone to talk to someone else at vast distances. You can talk to people who are far from the station, so long as telecommunications remains operational.
    • +
    • To use, become a ghost, then use the appropiate verb and pick a communicator to call. Then you wait until someone picks up. Once that occurs, you will be placed inside the communicator. The voice you use is your currently loaded character. Languages are supported as well.
    • +
    • Round-end is now three minutes instead of one, and counts down, to allow for some more post-round roleplay. If the station blows up for whatever reason, the old one minute restart is retained.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • Manual radio frequency changes can no longer go outside the standard frequency span.
    • +
    • Users with sufficient access can instead select pre-defined channels outside this span, such as department channels, when using intercoms.
    • +
    +

    Zuhayr updated:

    +
      +
    • Aiming has been rewritten, keep an eye out for weird behavior.
    • +
    • Removed the detective scanner and associated machinery.
    • +
    • Added a microscope, machine forensic scanner, etc. from Aurora forensics.
    • +
    + +

    22 November 2015

    +

    neersighted updated:

    +
      +
    • Laptop Vendors now accept ID Containers (PDA, Wallet, etc).
    • +
    • Personal Lockers now accept ID Containers (PDA, Wallet, etc).
    • +
    + +

    27 October 2015

    +

    HarpyEagle updated:

    +
      +
    • When affected by pepperspray, eye protection now prevents blindness and face protection now prevents stun, instead of face protection doing both.
    • +
    + +

    26 September 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • Meteor events now select a map edge to arrive from, with a probability for each individual wave to come from either neighboring edge. Meteors will never arrive from opposite the starting edge.
    • +
    + +

    11 September 2015

    +

    HarpyEagle updated:

    +
      +
    • Made flares brighter.
    • +
    • Coffee is now poisonous to tajaran, much like how animal protein is poisonous to skrell.
    • +
    + +

    08 September 2015

    +

    Soadreqm updated:

    +
      +
    • Increased changeling starting genetic points to 25.
    • +
    +

    Zuhayr updated:

    +
      +
    • Auto-traitor should now be fixed.
    • +
    • The Secret game mode should now be fixed.
    • +
    + +

    07 September 2015

    +

    GinjaNinja32 updated:

    +
      +
    • Added an auto-hiss system for those who would prefer the game do their sss or rrr for them. Activate via Toggle Auto-Hiss in the OOC tab.
    • +
    • Auto-hiss system in 'basic' mode will extend 's' for Unathi and 'r' for Tajara. 'Full' mode adds 'x' to 'ks' for Unathi, and is identical to 'basic' mode for Tajara.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • Changed the language prefix keys to the following: , # -
    • +
    • Language prefix keys can be changed in the Character Setup. Changes are currently not global, but per character.
    • +
    + +

    05 September 2015

    +

    Chinsky updated:

    +
      +
    • Made capguns into proper guns code-wise. It means you can now take people hostage with them, stick in your mouth, and all other things you can do with real guns but probably shouldn't.
    • +
    • Russian roulette! Fun for whole sec team! Unload some shells from revolver, spin the cylinder(verb) and you're good to go!
    • +
    +

    HarpyEagle updated:

    +
      +
    • Shields no longer block attacks from directly behind the player.
    • +
    • Riot shields no longer stop bullets or beams (except for beanbags and rubber bullets), however they are now more effective at blocking melee attacks and thrown objects.
    • +
    • Energy shields block melee attacks as effectively as riot shields do. Their ability to block projectiles is largely unchanged.
    • +
    • Melee weapons now only block melee attacks.
    • +
    • Two handed weapons have a small chance of blocking melee attacks when wielded in two hands.
    • +
    • Sound and visual effects when blocking attacks with an energy shield or energy sword.
    • +
    • Fixed dead or unconscious people blocking stuff with shields.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • Cargo now sorts under its own department on station manifests.
    • +
    • Manual radio frequency changes can no longer go outside the standard frequency span.
    • +
    • Users with sufficient access can instead select pre-defined channels outside this span, such as department channels, when using intercoms.
    • +
    + +

    02 September 2015

    +

    Atlantis updated:

    +
      +
    • Converted phoron glass to borosilicate glass, adjusted heat resistances accordingly, got rid of copypaste fire code. Fire resistance is now handled by variables so completely fireproof windows are possible with varedit.
    • +
    • Windows take fire damage when heat exceeds 100C regular windows, 750C reinforced regular, 2000C borosilicate and 4000C reinforced borosilicate. For comparsions, reinforced walls begin taking damage around 6000.
    • +
    +

    Hubblenaut updated:

    +
      +
    • Adds glass bottles for Cola, Space Up and Space Mountain Wind to Booze-O-Mat.
    • +
    • Some bar drink recipes have been amended to easily sum to 30 units for drinking glasses.
    • +
    • Vendors now have a product receptor for accepting goods. Opening the maintenance painel is no longer required.
    • +
    • Wrenching a vending machine is no longer a silent action.
    • +
    • Stepup: Item placement on 4x4 grids seemed to work great. Now we'll try 8x8.
    • +
    +

    Kelenius updated:

    +
      +
    • Mechfab can now be upgraded using RPED, and now uses NanoUI.
    • +
    +

    Matthew951 updated:

    +
      +
    • Added Vincent Volaju's hair.
    • +
    • Added Vincent Volaju's beard.
    • +
    +

    Zuhayr updated:

    +
      +
    • Added the ability for AIs in hardsuits to control suit modules and movement with a dead or unconcious wearer.
    • +
    • Added ballistic supply drop pods.
    • +
    • Added diona gestalt random map template.
    • +
    • Swapped the singularity beacon out for a hacked supply beacon.
    • +
    + +

    24 August 2015

    +

    HarpyEagle updated:

    +
      +
    • Girders are now reinforced by using a screwdriver on the girder before applying the material sheets. Use a screwdriver again instead to cancel reinforcing.
    • +
    • Mechanical traps no longer spawn in the janitor's locker.
    • +
    • Mechanical traps can now be printed with a hacked autolathe.
    • +
    • Adds armour penetration mechanic for projectiles and melee weapons.
    • +
    • Laser carbines, LWAP, and shotgun now have a small amount of armour penetration, ballistic rifles (not SMGs) have moderate amounts, laser cannon has high armour penetration, and the PTR mostly ignores body armour.
    • +
    • Shotgun slugs and Z8/STS damage has been lowered slightly to accomodate for their higher penetration. In general ballistics deal less damage but have higher penetration than comparable laser weapons. Notable exception: X-Ray lasers have had their damage lowered slightly but gain very high armour penetration.
    • +
    • Energy swords now have very high armour penetration. Ninja blades do less damage but ignore armour completely.
    • +
    +

    Kelenius updated:

    +
      +
    • Click cooldowns have been removed on pretty much everything that isn't an attack.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • Adds the option to set the icon size to 48x48, found under the Icons menu, along with 32x32, 64x64, and stretch to fit.
    • +
    • Active AI cores now provides coverage on the AI camera network. Does not utilize actual cameras, thus will not show up on security consoles.
    • +
    • The Dinnerware vending machine now offer both utensil knives and spoons without first having to hack them.
    • +
    • Synths now have id cards with access levels which is checked when operating most station equipment.
    • +
    • Station synthetics still have full station access but can no longer interact with syndicate equipment, and syndicate borgs now start with only syndicate access.
    • +
    • Syndicate borgs can copy the access from other cards by utilizing their own id card module, similar to how syndicate ids work.
    • +
    • When examined up close id cards now offer a more detailed view.
    • +
    • Agent ids now offer much greater customization, allowing changing name, age, DNA, toggling of AI tracking termination (using the electronic warfware option), and more.
    • +
    • As AI tracking can now be enabled/disabled at will AI players should not feel the need to hesitate before informing relevant crew members when camera tracking is explicitly terminated.
    • +
    • Uplink menu now more organized and with new categories.
    • +
    • Now possible to cause falsified ion storm announcements.
    • +
    • Now possible to cause falsified radiation storm announcements, with expected maintenance access changes.
    • +
    • Now possible for mercenaries to create falsified Central Command Update messages.
    • +
    • Now possible for mercenaries to create falsified crew arrival messages and records.
    • +
    +

    RavingManiac updated:

    +
      +
    • Sound environments tweaked to feel more claustrophobic
    • +
    • Being drugged, hallucinating, dizzy, or in low-pressure or vacuum will alter sounds you hear
    • +
    • Sound environment in holodeck will change to reflect the loaded program
    • +
    +

    Vivalas updated:

    +
      +
    • A new uplink item has been added! A briefcase full 'o thalla can now be bought by traitors for bribes and such!
    • +
    +

    Zuhayr updated:

    +
      +
    • Pariahs are now a subspecies of Vox with less atmos/cold protection, a useless brain, and lower health.
    • +
    • Leap now only gives a passive grab and has a shorter range. It also stuns Pariahs longer than it does their target.
    • +
    • Rewrote tiling. White floors, dark floors and freezer floors now have associated tiles.
    • +
    • Changed how decals work in the mapper. floor_decal is now used instead of an icon in floors.dmi.
    • +
    • The floor painter has been rewritten to use decals. Click it in-hand to set direction and decal.
    • +
    • Floor lights are now built from the autholathe, secured with a screwdriver, activated by clicking them with an empty hand, and repaired with a welding torch.
    • +
    • Unathi now have minor slowdown and 20% brute resist.
    • +
    • Tajarans now have lower bonus speed and a flat 15% malus to brute and burn.
    • +
    • Vox can now eat monkeys and small animals.
    • +
    • Tajarans can now eat small animals.
    • +
    • Unarmed attack damage has been lowered across the board.
    • +
    + +

    17 August 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • Station time and duration now available in the Status tab.
    • +
    + +

    16 August 2015

    +

    HarpyEagle updated:

    +
      +
    • The unathi breacher is now only wearable by unathi.
    • +
    + +

    15 August 2015

    +

    Kelenius updated:

    +
      +
    • Bees have been updated and are totally worth checking out (beekeeping crate at cargo).
    • +
    • Sleeper consoles removed. All interaction is now done by clicking on the sleeper itself.
    • +
    • To put people into sleeper, you now have to click-drag people to it. Grabs no longer work. To exit the sleeper, move.
    • +
    • Sleeper now uses a NanoUI.
    • +
    + +

    14 August 2015

    +

    HarpyEagle updated:

    +
      +
    • Renames many guns to follow a consistent naming style. Updated and changed gun description text to be more lore-friendly.
    • +
    • Throwing a booze bottle at something nearby while on harm intent causes it to smash, splashing it's contents over whatever it hits.
    • +
    • Rags can now be wrung out over a container or the floor, emptying it's contents into the container or splashing them on the floor.
    • +
    • Rags can now be soaked using the large water and fuel tanks instead of just beakers.
    • +
    • Rags soaked in welding fuel can be lit on fire.
    • +
    • Rags can now be stuffed into booze bottles. When the bottle smashes, the stuffed rag is dropped onto the ground.
    • +
    • Fixed eggs having a ridiculously large chemical volume.
    • +
    • T-Ray scanner effects are now only visible to the person holding the scanner.
    • +
    • Traitors can now purchase the C-20r and the STS-35 for telecrystals.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • The amount you start with in your station account is now affected by species, rank, and NT's stance towards you.
    • +
    +

    TheWelp updated:

    +
      +
    • Bookcases are now movable/buildable/destroyable.
    • +
    • Paper can now be crumpled by using in-hand while on hurt intent.
    • +
    • Library Computer External Archive is now sortable.
    • +
    +

    Zuhayr updated:

    +
      +
    • Click a hat on a drone with help intent to equip it. Drag the drone onto yourself with grab intent to remove it.
    • +
    + +

    13 August 2015

    +

    GinjaNinja32 updated:

    +
      +
    • Changed language selection to allow multiple language selections, changed humans/unathi/tajarans/skrell to not automatically gain their racial language, instead adding it to the selectable languages for that species. Old slots will warn when loaded that the languages may not be what you expect.
    • +
    +

    Orelbon updated:

    +
      +
    • Changed the HoP's suit to more bibrant colors and hopefully you will like it.
    • +
    + +

    11 August 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • 0.1.19 is live.
    • +
    • Crew monitors now update every 5th second instead of every other. Reduces lag and gives antags a larger window of opportunity to disable suit sensors if they have to harm someone.
    • +
    + +

    31 July 2015

    +

    HarpyEagle updated:

    +
      +
    • Fixed projectiles being able to hit people in body parts that they don't have. This will also mean that the less limbs someone has the less effective they will be as a body shield.
    • +
    + +

    29 July 2015

    +

    Karolis2011 updated:

    +
      +
    • Made tagger and sorting pipes dispensible.
    • +
    • Unwelding and welding sorting/tagger pipes, no longer delete data about them.
    • +
    + +

    27 July 2015

    +

    Kelenius updated:

    +
      +
    • Borg shaker now works similarly to hypospray. It generates reagents that can be poured into glasses.
    • +
    • Therefore, they can no longer duplicate rare reagents such as phoron.
    • +
    + +

    14 July 2015

    +

    HarpyEagle updated:

    +
      +
    • Fixes wrong information being reported when analyzing locked abandoned crates with a multitool.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • Ninjas can no longer teleport unto turfs that contain solid objects.
    • +
    • Wizards can no longer etheral jaunt unto turfs that contain solid objects.
    • +
    + +

    11 July 2015

    +

    HarpyEagle updated:

    +
      +
    • Added inhand sprites for flashes, flashbangs, emp and other grenades.
    • +
    +

    Loganbacca updated:

    +
      +
    • Turrets no longer burn holes through the AI.
    • +
    • Projectiles now have a chance of hitting mobs riding cargo trains.
    • +
    • Fixed visual bugs with projectile effects.
    • +
    + +

    10 July 2015

    +

    Zuhayr updated:

    +
      +
    • Ninja now spawns on a little pod on Z2 and can teleport to the main level.
    • +
    + +

    06 July 2015

    +

    GinjaNinja32 updated:

    +
      +
    • 'Provisional' is now also a valid temporary position prefix for manifest sorting.
    • +
    + +

    04 July 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • Portable turrets now only blocks movement while deployed.
    • +
    • Portable turrets are no longer invincible while undeployed, however they have increased damage resistance in this state.
    • +
    • Crescent portable turrets should no longer act up during attempts to (un)wrench and alter their settings.
    • +
    + +

    30 June 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • Non-general areas on Crescent are now protected by blast doors to enforce area restrictions. Admins can operate these from the central checkpoint.
    • +
    + +

    24 June 2015

    +

    HarpyEagle updated:

    +
      +
    • Fixed Tajaran name generation producing names without a space between first and last.
    • +
    • Adds docking to the mercenary shuttle. Works similarly to other shuttles, except docking and undocking is manually initiated and not automatic. A system to approve or deny dock requests still to be implemented.
    • +
    • Toolboxes can now hold larger items, such as stacks of metal or power cells, at the cost of having less space for other things.
    • +
    • Gloves/shoes can now be worn even if you have one hand/foot missing. The other one still has to be present, of course. The items still drop when you first lose the hand/foot.
    • +
    • Budget insulated gloves are somewhat less useless. On average, they will stop half the damage from getting shocked, and the worst case insulation is not as bad as it used to be. Budget gloves that are as good as regular insulated gloves are still as rare as they were before though.
    • +
    • PTR bullets are now hitscan, to make them somewhat better for actual sniping.
    • +
    • The telecoms server room now has an actual cycling airlock into it.
    • +
    • Non-vital body parts will no longer take further damage above a certain amount, and will inflict paincrit effects instead. On most humaniods the head, chest, and groin are vital.
    • +
    • Engineers now spawn with industrial workboots (credit: ChessPiece/Bishop).
    • +
    • Damaged robotic legs now more likely to have an effect.
    • +
    • Fixed bug preventing internal organs from taking damage in some cases.
    • +
    • New flavours of tables around the station. Engineering starts with more plastic.
    • +
    • Fixed worn items not appearing in some cases. Most notably crossbows and certain guns when worn on the back. As a side effect, laundry machines no longer transform items.
    • +
    • Crit oxyloss now runs in game time instead of real time. So if lag is slowing your movement the same slowdown applies to the dying person you're trying to reach.
    • +
    • Breathmasks can now be adjusted by clicking on them in your hand, in addition to the verb.
    • +
    • Wearing a space helmet or similar face-covering gear now prevents eating and force-feeding food, drink, and pills.
    • +
    • Phoron in air ignites above it's flashpoint temperature and a certain (very small) minimum concentration. Environments that have oxygen and are hot enough, and have phoron but not enough concentration to burn will produce flareouts, which are mostly a visual effect.
    • +
    • Adds animation when making unarmed attacks or attacking with melee weapons, to help make it clearer who is attacking.
    • +
    • Opening an unpowered door now has an appropriate sound.
    • +
    • Ingesting diseased blood may contract the disease.
    • +
    + +

    22 June 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • The traitor uplink no longer displays all items in a long list, instead has categories which when accessed shows the relevant items.
    • +
    + +

    19 June 2015

    +

    HarpyEagle updated:

    +
      +
    • Prevents being on fire from merely warming mobs up slightly in some cases. Mob fires also burn hotter.
    • +
    • Matches can now be used to light things adjacent to you when thrown.
    • +
    • Made the effects of having a damaged robotic leg more prominent.
    • +
    • Robot limbs no longer cause pain messages. A reminder that you can still check their status with 'Help Intent' -> 'Click Self'.
    • +
    • Knifing damage scales with weapon force and throat protection. Helmets only provide throat protection if they are air tight. Trying to cut someone's throat with wirecutters and/or while wearing an armoured sealed helmet will require several attempts before the victim passes out.
    • +
    • Knifing switches on harm intent, in case you just wanted to beat on the victim for some reason.
    • +
    • Prevents knifing bots or silicons.
    • +
    + +

    16 June 2015

    +

    Chinsky updated:

    +
      +
    • Updated penlights to be more of use in diagnostics, they now show following conditions:
    • +
    • Eye damage
    • +
    • Blurry eyes (overall slower reaction)
    • +
    • Brain damage (one eye reacts slower)
    • +
    • Opiates use (pinpoint pupils)
    • +
    • Drugs use (dilated pupils)
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • Observers can now follow both the AI and its eye upon speech.
    • +
    • Observers can now follow both observers and their body, if they ever had one, upon speech.
    • +
    • Observers can now follow hivemind speakers if the speaker is not using an alias or antagHUD is enabled.
    • +
    • Turret controls now glow, with the color depending on the current mode.
    • +
    +

    Techhead updated:

    +
      +
    • Converted Request Console interface into NanoUI.
    • +
    + +

    09 June 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • Ports /tg/'s meteor event. Meteors now appear to be more accurate, come in a greater variety, and may drop ores on their final destruction.
    • +
    + +

    08 June 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • The AI chassis now glows, with the color depending on the currently selected display.
    • +
    + +

    05 June 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • Split stacks no longer lose their coloring.
    • +
    • Can no longer merge cables of different colors.
    • +
    • Blobs and simple mobs now attack all external organs instead of a subset. The overall damage remains the same but the number of fractures caused will, in general, be fewer.
    • +
    • Spider nurses now have a chance of injecting their victims with spider eggs which eventually hatch. If the limb is removed from the host, the host dies, or the spiderling has matured sufficiently it will crawl out into freedom. Medical scanners will pick upp eggs and spiderlings as foreign bodies.
    • +
    +

    Yoshax updated:

    +
      +
    • Makes hyposprays start empty instead of filled with Tricord.
    • +
    • Makes the special wizard projectile staffs, Animate, Change, Focus and any future ones only usable by wizards. Also makes it so only wizards can use spellbooks and teleportation scrolls.
    • +
    + +

    04 June 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • AI eyes can now be found in the observer follow list.
    • +
    • Synths can now review all law modules that can be found on the station from their law manager.
    • +
    • Synths can state these laws if desired, however this is strongly discouraged unless subverted/malfunctioning.
    • +
    • Astral projecting mobs, such as wizards or cultists, may no longer respawn as something else while their body lives.
    • +
    +

    Techhead updated:

    +
      +
    • Prison break event has been expanded to include Virology or Xenobiology
    • +
    • Prison break event will warn Enginering and the AI beforehand so they can take preventive measures.
    • +
    • Disabling area power will now prevent doors from opening during the event
    • +
    + +

    02 June 2015

    +

    Techhead updated:

    +
      +
    • Re-adds extended capacity emergency oxygen tanks to relevant jobs.
    • +
    + +

    30 May 2015

    +

    Atlantis updated:

    +
      +
    • Malfunction Overhaul - Whole gamemode was completely reworked from scratch. Most old abilities have been removed and quite a lot of new abilities was added. AI also has to hack APCs to unlock higher tier abilities faster, instead of having access to them from the round start. Most forced things, such as, shuttle recalling were removed and are instead controlled by the AI. Code is fully modular allowing for future modifications.
    • +
    +

    HarpyEagle updated:

    +
      +
    • Fixes Engineer ERT gloves not being insulated.
    • +
    • IV stands are no longer bullet shields. They also allow mice, drones, pAIs et al to pass though.
    • +
    +

    Kelenius updated:

    +
      +
    • AI now hears LOOC both around its eye and its core, and speaks in LOOC around its eye. Keep in mind that you won't hear and won't be heard if there is a wall between your eye and the target.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • You can now review the server revision date and hash by using the 'Show Server Revision' verb in the OOC category.
    • +
    + +

    27 May 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • The inactive check process now respects client holder status and can be configured how long clients may remain inactive before being kicked.
    • +
    +

    Zuhayr updated:

    +
      +
    • Unfolded pAIs can now be scooped up and worn as hats.
    • +
    • Scoop-up behavior is now standardized to selecting help intent and dragging their icon onto yours.
    • +
    + +

    26 May 2015

    +

    Atlantis updated:

    +
      +
    • NanoUI for Robotics Control Console
    • +
    • NanoUI for Supermatter Crystal - AI/Robot only, purely informational
    • +
    +

    Chinsky updated:

    +
      +
    • Meat limbs now can be attached. Use limb on missing area, then hemostat to finalize it.
    • +
    • Limbs from other races can be now attached. They'll cause rejection, but it can be kept at bay with spaceacilline to some point. Species special attack is carried over too, i.e. you can clawn people if you sew a cathand to yourself.
    • +
    • Limbs that are left in open will rot in ~7 minutes. Use freezers or cryobags to stop it. You can still attach them, but you wish you couldn't.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • Both the pulse taker and target must now remain still for the duration of the check or it will fail.
    • +
    +

    RavingManiac updated:

    +
      +
    • Tape recorders now record hearable emotes and action messages (e.g. gunshots).
    • +
    • You can now see actions from inside mechs and closets.
    • +
    +

    Techhead updated:

    +
      +
    • Removed gaseous reagents from the chemistry system and replaced with real-world organic chemistry precursors.
    • +
    • Hydrogen has been replaced with hydrazine, a highly toxic, flammable liquid.
    • +
    • Oxygen has been replaced with acetone, a mildly toxic liquid. Ethanol's ink-sovlent capabilities have been copied to it.
    • +
    • Chlorine has been replaced with hydrochloric acid. It is a stronger acid than sulphuric but less toxic.
    • +
    • Nitrogen has been replaced with ammonia. Ammonia now acts as a Dexalin-equivalent for Vox.
    • +
    • Flourine has also been replaced with hydrazine in its one recipe. Flourosurficant has been renamed azosurficant.
    • +
    • Being splashed with liquid Phoron will burn eyes and contaminate clothes like being exposed to Phoron gas.
    • +
    +

    Zuhayr updated:

    +
      +
    • Added a ghost requisition system for posibrains and living plants.
    • +
    • Added attack_ghost() to hydro trays and posibrains to allow ghosts to enter them.
    • +
    • Prosthetic limbs are now only repairable with welders/cable coils if they have suffered below 30 combined damage.
    • +
    • Surgery steps that cause no pain and have no failure wounding have been added: screwdriver for 'incision', crowbar to open, multitool to 'decouple' a prosthetic organ. Hemostat is still used to take an organ out.
    • +
    • Using a welder or a cable coil as a surgical tool after opening a maintenance hatch will repair damage beyond the 30 damage cap. In other words, severe damage to robolimbs requires expert repair from someone else.
    • +
    • Eye and brain surgery were removed; they predate the current organ system and are redundant.
    • +
    • IPC are now simply full prosthetic bodies using a specific manufacturer (Morpheus Cyberkinetics).
    • +
    • IPC can 'recharge' in a cyborg station to regain nutriment. They no longer interface with APCs.
    • +
    • NO_BLOOD flag now bypasses ingested and blood reagent processing.
    • +
    • NO_SCAN now bypasses mutagen reagent effects.
    • +
    • Cyborg analyzers now show damage to prosthetic limbs and organs on humans.
    • +
    • Prosthetic EMP damage was reduced.
    • +
    • Several organ files were split up/moved around.
    • +
    + +

    22 May 2015

    +

    Ccomp5950 updated:

    +
      +
    • Beepsky no longer kills goats.
    • +
    • Goats will move towards vines that are 4 spaces away now instead of 1
    • +
    • Goats will eat the spawning plants for vines as well as the vines themselves.
    • +
    +

    Chinsky updated:

    +
      +
    • Ghetto diagnosis. Grab patient, aim at bodypart you want to check, click on them with help intent. This will tell you about their wounds, fractures and other oddities (toxins/oxygen) for that bodypart.
    • +
    • Fractures are visible on very damaged limbs. Dislocations are always visible. Surgery incisions now visible too.
    • +
    • Stethoscopes actually make sense now. They care for heart/lungs status when reporting pulse and respiration now.
    • +
    +

    HarpyEagle updated:

    +
      +
    • Re-implemented fuel fires. Tweaked fire behaviour overall.
    • +
    +

    Yoshax updated:

    +
      +
    • Bear traps now do damage when stood on, enough to break bones! Bear traps can now affect any limb of a person who is on the ground, including head! Bear traps are no longer legcuffs and instead embed in the limb they attack.
    • +
    • Bear traps now take several seconds to deploy and cannot be picked up when armed, they must be disarmed by clicking on them. They also cannot be moved then they are deployed.
    • +
    +

    Zuhayr updated:

    +
      +
    • Massive material refactor. Walls, beds, chairs, stools, tables, ashtrays, knives, baseball bats, axes, simple doors, barricades, so on.
    • +
    • Tables are now built via steel then another sheet on the resulting frame. They can then be reinforced by dragging a stack of sheets onto the table.
    • +
    • Walls are built with steel for girders, then right-click the girder and select the reinforce verb while holding a stack, then click the girders with a final sheet.
    • +
    • Various things can be built with various sheet types. Experiment! Just keep in mind that uranium is now radioactive and phoron is now flammable.
    • +
    + +

    18 May 2015

    +

    Hubblenaut updated:

    +
      +
    • Adds a light for available backup power on airlocks.
    • +
    +

    Kelenius updated:

    +
      +
    • There has been a big update to the reagent system. A full-ish changelog can be found here: http://pastebin.com/imHXTRHz. In particular:
    • +
    • Reagents now differentiate between being ingested (food, pills, smoke), injected (syringes, IV drips), and put on the skin (sprays, beaker splashing).
    • +
    • Injecting food and drinks will cause bad effects.
    • +
    • Healing reagents, generally speaking, have stronger effects when injected.
    • +
    • Toxins now work slower and deal more damage. Seek medical help!
    • +
    • Alcohol robustness has been lowered.
    • +
    • Acid will no longer melt large numbers of items at once.
    • +
    • Synaptizine is no longer hilariously deadly.
    • +
    +

    Loganbacca updated:

    +
      +
    • Changed MULE destination selection to be list based.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • Destroying a camera by brute force now has a chance to break the wiring within.
    • +
    • Turf are now processed. This, for example, causes radioactive walls to regularly irradiate nearby mobs.
    • +
    • Welders should now always update their icon and inhand states properly.
    • +
    + +

    17 May 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • Teleporter artifacts should no longer teleport mobs inside objects.
    • +
    + +

    16 May 2015

    +

    GinjaNinja32 updated:

    +
      +
    • Rewrote tables. To construct a table, use steel to make a table frame, then plate the frame with a material such as steel, gold, wood, etc. Hold a stack in your hand and drag it to the table to reinforce it. To deconstruct a table, use a screwdriver to remove the reinforcements (if present), then a wrench to remove the plating, and a wrench again to dismantle the frame. Use a welder to repair any damage. Use a carpet tile on a table to add felt, and a crowbar to remove it.
    • +
    +

    HarpyEagle updated:

    +
      +
    • Adds tail animations for tajaran and unathi. Animations are controlled using emotes.
    • +
    + +

    14 May 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • Should now be more evident that the brig disposal chute sends its goods to the common brig area.
    • +
    • Cells now drain when using more charge than what is available.
    • +
    • The rig stealth module now requires as much power to run as the energy blade module.
    • +
    +

    Techhead updated:

    +
      +
    • Vox will spawn with emergency nitrogen tanks in their survival boxes.
    • +
    • Diona will spawn with an emergency flare instead of a survival box.
    • +
    • Engineers no longer spawn with extended-capacity oxygen tanks.
    • +
    • Vox spawning without backpacks will have their nitrogen tank equipped to their back.
    • +
    • The Bartender's spare beanbag shells have been moved into bar backroom with the shotgun.
    • +
    • Portable air pumps now fill based on external/airtank pressure when pumping in.
    • +
    + +

    12 May 2015

    +

    Dennok updated:

    +
      +
    • New buildmode icons made by BartNixon.
    • +
    +

    HarpyEagle updated:

    +
      +
    • Masks and helmets that cover the face block feeding food, drinks, and pills.
    • +
    +

    MrSnapwalk updated:

    +
      +
    • Added seven new AI core displays.
    • +
    • Changed the pAI sprite and added several new expressions.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • The space vine event now comes with a station announcement.
    • +
    + +

    11 May 2015

    +

    Mloc updated:

    +
      +
    • Rewritten lighting system.
    • +
    • Better coloured lights.
    • +
    • Animated transitions.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • As an observer, using antagHUD should now always restrict you from respawning without admin intervention.
    • +
    +

    Techhead updated:

    +
      +
    • Voidsuits can have tanks inserted into the storage slot.
    • +
    • Voidsuits display helpful information on their contents on examine.
    • +
    • Magboots can be equipped over other shoes. Except other magboots.
    • +
    + +

    10 May 2015

    +

    GinjaNinja32 updated:

    +
      +
    • Acting jobs on the manifest will now sort with their non-acting counterparts. All assignments beginning with the word 'acting', 'temporary', or 'interim' will do this.
    • +
    +

    Yoshax updated:

    +
      +
    • Removes sleepy chems from being cloned, adds a consistent period of 30 tick sleep.
    • +
    + +

    09 May 2015

    +

    Yoshax updated:

    +
      +
    • Maps in the top mounted 9mm practice rounds, .45 practice rounds, and practice shotgun shells into the armory.
    • +
    + +

    07 May 2015

    +

    HarpyEagle updated:

    +
      +
    • Breaking out of lockers now has sound and animation.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • The cloning computer can again successfully locate nearby cloning vats and DNA scanners at round start.
    • +
    • Security equipment now treats individuals with CentCom ids with the greatest respect.
    • +
    • Adds stretches of power cable around the construction outpost, ensuring one does not have to climb over machines to being laying cables.
    • +
    +

    RavingManiac updated:

    +
      +
    • Muzzle-flash lighting effect for guns
    • +
    • Energy guns now display shots remaining on examine
    • +
    + +

    06 May 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • Examining a pen or crayon now lists the available special commands in the examine tab.
    • +
    + +

    05 May 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • Grilles no longer return too many rods when destroyed (using means other than wirecutters).
    • +
    +

    RavingManiac updated:

    +
      +
    • Intent menu now appears while zooming with a sniper rifle.
    • +
    + +

    02 May 2015

    +

    HarpyEagle updated:

    +
      +
    • Neck-grabbing someone now stuns them properly.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • The spider infestation event now makes an announcement much sooner.
    • +
    • Admins can now toggle OOC/LOOC separately.
    • +
    • Mice are now numbered to aid admins.
    • +
    +

    Yoshax updated:

    +
      +
    • Adds an option and verb to the AI to send emergency messages to Central, functions same as comms console option.
    • +
    • Changes comms console to only have one level of ID require, meaning all heads of staff have what was captain access, allowing them to change alert, send emergency messages and make announcements.
    • +
    • Adds an emergency bluespace relay machine which is mapped into teletcomms, this machine takes emergency messages and sends them to central, if one does not exist on any Z, you cannot send any emergency messages.
    • +
    • Adds an emergency bluespace relay assembly kit orderable from cargo for when the ones on telecomms are destroyed. Assembly is required.
    • +
    • Adds the emergency bluespace relay circuitboard to be researchable and printable in R&D, with sufficient tech levels.
    • +
    + +

    30 April 2015

    +

    Yoshax updated:

    +
      +
    • Adds more items to custom loadout, including a number of dressy suits and some other things.
    • +
    + +

    29 April 2015

    +

    Daranz updated:

    +
      +
    • Paper bundles can now have papers inserted at arbitrary points. This can be done by clicking the previous/next page links with a sheet of paper in hand.
    • +
    +

    HarpyEagle updated:

    +
      +
    • Added new fire modes to various guns: c20r, STS-35, WT-550, Z8, L6 SAW, and double barreled shotgun. The firing modes work the same way as the egun; click on the weapon with it in your active hand to cycle between modes. Unloading these weapons now requires that you click on them with an empty hand.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • Portable atmospheric pumps and scrubbers now use NanoUI.
    • +
    • Two new events which will cause damage to APCs or cameras when triggered.
    • +
    + +

    28 April 2015

    +

    Jarcolr updated:

    +
      +
    • Added 9 new bar sign designs/sprites.
    • +
    +

    Kelenius updated:

    +
      +
    • Good news to the roboticists! The long waited firmware update for the bots has arrived. You can expect the following changes:
    • +
    • Medbots have improved the disease detection algorithms.
    • +
    • Floorbot firmware has been bugtested. In particular, they will no longer get stuck near the windows, hopelessly trying to fix the floor under the glass.
    • +
    • Floorbots have also received an internal low-power metal synthesizer. They will use it to make their own tiles. Slowly.
    • +
    • Following the complains from humanitarian organizations regarding securitron brutality, stength of their stunners has been toned down. They will also politely demand that you get on the floor before arresting you. Except for the taser-mounted guys, they will still tase you down.
    • +
    • Other minor fixes.
    • +
    • The lasertag bots are now forbidden to build and use following the incident #1526672. Please don't let it happen again.
    • +
    • The farmbot design has been finished! Made from a watertank, robot arm, plant analyzer, bucket, minihoe and a proximity sensor, these small (not really) bots will be a useful companion to any gardener and/or xenobotanist.
    • +
    • Spider learning alert: they have learned to recognize the bots and will mercilessly attack them.
    • +
    • An experimental CPU upgrade would theoretically allow any of the bots to function with the same intelligence capacity as the maintenance drones. We still have no idea what causes it to boot up. Science!
    • +
    • INCOMING TRANSMISSION: Greetings to agents, pirates, operatives, and anyone who otherwise uses our equipment. Following the NT update of bot firmware, we have updated the cryptographic sequencer's hacking routines as well. The medbots you emag will not poison you anymore, the clanbots won't clean after themselves immediately, and floorbots... wear a space suit. Oh, and it works on the new farmbots, too.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • Beware. Airlocks can now crush more things than just mobs.
    • +
    • AIs now have a personal atmospherics control subsystem.
    • +
    • Some borg modules now have additional subsystems.
    • +
    • Improves borg module handling.
    • +
    • Secure airlocks now buzz when access is denied.
    • +
    • The mental health office door now requires psychiatrist access, and the related button now opens/closes the door instead of bolting.
    • +
    • Restores an old soundtrack 'Thunderdome.ogg'.
    • +
    • Some holodeck programs now have custom ambience tracks.
    • +
    +

    RavingManiac updated:

    +
      +
    • The phoron research lab has been renovated to include a heat-exchange system, a gas mixer/filter and a waste gas disposal pump.
    • +
    • Candles now burn for about 30 mintutes.
    • +
    +

    Yoshax updated:

    +
      +
    • Adds items to the orderable antag surgical kit so its actually useful for surgery.
    • +
    • Adjusts custom loadout costs to be more standardised and balances. Purely cosmetic items, shoes, hats, and all things that do not provide a straight advtange (sterile mask, or pAI, protection from viruses and possible door hacking or records access, respectively), each cost 1 point, items that provide an advantage like those just mentioned, or provide armor or storage cost 2 points.
    • +
    • Adds practice rounds, both .45 for Sec and Detective's guns, also 9mm top mounted for the Saber, and for the Bulldog.
    • +
    • Adds the .45 and 9mm practice rounds to the armory.
    • +
    • Adds all the practice rounds to the autolathe.
    • +
    • Adds r_walls to the back of the firing range, leaves the sides normal.
    • +
    • Fixes HoS' office door to not be CMO locked.
    • +
    + +

    24 April 2015

    +

    Dennok updated:

    +
      +
    • Fixes overmap ship speed calculations.
    • +
    • Adds overmap ship rotation.
    • +
    • Added a floorlayer.
    • +
    + +

    23 April 2015

    +

    Dennok updated:

    +
      +
    • Added an automatic pipelayer.
    • +
    • Added an automatic cablelayer.
    • +
    +

    PsiOmegaDelta updated:

    +
      +
    • Shower curtains no longer lose their default color upon being washed.
    • +
    • Emergency shutters can again be examined, and from the proper distance.
    • +
    • The virus event will now only infect mobs on the station, currently controlled by player that has been active in the last 5 minutes.
    • +
    • Laptops now use the proper proc for checking camera status.
    • +
    • Makes it possible to eject PDA cartridges using a verb.
    • +
    • Makes it possible to shake tables with one's bare hands to stop climbers.
    • +
    • Added a mass driver door in disposals to prevent trash from floating out into space before proper ejection.
    • +
    • Rig/Hardsuit module tab - Less informative than the NanoUI hardsuit interface but allows quicker access to the various rig modules.
    • +
    • Silicons with the medical augmentation sensors enabled now also see alive/dead status if sensors are set accordingly.
    • +
    • Emergency shutters opened by silicons are now treated as having been forced open by a crowbar.
    • +
    • An active AI chassis can now be pushed, just as an empty chassis can be.
    • +
    • The AI can now use the crew monitor console to track crew members with full sensors enabled.
    • +
    • The AI now has a shortcut to track people holding up messages to cameras.
    • +
    • The AI now has a shortcut to track people sending PDA messages.
    • +
    • Multiple AIs can now share the same holopad.
    • +
    • Admin ghosts can now transfer other ghosts into mobs by drag-clicking.
    • +
    • Ghosts can now toggle seeing darkness and other ghosts separately.
    • +
    • Moving while dead now auto-ghosts you.
    • +
    • Two new random events: Space dust and gravitation failure.
    • +
    • Upgraded wizard spell interface and new spells.
    • +
    • More uplink items.
    • +
    • Uplink items now have rudimentary descriptions.
    • +
    +

    Yoshax updated:

    +
      +
    • Adjusts fruits and other stuff to have a minmum of 10 units of juice and stuff.
    • +
    + +

    18 April 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • Added a changelog editing system that should cause fewer conflicts and more accurate timestamps.
    • +
    + +

    07 April 2015

    +

    RavingManiac updated:

    +
      +
    • You can now pay vending machines and EFTPOS scanners without removing your ID from your PDA or wallet. Clicking on the vending machine with your ID/PDA/wallet/cash also brings up the menu now instead of attacking the vending machine.
    • +
    + +

    24 February 2015

    +

    Zuhayr updated:

    +
      +
    • Major changes to the kitchen and hydroponics mechanics. Review the detailed changelog here,
    • +
    + +

    18 February 2015

    +

    PsiOmegaDelta updated:

    +
      +
    • Synths now have timestamped radio and chat messages.
    • +
    • New and updated uplink items.
    • +
    • Multiple AIs can now share the same holopad.
    • +
    • The AI now has built-in consoles, accessible from the subsystem tab.
    • +
    + +

    16 February 2015

    +

    RavingManiac updated:

    +
      +
    • Say hello to the new Thermoelectric Supermatter Engine. Read the operating manual to get started.
    • +
    + +

    12 February 2015

    +

    Daranz updated:

    +
      +
    • Vending machines now use NanoUI and accept cash. The vendor account can now be suspended to disable all sales in all machines on station.
    • +
    + +

    04 February 2015

    +

    RavingManiac updated:

    +
      +
    • Holodeck is now bigger and better, with toggleable gravity and a new courtroom setting
    • +
    +

    TwistedAkai updated:

    +
      +
    • Purple Combs should now be visible and have their proper icon
    • +
    + +

    09 January 2015

    +

    Zuhayr updated:

    +
      +
    • Voice changers no longer use ID cards. They have Toggle and Set Voice verbs on the actual mask object now.
    • +
    • Readded moonwalking. Alt-dir to face new dir, or Face-Direction verb to face current dir.
    • +
    + +

    22 November 2014

    +

    Zuhayr updated:

    +
      +
    • Added the /obj/item/weapon/rig class - back-mounted deployable hardsuits.
    • +
    • Replaced existing hardsuits with 'voidsuits', functionally identical.
    • +
    • Removed the mounted device and helmet/boot procs from voidsuits.
    • +
    • Refactored a shit-ton of ninja code into the new rig class.
    • +
    • This is more than likely going to take a lot of balancing to get into a good place.
    • +
    + +

    08 November 2014

    +

    PsiOmegaDelta updated:

    +
      +
    • Service personnel now have their own frequency to communicate over. Use "say :v".
    • +
    • The AI can now has proper quick access to its private channel. Use "say :o".
    • +
    • Newscasters supports photo captions. Simply pen one on the attached photo.
    • +
    • Once made visible by a cultist ghosts can toggle visiblity at will.
    • +
    • Detonating cyborgs using the cyborg monitor console now notifies the master AI, if any.
    • +
    • More machinery, such as APCs, air alarms, etc., now support attaching signalers to the wires.
    • +
    • Random event overhaul. Admins may wish check the verb "Event Manager Panel".
    • +
    + +

    04 November 2014

    +

    TwistedAkai updated:

    +
      +
    • Almost any window which has been fully unsecured can now be dismantled with a wrench.
    • +
    + +

    01 November 2014

    +

    PsiOmegaDelta updated:

    +
      +
    • Adds the last missing step to deconstruct fire alarms. Apply wirecutters.
    • +
    • There's a "new" mining outpost nearby the Research outpost.
    • +
    • Manifest ghosts now have spookier names.
    • +
    • Adds a gas monitor computer for the toxin mixing chamber.
    • +
    • AI can now change the display of individual AI status screens.
    • +
    • More ion laws..
    • +
    • All turrets have been replaced with portable variants. Potential targets can be configured on a per turret basis.
    • +
    • Improved crew monitor map positioning.
    • +
    • Can now order plastic, body-, and statis bags from cargo
    • +
    • PDAs now receive newscasts.
    • +
    • (De)constructable emergency shutters.
    • +
    • Borgs can now select to simply state their laws or select a radio channel, same as the AI.
    • +
    + +

    01 October 2014

    +

    RavingManiac updated:

    +
      +
    • Zooming with the sniper rifle now adds a view offset in the direction you are facing.
    • +
    • Added binoculars - functionally similar to sniper scope. Adminspawn-only for now.
    • +
    • Bottles from chemistry now, like beakers, use chemical overlays instead of fixed sprites.
    • +
    • Being in space while not magbooted to something will cause your sprite to bob up and down.
    • +
    +

    Zuhayr updated:

    +
      +
    • Added species organ checks to several areas (phoron burn, welder burn, appendicitis, vox cortical stacks, flashes).
    • +
    • Added VV option to add or remove organs.
    • +
    • Added simple bioprinter (adminspawn).
    • +
    • Added smashing/slashing behavior from xenos to some unarmed attacks.
    • +
    • Added some new state icons for diona nymphs.
    • +
    • Added borer husk functionality (cortical borers can turn dead humans into zombies).
    • +
    • Added tackle verb.
    • +
    • Added NO_SLIP.
    • +
    • Added species-specific orans to Dionaea, new Xenomorphs and vox.
    • +
    • Added colour and species to blood data.
    • +
    • Added lethal consequences to missing your heart.
    • +
    • Removed robot_talk_understand and alien_talk_understand.
    • +
    • Removed attack_alien() and several flavours of is_alien() procs.
    • +
    • Removed /mob/living/carbon/alien/humanoid.
    • +
    • Removed alien_hud().
    • +
    • Removed IS_SLOW, NEEDS_LIGHT and RAD_ABSORB.
    • +
    • Renamed is_larva() to is_alien().
    • +
    • Refactored a ton of files, either condensing or expanding them, or moving them to new directories.
    • +
    • Refactored some attack vars from simple_animal to mob/living level.
    • +
    • Refactored internal organs to /mob/living/carbon level.
    • +
    • Refactored rad and light absorbtion to organ level.
    • +
    • Refactored brains to /obj/item/organ/brain.
    • +
    • Refactored a lot of blood splattering to use blood_splatter() proc.
    • +
    • Refactored broadcast languages (changeling and alien hiveminds, drone and binary chat) to actual languages.
    • +
    • Refactored xenomorph abilities to work for humans.
    • +
    • Refactored xenomorphs into human species.
    • +
    • Rewrote larva_hud() and human_hud(). The latter now takes data from the species datum.
    • +
    • Rewrote diona nymphs as descendents of /mob/living/carbon/alien.
    • +
    • Rewrote xenolarva as descendents of /mob/living/carbon/alien.
    • +
    • Rewrote /mob/living/carbon/alien.
    • +
    • Moved alcohol and toxin processing to the liver.
    • +
    • Moved drone light proc to robot level, added integrated_light_power and local_transmit vars to robots.
    • +
    • Moved human brainloss onto the brain organ.
    • +
    • Shuffled around and collapsed several redundant procs down to carbon level (hide, ventcrawl, Bump).
    • +
    • Fixed species swaps from NO_BLOOD to those with blood killing the subject instantly.
    • +
    + +

    28 September 2014

    +

    Gamerofthegame updated:

    +
      +
    • Hoverpods fully supported, currently orderable from cargo. Two slots, three cargo, space flight and a working mech for all other intents and purposes.
    • +
    • Added the Rigged laser and Passenger Compartment equipment. The rigged laser is a weapon for working exosuits - just a ordinary laser, but with triple the cool down and rather power inefficient. The passenger compartment allows other people to board and hitch a ride on the mech - such as in fire rescue or for space flight.
    • +
    +

    Zuhayr updated:

    +
      +
    • Organs can now be removed and transplanted.
    • +
    • Brain surgery is now the same as chest surgery regarding the steps leading up to it.
    • +
    • Appendix and kidney now share the groin and removing the first will prevent appendicitis.
    • +
    • Lots of backend surgery/organ stuff, see the PR if you need to know.
    • +
    + +

    20 September 2014

    +

    HarpyEagle updated:

    +
      +
    • Fixes evidence bags and boxes eating each other. Evidence bags now store items by dragging the bag onto the item to be stored.
    • +
    + +

    05 September 2014

    +

    RavingManiac updated:

    +
      +
    • NewPipe implemented: Supply and scrubber pipes can be run in parallel without connecting to each other.
    • +
    • Supply pipes will only connect to supply pipes, vents and Universal Pipe Adapters(UPAs).
    • +
    • Scrubber pipes will only connect to scrubber pipes, scrubbers and UPAs.
    • +
    • UPAs will connect to regular, scrubber and supply pipes.
    • +
    + +

    31 August 2014

    +

    Whitellama updated:

    +
      +
    • Matches and candles can be used to burn papers, too.
    • +
    • Observers have a bit more time (20 seconds, instead of 7.5) before the Diona join prompt disappears.
    • +
    + +

    27 August 2014

    +

    Whitellama updated:

    +
      +
    • Made destination taggers more intuitive so you know when you've tagged something
    • +
    • Ported package label and tag sprites
    • +
    • Ported using a pen on a package to give it a title, or to write a note
    • +
    • Donut boxes and egg boxes can be constructed out of cardboard
    • +
    + +

    05 August 2014

    +

    HarpyEagle updated:

    +
      +
    • Atmos Rewrite. Many atmos devices now use power according to their load and gas physics
    • +
    • Pressure regulator device. Replaces the passive gate and can regulate input or output pressure
    • +
    • Gas heaters and gas coolers are now constructable and can be upgraded with parts from research
    • +
    • Fixes recharger and cell charger power draw. Rechargers draw 15 kW, wall chargers draw 25 kW, and heavy-duty cell chargers draw 40 kW. Cyborg charging stations draw 75 kW.
    • +
    • Laptops, and various other machines, now draw more reasonable amounts of power
    • +
    • Machines will periodically update their powered status if moved from a powered to an unpowered area and vice versa
    • +
    + +

    02 August 2014

    +

    Whitellama updated:

    +
      +
    • Arcane tomes can now be stored on bookshelves.
    • +
    • Dionaea players no longer crash on death, and now become nymphs properly.
    • +
    + +

    31 July 2014

    +

    HarpyEagle updated:

    +
      +
    • Stun batons now work like tasers and deal agony instead of stun
    • +
    • Being hit in the hands with a stun weapon will cause whatever is being held to be dropped
    • +
    • Handcuffs now require an aggressive grab to be used
    • +
    + +

    26 July 2014

    +

    Whitellama updated:

    +
      +
    • Added dynamic flavour text.
    • +
    • Fixed bug with suit fibers and fingerprints.
    • +
    + +

    20 July 2014

    +

    PsiOmegaDelta updated:

    +
      +
    • AI can now store up to five camera locations and return to them when desired.
    • +
    • AI can now alt+left click turfs in camera view to list and interact with the objects.
    • +
    • AI can now ctrl+click turret controls to enable/disable turrets.
    • +
    • AI can now alt+click turret controls to toggle stun/lethal mode.
    • +
    • AI can now select which channel to state laws on.
    • +
    + +

    06 July 2014

    +

    HarpyEagle updated:

    +
      +
    • Re-enabled and rewrote the wound infection system
    • +
    • Infections can be prevented by properly bandaging and salving wounds
    • +
    • Infections are cured by spaceacillin
    • +
    + +

    01 July 2014

    +

    Various updated:

    +
      +
    • Hardsuit breaching.
    • +
    • Rewritten fire.
    • +
    • Supermatter now glows and sucks things into it as it approaches criticality.
    • +
    • Station Vox (Vox pariahs) are now available.
    • +
    • Wheelchairs.
    • +
    • Cargo Trains.
    • +
    • Hardsuit cycler machinery.
    • +
    • Rewritten lighting (coloured lights!)
    • +
    • New Mining machinery and rewritten smelting.
    • +
    • Rewritten autolathe
    • +
    • Mutiny mode.
    • +
    • NanoUI airlock and docking controllers.
    • +
    • Completely rewritten shuttle code.
    • +
    • Derelict Z-level replacement: construction site.
    • +
    • Computer3 laptops.
    • +
    • Constructable SMES units.
    • +
    • Omni-directional atmos machinery.
    • +
    • Climbable tables and crates.
    • +
    • Xenoflora added to Science.
    • +
    • Utensils can be used to eat food.
    • +
    • Decks of cards are now around the station.
    • +
    • Service robots can speak languages.
    • +
    • Xenoarch updates and fixes.
    • +
    • Rewritten species-specific gear icon handling.
    • +
    • Cats and borers can be picked up.
    • +
    • Botanist renamed to Gardener.
    • +
    • Hydroponics merged with the Kitchen.
    • +
    • Latejoin spawn points (Arrivals, Cryostorage, Gateway).
    • +
    • Escape pods only launch automatically during emergency evacuations
    • +
    • Escape pods can be made to launch during regular crew transfers using the control panel inside the pod, or by emagging the panel outside the pod
    • +
    • When swiped or emagged, the crew transfer shuttle can be delayed in addition to being launched early
    • +
    + +

    20 June 2014

    +

    Cael_Aislinn updated:

    +
      +
    • New discoverable items added to xenoarchaeology, and new features for some existing ones. Artifact harvesters can now harvest the secondary effect of artifacts as well as the primary one.
      +
    • +
    • Artifact utilisers should be much nicer/easier to use now.
      +
    • Alden-Saraspova counters and talking items should work properly now.
      +
    • +
      +
    + +

    19 June 2014

    +

    Chinsky updated:

    +
      +
    • Adds guest terminals on the map. These wall terminals let anyone issue temporary IDs. Only access that issuer has can be granted, and maximum time pass can be issued for is 20 minutes. All operations are logged in terminals.
    • +
    + +

    15 June 2014

    +

    HarpyEagle updated:

    +
      +
    • Fixed wound autohealing regardless of damage amount. The appropriate wound will now be assigned correctly based on damage amount and type
    • +
    • Fixed several other bugs related wounds that resulted in damage magically disappearing
    • +
    • Fixed various sharp objects not being counted as sharp, bullets in particular
    • +
    • Fixed armour providing more protection from bullets than it was supposed to
    • +
    + +

    13 June 2014

    +

    HarpyEagle updated:

    +
      +
    • Added docking ports for shuttles
    • +
    • Shuttle airlocks will automatically open and close, preventing people from being sucked into space by because someone on another z-level called a shuttle
    • +
    • Some docking ports can also double as airlocks
    • +
    • Docking ports can be overriden to prevent any automatic action. Shuttles will wait for players to open/close doors manually
    • +
    • Shuttles can be forced launched, which will make them not wait for airlocks to be properly closed
    • +
    + +

    03 June 2014

    +

    Hubblenaut updated:

    +
      +
    • Added wheelchairs
    • +
    • Replaced stool in Medical Examination with wheelchair
    • +
    • Using a fire-extinguisher to propel you on a chair can have consequences (drive into walls and people, do it!)
    • +
    + +

    31 May 2014

    +

    Jarcolr updated:

    +
      +
    • 21 New cargo crates, go check them out!
    • +
    • Peanuts have now been added, food items are now being developed.
    • +
    • 2 new cargo groups, Miscellaneous and Supply.
    • +
    • Sugarcane seeds can now be gotten from the seed dispenser.
    • +
    • 5 new satchels when selecting "satchel" for RD, scientist, botanist, virologist, geneticist (disabled) and chemist.
    • +
    • Clicking on a player with a paper/book when you have the eyes selected shows them the book/paper forcefully.
    • +
    + +

    28 May 2014

    +

    Chinsky updated:

    +
      +
    • Adds few new paperBBcode tags, to make up for HTML removal.
    • +
    • [logo] tag draws NT logo image (one from wiki).
    • +
    • [table] [/table] tags mark borders of tables. [grid] [/grid] are borderless tables, useful of making layouts. Inside tables following tags are used: [row] marks beginning of new table row, [cell] - beginning of new table cell.
    • +
    + +

    23 May 2014

    +

    Hubble updated:

    +
      +
    • Personal lockers are now resettable
    • +
    • Take off people's accessories or change their sensors in the drag and drop-interface
    • +
    • Merge paper bundles by hitting one with another
    • +
    • Line breaks in Security, Medical and Employment Records
    • +
    • Record printouts will have names on it
    • +
    • Set other people's internals in belt and suit storage slots
    • +
    • No longer changing suit sensors while cuffed
    • +
    • No longer emptying other people's pockets when they are not full yet
    • +
    + +

    16 May 2014

    +

    HarpyEagle updated:

    +
      +
    • Silicon mob types (AI, cyborgs, PAI) can now speak certain species languages depending on type and module
    • +
    • Languages can now be whispered when using the language code with either the whisper verb or the whisper speech code
    • +
    + +

    06 May 2014

    +

    Hubble updated:

    +
      +
    • Clip papers together by hitting a paper with a paper or photo
    • +
    • Adds icons for copied stamps
    • +
    + +

    03 May 2014

    +

    Cael_Aislinn updated:

    +
      +
    • Coming out of nowhere the past few months, the Garland Corporation has made headlines with a new prehistoric theme park delighting travellers with species thought extinct. Now available for research stations everywhere is the technology that made it all possible! Features include:
      + - 13 discoverable prehistoric species to clone from fossils (including 5 brand new ones).
      + - 11 discoverable prehistoric plants to clone from fossils (including 9 brand new ones).
      + - New minigame that involves correctly ordering the genomes inside each genetic sequence to unlock an animal/plant.
      + - Some prehistoric animals and plants may seem strangely familiar... while others may bring more than the erstwhile scientist bargains for.
      +




    • +
    + +

    29 April 2014

    +

    HarpyEagle updated:

    +
      +
    • Webbing vest storage can now be accessed by clicking on the item in inventory
    • +
    • Holsters can be accessed by clicking on them in inventory
    • +
    • Webbings and other suit attachments are now visible on the icon in inventory
    • +
    • Removing jumpsuits now requires drag and drop to prevent accidental undressing
    • +
    • Added an action icon for magboots that can be used to toggle them similar to flashlights
    • +
    • Fuel tanks now spill fuel when wrenched open
    • +
    + +

    25 April 2014

    +

    Various updated:

    +
      +
    • Overhauled saycode, you can now use languages over the radio.
    • +
    • Chamelon items beyond just the suit.
    • +
    • NanoUI Virology
    • +
    • 3D Sounds
    • +
    • AI Channel color for when they want to be all sneaky
    • +
    • New inflatable walls and airlocks for your breach sealing pleasure.
    • +
    • Carbon Copy papers, so you can subject everyone to your authority and paperwork, but mainly paperwork
    • +
    • Undershirts and rolling down jumpsuits
    • +
    • Insta-hit tasers, can be shot through glass as well.
    • +
    • Changeling balances, an emphasis put more on stealth.
    • +
    • Genetics disabled
    • +
    • Telescience removed, might be added again when we come up with a less math headache enducing version of it.
    • +
    • Bugfixes galore!
    • +
    + +

    11 April 2014

    +

    Jarcolr updated:

    +
      +
    • You can now flip coins like a D2
    • +
    • Miscellaneous cargo crates got a tiny buff, Standard Costume crate is now Costume Crate
    • +
    • Grammar patch,telekinesis/amputated arm exploit fixes,more in the future
    • +
    • Grille kicking now does less damage
    • +
    • TELESCOPIC baton no longer knocks anybody down,still got a lot of force though
    • +
    • Other small-ish changes and fixes that aren't worth mentioning
    • +
    + +

    06 April 2014

    +

    RavingManiac updated:

    +
      +
    • Tape recorders and station-bounced radios now work inside containers and closets.
    • +
    + +

    30 March 2014

    +

    RavingManiac updated:

    +
      +
    • Inflatable walls and doors added. Useful for sealing off hull breaches, but easily punctured by sharp objects and Tajarans.
    • +
    + +

    10 March 2014

    +

    Chinsky updated:

    +
      +
    • Viruses now affect certain range of species, different for each virus
    • +
    • Spaceacilline now prevents infection, and has a small chance to cure viruses at Stage 1. It does not give them antibodies though, so they can get sick again!
    • +
    • Biosuits and spacesuits now offer more protection against viruses. Full biosuit competely prevents airborne infection, when coupled with gloves they both protect quite well from contact ones
    • +
    • Sneezing now spreads viruses in front of mob. Sometimes he gets a warning beforehand though
    • +
    + +

    05 March 2014

    +

    RavingManiac updated:

    +
      +
    • Smartfridges added to the bar, chemistry and virology. No more clutter!
    • +
    • A certain musical instrument has returned to the bar.
    • +
    • There is now a ten second delay between ingesting a pill/donut/milkshake and regretting it.
    • +
    + +

    01 March 2014

    +

    Various updated:

    +
      +
    • Paint Mixing, red and blue makes purple!
    • +
    • New posters to tell you to respect those darned cat people
    • +
    • NanoUI for APC's, Canisters, Tank Transfer Valves and the heaters / coolers
    • +
    • PDA bombs are now less annoying, and won't always blow up / cause internal bleeding
    • +
    • Blob made less deadly
    • +
    • Objectiveless Antags now a configuration option, choose your own adventure!
    • +
    • Engineering redesign, now with better monitoring of the explodium supermatter!
    • +
    • Security EOD
    • +
    • New playable race, IPC's, go beep boop boop all over the station!
    • +
    • Gamemode autovoting, now players don't have to call for gamemode votes, it's automatic!
    • +
    + +

    19 February 2014

    +

    Aryn updated:

    +
      +
    • New air model. Nothing should change to a great degree, but temperature flow might be affected due to closed connections not sticking around.
    • +
    + +

    01 February 2014

    +

    Various updated:

    +
      +
    • NanoUI for PDA
    • +
    • Write in blood while a ghost in cult rounds with enough cultists
    • +
    • Cookies, absurd sandwiches, and even cookable dioanae nymphs!
    • +
    • A bunch of new guns and other weapons
    • +
    • Species specific blood
    • +
    + +

    01 January 2014

    +

    Various updated:

    +
      +
    • AntagHUD and MedicalHUD for ghosts, see who the baddies are, check for new configuration options.
    • +
    • Ghosts will now have bold text if they are in the same room as the person making conversations easier to follow.
    • +
    • New hairstyles! Now you can use something other then hotpink floor length braid.
    • +
    • DNA rework, tell us how you were cloned and became albino!
    • +
    • Dirty floors, so now you know exactly how lazy the janitors are!
    • +
    • A new UI system, feel free to color it yourself, don't set it to completely clear or you will have a bad time.
    • +
    • Cryogenic storage, for all your SSD needs.
    • +
    • New hardsuits for those syndicate tajaran
    • +
    + +

    18 December 2013

    +

    RavingManiac updated:

    +
      +
    • Mousetraps can now be "hidden" through the right-click menu. This makes them go under tables, clutter and the like. The filthy rodents will never see it coming!
    • +
    • Monkeys will no longer move randomly while being pulled.
    • +
    + +

    01 December 2013

    +

    Various Developers banged their keyboards together: updated:

    +
      +
    • New Engine, the supermatter, figure out what a cooling loop is, or don't and blow up engineering!
    • +
    • Each department will have it's own fax, make a copy of your butt and fax it to the admins!
    • +
    • Booze and soda dispensers, they are like chemmasters, only with booze and soda!
    • +
    • Bluespace and Cryostasis beakers, how do they work? Fuggin bluespace how do they work?
    • +
    • You can now shove things into vending machines, impress your friends on how things magically disappear out of your hands into the machine!
    • +
    • Robots and Androids (And gynoids too!) can now use custom job titles
    • +
    • Various bugfixes
    • +
    + +

    24 November 2013

    +

    Yinadele updated:

    +
      +
    • Supermatter engine added! Please treat your new engine gently, and report any strangeness!
    • +
    • Rebalanced events so people don't explode into appendicitis or have their organs constantly explode.
    • +
    • Vending machines have had bottled water, iced tea, and grape soda added.
    • +
    • Head reattachment surgery added! Sew heads back on proper rather than monkey madness.
    • +
    • Pain crit rebalanced - Added aim variance depending on pain levels, nerfed blackscreen severely.
    • +
    • Cyborg alt titles: Robot, and Android added! These will make you spawn as a posibrained robot. Please enjoy!
    • +
    • Fixed the sprite on the modified welding goggles, added a pair to the CE's office where they'll be used.
    • +
    • Fixed atmos computers- They are once again responsive!
    • +
    • Added in functionality proper for explosive implants- You can now set their level of detonation, and their effects are more responsively concrete depending on setting.
    • +
    • Hemostats re-added to autolathe!
    • +
    • Added two manuals on atmosia and EVA, by MagmaRam! Found in engineering and the engineering bookcase.
    • +
    • Fixed areas in medbay to have fully functional APC sectors.
    • +
    • Girders are now lasable.
    • +
    • Please wait warmly, new features planned for next merge!
    • +
    + +

    23 November 2013

    +

    Ccomp5950 updated:

    +
      +
    • Players are now no longer able to commit suicide with a lasertag gun, and will feel silly for doing so.
    • +
    • Ghosts hit with the cult book shall now actually become visible.
    • +
    • The powercells spawned with Exosuits will now properly be named to not confuse bearded roboticists.
    • +
    • Blindfolded players will now no longer require eye surgery to repair their sight, removing the blindfold will be sufficient.
    • +
    • Atmospheric Technicians will now have access to Exterior airlocks.
    • +
    + +

    01 November 2013

    +

    Various updated:

    +
      +
    • Autovoting, Get off the station when your 15 hour workweek is done, thanks unions!
    • +
    • Some beach props that Chinsky finds useless.
    • +
    • Updated NanoUI
    • +
    • Dialysis while in sleepers - removes reagents from mobs, like the chemist, toss him in there!
    • +
    • Pipe Dispensers can now be ordered by Cargo
    • +
    • Fancy G-G-G-G-Ghosts!
    • +
    + +

    29 October 2013

    +

    Cael_Aislinn updated:

    +
      +
    • Xenoarchaeology's chemical analysis and six analysis machines are gone, replaced by a single one which can be beaten in a minigame.
    • +
    • Sneaky traitors will find new challenges to overcome at the research outpost, but may also find new opportunities (transit tubes can now be traversed).
    • +
    • Finding active alien machinery should now be made significantly easier with the Alden-Saraspova counter.
    • +
    + +

    06 October 2013

    +

    Chinsky updated:

    +
      +
    • Return of dreaded side effects. They now manifest well after their cause disappears, so curing them should be possible without them reappearing immediately. They also lost last stage damaging effects.
    • +
    + +

    24 September 2013

    +

    Snapshot updated:

    +
      +
    • Removed hidden vote counts.
    • +
    • Removed hiding of vote results.
    • +
    • Removed OOC muting during votes.
    • +
    • Crew transfers are no longer callable during Red and Delta alert.
    • +
    • Started work on Auto transfer framework.
    • +
    + +

    18 September 2013

    +

    Kilakk updated:

    +
      +
    • Fax machines! The Captain and IA agents can use the fax machine to send properly formatted messages to Central Command.
    • +
    • Gave the fax machine a fancy animated sprite. Thanks Cajoes!
    • +
    + +

    08 August 2013

    +

    Erthilo updated:

    +
      +
    • Raise Dead rune now properly heals and revives dead corpse.
    • +
    • Admin-only rejuvenate verb now heals all organs, limbs, and diseases.
    • +
    • Cyborg sprites now correctly reset with reset boards. This means cyborg appearances can now be changed without admin intervention.
    • +
    + +

    04 August 2013

    +

    Chinsky updated:

    +
      +
    • Health HUD indicator replaced with Pain indicator. Now health indicator shows pain level instead of actual vitals level. Some types of damage contribute more to pain, some less, usually feeling worse than they really are.
    • +
    + +

    01 August 2013

    +

    Asanadas updated:

    +
      +
    • The Null Rod has recovered its de-culting ability, for balance reasons. Metagaming with it is a big no-no!
    • +
    • Holy Water as a liquid is able to de-cult. Less effective, but less bloody. May be changed over the course of time for balance.
    • +
    +

    CIB updated:

    +
      +
    • Chilis and cold chilis no longer kill in small amounts
    • +
    • Chloral now again needs around 5 units to start killing somebody
    • +
    +

    Cael Aislinn updated:

    +
      +
    • Security bots will now target hostile mobs, and vice versa.
    • +
    • Carp should actually emigrate now, instead of just immigrating then squatting around the outer hull.
    • +
    • Admins and moderators have been split up into separate 'who' verbs (adminwho and modwho respectively).
    • +
    +

    CaelAislinn updated:

    +
      +
    • Re-added old ion storm laws, re-added grid check event.
    • +
    • Added Rogue Drone and Vermin Infestation random events.
    • +
    • Added/fixed space vines random event.
    • +
    • Updates to the virus events.
    • +
    • Spider infestation and alien infestation events turned off by default.
    • +
    • Soghun, taj and skrell all have unique language text colours.
    • +
    • Moderators will no longer be listed in adminwho, instead use modwho.
    • +
    +

    Cael_Aislinn updated:

    + +

    Chinsky updated:

    +
      +
    • Old new medical features:
    • +
    • Autoinjectors! They come preloaded with 5u of inapro, can be used instantly, and are one-use. You can replace chems inside using a syringe. Box of them is added to Medicine closet and medical supplies crate.
    • +
    • Splints! Target broken liimb and click on person to apply. Can be taken off in inventory menu, like handcuffs. Splinted limbs have less negative effects.
    • +
    • Advanced medikit! Red and mean, all doctors spawn with one. Contains better stuff - advanced versions of bandaids and aloe heal 12 damage on the first use.
    • +
    • Wounds with damage above 50 won't heal by themselves even if bandaged/salved. Would have to seek advanced medical attention for those.
    • +
    +

    Erthilo updated:

    +
      +
    • Fixed SSD (logged-out) players not staying asleep.
    • +
    • Fixed set-pose verb and mice emotes having extra periods.
    • +
    • Fixed virus crate not appearing and breaking supply shuttle.
    • +
    • Fixed newcaster photos not being censored.
    • +
    +

    Gamerofthegame updated:

    +
      +
    • Miscellaneous mapfixes.
    • +
    +

    GauHelldragon updated:

    +
      +
    • Servicebots now have RoboTray and Printing Pen. Robotray can be used to pick up and drop food/drinks. Printing pen can alternate between writing mode and rename paper mode by clicking it.
    • +
    • Farmbots. A new type of robot that weeds, waters and fertilizes. Use robot arm on water tank. Then use plant analyzer, mini-hoe, bucket and finally proximity sensor.
    • +
    • Chefs can clang their serving trays with a rolling pin. Just like a riot shield!
    • +
    +

    Jediluke69 updated:

    +
      +
    • Added 5 new drinks (Kira Special, Lemonade, Brown Star, Milkshakes, Rewriter)
    • +
    • Nanopaste now heals about half of what it used to
    • +
    • Ballistic crates should now come with shotguns loaded with actual shells no more beanbags
    • +
    • Iced tea no longer makes a glass of .what?
    • +
    +

    Jupotter updated:

    +
      +
    • Fix the robotiscist preview in the char setupe screen
    • +
    +

    Kilakk updated:

    +
      +
    • Added the Xenobiologist job. Has access to the research hallway and to xenobiology.
    • +
    • Removed Xenobiology access from Scientists.
    • +
    • Removed the Xenobiologist alternate title from Scientists.
    • +
    • Added "Xenoarchaeology" to the RD, Scientists, and to the ID computer.
    • +
    • Changed the Research Outpost doors to use "Xenoarchaeology" access.
    • +
    +

    Meyar updated:

    +
      +
    • The syndicate shuttle now has a cycling airlock during Nuke rounds.
    • +
    • Restored the ability for the syndicate Agent ID to change the name on the card (reforge it) more than once.
    • +
    • ERT Radio now functional again.
    • +
    • Research blast doors now actually lock down the entirety of station-side Research.
    • +
    • Added lock down buttons to the wardens office.
    • +
    • The randomized barsign has made a return.
    • +
    • Syndicate Agent ID's external airlock access restored.
    • +
    +

    NerdyBoy1104 updated:

    +
      +
    • New Botany additions: Rice and Plastellium. New sheet material: Plastic.
    • +
    • Plastellium is refined into plastic by first grinding the produce to get plasticide. 20 plasticide + 10 polytrinic acid makes 10 sheets of plastic which can be used to make crates, forks, spoons, knives, ashtrays or plastic bags from.
    • +
    • Rice seeds grows into rice stalks that you grind to get rice. 10 Rice + 5 Water makes boiled rice, 10 rice + 5 milk makes rice pudding, 10 rice + 5 universal enzyme (in beaker) makes Sake.
    • +
    +

    RavingManiac updated:

    +
      +
    • You can now stab people with syringes using the "harm" intent. This destroys the syringe and transfers a random percentage of its contents into the target. Armor has a 50% chance of blocking the syringe.
    • +
    +

    Segrain updated:

    +
      +
    • Meteor showers actually spawn meteors now.
    • +
    • Engineering tape fits into toolbelt and can be placed on doors.
    • +
    • Pill bottles can hold paper.
    • +
    +

    SkyMarshal updated:

    +
      +
    • Fixed ZAS
    • +
    • Fixed Fire
    • +
    +

    Spamcat updated:

    +
      +
    • Figured I should make one of these. Syringestabbing now produces a broken syringe complete with fingerprints of attacker and blood of a victim, so dispose your evidence carefully. Maximum transfer amount per stab is lowered to 10.
    • +
    +

    VitrescentTortoise updated:

    +
      +
    • Added a third option for not getting any job preferences. It allows you to return to the lobby instead of joining.
    • +
    +

    Whitellama updated:

    +
      +
    • One-antag rounds (like wizard/ninja) no longer end automatically upon death
    • +
    • Space ninja has been implemented as a voteable gamemode
    • +
    • Space ninja spawn landmarks have been implemented (but not yet placed on the map), still spawn at carps-pawns instead. (The code will warn you about this and ask you to report it, it's a known issue.)
    • +
    • Five new space ninja directives have been added, old directives have been reworded to be less harsh
    • +
    • Space ninjas have been given their own list as antagonists, and are no longer bundled up with traitors
    • +
    • Space ninjas with a "steal a functional AI" objective will now succeed by downloading one into their suits
    • +
    • Space ninja suits' exploding on death has been nerfed, so as not to cause breaches
    • +
    • A few space ninja titles/names have been added and removed to be slightly more believable
    • +
    • The antagonist selector no longer chooses jobbanned players when it runs out of willing options
    • +
    +

    Zuhayr updated:

    +
      +
    • Added pneumatic cannon and harpoons.
    • +
    • Added embedded projectiles. Bullets and thrown weapons may stick in targets. Throwing them by hand won't make them stick, firing them from a cannon might. Implant removal surgery will get rid of shrapnel and stuck items.
    • +
    +

    faux updated:

    +
      +
    • Mixed Wardrobe Closet now has colored shoes and plaid skirts.
    • +
    • Dress uniforms added to the Captain, RD, and HoP wardrobe closets. A uniform jacket has also been added to the Captain's closet. HoS' hat has been re-added to their closet. I do not love the CMO and CE enough to give them anything.
    • +
    • Atheletic closet now has five different swimsuits *for the ladies* in them. If you are a guy, be prepared to be yelled at if you run around like a moron in one of these. Same goes for ladies who run around in shorts with their titties swaying in the space winds.
    • +
    • A set of dispatcher uniforms will spawn in the security closet. These are for playtesting the dispatcher role.
    • +
    • New suit spawns in the laundry room. It's for geezer's only. You're welcome, Book.
    • +
    • Nurse outfit variant, orderly uniform, and first responder jacket will now spawn in the medical wardrobe closet.
    • +
    • A white wedding dress will spawn in the chaplain's closet. There are also several dresses currently only adminspawnable. Admins: Look either under "bride" or "dress." The bride one leads to the colored wedding dresses, and there are some other kinds of dresses under dress.
    • +
    • No more luchador masks or boxing gloves or boxing ring. You guys have a swimming pool now, dip in and enjoy it.
    • +
    • he meeting hall has been replaced with an awkwardly placed security office meant for prisoner processing.
    • +
    • Added a couple more welding goggles to engineering since you guys liked those a lot.
    • +
    • Flasks spawn behind the bar. Only three. Don't fight over them. I don't know how to add them to the bar vending machine otherwise I would have done that instead. Detective, you have your own flask in your office, it's underneath the cigarettes on your desk.
    • +
    • Added two canes to the medical storage, for people who have leg injuries and can't walk good and stuff. I do not want to see doctors pretending to be House. These are for patients. Do not make me delete this addition and declare you guys not being able to have nice things.
    • +
    • Secondary entance to EVA now directly leads into the medbay hardsuit section. Sorry for any inconviences this will cause. The CMO can now fetch the hardsuits whenever they want.
    • +
    • Secondary security hardsuit has been added to the armory. Security members please stop stealing engineer's hardsuits when you guys want to pair up for space travel.
    • +
    • Firelocks have been moved around in the main hallways to form really ghetto versions of airlocks.
    • +
    • Violin spawns in theatre storage now. I didn't put the piano there though, that was someone else.
    • +
    • Psych office in medbay has been made better looking.
    • +
    +

    proliberate updated:

    +
      +
    • Station time is now displayed in the status tab for new players and AIs.
    • +
    + +

    30 July 2013

    +

    Erthilo updated:

    +
      +
    • EFTPOS and ATM machines should now connect to databases.
    • +
    • Gravitational Catapults can now be removed from mechs.
    • +
    • Ghost manifest rune paper naming now works correctly.
    • +
    • Fix for newscaster special characters. Still not recommended.
    • +
    +

    Kilakk updated:

    +
      +
    • Added colored department radio channels.
    • +
    + +

    28 July 2013

    +

    Segrain updated:

    +
      +
    • Camera console circuits can be adjusted for different networks.
    • +
    • Nuclear operatives and ERT members have built-in cameras in their helmets. Activate helmet to initialize it.
    • +
    + +

    26 July 2013

    +

    Kilakk updated:

    +
      +
    • Brig cell timers will no longer start counting down automatically.
    • +
    • Separated the actual countdown timer from the timer controls. Pressing "Set" while the timer is counting down will reset the countdown timer to the time selected.
    • +
    + +

    11 July 2013

    +

    Chinsky updated:

    +
      +
    • Gun delays. All guns now have delays between shots. Most have less than second, lasercannons and pulse rifles have around 2 seconds delay. Automatics have zero, click-speed.
    • +
    + +

    06 July 2013

    +

    Chinsky updated:

    +
      +
    • Humans now can be infected with more than one virus at once.
    • +
    • All analyzed viruses are put into virus DB. You can view it and edit their name and description on medical record consoles.
    • +
    • Only known viruses (ones in DB) will be detected by the machinery and HUDs.
    • +
    • Viruses cause fever, body temperature rising the more stage is.
    • +
    • Humans' body temperature does not drift towards room one unless there's big difference in them.
    • +
    • Virus incubators now can transmit viuses from dishes to blood sample.
    • +
    • New machine - centrifuge. It can isolate antibodies or viruses (spawning virus dish) from a blood sample in vials. Accepts vials only.
    • +
    • Fancy vial boxes in virology, one of them is locked by ID with MD access.
    • +
    • Engineered viruses are now ariborne too.
    • +
    + +

    05 July 2013

    +

    Spamcat updated:

    +
      +
    • Pulse! Humans now have hearbeat rate, which can be measured by right-clicking someone - Check pulse or by health analyzer. Medical machinery also has heartbeat monitors. Certain meds and conditions can influence it.
    • +
    + +

    03 July 2013

    +

    Segrain updated:

    +
      +
    • Security and medical cyborgs can use their HUDs to access records.
    • +
    + +

    28 June 2013

    +

    Segrain updated:

    +
      +
    • AIs are now able to examine what they see.
    • +
    + +

    27 June 2013

    +

    Segrain updated:

    +
      +
    • ID cards properly setup bloodtype, DNA and fingerprints again.
    • +
    + +

    26 June 2013

    +

    Segrain updated:

    +
      +
    • Autopsy scanner properly displays time of wound infliction and death.
    • +
    • Autopsy scanner properly displays wounds by projectile weapons.
    • +
    +

    Whitellama updated:

    +
      +
    • One-antag rounds (like wizard/ninja) no longer end automatically upon death
    • +
    • Space ninja has been implemented as a voteable gamemode
    • +
    • Space ninja spawn landmarks have been implemented (but not yet placed on the map), still spawn at carps-pawns instead. (The code will warn you about this and ask you to report it, it's a known issue.)
    • +
    • Five new space ninja directives have been added, old directives have been reworded to be less harsh
    • +
    • Space ninjas have been given their own list as antagonists, and are no longer bundled up with traitors
    • +
    • Space ninjas with a "steal a functional AI" objective will now succeed by downloading one into their suits
    • +
    • Space ninja suits' exploding on death has been nerfed, so as not to cause breaches
    • +
    • A few space ninja titles/names have been added and removed to be slightly more believable
    • +
    • The antagonist selector no longer chooses jobbanned players when it runs out of willing options
    • +
    + +

    23 June 2013

    +

    Segrain updated:

    +
      +
    • Airlocks of various models can be constructed again.
    • +
    +

    faux updated:

    +
      +
    • There has been a complete medbay renovation spearheaded by Vetinarix. http://baystation12.net/forums/viewtopic.php?f=20&t;=7847 <-- Please put any commentary good or bad, here.
    • +
    • Some maintenance doors within RnD and Medbay have had their accesses changed. Maintenance doors in the joint areas (leading to the research shuttle, virology, and xenobiology) are now zero access. Which means anyone in those joints can enter the maintenance tunnels. This was done to add additional evacuation locations during radiation storms. Additional maintenance doors were added to the tunnels in these areas to prevent docs and scientists from running about.
    • +
    • Starboard emergency storage isn't gone now, it's simply located in the escape wing.
    • +
    • An engineering training room has been added to engineering. This location was previously where surgery was located. If you are new to engineering or need to brush up on your skills, please use this area for testing.
    • +
    + +

    22 June 2013

    +

    Cael_Aislinn updated:

    +
      +
    • The xenoarchaeology depth scanner will now tell you what energy field is required to safely extract a find.
    • +
    • Excavation picks will now dig faster, and xenoarchaeology as a whole should be easier to do.
    • +
    + +

    21 June 2013

    +

    Jupotter updated:

    +
      +
    • Fix the robotiscist preview in the char setupe screen
    • +
    + +

    18 June 2013

    +

    Segrain updated:

    +
      +
    • Fixed some bugs in windoor construction.
    • +
    • Secure windoors are made with rods again.
    • +
    • Windoors drop their electronics when broken. Emagged windoors can have theirs removed by crowbar.
    • +
    • Airlock electronics can be configured to make door open for any single access on it instead of all of them.
    • +
    • Cyborgs can preview their icons before choosing.
    • +
    + +

    13 June 2013

    +

    Kilakk updated:

    +
      +
    • Added the Xenobiologist job. Has access to the research hallway and to xenobiology.
    • +
    • Removed Xenobiology access from Scientists.
    • +
    • Removed the Xenobiologist alternate title from Scientists.
    • +
    • Added "Xenoarchaeology" to the RD, Scientists, and to the ID computer.
    • +
    • Changed the Research Outpost doors to use "Xenoarchaeology" access.
    • +
    + +

    12 June 2013

    +

    Zuhayr updated:

    +
      +
    • Added pneumatic cannon and harpoons.
    • +
    • Added embedded projectiles. Bullets and thrown weapons may stick in targets. Throwing them by hand won't make them stick, firing them from a cannon might. Implant removal surgery will get rid of shrapnel and stuck items.
    • +
    + +

    11 June 2013

    +

    Meyar updated:

    +
      +
    • Fixes a security door with a firedoor ontop of it.
    • +
    • Fixed a typo relating to the admin Select Equipment Verb. (It's RESPONSE team not RESCUE team)
    • +
    • ERT are now automated, from their spawn to their shuttle. Admin intervention no longer required! (Getting to the mechs still requires admin permission generally)
    • +
    • Added flashlights to compensate for the weakened PDA lights
    • +
    • ERT Uniforms updated to be in line with Centcom uniforms. No more turtlenecks, no sir.
    • +
    + +

    09 June 2013

    +

    Segrain updated:

    +
      +
    • Emagged supply console can order SpecOp crates again.
    • +
    + +

    06 June 2013

    +

    Asanadas updated:

    +
      +
    • Added a whimsical suit to the head of personnel's secret clothing locker.
    • +
    +

    Meyar updated:

    +
      +
    • Disposal's mail routing fixed. Missing pipes replaced.
    • +
    • Chemistry is once again a part of the disposals delivery circuit.
    • +
    • Added missing sorting junctions to Security and HoS office.
    • +
    • Fixed a duplicate sorting junction.
    • +
    + +

    05 June 2013

    +

    Chinsky updated:

    +
      +
    • Load bearing equipment - webbings and vests for engineers and sec. Attach to jumpsuit, use 'Look in storage' verb (object tab) to open.
    • +
    +

    Segrain updated:

    +
      +
    • Exosuits now can open firelocks by walking into them.
    • +
    + +

    01 June 2013

    +

    Chinsky updated:

    +
      +
    • Bloody footprints! Now stepping in the puddle will dirty your shoes/feet and make you leave bloody footprints for a bit.
    • +
    • Blood now dries up after some time. Puddles take ~30 minutes, small things 5 minutes.
    • +
    • Untreated wounds now heal. No more toe stubs spamming you with pain messages for the rest of the shift.
    • +
    • On the other side, everything is healed slowly. Maximum you cna squeeze out of first aid is 0.5 health per tick per organ. Lying down makes it faster too, by 1.5x factor.
    • +
    • Lids! Click beaker/bottle in hand to put them on/off. Prevent spilling
    • +
    • Added 'hailer' to security lockers. If used in hand, says "Halt! Security!". For those who can't run and type.
    • +
    + +

    31 May 2013

    +

    Segrain updated:

    +
      +
    • Portable canisters now properly connect to ports beneath them on map load.
    • +
    • Fixed unfastening gas meters.
    • +
    + +

    30 May 2013

    +

    Segrain updated:

    +
      +
    • Meteor showers actually spawn meteors now.
    • +
    • Engineering tape fits into toolbelt and can be placed on doors.
    • +
    • Pill bottles can hold paper.
    • +
    +

    Spamcat updated:

    +
      +
    • Pill bottle capacity increased to 14 items.
    • +
    • Fixed Lamarr (it now spawns properly)
    • +
    +

    proliberate updated:

    +
      +
    • Station time is now displayed in the status tab for new players and AIs.
    • +
    + +

    28 May 2013

    +

    Erthilo updated:

    +
      +
    • Fixes everyone being able to understand alien languages. HERE IS YOUR TOWER OF BABEL
    • +
    +

    VitrescentTortoise updated:

    +
      +
    • Wizard's forcewall now works.
    • +
    + +

    26 May 2013

    +

    Chinsky updated:

    +
      +
    • Tentacles! Now clone damage will make you horribly malformed like examine text says.
    • +
    +

    Meyar updated:

    +
      +
    • The syndicate shuttle now has a cycling airlock during Nuke rounds.
    • +
    • Restored the ability for the syndicate Agent ID to change the name on the card (reforge it) more than once.
    • +
    • ERT Radio now functional again.
    • +
    • Research blast doors now actually lock down the entirety of station-side Research.
    • +
    • Added lock down buttons to the wardens office.
    • +
    • The randomized barsign has made a return.
    • +
    • Syndicate Agent ID's external airlock access restored.
    • +
    +

    VitrescentTortoise updated:

    +
      +
    • Added a third option for not getting any job preferences. It allows you to return to the lobby instead of joining.
    • +
    + +

    25 May 2013

    +

    Erthilo updated:

    +
      +
    • Fixes alien races appearing an unknown when speaking their language.
    • +
    • Fixes alien races losing their language when cloned.
    • +
    • Fixes UI getting randomly reset when trying to change it in Genetics Scanners.
    • +
    + +

    21 May 2013

    +

    SkyMarshal updated:

    +
      +
    • ZAS will now speed air movement into/out of a zone when unsimulated tiles (e.g. space) are involved, in relation to the number of tiles.
    • +
    • Portable Canisters will now automatically connect to any portable connecter beneath them on map load.
    • +
    • Bug involving mis-mapped disposal junction fixed
    • +
    • Air alarms now work for atmos techs (whoops!)
    • +
    • The Master Controller now properly stops atmos when it runtimes.
    • +
    • Backpacks can no longer be contaminated
    • +
    • ZAS no longer logs air statistics.
    • +
    • ZAS now rebuilds as soon as it detects a semi-complex change in geometry. (It was doing this already, but in a convoluted way which was actually less efficient)
    • +
    • General code cleanup/commenting of ZAS
    • +
    • Jungle now initializes after the random Z-level loads and atmos initializes.
    • +
    + +

    15 May 2013

    +

    Spamcat updated:

    +
      +
    • Added telescopic batons to HoS's and captain's lockers. These are quite robust and easily concealable.
    • +
    + +

    14 May 2013

    +

    Cael_Aislinn updated:

    +
      +
    • Depth scanners can now be used to determine what material archaeological deposits are made of, meaning lab analysis is no longer required.
    • +
    • Some useability issues with xenoarchaeology tools have been resolved, and the transit pods cycle automatically now.
    • +
    + +

    24 April 2013

    +

    Jediluke69 updated:

    +
      +
    • Added 5 new drinks (Kira Special, Lemonade, Brown Star, Milkshakes, Rewriter)
    • +
    • Nanopaste now heals about half of what it used to
    • +
    • Ballistic crates should now come with shotguns loaded with actual shells no more beanbags
    • +
    • Iced tea no longer makes a glass of .what?
    • +
    +

    NerdyBoy1104 updated:

    +
      +
    • New Botany additions: Rice and Plastellium. New sheet material: Plastic.
    • +
    • Plastellium is refined into plastic by first grinding the produce to get plasticide. 20 plasticide + 10 polytrinic acid makes 10 sheets of plastic which can be used to make crates, forks, spoons, knives, ashtrays or plastic bags from.
    • +
    • Rice seeds grows into rice stalks that you grind to get rice. 10 Rice + 5 Water makes boiled rice, 10 rice + 5 milk makes rice pudding, 10 rice + 5 universal enzyme (in beaker) makes Sake.
    • +
    +

    faux updated:

    +
      +
    • Mixed Wardrobe Closet now has colored shoes and plaid skirts.
    • +
    • Dress uniforms added to the Captain, RD, and HoP wardrobe closets. A uniform jacket has also been added to the Captain's closet. HoS' hat has been re-added to their closet. I do not love the CMO and CE enough to give them anything.
    • +
    • Atheletic closet now has five different swimsuits *for the ladies* in them. If you are a guy, be prepared to be yelled at if you run around like a moron in one of these. Same goes for ladies who run around in shorts with their titties swaying in the space winds.
    • +
    • A set of dispatcher uniforms will spawn in the security closet. These are for playtesting the dispatcher role.
    • +
    • New suit spawns in the laundry room. It's for geezer's only. You're welcome, Book.
    • +
    • Nurse outfit variant, orderly uniform, and first responder jacket will now spawn in the medical wardrobe closet.
    • +
    • A white wedding dress will spawn in the chaplain's closet. There are also several dresses currently only adminspawnable. Admins: Look either under "bride" or "dress." The bride one leads to the colored wedding dresses, and there are some other kinds of dresses under dress.
    • +
    • No more luchador masks or boxing gloves or boxing ring. You guys have a swimming pool now, dip in and enjoy it.
    • +
    • he meeting hall has been replaced with an awkwardly placed security office meant for prisoner processing.
    • +
    • Added a couple more welding goggles to engineering since you guys liked those a lot.
    • +
    • Flasks spawn behind the bar. Only three. Don't fight over them. I don't know how to add them to the bar vending machine otherwise I would have done that instead. Detective, you have your own flask in your office, it's underneath the cigarettes on your desk.
    • +
    • Added two canes to the medical storage, for people who have leg injuries and can't walk good and stuff. I do not want to see doctors pretending to be House. These are for patients. Do not make me delete this addition and declare you guys not being able to have nice things.
    • +
    • Secondary entance to EVA now directly leads into the medbay hardsuit section. Sorry for any inconviences this will cause. The CMO can now fetch the hardsuits whenever they want.
    • +
    • Secondary security hardsuit has been added to the armory. Security members please stop stealing engineer's hardsuits when you guys want to pair up for space travel.
    • +
    • Firelocks have been moved around in the main hallways to form really ghetto versions of airlocks.
    • +
    • Violin spawns in theatre storage now. I didn't put the piano there though, that was someone else.
    • +
    • Psych office in medbay has been made better looking.
    • +
    + +

    17 April 2013

    +

    SkyMarshal updated:

    +
      +
    • ZAS is now more deadly, as per decision by administrative team. May be tweaked, but currently AIRFLOW is the biggest griefer.
    • +
    • World startup optimized, many functions now delayed until a player joins the server. (Reduces server boot time significantly)
    • +
    • Zones will now equalize air more rapidly.
    • +
    • ZAS now respects active magboots when airflow occurs.
    • +
    • Airflow will no longer throw you into doors and open them.
    • +
    • Race condition in zone construction has been fixed, so zones connect properly at round start.
    • +
    • Plasma effects readded.
    • +
    • Fixed runtime involving away mission.
    • +
    + +

    11 April 2013

    +

    SkyMarshal updated:

    +
      +
    • Fire has been reworked.
    • +
    • In-game variable editor is both readded and expanded with fire controlling capability.
    • +
    + +

    09 April 2013

    +

    SkyMarshal updated:

    +
      +
    • Fire Issues (Firedoors, Flamethrowers, Incendiary Grenades) fixed.
    • +
    • Fixed a bad line of code that was preventing autoignition of flammable gas mixes.
    • +
    • Volatile fuel is burned up after a point.
    • +
    • Partial-tile firedoors removed. This is due to ZAS breaking when interacting with them.
    • +
    + +

    04 April 2013

    +

    SkyMarshal updated:

    +
      +
    • Fixed ZAS
    • +
    • Fixed Fire
    • +
    +

    Spamcat updated:

    +
      +
    • Blood type is now saved in character creation menu, no need to edit it manually every round.
    • +
    + +

    27 March 2013

    +

    Asanadas updated:

    +
      +
    • The Null Rod has recovered its de-culting ability, for balance reasons. Metagaming with it is a big no-no!
    • +
    • Holy Water as a liquid is able to de-cult. Less effective, but less bloody. May be changed over the course of time for balance.
    • +
    + +

    26 March 2013

    +

    Spamcat updated:

    +
      +
    • Chemmaster now puts pills in pill bottles (if one is inserted).
    • +
    • Stabbing someone with a syringe now deals 3 damage instead of 7 because 7 is like, a crowbar punch.
    • +
    • Lizards can now join mid-round again.
    • +
    • Chemicals in bloodstream will transfer with blood now, so don't get drunk before your blood donation. Viruses and antibodies transfer through blood too.
    • +
    • Virology is working again.
    • +
    + +

    15 March 2013

    +

    Cael_Aislinn updated:

    +
      +
    • Mapped a compact research base on the mining asteroid, with multiple labs and testing rooms. It's reachable through a new (old) shuttle dock that leaves from the research wing on the main station.
    • +
    + +

    14 March 2013

    +

    Spamcat updated:

    +
      +
    • Figured I should make one of these. Syringestabbing now produces a broken syringe complete with fingerprints of attacker and blood of a victim, so dispose your evidence carefully. Maximum transfer amount per stab is lowered to 10.
    • +
    + +

    11 March 2013

    +

    CIB updated:

    +
      +
    • Cloning now requires you to put slabs of meat into the cloning pod to replenish biomass.
    • +
    +

    Cael Aislinn updated:

    +
      +
    • The xenoarchaeology update is here. This includes a major content overhaul and a bunch of new features for xenoarchaeology.
    • +
    • Digsites (strange rock deposits) are now much more nuanced and interesting, and a huge number of minor (non-artifact) finds have been added.
    • +
    • Excavation is now a complex process that involves digging into the rock to the right depth.
    • +
    • Chemical analysis is required for safe excavation of the digsites, in order to determine how best to extract the finds.
    • +
    • Anomalous artifacts have been overhauled and many longstanding bugs with existing effects have been fixed - the anomaly utiliser should now work much more often.
    • +
    • Numerous new artifact effects have been added and some new artifact types can be dug up from the asteroid.
    • +
    • New tools and equipment have been added, including normal and spaceworthy versions of the anomaly suits, excavation tools and other neat gadgets.
    • +
    • Five books have been written by subject matter experts from around the galaxy to help the crew of the Exodus come to grips with this exacting new science (over 3000 words of tutorials!).
    • +
    +

    Chinsky updated:

    +
      +
    • Sec HUDs now can see short versions of sec records.on examine. Med HUDs do same for medical records, and can set medical status of patient.
    • +
    • Damage to the head can now cause brain damage.
    • +
    + +

    09 March 2013

    +

    Cael Aislinn updated:

    +
      +
    • Beekeeping is now possible. Construct an apiary of out wood and embed it into a hydroponics tray, then get a queen bee and bottle of BeezEez from cargo bay. + Hives produce honey and honeycomb, but be wary if the bees start swarming.
    • +
    + +

    06 March 2013

    +

    Cael Aislinn updated:

    +
      +
    • Type 1 thermoelectric generators and the associated binary circulators are now moveable (wrench to secure/unsecure) and orderable via Quartermaster.
    • +
    • code/maps/rust_test.dmm contains an example setup for a functional RUST reactor. Maximum output is in the range of 12 to 20MW (12 to 20 million watts).
    • +
    • Removed double announcement for gridchecks, reduced duration of gridchecks.
    • +
    +

    RavingManiac updated:

    +
      +
    • You can now stab people with syringes using the "harm" intent. This destroys the syringe and transfers a random percentage of its contents into the target. Armor has a 50% chance of blocking the syringe.
    • +
    + +

    05 March 2013

    +

    CIB updated:

    +
      +
    • Added internal organs. They're currently all located in the chest. Use advanced scanner to detect damage. Use the same surgery as for ruptured lungs to fix them.
    • +
    +

    Cael Aislinn updated:

    +
      +
    • Set roundstart music to randomly choose between space.ogg and traitor.ogg (see http://baystation12.net/forums/viewtopic.php?f=5&t;=6972)
    • +
    • All RUST components except for TEGs (which generate the power) are now obtainable ingame, bored engineers should get hold of them and setup an experimental reactor for testing purposes.
    • +
    + +

    27 February 2013

    +

    Gamerofthegame updated:

    +
      +
    • Added the (base gear) ERT preset for the debug command.
    • +
    • Map fixes, Virology hole fixed. Atmospheric fixes for mining and, to a less extent, the science outpost. (No, not cycling airlocks)
    • +
    • Fiddled with the ERT set up location on Centcom. Radmins will now have a even easier time equiping a team of any real pratical size, especially coupled with the above debug command.
    • +
    + +

    25 February 2013

    +

    Cael Aislinn updated:

    +
      +
    • As well as building hull shield generators, normal shield gens can now be built (see http://baystation12.net/forums/viewtopic.php?f=1&t;=6993).
    • +
    • New random events: multiple new system wide-events have been have been added to the newscaster feeds, some not quite as respectable as others.
    • +
    • New random event: some lucky winners will win the TC Daily Grand Slam Lotto, while others may be the target of malicious hackers.
    • +
    + +

    23 February 2013

    +

    Cael Aislinn updated:

    +
      +
    • RUST machinery components should now be researchable (with high requirements) and orderable through QM (with high cost).
    • +
    • Shield machinery should now be researchable (with high requirements) and orderable through QM (with high cost). This one is reportedly buggy.
    • +
    • Rogue vending machines should revert back to normal at the end of the event.
    • +
    • New Unathi hair styles.
    • +
    + +

    22 February 2013

    +

    Chinsky updated:

    +
      +
    • Change to body cavity surgery. Can only put items in chest, groind and head. Max size for item - 3 (chest), 2 (groin), 1 (head). For chest surgery ribs should be bent open, (lung surgery until second scalpel step). Surgery step needs preparation step, with drill. After that you can place item inside, or seal it with cautery to do other step instead.
    • +
    + +

    20 February 2013

    +

    Chinsky updated:

    +
      +
    • Added new surgery: putting items inside people. After you use retractor to keep incision open, just click with any item to put it inside. But be wary, if you try to fit something too big, you might rip the veins. To remove items, use implant removal surgery.
    • +
    • Crowbar can be used as alternative to retractor.
    • +
    • Can now unload guns by clicking them in hand.
    • +
    • Fixed distance calculation in bullet missing chance computation, it was always assuming 1 or 0 tiles. Now distace REALLY matters when you shoot.
    • +
    • To add more FUN to previous thing, bullets missed to not disappear but keep going until they hit something else.
    • +
    • Compressed Matter and Explosive implants spawn properly now.
    • +
    • Tweaks to medical effects: removed itch caused by bandages. Chemical effects now have non-100 chance of appearing, the stronger medicine, the more probality it'll have side effects.
    • +
    + +

    18 February 2013

    +

    Cael Aislinn updated:

    +
      +
    • Security bots will now target hostile mobs, and vice versa.
    • +
    • Carp should actually emigrate now, instead of just immigrating then squatting around the outer hull.
    • +
    • Admins and moderators have been split up into separate 'who' verbs (adminwho and modwho respectively).
    • +
    + +

    14 February 2013

    +

    CIB updated:

    +
      +
    • Medical side-effects(patients are going to come back for secondary treatment)
    • +
    • NT loyalty setting(affects command reports and gives antags hints who might collaborate with them)
    • +
    • Simple animal balance fixes(They're slower now)
    • +
    +

    CaelAislinn updated:

    +
      +
    • Re-added old ion storm laws, re-added grid check event.
    • +
    • Added Rogue Drone and Vermin Infestation random events.
    • +
    • Added/fixed space vines random event.
    • +
    • Updates to the virus events.
    • +
    • Spider infestation and alien infestation events turned off by default.
    • +
    • Soghun, taj and skrell all have unique language text colours.
    • +
    • Moderators will no longer be listed in adminwho, instead use modwho.
    • +
    +

    Gamerofthegame updated:

    +
      +
    • Miscellaneous mapfixes.
    • +
    + +

    13 February 2013

    +

    Erthilo updated:

    +
      +
    • Fixed SSD (logged-out) players not staying asleep.
    • +
    • Fixed set-pose verb and mice emotes having extra periods.
    • +
    • Fixed virus crate not appearing and breaking supply shuttle.
    • +
    • Fixed newcaster photos not being censored.
    • +
    + +

    31 January 2013

    +

    CIB updated:

    +
      +
    • Chilis and cold chilis no longer kill in small amounts
    • +
    • Chloral now again needs around 5 units to start killing somebody
    • +
    + +

    23 January 2013

    +

    Cael_Aislinn updated:

    + + +

    21 January 2013

    +

    Cael_Aislinn updated:

    +
      +
    • Satchels and ore boxes can now hold strange rocks.
    • +
    • Closets and crates can now be built out of 5 and 10 plasteel respectively.
    • +
    • Observers can become mice once more.
    • +
    + +

    13 January 2013

    +

    Chinsky updated:

    +
      +
    • If you get enough (6) blood drips on one tile, it'll turn into a blood puddle. Should make bleeding out more visible.
    • +
    • Security belt now able to hold taser, baton and tape roll.
    • +
    • Added alternative security uniform to Security wardrobes.
    • +
    • Ported Urist cult runes. Down with the crayon drawings! Example: http://dl.dropbox.com/u/26846767/images/SS13/255_symbols.PNG
    • +
    • Engineering tape now require engineer OR atmos access instead of both.
    • +
    • Implants now will react to EMP, possibly in !!FUN!! ways
    • +
    +

    GauHelldragon updated:

    +
      +
    • Servicebots now have RoboTray and Printing Pen. Robotray can be used to pick up and drop food/drinks. Printing pen can alternate between writing mode and rename paper mode by clicking it.
    • +
    • Farmbots. A new type of robot that weeds, waters and fertilizes. Use robot arm on water tank. Then use plant analyzer, mini-hoe, bucket and finally proximity sensor.
    • +
    • Chefs can clang their serving trays with a rolling pin. Just like a riot shield!
    • +
    + +

    07 January 2013

    +

    Cael_Aislinn updated:

    + +

    Chinsky updated:

    +
      +
    • Implants: Explosvie implant, exploding when victim hears the codephrase you set.
    • +
    • Implants: Compressed Matter implat, scan item (making it disappear), inject yourself and recall that item on will!
    • +
    • Implant removal surgery, with !!FUN!! results if you mess up it.
    • +
    • Coats now have pockets again.
    • +
    • Bash people on tabetops. an windows, or with stools. Grab people to bash them on tables or windows (better grab for better hit on windows). Drag stool sprite on you to pick it up, click on it in hand to make it usual stool again.
    • +
    • Surgical caps, and new sprites for bloodbags and fixovein.
    • +
    • Now some surgery steps will bloody your hands, Full-body blood coat in case youy mess up spectacualry.
    • +
    • Ported some crates (Art, Surgery, Sterile equiplemnt).
    • +
    • Changed contraband crates. Posters moved to Art Crate, cigs and lipstick ot party crate. Now contraband crate has illegal booze and illicit drugs.
    • +
    • Finally got evac party lights
    • +
    • Now disfigurment,now it WILL happen when damage is bad enough.
    • +
    • Now if you speak in depressurized area (less than 10 kPa) only people next to you can hear you. Radios still work though.
    • +
    +
    + +
    Baystation 12 Credit List + + + + +
    + Current BS12 Project Maintainers: -Click Here-
    + Currently Active GitHub BS12 contributor list: -Click Here-
    + Code: Abi79, Aryn, Cael_Aislinn, Ccomp5950, Chinsky, cib, CompactNinja, DopeGhoti, Erthilo, Hawk_v3, Head, Ispil, JoeyJo0, Lexusjjss, Melonstorm, Miniature, Mloc, NerdyBoy1104, PsiOmegaDelta, SkyMarshal, Snapshot, Spectre, Strumpetplaya, Sunfall, Tastyfish, Uristqwerty
    + Sprites: Apple_Master, Arcalane, Chinsky, CompactNinja, Deus Dactyl, Erthilo, Flashkirby, JoeyJo0, Miniature, Searif, Xenone, faux
    + Sounds: Aryn
    + Main Testers: Anyone who has submitted a bug to the issue tracker.
    +
    + +GoonStation 13 Development Team +
    + Coders: Stuntwaffle, Showtime, Pantaloons, Nannek, Keelin, Exadv1, hobnob, Justicefries, 0staf, sniperchance, AngriestIBM, BrianOBlivion
    + Spriters: Supernorn, Haruhi, Stuntwaffle, Pantaloons, Rho, SynthOrange, I Said No
    +
    +
    +

    Creative Commons License
    Except where otherwise noted, Goon Station 13 is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 License.
    Rights are currently extended to SomethingAwful Goons only.

    +

    Some icons by Yusuke Kamiyamane. All rights reserved. Licensed under a Creative Commons Attribution 3.0 License.

    +
    + + diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index 9444423465..06d15f64b0 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -1,5356 +1,5448 @@ -DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. ---- -2013-01-07: - Cael_Aislinn: - - tgs: Updated server to tgstation r5200 (November 26th, 2012), see https://code.google.com/p/tgstation13/source/list - for tg's changelog. - Chinsky: - - rscadd: 'Implants: Explosvie implant, exploding when victim hears the codephrase - you set.' - - rscadd: 'Implants: Compressed Matter implat, scan item (making it disappear), - inject yourself and recall that item on will!' - - rscadd: Implant removal surgery, with !!FUN!! results if you mess up it. - - rscadd: Coats now have pockets again. - - rscadd: Bash people on tabetops. an windows, or with stools. Grab people to bash - them on tables or windows (better grab for better hit on windows). Drag stool - sprite on you to pick it up, click on it in hand to make it usual stool again. - - rscadd: Surgical caps, and new sprites for bloodbags and fixovein. - - rscadd: Now some surgery steps will bloody your hands, Full-body blood coat in - case youy mess up spectacualry. - - rscadd: Ported some crates (Art, Surgery, Sterile equiplemnt). - - tweak: Changed contraband crates. Posters moved to Art Crate, cigs and lipstick - ot party crate. Now contraband crate has illegal booze and illicit drugs. - - bugfix: Finally got evac party lights - - bugfix: Now disfigurment,now it WILL happen when damage is bad enough. - - experiment: Now if you speak in depressurized area (less than 10 kPa) only people - next to you can hear you. Radios still work though. -2013-01-13: - Chinsky: - - tweak: If you get enough (6) blood drips on one tile, it'll turn into a blood - puddle. Should make bleeding out more visible. - - tweak: Security belt now able to hold taser, baton and tape roll. - - tweak: Added alternative security uniform to Security wardrobes. - - rscadd: 'Ported Urist cult runes. Down with the crayon drawings! Example: http://dl.dropbox.com/u/26846767/images/SS13/255_symbols.PNG' - - bugfix: Engineering tape now require engineer OR atmos access instead of both. - - rscadd: Implants now will react to EMP, possibly in !!FUN!! ways - GauHelldragon: - - rscadd: Servicebots now have RoboTray and Printing Pen. Robotray can be used to - pick up and drop food/drinks. Printing pen can alternate between writing mode - and rename paper mode by clicking it. - - rscadd: Farmbots. A new type of robot that weeds, waters and fertilizes. Use robot - arm on water tank. Then use plant analyzer, mini-hoe, bucket and finally proximity - sensor. - - rscadd: Chefs can clang their serving trays with a rolling pin. Just like a riot - shield! -2013-01-21: - Cael_Aislinn: - - bugfix: Satchels and ore boxes can now hold strange rocks. - - rscadd: Closets and crates can now be built out of 5 and 10 plasteel respectively. - - rscadd: Observers can become mice once more. -2013-01-23: - Cael_Aislinn: - - tgs: Updated server to tgstation r5200 (November 26th, 2012), see https://code.google.com/p/tgstation13/source/list - for tg's changelog. -2013-01-31: - CIB: - - bugfix: Chilis and cold chilis no longer kill in small amounts - - bugfix: Chloral now again needs around 5 units to start killing somebody -2013-02-13: - Erthilo: - - bugfix: Fixed SSD (logged-out) players not staying asleep. - - bugfix: Fixed set-pose verb and mice emotes having extra periods. - - bugfix: Fixed virus crate not appearing and breaking supply shuttle. - - bugfix: Fixed newcaster photos not being censored. -2013-02-14: - CIB: - - rscadd: Medical side-effects(patients are going to come back for secondary treatment) - - rscadd: NT loyalty setting(affects command reports and gives antags hints who - might collaborate with them) - - tweak: Simple animal balance fixes(They're slower now) - CaelAislinn: - - rscadd: Re-added old ion storm laws, re-added grid check event. - - rscadd: Added Rogue Drone and Vermin Infestation random events. - - rscadd: Added/fixed space vines random event. - - tweak: Updates to the virus events. - - tweak: Spider infestation and alien infestation events turned off by default. - - tweak: Soghun, taj and skrell all have unique language text colours. - - tweak: Moderators will no longer be listed in adminwho, instead use modwho. - Gamerofthegame: - - rscadd: Miscellaneous mapfixes. -2013-02-18: - Cael Aislinn: - - rscadd: Security bots will now target hostile mobs, and vice versa. - - tweak: Carp should actually emigrate now, instead of just immigrating then squatting - around the outer hull. - - tweak: Admins and moderators have been split up into separate 'who' verbs (adminwho - and modwho respectively). -2013-02-20: - Chinsky: - - rscadd: 'Added new surgery: putting items inside people. After you use retractor - to keep incision open, just click with any item to put it inside. But be wary, - if you try to fit something too big, you might rip the veins. To remove items, - use implant removal surgery.' - - rscadd: Crowbar can be used as alternative to retractor. - - rscadd: Can now unload guns by clicking them in hand. - - tweak: Fixed distance calculation in bullet missing chance computation, it was - always assuming 1 or 0 tiles. Now distace REALLY matters when you shoot. - - rscadd: To add more FUN to previous thing, bullets missed to not disappear but - keep going until they hit something else. - - bugfix: Compressed Matter and Explosive implants spawn properly now. - - tweak: 'Tweaks to medical effects: removed itch caused by bandages. Chemical effects - now have non-100 chance of appearing, the stronger medicine, the more probality - it''ll have side effects.' -2013-02-22: - Chinsky: - - tweak: Change to body cavity surgery. Can only put items in chest, groind and - head. Max size for item - 3 (chest), 2 (groin), 1 (head). For chest surgery - ribs should be bent open, (lung surgery until second scalpel step). Surgery - step needs preparation step, with drill. After that you can place item inside, - or seal it with cautery to do other step instead. -2013-02-23: - Cael Aislinn: - - wip: RUST machinery components should now be researchable (with high requirements) - and orderable through QM (with high cost). - - wip: Shield machinery should now be researchable (with high requirements) and - orderable through QM (with high cost). This one is reportedly buggy. - - tweak: Rogue vending machines should revert back to normal at the end of the event. - - rscadd: New Unathi hair styles. -2013-02-25: - Cael Aislinn: - - rscadd: As well as building hull shield generators, normal shield gens can now - be built (see http://baystation12.net/forums/viewtopic.php?f=1&t;=6993). - - rscadd: 'New random events: multiple new system wide-events have been have been - added to the newscaster feeds, some not quite as respectable as others.' - - rscadd: 'New random event: some lucky winners will win the TC Daily Grand Slam - Lotto, while others may be the target of malicious hackers.' -2013-02-27: - Gamerofthegame: - - rscadd: Added the (base gear) ERT preset for the debug command. - - rscadd: Map fixes, Virology hole fixed. Atmospheric fixes for mining and, to a - less extent, the science outpost. (No, not cycling airlocks) - - rscadd: Fiddled with the ERT set up location on Centcom. Radmins will now have - a even easier time equiping a team of any real pratical size, especially coupled - with the above debug command. -2013-03-05: - CIB: - - rscadd: Added internal organs. They're currently all located in the chest. Use - advanced scanner to detect damage. Use the same surgery as for ruptured lungs - to fix them. - Cael Aislinn: - - soundadd: Set roundstart music to randomly choose between space.ogg and traitor.ogg - (see http://baystation12.net/forums/viewtopic.php?f=5&t;=6972) - - experiment: All RUST components except for TEGs (which generate the power) are - now obtainable ingame, bored engineers should get hold of them and setup an - experimental reactor for testing purposes. -2013-03-06: - Cael Aislinn: - - rscadd: Type 1 thermoelectric generators and the associated binary circulators - are now moveable (wrench to secure/unsecure) and orderable via Quartermaster. - - wip: code/maps/rust_test.dmm contains an example setup for a functional RUST reactor. - Maximum output is in the range of 12 to 20MW (12 to 20 million watts). - - bugfix: Removed double announcement for gridchecks, reduced duration of gridchecks. - RavingManiac: - - rscadd: You can now stab people with syringes using the "harm" intent. This destroys - the syringe and transfers a random percentage of its contents into the target. - Armor has a 50% chance of blocking the syringe. -2013-03-09: - Cael Aislinn: - - rscadd: "Beekeeping is now possible. Construct an apiary of out wood and embed\ - \ it into a hydroponics tray, then get a queen bee and bottle of BeezEez from\ - \ cargo bay. \n\t\tHives produce honey and honeycomb, but be wary if the bees\ - \ start swarming." -2013-03-11: - CIB: - - rscadd: Cloning now requires you to put slabs of meat into the cloning pod to - replenish biomass. - Cael Aislinn: - - wip: The xenoarchaeology update is here. This includes a major content overhaul - and a bunch of new features for xenoarchaeology. - - tweak: Digsites (strange rock deposits) are now much more nuanced and interesting, - and a huge number of minor (non-artifact) finds have been added. - - rscadd: Excavation is now a complex process that involves digging into the rock - to the right depth. - - rscadd: Chemical analysis is required for safe excavation of the digsites, in - order to determine how best to extract the finds. - - bugfix: Anomalous artifacts have been overhauled and many longstanding bugs with - existing effects have been fixed - the anomaly utiliser should now work much - more often. - - rscadd: Numerous new artifact effects have been added and some new artifact types - can be dug up from the asteroid. - - rscadd: New tools and equipment have been added, including normal and spaceworthy - versions of the anomaly suits, excavation tools and other neat gadgets. - - rscadd: Five books have been written by subject matter experts from around the - galaxy to help the crew of the Exodus come to grips with this exacting new science - (over 3000 words of tutorials!). - Chinsky: - - rscadd: Sec HUDs now can see short versions of sec records.on examine. Med HUDs - do same for medical records, and can set medical status of patient. - - rscadd: Damage to the head can now cause brain damage. -2013-03-14: - Spamcat: - - rscadd: Figured I should make one of these. Syringestabbing now produces a broken - syringe complete with fingerprints of attacker and blood of a victim, so dispose - your evidence carefully. Maximum transfer amount per stab is lowered to 10. -2013-03-15: - Cael_Aislinn: - - rscadd: Mapped a compact research base on the mining asteroid, with multiple labs - and testing rooms. It's reachable through a new (old) shuttle dock that leaves - from the research wing on the main station. -2013-03-26: - Spamcat: - - bugfix: Chemmaster now puts pills in pill bottles (if one is inserted). - - tweak: Stabbing someone with a syringe now deals 3 damage instead of 7 because - 7 is like, a crowbar punch. - - bugfix: Lizards can now join mid-round again. - - rscadd: Chemicals in bloodstream will transfer with blood now, so don't get drunk - before your blood donation. Viruses and antibodies transfer through blood too. - - bugfix: Virology is working again. -2013-03-27: - Asanadas: - - tweak: The Null Rod has recovered its de-culting ability, for balance reasons. - Metagaming with it is a big no-no! - - rscadd: Holy Water as a liquid is able to de-cult. Less effective, but less bloody. - May be changed over the course of time for balance. -2013-04-04: - SkyMarshal: - - bugfix: Fixed ZAS - - bugfix: Fixed Fire - Spamcat: - - bugfix: Blood type is now saved in character creation menu, no need to edit it - manually every round. -2013-04-09: - SkyMarshal: - - bugfix: Fire Issues (Firedoors, Flamethrowers, Incendiary Grenades) fixed. - - bugfix: Fixed a bad line of code that was preventing autoignition of flammable - gas mixes. - - bugfix: Volatile fuel is burned up after a point. - - rscdel: Partial-tile firedoors removed. This is due to ZAS breaking when interacting - with them. -2013-04-11: - SkyMarshal: - - experiment: Fire has been reworked. - - experiment: In-game variable editor is both readded and expanded with fire controlling - capability. -2013-04-17: - SkyMarshal: - - experiment: ZAS is now more deadly, as per decision by administrative team. May - be tweaked, but currently AIRFLOW is the biggest griefer. - - experiment: World startup optimized, many functions now delayed until a player - joins the server. (Reduces server boot time significantly) - - tweak: Zones will now equalize air more rapidly. - - bugfix: ZAS now respects active magboots when airflow occurs. - - bugfix: Airflow will no longer throw you into doors and open them. - - bugfix: Race condition in zone construction has been fixed, so zones connect properly - at round start. - - bugfix: Plasma effects readded. - - bugfix: Fixed runtime involving away mission. -2013-04-24: - Jediluke69: - - rscadd: Added 5 new drinks (Kira Special, Lemonade, Brown Star, Milkshakes, Rewriter) - - tweak: Nanopaste now heals about half of what it used to - - tweak: Ballistic crates should now come with shotguns loaded with actual shells - no more beanbags - - bugfix: Iced tea no longer makes a glass of .what? - NerdyBoy1104: - - rscadd: 'New Botany additions: Rice and Plastellium. New sheet material: Plastic.' - - rscadd: Plastellium is refined into plastic by first grinding the produce to get - plasticide. 20 plasticide + 10 polytrinic acid makes 10 sheets of plastic which - can be used to make crates, forks, spoons, knives, ashtrays or plastic bags - from. - - rscadd: Rice seeds grows into rice stalks that you grind to get rice. 10 Rice - + 5 Water makes boiled rice, 10 rice + 5 milk makes rice pudding, 10 rice + - 5 universal enzyme (in beaker) makes Sake. - faux: - - imageadd: Mixed Wardrobe Closet now has colored shoes and plaid skirts. - - imageadd: Dress uniforms added to the Captain, RD, and HoP wardrobe closets. A - uniform jacket has also been added to the Captain's closet. HoS' hat has been - re-added to their closet. I do not love the CMO and CE enough to give them anything. - - imageadd: Atheletic closet now has five different swimsuits *for the ladies* in - them. If you are a guy, be prepared to be yelled at if you run around like a - moron in one of these. Same goes for ladies who run around in shorts with their - titties swaying in the space winds. - - imageadd: A set of dispatcher uniforms will spawn in the security closet. These - are for playtesting the dispatcher role. - - imageadd: New suit spawns in the laundry room. It's for geezer's only. You're - welcome, Book. - - imageadd: Nurse outfit variant, orderly uniform, and first responder jacket will - now spawn in the medical wardrobe closet. - - imageadd: 'A white wedding dress will spawn in the chaplain''s closet. There are - also several dresses currently only adminspawnable. Admins: Look either under - "bride" or "dress." The bride one leads to the colored wedding dresses, and - there are some other kinds of dresses under dress.' - - tweak: No more luchador masks or boxing gloves or boxing ring. You guys have a - swimming pool now, dip in and enjoy it. - - tweak: he meeting hall has been replaced with an awkwardly placed security office - meant for prisoner processing. - - tweak: Added a couple more welding goggles to engineering since you guys liked - those a lot. - - imageadd: Flasks spawn behind the bar. Only three. Don't fight over them. I don't - know how to add them to the bar vending machine otherwise I would have done - that instead. Detective, you have your own flask in your office, it's underneath - the cigarettes on your desk. - - tweak: Added two canes to the medical storage, for people who have leg injuries - and can't walk good and stuff. I do not want to see doctors pretending to be - House. These are for patients. Do not make me delete this addition and declare - you guys not being able to have nice things. - - tweak: Secondary entance to EVA now directly leads into the medbay hardsuit section. - Sorry for any inconviences this will cause. The CMO can now fetch the hardsuits - whenever they want. - - tweak: Secondary security hardsuit has been added to the armory. Security members - please stop stealing engineer's hardsuits when you guys want to pair up for - space travel. - - tweak: Firelocks have been moved around in the main hallways to form really ghetto - versions of airlocks. - - tweak: Violin spawns in theatre storage now. I didn't put the piano there though, - that was someone else. - - tweak: Psych office in medbay has been made better looking. -2013-05-14: - Cael_Aislinn: - - experiment: Depth scanners can now be used to determine what material archaeological - deposits are made of, meaning lab analysis is no longer required. - - tweak: Some useability issues with xenoarchaeology tools have been resolved, and - the transit pods cycle automatically now. -2013-05-15: - Spamcat: - - rscadd: Added telescopic batons - to HoS's and captain's lockers. These are quite robust and easily concealable. -2013-05-21: - SkyMarshal: - - experiment: ZAS will now speed air movement into/out of a zone when unsimulated - tiles (e.g. space) are involved, in relation to the number of tiles. - - experiment: Portable Canisters will now automatically connect to any portable - connecter beneath them on map load. - - bugfix: Bug involving mis-mapped disposal junction fixed - - bugfix: Air alarms now work for atmos techs (whoops!) - - bugfix: The Master Controller now properly stops atmos when it runtimes. - - bugfix: Backpacks can no longer be contaminated - - tweak: ZAS no longer logs air statistics. - - tweak: ZAS now rebuilds as soon as it detects a semi-complex change in geometry. (It - was doing this already, but in a convoluted way which was actually less efficient) - - tweak: General code cleanup/commenting of ZAS - - tweak: Jungle now initializes after the random Z-level loads and atmos initializes. -2013-05-25: - Erthilo: - - bugfix: Fixes alien races appearing an unknown when speaking their language. - - bugfix: Fixes alien races losing their language when cloned. - - bugfix: Fixes UI getting randomly reset when trying to change it in Genetics Scanners. -2013-05-26: - Chinsky: - - rscadd: Tentacles! Now clone damage will make you horribly malformed like examine - text says. - Meyar: - - rscadd: The syndicate shuttle now has a cycling airlock during Nuke rounds. - - rscadd: Restored the ability for the syndicate Agent ID to change the name on - the card (reforge it) more than once. - - rscadd: ERT Radio now functional again. - - rscadd: 'Research blast doors now actually lock down the entirety of station-side - Research. ' - - rscadd: 'Added lock down buttons to the wardens office. ' - - rscadd: 'The randomized barsign has made a return. ' - - rscadd: Syndicate Agent ID's external airlock access restored. - VitrescentTortoise: - - rscadd: Added a third option for not getting any job preferences. It allows you - to return to the lobby instead of joining. -2013-05-28: - Erthilo: - - bugfix: Fixes everyone being able to understand alien languages. HERE IS YOUR - TOWER OF BABEL - VitrescentTortoise: - - bugfix: Wizard's forcewall now works. -2013-05-30: - Segrain: - - bugfix: Meteor showers actually spawn meteors now. - - tweak: Engineering tape fits into toolbelt and can be placed on doors. - - rscadd: Pill bottles can hold paper. - Spamcat: - - tweak: Pill bottle capacity increased to 14 items. - - bugfix: Fixed Lamarr (it now spawns properly) - proliberate: - - rscadd: Station time is now displayed in the status tab for new players and AIs. -2013-05-31: - Segrain: - - bugfix: Portable canisters now properly connect to ports beneath them on map load. - - bugfix: Fixed unfastening gas meters. -2013-06-01: - Chinsky: - - rscadd: Bloody footprints! Now stepping in the puddle will dirty your shoes/feet - and make you leave bloody footprints for a bit. - - rscadd: Blood now dries up after some time. Puddles take ~30 minutes, small things - 5 minutes. - - bugfix: Untreated wounds now heal. No more toe stubs spamming you with pain messages - for the rest of the shift. - - experiment: On the other side, everything is healed slowly. Maximum you cna squeeze - out of first aid is 0.5 health per tick per organ. Lying down makes it faster - too, by 1.5x factor. - - rscadd: Lids! Click beaker/bottle in hand to put them on/off. Prevent spilling - - rscadd: Added 'hailer' to security lockers. If used in hand, says "Halt! Security!". - For those who can't run and type. -2013-06-05: - Chinsky: - - rscadd: Load bearing equipment - webbings and vests for engineers and sec. Attach - to jumpsuit, use 'Look in storage' verb (object tab) to open. - Segrain: - - rscadd: Exosuits now can open firelocks by walking into them. -2013-06-06: - Asanadas: - - rscadd: Added a whimsical suit to the head of personnel's secret clothing locker. - Meyar: - - bugfix: Disposal's mail routing fixed. Missing pipes replaced. - - bugfix: 'Chemistry is once again a part of the disposals delivery circuit. ' - - bugfix: Added missing sorting junctions to Security and HoS office. - - bugfix: Fixed a duplicate sorting junction. -2013-06-09: - Segrain: - - bugfix: Emagged supply console can order SpecOp crates again. -2013-06-11: - Meyar: - - bugfix: Fixes a security door with a firedoor ontop of it. - - bugfix: Fixed a typo relating to the admin Select Equipment Verb. (It's RESPONSE - team not RESCUE team) - - rscadd: ERT are now automated, from their spawn to their shuttle. Admin intervention - no longer required! (Getting to the mechs still requires admin permission generally) - - rscadd: Added flashlights to compensate for the weakened PDA lights - - tweak: 'ERT Uniforms updated to be in line with Centcom uniforms. No more turtlenecks, - no sir. ' -2013-06-12: - Zuhayr: - - rscadd: Added pneumatic cannon and harpoons. - - experiment: Added embedded projectiles. Bullets and thrown weapons may stick in - targets. Throwing them by hand won't make them stick, firing them from a cannon - might. Implant removal surgery will get rid of shrapnel and stuck items. -2013-06-13: - Kilakk: - - rscadd: Added the Xenobiologist job. Has access to the research hallway and to - xenobiology. - - rscdel: Removed Xenobiology access from Scientists. - - rscdel: Removed the Xenobiologist alternate title from Scientists. - - rscadd: Added "Xenoarchaeology" to the RD, Scientists, and to the ID computer. - - tweak: Changed the Research Outpost doors to use "Xenoarchaeology" access. -2013-06-18: - Segrain: - - bugfix: Fixed some bugs in windoor construction. - - tweak: Secure windoors are made with rods again. - - rscadd: Windoors drop their electronics when broken. Emagged windoors can have - theirs removed by crowbar. - - rscadd: Airlock electronics can be configured to make door open for any single - access on it instead of all of them. - - rscadd: Cyborgs can preview their icons before choosing. -2013-06-21: - Jupotter: - - bugfix: Fix the robotiscist preview in the char setupe screen -2013-06-22: - Cael_Aislinn: - - tweak: The xenoarchaeology depth scanner will now tell you what energy field is - required to safely extract a find. - - tweak: Excavation picks will now dig faster, and xenoarchaeology as a whole should - be easier to do. -2013-06-23: - Segrain: - - rscadd: Airlocks of various models can be constructed again. - faux: - - experiment: There has been a complete medbay renovation spearheaded by Vetinarix. - http://baystation12.net/forums/viewtopic.php?f=20&t;=7847 <-- Please - put any commentary good or bad, here. - - tweak: Some maintenance doors within RnD and Medbay have had their accesses changed. - Maintenance doors in the joint areas (leading to the research shuttle, virology, - and xenobiology) are now zero access. Which means anyone in those joints can - enter the maintenance tunnels. This was done to add additional evacuation locations - during radiation storms. Additional maintenance doors were added to the tunnels - in these areas to prevent docs and scientists from running about. - - tweak: Starboard emergency storage isn't gone now, it's simply located in the - escape wing. - - experiment: An engineering training room has been added to engineering. This location - was previously where surgery was located. If you are new to engineering or need - to brush up on your skills, please use this area for testing. -2013-06-26: - Segrain: - - bugfix: Autopsy scanner properly displays time of wound infliction and death. - - bugfix: Autopsy scanner properly displays wounds by projectile weapons. - Whitellama: - - bugfix: One-antag rounds (like wizard/ninja) no longer end automatically upon - death - - wip: Space ninja has been implemented as a voteable gamemode - - rscadd: Space ninja spawn landmarks have been implemented (but not yet placed - on the map), still spawn at carps-pawns instead. (The code will warn you about - this and ask you to report it, it's a known issue.) - - rscadd: Five new space ninja directives have been added, old directives have been - reworded to be less harsh - - wip: Space ninjas have been given their own list as antagonists, and are no longer - bundled up with traitors - - bugfix: Space ninjas with a "steal a functional AI" objective will now succeed - by downloading one into their suits - - tweak: Space ninja suits' exploding on death has been nerfed, so as not to cause - breaches - - rscadd: A few space ninja titles/names have been added and removed to be slightly - more believable - - bugfix: The antagonist selector no longer chooses jobbanned players when it runs - out of willing options -2013-06-27: - Segrain: - - bugfix: ID cards properly setup bloodtype, DNA and fingerprints again. -2013-06-28: - Segrain: - - rscadd: AIs are now able to examine what they see. -2013-07-03: - Segrain: - - rscadd: Security and medical cyborgs can use their HUDs to access records. -2013-07-05: - Spamcat: - - rscadd: Pulse! Humans now have hearbeat rate, which can be measured by right-clicking - someone - Check pulse or by health analyzer. Medical machinery also has heartbeat - monitors. Certain meds and conditions can influence it. -2013-07-06: - Chinsky: - - rscadd: Humans now can be infected with more than one virus at once. - - rscadd: All analyzed viruses are put into virus DB. You can view it and edit their - name and description on medical record consoles. - - tweak: 'Only known viruses (ones in DB) will be detected by the machinery and - HUDs. ' - - rscadd: Viruses cause fever, body temperature rising the more stage is. - - bugfix: Humans' body temperature does not drift towards room one unless there's - big difference in them. - - tweak: Virus incubators now can transmit viuses from dishes to blood sample. - - rscadd: New machine - centrifuge. It can isolate antibodies or viruses (spawning - virus dish) from a blood sample in vials. Accepts vials only. - - rscadd: Fancy vial boxes in virology, one of them is locked by ID with MD access. - - tweak: Engineered viruses are now ariborne too. -2013-07-11: - Chinsky: - - rscadd: Gun delays. All guns now have delays between shots. Most have less than - second, lasercannons and pulse rifles have around 2 seconds delay. Automatics - have zero, click-speed. -2013-07-26: - Kilakk: - - bugfix: Brig cell timers will no longer start counting down automatically. - - tweak: Separated the actual countdown timer from the timer controls. Pressing - "Set" while the timer is counting down will reset the countdown timer to the - time selected. -2013-07-28: - Segrain: - - rscadd: Camera console circuits can be adjusted for different networks. - - rscadd: Nuclear operatives and ERT members have built-in cameras in their helmets. - Activate helmet to initialize it. -2013-07-30: - Erthilo: - - bugfix: EFTPOS and ATM machines should now connect to databases. - - bugfix: Gravitational Catapults can now be removed from mechs. - - bugfix: Ghost manifest rune paper naming now works correctly. - - bugfix: Fix for newscaster special characters. Still not recommended. - Kilakk: - - rscadd: Added colored department radio channels. -2013-08-01: - Asanadas: - - tweak: The Null Rod has recovered its de-culting ability, for balance reasons. - Metagaming with it is a big no-no! - - rscadd: Holy Water as a liquid is able to de-cult. Less effective, but less bloody. - May be changed over the course of time for balance. - CIB: - - bugfix: Chilis and cold chilis no longer kill in small amounts - - bugfix: Chloral now again needs around 5 units to start killing somebody - Cael Aislinn: - - rscadd: Security bots will now target hostile mobs, and vice versa. - - tweak: Carp should actually emigrate now, instead of just immigrating then squatting - around the outer hull. - - tweak: Admins and moderators have been split up into separate 'who' verbs (adminwho - and modwho respectively). - CaelAislinn: - - rscadd: Re-added old ion storm laws, re-added grid check event. - - rscadd: Added Rogue Drone and Vermin Infestation random events. - - rscadd: Added/fixed space vines random event. - - tweak: Updates to the virus events. - - tweak: Spider infestation and alien infestation events turned off by default. - - tweak: Soghun, taj and skrell all have unique language text colours. - - tweak: Moderators will no longer be listed in adminwho, instead use modwho. - Cael_Aislinn: - - tgs: Updated server to tgstation r5200 (November 26th, 2012), see https://code.google.com/p/tgstation13/source/list - for tg's changelog. - Chinsky: - - rscadd: 'Old new medical features:' - - rscadd: Autoinjectors! They come preloaded with 5u of inapro, can be used instantly, - and are one-use. You can replace chems inside using a syringe. Box of them is - added to Medicine closet and medical supplies crate. - - rscadd: Splints! Target broken liimb and click on person to apply. Can be taken - off in inventory menu, like handcuffs. Splinted limbs have less negative effects. - - rscadd: Advanced medikit! Red and mean, all doctors spawn with one. Contains better - stuff - advanced versions of bandaids and aloe heal 12 damage on the first use. - - tweak: Wounds with damage above 50 won't heal by themselves even if bandaged/salved. - Would have to seek advanced medical attention for those. - Erthilo: - - bugfix: Fixed SSD (logged-out) players not staying asleep. - - bugfix: Fixed set-pose verb and mice emotes having extra periods. - - bugfix: Fixed virus crate not appearing and breaking supply shuttle. - - bugfix: Fixed newcaster photos not being censored. - Gamerofthegame: - - rscadd: Miscellaneous mapfixes. - GauHelldragon: - - rscadd: Servicebots now have RoboTray and Printing Pen. Robotray can be used to - pick up and drop food/drinks. Printing pen can alternate between writing mode - and rename paper mode by clicking it. - - rscadd: Farmbots. A new type of robot that weeds, waters and fertilizes. Use robot - arm on water tank. Then use plant analyzer, mini-hoe, bucket and finally proximity - sensor. - - rscadd: Chefs can clang their serving trays with a rolling pin. Just like a riot - shield! - Jediluke69: - - rscadd: Added 5 new drinks (Kira Special, Lemonade, Brown Star, Milkshakes, Rewriter) - - tweak: Nanopaste now heals about half of what it used to - - tweak: Ballistic crates should now come with shotguns loaded with actual shells - no more beanbags - - bugfix: Iced tea no longer makes a glass of .what? - Jupotter: - - bugfix: Fix the robotiscist preview in the char setupe screen - Kilakk: - - rscadd: Added the Xenobiologist job. Has access to the research hallway and to - xenobiology. - - rscdel: Removed Xenobiology access from Scientists. - - rscdel: Removed the Xenobiologist alternate title from Scientists. - - rscadd: Added "Xenoarchaeology" to the RD, Scientists, and to the ID computer. - - tweak: Changed the Research Outpost doors to use "Xenoarchaeology" access. - Meyar: - - rscadd: The syndicate shuttle now has a cycling airlock during Nuke rounds. - - rscadd: Restored the ability for the syndicate Agent ID to change the name on - the card (reforge it) more than once. - - rscadd: ERT Radio now functional again. - - rscadd: 'Research blast doors now actually lock down the entirety of station-side - Research. ' - - rscadd: 'Added lock down buttons to the wardens office. ' - - rscadd: 'The randomized barsign has made a return. ' - - rscadd: Syndicate Agent ID's external airlock access restored. - NerdyBoy1104: - - rscadd: 'New Botany additions: Rice and Plastellium. New sheet material: Plastic.' - - rscadd: Plastellium is refined into plastic by first grinding the produce to get - plasticide. 20 plasticide + 10 polytrinic acid makes 10 sheets of plastic which - can be used to make crates, forks, spoons, knives, ashtrays or plastic bags - from. - - rscadd: Rice seeds grows into rice stalks that you grind to get rice. 10 Rice - + 5 Water makes boiled rice, 10 rice + 5 milk makes rice pudding, 10 rice + - 5 universal enzyme (in beaker) makes Sake. - RavingManiac: - - rscadd: You can now stab people with syringes using the "harm" intent. This destroys - the syringe and transfers a random percentage of its contents into the target. - Armor has a 50% chance of blocking the syringe. - Segrain: - - bugfix: Meteor showers actually spawn meteors now. - - tweak: Engineering tape fits into toolbelt and can be placed on doors. - - rscadd: Pill bottles can hold paper. - SkyMarshal: - - bugfix: Fixed ZAS - - bugfix: Fixed Fire - Spamcat: - - rscadd: Figured I should make one of these. Syringestabbing now produces a broken - syringe complete with fingerprints of attacker and blood of a victim, so dispose - your evidence carefully. Maximum transfer amount per stab is lowered to 10. - VitrescentTortoise: - - rscadd: Added a third option for not getting any job preferences. It allows you - to return to the lobby instead of joining. - Whitellama: - - bugfix: One-antag rounds (like wizard/ninja) no longer end automatically upon - death - - wip: Space ninja has been implemented as a voteable gamemode - - rscadd: Space ninja spawn landmarks have been implemented (but not yet placed - on the map), still spawn at carps-pawns instead. (The code will warn you about - this and ask you to report it, it's a known issue.) - - rscadd: Five new space ninja directives have been added, old directives have been - reworded to be less harsh - - wip: Space ninjas have been given their own list as antagonists, and are no longer - bundled up with traitors - - bugfix: Space ninjas with a "steal a functional AI" objective will now succeed - by downloading one into their suits - - tweak: Space ninja suits' exploding on death has been nerfed, so as not to cause - breaches - - rscadd: A few space ninja titles/names have been added and removed to be slightly - more believable - - bugfix: The antagonist selector no longer chooses jobbanned players when it runs - out of willing options - Zuhayr: - - rscadd: Added pneumatic cannon and harpoons. - - experiment: Added embedded projectiles. Bullets and thrown weapons may stick in - targets. Throwing them by hand won't make them stick, firing them from a cannon - might. Implant removal surgery will get rid of shrapnel and stuck items. - faux: - - imageadd: Mixed Wardrobe Closet now has colored shoes and plaid skirts. - - imageadd: Dress uniforms added to the Captain, RD, and HoP wardrobe closets. A - uniform jacket has also been added to the Captain's closet. HoS' hat has been - re-added to their closet. I do not love the CMO and CE enough to give them anything. - - imageadd: Atheletic closet now has five different swimsuits *for the ladies* in - them. If you are a guy, be prepared to be yelled at if you run around like a - moron in one of these. Same goes for ladies who run around in shorts with their - titties swaying in the space winds. - - imageadd: A set of dispatcher uniforms will spawn in the security closet. These - are for playtesting the dispatcher role. - - imageadd: New suit spawns in the laundry room. It's for geezer's only. You're - welcome, Book. - - imageadd: Nurse outfit variant, orderly uniform, and first responder jacket will - now spawn in the medical wardrobe closet. - - imageadd: 'A white wedding dress will spawn in the chaplain''s closet. There are - also several dresses currently only adminspawnable. Admins: Look either under - "bride" or "dress." The bride one leads to the colored wedding dresses, and - there are some other kinds of dresses under dress.' - - tweak: No more luchador masks or boxing gloves or boxing ring. You guys have a - swimming pool now, dip in and enjoy it. - - tweak: he meeting hall has been replaced with an awkwardly placed security office - meant for prisoner processing. - - tweak: Added a couple more welding goggles to engineering since you guys liked - those a lot. - - imageadd: Flasks spawn behind the bar. Only three. Don't fight over them. I don't - know how to add them to the bar vending machine otherwise I would have done - that instead. Detective, you have your own flask in your office, it's underneath - the cigarettes on your desk. - - tweak: Added two canes to the medical storage, for people who have leg injuries - and can't walk good and stuff. I do not want to see doctors pretending to be - House. These are for patients. Do not make me delete this addition and declare - you guys not being able to have nice things. - - tweak: Secondary entance to EVA now directly leads into the medbay hardsuit section. - Sorry for any inconviences this will cause. The CMO can now fetch the hardsuits - whenever they want. - - tweak: Secondary security hardsuit has been added to the armory. Security members - please stop stealing engineer's hardsuits when you guys want to pair up for - space travel. - - tweak: Firelocks have been moved around in the main hallways to form really ghetto - versions of airlocks. - - tweak: Violin spawns in theatre storage now. I didn't put the piano there though, - that was someone else. - - tweak: Psych office in medbay has been made better looking. - proliberate: - - rscadd: Station time is now displayed in the status tab for new players and AIs. -2013-08-04: - Chinsky: - - rscadd: Health HUD indicator replaced with Pain indicator. Now health indicator - shows pain level instead of actual vitals level. Some types of damage contribute - more to pain, some less, usually feeling worse than they really are. -2013-08-08: - Erthilo: - - bugfix: Raise Dead rune now properly heals and revives dead corpse. - - bugfix: Admin-only rejuvenate verb now heals all organs, limbs, and diseases. - - bugfix: Cyborg sprites now correctly reset with reset boards. This means cyborg - appearances can now be changed without admin intervention. -2013-09-18: - Kilakk: - - rscadd: Fax machines! The Captain and IA agents can use the fax machine to send - properly formatted messages to Central Command. - - imageadd: Gave the fax machine a fancy animated sprite. Thanks Cajoes! -2013-09-24: - Snapshot: - - rscdel: Removed hidden vote counts. - - rscdel: Removed hiding of vote results. - - rscdel: Removed OOC muting during votes. - - rscadd: Crew transfers are no longer callable during Red and Delta alert. - - wip: Started work on Auto transfer framework. -2013-10-06: - Chinsky: - - rscadd: Return of dreaded side effects. They now manifest well after their cause - disappears, so curing them should be possible without them reappearing immediately. - They also lost last stage damaging effects. -2013-10-29: - Cael_Aislinn: - - rscadd: Xenoarchaeology's chemical analysis and six analysis machines are gone, - replaced by a single one which can be beaten in a minigame. - - rscadd: Sneaky traitors will find new challenges to overcome at the research outpost, - but may also find new opportunities (transit tubes can now be traversed). - - rscadd: Finding active alien machinery should now be made significantly easier - with the Alden-Saraspova counter. -2013-11-01: - Various: - - rscadd: Autovoting, Get off the station when your 15 hour workweek is done, thanks - unions! - - rscadd: Some beach props that Chinsky finds useless. - - wip: Updated NanoUI - - rscadd: Dialysis while in sleepers - removes reagents from mobs, like the chemist, - toss him in there! - - tweak: Pipe Dispensers can now be ordered by Cargo - - rscadd: Fancy G-G-G-G-Ghosts! -2013-11-23: - Ccomp5950: - - bugfix: Players are now no longer able to commit suicide with a lasertag gun, - and will feel silly for doing so. - - bugfix: Ghosts hit with the cult book shall now actually become visible. - - bugfix: The powercells spawned with Exosuits will now properly be named to not - confuse bearded roboticists. - - bugfix: Blindfolded players will now no longer require eye surgery to repair their - sight, removing the blindfold will be sufficient. - - rscadd: Atmospheric Technicians will now have access to Exterior airlocks. -2013-11-24: - Yinadele: - - experiment: Supermatter engine added! Please treat your new engine gently, and - report any strangeness! - - tweak: Rebalanced events so people don't explode into appendicitis or have their - organs constantly explode. - - rscadd: Vending machines have had bottled water, iced tea, and grape soda added. - - rscadd: Head reattachment surgery added! Sew heads back on proper rather than - monkey madness. - - rscadd: Pain crit rebalanced - Added aim variance depending on pain levels, nerfed - blackscreen severely. - - rscadd: 'Cyborg alt titles: Robot, and Android added! These will make you spawn - as a posibrained robot. Please enjoy!' - - bugfix: Fixed the sprite on the modified welding goggles, added a pair to the - CE's office where they'll be used. - - bugfix: Fixed atmos computers- They are once again responsive! - - tweak: Added in functionality proper for explosive implants- You can now set their - level of detonation, and their effects are more responsively concrete depending - on setting. - - rscadd: Hemostats re-added to autolathe! - - rscadd: Added two manuals on atmosia and EVA, by MagmaRam! Found in engineering - and the engineering bookcase. - - bugfix: Fixed areas in medbay to have fully functional APC sectors. - - rscadd: Girders are now lasable. - - experiment: Please wait warmly, new features planned for next merge! -2013-12-01: - 'Various Developers banged their keyboards together:': - - rscadd: New Engine, the supermatter, figure out what a cooling loop is, or don't - and blow up engineering! - - rscadd: Each department will have it's own fax, make a copy of your butt and fax - it to the admins! - - rscadd: Booze and soda dispensers, they are like chemmasters, only with booze - and soda! - - rscadd: Bluespace and Cryostasis beakers, how do they work? Fuggin bluespace - how do they work? - - rscadd: You can now shove things into vending machines, impress your friends on - how things magically disappear out of your hands into the machine! - - rscadd: Robots and Androids (And gynoids too!) can now use custom job titles - - bugfix: Various bugfixes -2013-12-18: - RavingManiac: - - rscadd: Mousetraps can now be "hidden" through the right-click menu. This makes - them go under tables, clutter and the like. The filthy rodents will never see - it coming! - - tweak: Monkeys will no longer move randomly while being pulled. -2014-01-01: - Various: - - rscadd: AntagHUD and MedicalHUD for ghosts, see who the baddies are, check for - new configuration options. - - rscadd: Ghosts will now have bold text if they are in the same room as the person - making conversations easier to follow. - - rscadd: New hairstyles! Now you can use something other then hotpink floor length - braid. - - wip: DNA rework, tell us how you were cloned and became albino! - - rscadd: Dirty floors, so now you know exactly how lazy the janitors are! - - rscadd: A new UI system, feel free to color it yourself, don't set it to completely - clear or you will have a bad time. - - rscadd: Cryogenic storage, for all your SSD needs. - - rscadd: New hardsuits for those syndicate tajaran -2014-02-01: - Various: - - rscadd: NanoUI for PDA - - rscadd: Write in blood while a ghost in cult rounds with enough cultists - - rscadd: Cookies, absurd sandwiches, and even cookable dioanae nymphs! - - rscadd: A bunch of new guns and other weapons - - rscadd: Species specific blood -2014-02-19: - Aryn: - - experiment: New air model. Nothing should change to a great degree, but temperature - flow might be affected due to closed connections not sticking around. -2014-03-01: - Various: - - rscadd: Paint Mixing, red and blue makes purple! - - rscadd: New posters to tell you to respect those darned cat people - - rscadd: NanoUI for APC's, Canisters, Tank Transfer Valves and the heaters / coolers - - tweak: PDA bombs are now less annoying, and won't always blow up / cause internal - bleeding - - tweak: Blob made less deadly - - rscadd: Objectiveless Antags now a configuration option, choose your own adventure! - - wip: Engineering redesign, now with better monitoring of the explodium supermatter! - - rscadd: Security EOD - - rscadd: New playable race, IPC's, go beep boop boop all over the station! - - rscadd: Gamemode autovoting, now players don't have to call for gamemode votes, - it's automatic! -2014-03-05: - RavingManiac: - - rscadd: Smartfridges added to the bar, chemistry and virology. No more clutter! - - rscadd: A certain musical instrument has returned to the bar. - - rscadd: There is now a ten second delay between ingesting a pill/donut/milkshake - and regretting it. -2014-03-10: - Chinsky: - - rscadd: Viruses now affect certain range of species, different for each virus - - tweak: Spaceacilline now prevents infection, and has a small chance to cure viruses - at Stage 1. It does not give them antibodies though, so they can get sick again! - - tweak: Biosuits and spacesuits now offer more protection against viruses. Full - biosuit competely prevents airborne infection, when coupled with gloves they - both protect quite well from contact ones - - rscadd: Sneezing now spreads viruses in front of mob. Sometimes he gets a warning - beforehand though -2014-03-30: - RavingManiac: - - rscadd: Inflatable walls and doors added. Useful for sealing off hull breaches, - but easily punctured by sharp objects and Tajarans. -2014-04-06: - RavingManiac: - - tweak: Tape recorders and station-bounced radios now work inside containers and - closets. -2014-04-11: - Jarcolr: - - rscadd: You can now flip coins like a D2 - - tweak: Miscellaneous cargo crates got a tiny buff, Standard Costume crate is now - Costume Crate - - tweak: Grammar patch,telekinesis/amputated arm exploit fixes,more in the future - - tweak: Grille kicking now does less damage - - tweak: TELESCOPIC baton no longer knocks anybody down,still got a lot of force - though - - tweak: Other small-ish changes and fixes that aren't worth mentioning -2014-04-25: - Various: - - rscadd: Overhauled saycode, you can now use languages over the radio. - - rscadd: Chamelon items beyond just the suit. - - rscadd: NanoUI Virology - - rscadd: 3D Sounds - - rscadd: AI Channel color for when they want to be all sneaky - - rscadd: New inflatable walls and airlocks for your breach sealing pleasure. - - rscadd: Carbon Copy papers, so you can subject everyone to your authority and - paperwork, but mainly paperwork - - rscadd: Undershirts and rolling down jumpsuits - - rscadd: Insta-hit tasers, can be shot through glass as well. - - rscadd: Changeling balances, an emphasis put more on stealth. - - rscdel: Genetics disabled - - rscdel: Telescience removed, might be added again when we come up with a less - math headache enducing version of it. - - bugfix: Bugfixes galore! -2014-04-29: - HarpyEagle: - - rscadd: Webbing vest storage can now be accessed by clicking on the item in inventory - - rscadd: Holsters can be accessed by clicking on them in inventory - - rscadd: Webbings and other suit attachments are now visible on the icon in inventory - - tweak: Removing jumpsuits now requires drag and drop to prevent accidental undressing - - rscadd: Added an action icon for magboots that can be used to toggle them similar - to flashlights - - rscadd: Fuel tanks now spill fuel when wrenched open -2014-05-03: - Cael_Aislinn: - - rscadd: "Coming out of nowhere the past few months, the Garland Corporation has\ - \ made headlines with a new prehistoric theme park delighting travellers with\ - \ species thought extinct. Now available for research stations everywhere is\ - \ the technology that made it all possible! Features include:
    \n\t\t\t-\ - \ 13 discoverable prehistoric species to clone from fossils (including 5 brand\ - \ new ones).
    \n\t\t\t- 11 discoverable prehistoric plants to clone from fossils\ - \ (including 9 brand new ones).
    \n\t\t\t- New minigame that involves correctly\ - \ ordering the genomes inside each genetic sequence to unlock an animal/plant.
    \n\ - \t\t\t- Some prehistoric animals and plants may seem strangely familiar... while\ - \ others may bring more than the erstwhile scientist bargains for.
    \n




    " -2014-05-06: - Hubble: - - rscadd: Clip papers together by hitting a paper with a paper or photo - - imageadd: Adds icons for copied stamps -2014-05-16: - HarpyEagle: - - rscadd: Silicon mob types (AI, cyborgs, PAI) can now speak certain species languages - depending on type and module - - rscadd: Languages can now be whispered when using the language code with either - the whisper verb or the whisper speech code -2014-05-23: - Hubble: - - rscadd: Personal lockers are now resettable - - rscadd: Take off people's accessories or change their sensors in the drag and - drop-interface - - rscadd: Merge paper bundles by hitting one with another - - tweak: Line breaks in Security, Medical and Employment Records - - tweak: Record printouts will have names on it - - tweak: Set other people's internals in belt and suit storage slots - - bugfix: No longer changing suit sensors while cuffed - - bugfix: No longer emptying other people's pockets when they are not full yet -2014-05-28: - Chinsky: - - rscadd: Adds few new paperBBcode tags, to make up for HTML removal. - - rscadd: '[logo] tag draws NT logo image (one from wiki).' - - rscadd: '[table] [/table] tags mark borders of tables. [grid] [/grid] are borderless - tables, useful of making layouts. Inside tables following tags are used: [row] - marks beginning of new table row, [cell] - beginning of new table cell.' -2014-05-31: - Jarcolr: - - rscadd: 21 New cargo crates, go check them out! - - rscadd: Peanuts have now been added, food items are now being developed. - - rscadd: 2 new cargo groups, Miscellaneous and Supply. - - rscadd: Sugarcane seeds can now be gotten from the seed dispenser. - - rscadd: 5 new satchels when selecting "satchel" for RD, scientist, botanist, virologist, - geneticist (disabled) and chemist. - - rscadd: Clicking on a player with a paper/book when you have the eyes selected - shows them the book/paper forcefully. -2014-06-03: - Hubblenaut: - - rscadd: Added wheelchairs - - tweak: Replaced stool in Medical Examination with wheelchair - - tweak: Using a fire-extinguisher to propel you on a chair can have consequences - (drive into walls and people, do it!) -2014-06-13: - HarpyEagle: - - rscadd: Added docking ports for shuttles - - rscadd: Shuttle airlocks will automatically open and close, preventing people - from being sucked into space by because someone on another z-level called a - shuttle - - rscadd: Some docking ports can also double as airlocks - - rscadd: Docking ports can be overriden to prevent any automatic action. Shuttles - will wait for players to open/close doors manually - - rscadd: Shuttles can be forced launched, which will make them not wait for airlocks - to be properly closed -2014-06-15: - HarpyEagle: - - bugfix: Fixed wound autohealing regardless of damage amount. The appropriate wound - will now be assigned correctly based on damage amount and type - - bugfix: Fixed several other bugs related wounds that resulted in damage magically - disappearing - - bugfix: Fixed various sharp objects not being counted as sharp, bullets in particular - - bugfix: Fixed armour providing more protection from bullets than it was supposed - to -2014-06-19: - Chinsky: - - rscadd: Adds guest terminals on the map. These wall terminals let anyone issue - temporary IDs. Only access that issuer has can be granted, and maximum time - pass can be issued for is 20 minutes. All operations are logged in terminals. -2014-06-20: - Cael_Aislinn: - - rscadd: 'New discoverable items added to xenoarchaeology, and new features for - some existing ones. Artifact harvesters can now harvest the secondary effect - of artifacts as well as the primary one.
    - -
    ' - - tweak: 'Artifact utilisers should be much nicer/easier to use now.
    - -
  • Alden-Saraspova counters and talking items should work properly - now.
    - -
  • - -
    ' -2014-07-01: - Various: - - experiment: Hardsuit breaching. - - experiment: Rewritten fire. - - experiment: Supermatter now glows and sucks things into it as it approaches criticality. - - rscadd: Station Vox (Vox pariahs) are now available. - - rscadd: Wheelchairs. - - rscadd: Cargo Trains. - - rscadd: Hardsuit cycler machinery. - - rscadd: Rewritten lighting (coloured lights!) - - rscadd: New Mining machinery and rewritten smelting. - - rscadd: Rewritten autolathe - - rscadd: Mutiny mode. - - rscadd: NanoUI airlock and docking controllers. - - rscadd: Completely rewritten shuttle code. - - rscadd: 'Derelict Z-level replacement: construction site.' - - rscadd: Computer3 laptops. - - rscadd: Constructable SMES units. - - rscadd: Omni-directional atmos machinery. - - rscadd: Climbable tables and crates. - - rscadd: Xenoflora added to Science. - - rscadd: Utensils can be used to eat food. - - rscadd: Decks of cards are now around the station. - - rscadd: Service robots can speak languages. - - wip: Xenoarch updates and fixes. - - tweak: Rewritten species-specific gear icon handling. - - tweak: Cats and borers can be picked up. - - tweak: Botanist renamed to Gardener. - - tweak: Hydroponics merged with the Kitchen. - - tweak: Latejoin spawn points (Arrivals, Cryostorage, Gateway). - - rscadd: Escape pods only launch automatically during emergency evacuations - - rscadd: Escape pods can be made to launch during regular crew transfers using - the control panel inside the pod, or by emagging the panel outside the pod - - rscadd: When swiped or emagged, the crew transfer shuttle can be delayed in addition - to being launched early -2014-07-06: - HarpyEagle: - - rscadd: Re-enabled and rewrote the wound infection system - - rscadd: Infections can be prevented by properly bandaging and salving wounds - - rscadd: Infections are cured by spaceacillin -2014-07-20: - PsiOmegaDelta: - - rscadd: AI can now store up to five camera locations and return to them when desired. - - rscadd: AI can now alt+left click turfs in camera view to list and interact with - the objects. - - rscadd: AI can now ctrl+click turret controls to enable/disable turrets. - - rscadd: AI can now alt+click turret controls to toggle stun/lethal mode. - - rscadd: AI can now select which channel to state laws on. -2014-07-26: - Whitellama: - - rscadd: Added dynamic flavour text. - - bugfix: Fixed bug with suit fibers and fingerprints. -2014-07-31: - HarpyEagle: - - tweak: Stun batons now work like tasers and deal agony instead of stun - - rscadd: Being hit in the hands with a stun weapon will cause whatever is being - held to be dropped - - tweak: Handcuffs now require an aggressive grab to be used -2014-08-02: - Whitellama: - - bugfix: Arcane tomes can now be stored on bookshelves. - - bugfix: Dionaea players no longer crash on death, and now become nymphs properly. -2014-08-05: - HarpyEagle: - - tweak: Atmos Rewrite. Many atmos devices now use power according to their load - and gas physics - - rscadd: Pressure regulator device. Replaces the passive gate and can regulate - input or output pressure - - rscadd: Gas heaters and gas coolers are now constructable and can be upgraded - with parts from research - - bugfix: Fixes recharger and cell charger power draw. Rechargers draw 15 kW, wall - chargers draw 25 kW, and heavy-duty cell chargers draw 40 kW. Cyborg charging - stations draw 75 kW. - - bugfix: Laptops, and various other machines, now draw more reasonable amounts - of power - - bugfix: Machines will periodically update their powered status if moved from a - powered to an unpowered area and vice versa -2014-08-27: - Whitellama: - - bugfix: Made destination taggers more intuitive so you know when you've tagged - something - - rscadd: Ported package label and tag sprites - - rscadd: Ported using a pen on a package to give it a title, or to write a note - - rscadd: Donut boxes and egg boxes can be constructed out of cardboard -2014-08-31: - Whitellama: - - bugfix: Matches and candles can be used to burn papers, too. - - bugfix: Observers have a bit more time (20 seconds, instead of 7.5) before the - Diona join prompt disappears. -2014-09-05: - RavingManiac: - - experiment: 'NewPipe implemented: Supply and scrubber pipes can be run in parallel - without connecting to each other.' - - rscadd: Supply pipes will only connect to supply pipes, vents and Universal Pipe - Adapters(UPAs). - - rscadd: Scrubber pipes will only connect to scrubber pipes, scrubbers and UPAs. - - rscadd: UPAs will connect to regular, scrubber and supply pipes. -2014-09-20: - HarpyEagle: - - bugfix: Fixes evidence bags and boxes eating each other. Evidence bags now store - items by dragging the bag onto the item to be stored. -2014-09-28: - Gamerofthegame: - - rscadd: Hoverpods fully supported, currently orderable from cargo. Two slots, - three cargo, space flight and a working mech for all other intents and purposes. - - rscadd: Added the Rigged laser and Passenger Compartment equipment. The rigged - laser is a weapon for working exosuits - just a ordinary laser, but with triple - the cool down and rather power inefficient. The passenger compartment allows - other people to board and hitch a ride on the mech - such as in fire rescue - or for space flight. - Zuhayr: - - rscadd: Organs can now be removed and transplanted. - - tweak: Brain surgery is now the same as chest surgery regarding the steps leading - up to it. - - tweak: Appendix and kidney now share the groin and removing the first will prevent - appendicitis. - - tweak: Lots of backend surgery/organ stuff, see the PR if you need to know. -2014-10-01: - RavingManiac: - - rscadd: Zooming with the sniper rifle now adds a view offset in the direction - you are facing. - - rscadd: Added binoculars - functionally similar to sniper scope. Adminspawn-only - for now. - - rscadd: Bottles from chemistry now, like beakers, use chemical overlays instead - of fixed sprites. - - rscadd: Being in space while not magbooted to something will cause your sprite - to bob up and down. - Zuhayr: - - rscadd: Added species organ checks to several areas (phoron burn, welder burn, - appendicitis, vox cortical stacks, flashes). - - rscadd: Added VV option to add or remove organs. - - rscadd: Added simple bioprinter (adminspawn). - - rscadd: Added smashing/slashing behavior from xenos to some unarmed attacks. - - rscadd: Added some new state icons for diona nymphs. - - rscadd: Added borer husk functionality (cortical borers can turn dead humans into - zombies). - - rscadd: Added tackle verb. - - rscadd: Added NO_SLIP. - - rscadd: Added species-specific orans to Dionaea, new Xenomorphs and vox. - - rscadd: Added colour and species to blood data. - - rscadd: Added lethal consequences to missing your heart. - - rscdel: Removed robot_talk_understand and alien_talk_understand. - - rscdel: Removed attack_alien() and several flavours of is_alien() procs. - - rscdel: Removed /mob/living/carbon/alien/humanoid. - - rscdel: Removed alien_hud(). - - rscdel: Removed IS_SLOW, NEEDS_LIGHT and RAD_ABSORB. - - rscdel: Renamed is_larva() to is_alien(). - - tweak: Refactored a ton of files, either condensing or expanding them, or moving - them to new directories. - - tweak: Refactored some attack vars from simple_animal to mob/living level. - - tweak: Refactored internal organs to /mob/living/carbon level. - - tweak: Refactored rad and light absorbtion to organ level. - - tweak: Refactored brains to /obj/item/organ/brain. - - tweak: Refactored a lot of blood splattering to use blood_splatter() proc. - - tweak: Refactored broadcast languages (changeling and alien hiveminds, drone and - binary chat) to actual languages. - - tweak: Refactored xenomorph abilities to work for humans. - - tweak: Refactored xenomorphs into human species. - - tweak: Rewrote larva_hud() and human_hud(). The latter now takes data from the - species datum. - - tweak: Rewrote diona nymphs as descendents of /mob/living/carbon/alien. - - tweak: Rewrote xenolarva as descendents of /mob/living/carbon/alien. - - tweak: Rewrote /mob/living/carbon/alien. - - tweak: Moved alcohol and toxin processing to the liver. - - tweak: Moved drone light proc to robot level, added integrated_light_power and - local_transmit vars to robots. - - tweak: Moved human brainloss onto the brain organ. - - tweak: Shuffled around and collapsed several redundant procs down to carbon level - (hide, ventcrawl, Bump). - - tweak: Fixed species swaps from NO_BLOOD to those with blood killing the subject - instantly. -2014-11-01: - PsiOmegaDelta: - - bugfix: Adds the last missing step to deconstruct fire alarms. Apply wirecutters. - - rscadd: There's a "new" mining outpost nearby the Research outpost. - - rscadd: Manifest ghosts now have spookier names. - - rscadd: Adds a gas monitor computer for the toxin mixing chamber. - - rscadd: AI can now change the display of individual AI status screens. - - rscadd: More ion laws.. - - rscadd: All turrets have been replaced with portable variants. Potential targets - can be configured on a per turret basis. - - bugfix: Improved crew monitor map positioning. - - rscadd: Can now order plastic, body-, and statis bags from cargo - - rscadd: PDAs now receive newscasts. - - rscadd: (De)constructable emergency shutters. - - rscadd: Borgs can now select to simply state their laws or select a radio channel, - same as the AI. -2014-11-04: - TwistedAkai: - - rscadd: Almost any window which has been fully unsecured can now be dismantled - with a wrench. -2014-11-08: - PsiOmegaDelta: - - rscadd: Service personnel now have their own frequency to communicate over. Use - "say :v". - - rscadd: The AI can now has proper quick access to its private channel. Use "say - :o". - - rscadd: Newscasters supports photo captions. Simply pen one on the attached photo. - - rscadd: Once made visible by a cultist ghosts can toggle visiblity at will. - - rscadd: Detonating cyborgs using the cyborg monitor console now notifies the master - AI, if any. - - rscadd: More machinery, such as APCs, air alarms, etc., now support attaching - signalers to the wires. - - tweak: Random event overhaul. Admins may wish check the verb "Event Manager Panel". -2014-11-22: - Zuhayr: - - rscadd: Added the /obj/item/weapon/rig class - back-mounted deployable hardsuits. - - rscadd: Replaced existing hardsuits with 'voidsuits', functionally identical. - - rscdel: Removed the mounted device and helmet/boot procs from voidsuits. - - tweak: Refactored a shit-ton of ninja code into the new rig class. - - wip: This is more than likely going to take a lot of balancing to get into a good - place. -2015-01-09: - Zuhayr: - - tweak: Voice changers no longer use ID cards. They have Toggle and Set Voice verbs - on the actual mask object now. - - rscadd: Readded moonwalking. Alt-dir to face new dir, or Face-Direction verb to - face current dir. -2015-02-04: - RavingManiac: - - rscadd: Holodeck is now bigger and better, with toggleable gravity and a new courtroom - setting - TwistedAkai: - - bugfix: Purple Combs should now be visible and have their proper icon -2015-02-12: - Daranz: - - rscadd: Vending machines now use NanoUI and accept cash. The vendor account can - now be suspended to disable all sales in all machines on station. -2015-02-16: - RavingManiac: - - rscadd: Say hello to the new Thermoelectric Supermatter Engine. Read the operating - manual to get started. -2015-02-18: - PsiOmegaDelta: - - rscadd: Synths now have timestamped radio and chat messages. - - rscadd: New and updated uplink items. - - rscadd: Multiple AIs can now share the same holopad. - - rscadd: The AI now has built-in consoles, accessible from the subsystem tab. -2015-02-24: - Zuhayr: - - experiment: Major changes to the kitchen and hydroponics mechanics. Review the - detailed changelog here, -2015-04-07: - RavingManiac: - - tweak: You can now pay vending machines and EFTPOS scanners without removing your - ID from your PDA or wallet. Clicking on the vending machine with your ID/PDA/wallet/cash - also brings up the menu now instead of attacking the vending machine. -2015-04-18: - PsiOmegaDelta: - - rscadd: Added a changelog editing system that should cause fewer conflicts and - more accurate timestamps. -2015-04-23: - Dennok: - - rscadd: Added an automatic pipelayer. - - rscadd: Added an automatic cablelayer. - PsiOmegaDelta: - - bugfix: Shower curtains no longer lose their default color upon being washed. - - bugfix: Emergency shutters can again be examined, and from the proper distance. - - bugfix: The virus event will now only infect mobs on the station, currently controlled - by player that has been active in the last 5 minutes. - - bugfix: Laptops now use the proper proc for checking camera status. - - rscadd: Makes it possible to eject PDA cartridges using a verb. - - rscadd: Makes it possible to shake tables with one's bare hands to stop climbers. - - bugfix: Added a mass driver door in disposals to prevent trash from floating out - into space before proper ejection. - - rscadd: Rig/Hardsuit module tab - Less informative than the NanoUI hardsuit interface - but allows quicker access to the various rig modules. - - rscadd: Silicons with the medical augmentation sensors enabled now also see alive/dead - status if sensors are set accordingly. - - rscadd: Emergency shutters opened by silicons are now treated as having been forced - open by a crowbar. - - rscadd: An active AI chassis can now be pushed, just as an empty chassis can be. - - rscadd: The AI can now use the crew monitor console to track crew members with - full sensors enabled. - - rscadd: The AI now has a shortcut to track people holding up messages to cameras. - - rscadd: The AI now has a shortcut to track people sending PDA messages. - - rscadd: Multiple AIs can now share the same holopad. - - rscadd: Admin ghosts can now transfer other ghosts into mobs by drag-clicking. - - rscadd: Ghosts can now toggle seeing darkness and other ghosts separately. - - rscadd: Moving while dead now auto-ghosts you. - - rscadd: 'Two new random events: Space dust and gravitation failure.' - - rscadd: Upgraded wizard spell interface and new spells. - - rscadd: More uplink items. - - rscadd: Uplink items now have rudimentary descriptions. - Yoshax: - - tweak: Adjusts fruits and other stuff to have a minmum of 10 units of juice and - stuff. -2015-04-24: - Dennok: - - bugfix: Fixes overmap ship speed calculations. - - rscadd: Adds overmap ship rotation. - - rscadd: Added a floorlayer. -2015-04-28: - Jarcolr: - - rscadd: Added 9 new bar sign designs/sprites. - Kelenius: - - rscadd: 'Good news to the roboticists! The long waited firmware update for the - bots has arrived. You can expect the following changes:' - - rscadd: Medbots have improved the disease detection algorithms. - - rscadd: Floorbot firmware has been bugtested. In particular, they will no longer - get stuck near the windows, hopelessly trying to fix the floor under the glass. - - rscadd: Floorbots have also received an internal low-power metal synthesizer. - They will use it to make their own tiles. Slowly. - - rscadd: Following the complains from humanitarian organizations regarding securitron - brutality, stength of their stunners has been toned down. They will also politely - demand that you get on the floor before arresting you. Except for the taser-mounted - guys, they will still tase you down. - - rscadd: Other minor fixes. - - rscdel: 'The lasertag bots are now forbidden to build and use following the incident - #1526672. Please don''t let it happen again.' - - rscadd: The farmbot design has been finished! Made from a watertank, robot arm, - plant analyzer, bucket, minihoe and a proximity sensor, these small (not really) - bots will be a useful companion to any gardener and/or xenobotanist. - - tweak: 'Spider learning alert: they have learned to recognize the bots and will - mercilessly attack them.' - - rscadd: An experimental CPU upgrade would theoretically allow any of the bots - to function with the same intelligence capacity as the maintenance drones. We - still have no idea what causes it to boot up. Science! - - rscadd: 'INCOMING TRANSMISSION: Greetings to agents, pirates, operatives, and - anyone who otherwise uses our equipment. Following the NT update of bot firmware, - we have updated the cryptographic sequencer''s hacking routines as well. The - medbots you emag will not poison you anymore, the clanbots won''t clean after - themselves immediately, and floorbots... wear a space suit. Oh, and it works - on the new farmbots, too.' - PsiOmegaDelta: - - rscadd: Beware. Airlocks can now crush more things than just mobs. - - rscadd: AIs now have a personal atmospherics control subsystem. - - rscadd: Some borg modules now have additional subsystems. - - tweak: Improves borg module handling. - - tweak: Secure airlocks now buzz when access is denied. - - tweak: The mental health office door now requires psychiatrist access, and the - related button now opens/closes the door instead of bolting. - - soundadd: Restores an old soundtrack 'Thunderdome.ogg'. - - rscadd: Some holodeck programs now have custom ambience tracks. - RavingManiac: - - rscadd: The phoron research lab has been renovated to include a heat-exchange - system, a gas mixer/filter and a waste gas disposal pump. - - tweak: Candles now burn for about 30 mintutes. - Yoshax: - - tweak: Adds items to the orderable antag surgical kit so its actually useful for - surgery. - - tweak: Adjusts custom loadout costs to be more standardised and balances. Purely - cosmetic items, shoes, hats, and all things that do not provide a straight advtange - (sterile mask, or pAI, protection from viruses and possible door hacking or - records access, respectively), each cost 1 point, items that provide an advantage - like those just mentioned, or provide armor or storage cost 2 points. - - rscadd: Adds practice rounds, both .45 for Sec and Detective's guns, also 9mm - top mounted for the Saber, and for the Bulldog. - - rscadd: Adds the .45 and 9mm practice rounds to the armory. - - rscadd: Adds all the practice rounds to the autolathe. - - tweak: Adds r_walls to the back of the firing range, leaves the sides normal. - - bugfix: Fixes HoS' office door to not be CMO locked. -2015-04-29: - Daranz: - - rscadd: Paper bundles can now have papers inserted at arbitrary points. This can - be done by clicking the previous/next page links with a sheet of paper in hand. - HarpyEagle: - - rscadd: 'Added new fire modes to various guns: c20r, STS-35, WT-550, Z8, L6 SAW, - and double barreled shotgun. The firing modes work the same way as the egun; - click on the weapon with it in your active hand to cycle between modes. Unloading - these weapons now requires that you click on them with an empty hand.' - PsiOmegaDelta: - - rscadd: Portable atmospheric pumps and scrubbers now use NanoUI. - - rscadd: Two new events which will cause damage to APCs or cameras when triggered. -2015-04-30: - Yoshax: - - rscadd: Adds more items to custom loadout, including a number of dressy suits - and some other things. -2015-05-02: - HarpyEagle: - - bugfix: Neck-grabbing someone now stuns them properly. - PsiOmegaDelta: - - tweak: The spider infestation event now makes an announcement much sooner. - - rscadd: Admins can now toggle OOC/LOOC separately. - - tweak: Mice are now numbered to aid admins. - Yoshax: - - rscadd: Adds an option and verb to the AI to send emergency messages to Central, - functions same as comms console option. - - tweak: Changes comms console to only have one level of ID require, meaning all - heads of staff have what was captain access, allowing them to change alert, - send emergency messages and make announcements. - - rscadd: Adds an emergency bluespace relay machine which is mapped into teletcomms, - this machine takes emergency messages and sends them to central, if one does - not exist on any Z, you cannot send any emergency messages. - - rscadd: Adds an emergency bluespace relay assembly kit orderable from cargo for - when the ones on telecomms are destroyed. Assembly is required. - - rscadd: Adds the emergency bluespace relay circuitboard to be researchable and - printable in R&D, with sufficient tech levels. -2015-05-05: - PsiOmegaDelta: - - tweak: Grilles no longer return too many rods when destroyed (using means other - than wirecutters). - RavingManiac: - - tweak: Intent menu now appears while zooming with a sniper rifle. -2015-05-06: - PsiOmegaDelta: - - rscadd: Examining a pen or crayon now lists the available special commands in - the examine tab. -2015-05-07: - HarpyEagle: - - rscadd: Breaking out of lockers now has sound and animation. - PsiOmegaDelta: - - bugfix: The cloning computer can again successfully locate nearby cloning vats - and DNA scanners at round start. - - rscadd: Security equipment now treats individuals with CentCom ids with the greatest - respect. - - maptweak: Adds stretches of power cable around the construction outpost, ensuring - one does not have to climb over machines to being laying cables. - RavingManiac: - - rscadd: Muzzle-flash lighting effect for guns - - rscadd: Energy guns now display shots remaining on examine -2015-05-09: - Yoshax: - - rscadd: Maps in the top mounted 9mm practice rounds, .45 practice rounds, and - practice shotgun shells into the armory. -2015-05-10: - GinjaNinja32: - - rscadd: Acting jobs on the manifest will now sort with their non-acting counterparts. - All assignments beginning with the word 'acting', 'temporary', or 'interim' - will do this. - Yoshax: - - tweak: Removes sleepy chems from being cloned, adds a consistent period of 30 - tick sleep. -2015-05-11: - Mloc: - - experiment: Rewritten lighting system. - - rscadd: Better coloured lights. - - rscadd: Animated transitions. - PsiOmegaDelta: - - bugfix: As an observer, using antagHUD should now always restrict you from respawning - without admin intervention. - Techhead: - - rscadd: Voidsuits can have tanks inserted into the storage slot. - - rscadd: Voidsuits display helpful information on their contents on examine. - - rscadd: Magboots can be equipped over other shoes. Except other magboots. -2015-05-12: - Dennok: - - imageadd: New buildmode icons made by BartNixon. - HarpyEagle: - - rscadd: Masks and helmets that cover the face block feeding food, drinks, and - pills. - MrSnapwalk: - - imageadd: Added seven new AI core displays. - - tweak: Changed the pAI sprite and added several new expressions. - PsiOmegaDelta: - - rscadd: The space vine event now comes with a station announcement. -2015-05-14: - PsiOmegaDelta: - - maptweak: Should now be more evident that the brig disposal chute sends its goods - to the common brig area. - - bugfix: Cells now drain when using more charge than what is available. - - tweak: The rig stealth module now requires as much power to run as the energy - blade module. - Techhead: - - rscadd: Vox will spawn with emergency nitrogen tanks in their survival boxes. - - rscadd: Diona will spawn with an emergency flare instead of a survival box. - - rscdel: Engineers no longer spawn with extended-capacity oxygen tanks. - - bugfix: Vox spawning without backpacks will have their nitrogen tank equipped - to their back. - - tweak: The Bartender's spare beanbag shells have been moved into bar backroom - with the shotgun. - - bugfix: Portable air pumps now fill based on external/airtank pressure when pumping - in. -2015-05-16: - GinjaNinja32: - - rscadd: Rewrote tables. To construct a table, use steel to make a table frame, - then plate the frame with a material such as steel, gold, wood, etc. Hold a - stack in your hand and drag it to the table to reinforce it. To deconstruct - a table, use a screwdriver to remove the reinforcements (if present), then a - wrench to remove the plating, and a wrench again to dismantle the frame. Use - a welder to repair any damage. Use a carpet tile on a table to add felt, and - a crowbar to remove it. - HarpyEagle: - - rscadd: Adds tail animations for tajaran and unathi. Animations are controlled - using emotes. -2015-05-17: - PsiOmegaDelta: - - bugfix: Teleporter artifacts should no longer teleport mobs inside objects. -2015-05-18: - Hubblenaut: - - rscadd: Adds a light for available backup power on airlocks. - Kelenius: - - tweak: 'There has been a big update to the reagent system. A full-ish changelog - can be found here: http://pastebin.com/imHXTRHz. In particular:' - - tweak: Reagents now differentiate between being ingested (food, pills, smoke), - injected (syringes, IV drips), and put on the skin (sprays, beaker splashing). - - tweak: Injecting food and drinks will cause bad effects. - - tweak: Healing reagents, generally speaking, have stronger effects when injected. - - tweak: Toxins now work slower and deal more damage. Seek medical help! - - tweak: Alcohol robustness has been lowered. - - tweak: Acid will no longer melt large numbers of items at once. - - tweak: Synaptizine is no longer hilariously deadly. - Loganbacca: - - tweak: Changed MULE destination selection to be list based. - PsiOmegaDelta: - - tweak: Destroying a camera by brute force now has a chance to break the wiring - within. - - rscadd: Turf are now processed. This, for example, causes radioactive walls to - regularly irradiate nearby mobs. - - bugfix: Welders should now always update their icon and inhand states properly. -2015-05-22: - Ccomp5950: - - bugfix: Beepsky no longer kills goats. - - tweak: Goats will move towards vines that are 4 spaces away now instead of 1 - - bugfix: Goats will eat the spawning plants for vines as well as the vines themselves. - Chinsky: - - rscadd: Ghetto diagnosis. Grab patient, aim at bodypart you want to check, click - on them with help intent. This will tell you about their wounds, fractures and - other oddities (toxins/oxygen) for that bodypart. - - rscadd: Fractures are visible on very damaged limbs. Dislocations are always visible. - Surgery incisions now visible too. - - rscadd: Stethoscopes actually make sense now. They care for heart/lungs status - when reporting pulse and respiration now. - HarpyEagle: - - rscadd: Re-implemented fuel fires. Tweaked fire behaviour overall. - Yoshax: - - tweak: Bear traps now do damage when stood on, enough to break bones! Bear traps - can now affect any limb of a person who is on the ground, including head! Bear - traps are no longer legcuffs and instead embed in the limb they attack. - - tweak: Bear traps now take several seconds to deploy and cannot be picked up when - armed, they must be disarmed by clicking on them. They also cannot be moved - then they are deployed. - Zuhayr: - - rscadd: Massive material refactor. Walls, beds, chairs, stools, tables, ashtrays, - knives, baseball bats, axes, simple doors, barricades, so on. - - rscadd: Tables are now built via steel then another sheet on the resulting frame. - They can then be reinforced by dragging a stack of sheets onto the table. - - rscadd: Walls are built with steel for girders, then right-click the girder and - select the reinforce verb while holding a stack, then click the girders with - a final sheet. - - rscadd: Various things can be built with various sheet types. Experiment! Just - keep in mind that uranium is now radioactive and phoron is now flammable. -2015-05-26: - Atlantis: - - rscadd: NanoUI for Robotics Control Console - - rscadd: NanoUI for Supermatter Crystal - AI/Robot only, purely informational - Chinsky: - - rscadd: Meat limbs now can be attached. Use limb on missing area, then hemostat - to finalize it. - - rscadd: Limbs from other races can be now attached. They'll cause rejection, but - it can be kept at bay with spaceacilline to some point. Species special attack - is carried over too, i.e. you can clawn people if you sew a cathand to yourself. - - rscadd: Limbs that are left in open will rot in ~7 minutes. Use freezers or cryobags - to stop it. You can still attach them, but you wish you couldn't. - PsiOmegaDelta: - - tweak: Both the pulse taker and target must now remain still for the duration - of the check or it will fail. - RavingManiac: - - rscadd: Tape recorders now record hearable emotes and action messages (e.g. gunshots). - - bugfix: You can now see actions from inside mechs and closets. - Techhead: - - rscadd: Removed gaseous reagents from the chemistry system and replaced with real-world - organic chemistry precursors. - - rscadd: Hydrogen has been replaced with hydrazine, a highly toxic, flammable liquid. - - rscadd: Oxygen has been replaced with acetone, a mildly toxic liquid. Ethanol's - ink-sovlent capabilities have been copied to it. - - rscadd: Chlorine has been replaced with hydrochloric acid. It is a stronger acid - than sulphuric but less toxic. - - tweak: Nitrogen has been replaced with ammonia. Ammonia now acts as a Dexalin-equivalent - for Vox. - - tweak: Flourine has also been replaced with hydrazine in its one recipe. Flourosurficant - has been renamed azosurficant. - - tweak: Being splashed with liquid Phoron will burn eyes and contaminate clothes - like being exposed to Phoron gas. - Zuhayr: - - rscadd: Added a ghost requisition system for posibrains and living plants. - - rscadd: Added attack_ghost() to hydro trays and posibrains to allow ghosts to - enter them. - - rscadd: Prosthetic limbs are now only repairable with welders/cable coils if they - have suffered below 30 combined damage. - - rscadd: 'Surgery steps that cause no pain and have no failure wounding have been - added: screwdriver for ''incision'', crowbar to open, multitool to ''decouple'' - a prosthetic organ. Hemostat is still used to take an organ out.' - - rscadd: Using a welder or a cable coil as a surgical tool after opening a maintenance - hatch will repair damage beyond the 30 damage cap. In other words, severe damage - to robolimbs requires expert repair from someone else. - - rscdel: Eye and brain surgery were removed; they predate the current organ system - and are redundant. - - rscadd: IPC are now simply full prosthetic bodies using a specific manufacturer - (Morpheus Cyberkinetics). - - rscadd: IPC can 'recharge' in a cyborg station to regain nutriment. They no longer - interface with APCs. - - rscadd: NO_BLOOD flag now bypasses ingested and blood reagent processing. - - rscadd: NO_SCAN now bypasses mutagen reagent effects. - - rscadd: Cyborg analyzers now show damage to prosthetic limbs and organs on humans. - - tweak: Prosthetic EMP damage was reduced. - - tweak: Several organ files were split up/moved around. -2015-05-27: - PsiOmegaDelta: - - tweak: The inactive check process now respects client holder status and can be - configured how long clients may remain inactive before being kicked. - Zuhayr: - - rscadd: Unfolded pAIs can now be scooped up and worn as hats. - - tweak: Scoop-up behavior is now standardized to selecting help intent and dragging - their icon onto yours. -2015-05-30: - Atlantis: - - rscadd: Malfunction Overhaul - Whole gamemode was completely reworked from scratch. - Most old abilities have been removed and quite a lot of new abilities was added. - AI also has to hack APCs to unlock higher tier abilities faster, instead of - having access to them from the round start. Most forced things, such as, shuttle - recalling were removed and are instead controlled by the AI. Code is fully modular - allowing for future modifications. - HarpyEagle: - - bugfix: Fixes Engineer ERT gloves not being insulated. - - tweak: IV stands are no longer bullet shields. They also allow mice, drones, pAIs - et al to pass though. - Kelenius: - - tweak: AI now hears LOOC both around its eye and its core, and speaks in LOOC - around its eye. Keep in mind that you won't hear and won't be heard if there - is a wall between your eye and the target. - PsiOmegaDelta: - - rscadd: You can now review the server revision date and hash by using the 'Show - Server Revision' verb in the OOC category. -2015-06-02: - Techhead: - - rscadd: Re-adds extended capacity emergency oxygen tanks to relevant jobs. -2015-06-04: - PsiOmegaDelta: - - rscadd: AI eyes can now be found in the observer follow list. - - rscadd: Synths can now review all law modules that can be found on the station - from their law manager. - - rscadd: Synths can state these laws if desired, however this is strongly discouraged - unless subverted/malfunctioning. - - bugfix: Astral projecting mobs, such as wizards or cultists, may no longer respawn - as something else while their body lives. - Techhead: - - rscadd: Prison break event has been expanded to include Virology or Xenobiology - - rscadd: Prison break event will warn Enginering and the AI beforehand so they - can take preventive measures. - - bugfix: Disabling area power will now prevent doors from opening during the event -2015-06-05: - PsiOmegaDelta: - - bugfix: Split stacks no longer lose their coloring. - - tweak: Can no longer merge cables of different colors. - - tweak: Blobs and simple mobs now attack all external organs instead of a subset. - The overall damage remains the same but the number of fractures caused will, - in general, be fewer. - - rscadd: Spider nurses now have a chance of injecting their victims with spider - eggs which eventually hatch. If the limb is removed from the host, the host - dies, or the spiderling has matured sufficiently it will crawl out into freedom. - Medical scanners will pick upp eggs and spiderlings as foreign bodies. - Yoshax: - - tweak: Makes hyposprays start empty instead of filled with Tricord. - - tweak: Makes the special wizard projectile staffs, Animate, Change, Focus and - any future ones only usable by wizards. Also makes it so only wizards can use - spellbooks and teleportation scrolls. -2015-06-08: - PsiOmegaDelta: - - rscadd: The AI chassis now glows, with the color depending on the currently selected - display. -2015-06-09: - PsiOmegaDelta: - - rscadd: Ports /tg/'s meteor event. Meteors now appear to be more accurate, come - in a greater variety, and may drop ores on their final destruction. -2015-06-16: - Chinsky: - - rscadd: 'Updated penlights to be more of use in diagnostics, they now show following - conditions:' - - rscadd: Eye damage - - rscadd: Blurry eyes (overall slower reaction) - - rscadd: Brain damage (one eye reacts slower) - - rscadd: Opiates use (pinpoint pupils) - - rscadd: Drugs use (dilated pupils) - PsiOmegaDelta: - - rscadd: Observers can now follow both the AI and its eye upon speech. - - rscadd: Observers can now follow both observers and their body, if they ever had - one, upon speech. - - rscadd: Observers can now follow hivemind speakers if the speaker is not using - an alias or antagHUD is enabled. - - rscadd: Turret controls now glow, with the color depending on the current mode. - Techhead: - - rscadd: Converted Request Console interface into NanoUI. -2015-06-19: - HarpyEagle: - - bugfix: Prevents being on fire from merely warming mobs up slightly in some cases. - Mob fires also burn hotter. - - rscadd: Matches can now be used to light things adjacent to you when thrown. - - tweak: Made the effects of having a damaged robotic leg more prominent. - - bugfix: Robot limbs no longer cause pain messages. A reminder that you can still - check their status with 'Help Intent' -> 'Click Self'. - - tweak: Knifing damage scales with weapon force and throat protection. Helmets - only provide throat protection if they are air tight. Trying to cut someone's - throat with wirecutters and/or while wearing an armoured sealed helmet will - require several attempts before the victim passes out. - - tweak: Knifing switches on harm intent, in case you just wanted to beat on the - victim for some reason. - - bugfix: Prevents knifing bots or silicons. -2015-06-22: - PsiOmegaDelta: - - tweak: The traitor uplink no longer displays all items in a long list, instead - has categories which when accessed shows the relevant items. -2015-06-24: - HarpyEagle: - - bugfix: Fixed Tajaran name generation producing names without a space between - first and last. - - wip: Adds docking to the mercenary shuttle. Works similarly to other shuttles, - except docking and undocking is manually initiated and not automatic. A system - to approve or deny dock requests still to be implemented. - - rscadd: Toolboxes can now hold larger items, such as stacks of metal or power - cells, at the cost of having less space for other things. - - tweak: Gloves/shoes can now be worn even if you have one hand/foot missing. The - other one still has to be present, of course. The items still drop when you - first lose the hand/foot. - - tweak: Budget insulated gloves are somewhat less useless. On average, they will - stop half the damage from getting shocked, and the worst case insulation is - not as bad as it used to be. Budget gloves that are as good as regular insulated - gloves are still as rare as they were before though. - - tweak: PTR bullets are now hitscan, to make them somewhat better for actual sniping. - - maptweak: The telecoms server room now has an actual cycling airlock into it. - - tweak: Non-vital body parts will no longer take further damage above a certain - amount, and will inflict paincrit effects instead. On most humaniods the head, - chest, and groin are vital. - - rscadd: 'Engineers now spawn with industrial workboots (credit: ChessPiece/Bishop).' - - bugfix: Damaged robotic legs now more likely to have an effect. - - bugfix: Fixed bug preventing internal organs from taking damage in some cases. - - maptweak: New flavours of tables around the station. Engineering starts with more - plastic. - - bugfix: Fixed worn items not appearing in some cases. Most notably crossbows and - certain guns when worn on the back. As a side effect, laundry machines no longer - transform items. - - bugfix: Crit oxyloss now runs in game time instead of real time. So if lag is - slowing your movement the same slowdown applies to the dying person you're trying - to reach. - - rscadd: Breathmasks can now be adjusted by clicking on them in your hand, in addition - to the verb. - - rscadd: Wearing a space helmet or similar face-covering gear now prevents eating - and force-feeding food, drink, and pills. - - rscadd: Phoron in air ignites above it's flashpoint temperature and a certain - (very small) minimum concentration. Environments that have oxygen and are hot - enough, and have phoron but not enough concentration to burn will produce flareouts, - which are mostly a visual effect. - - rscadd: Adds animation when making unarmed attacks or attacking with melee weapons, - to help make it clearer who is attacking. - - soundadd: Opening an unpowered door now has an appropriate sound. - - rscadd: Ingesting diseased blood may contract the disease. -2015-06-26: {} -2015-06-30: - PsiOmegaDelta: - - maptweak: Non-general areas on Crescent are now protected by blast doors to enforce - area restrictions. Admins can operate these from the central checkpoint. -2015-07-04: - PsiOmegaDelta: - - tweak: Portable turrets now only blocks movement while deployed. - - tweak: Portable turrets are no longer invincible while undeployed, however they - have increased damage resistance in this state. - - bugfix: Crescent portable turrets should no longer act up during attempts to (un)wrench - and alter their settings. -2015-07-06: - GinjaNinja32: - - rscadd: '''Provisional'' is now also a valid temporary position prefix for manifest - sorting.' -2015-07-10: - Zuhayr: - - rscadd: Ninja now spawns on a little pod on Z2 and can teleport to the main level. -2015-07-11: - HarpyEagle: - - imageadd: Added inhand sprites for flashes, flashbangs, emp and other grenades. - Loganbacca: - - bugfix: Turrets no longer burn holes through the AI. - - tweak: Projectiles now have a chance of hitting mobs riding cargo trains. - - bugfix: Fixed visual bugs with projectile effects. -2015-07-14: - HarpyEagle: - - bugfix: Fixes wrong information being reported when analyzing locked abandoned - crates with a multitool. - PsiOmegaDelta: - - tweak: Ninjas can no longer teleport unto turfs that contain solid objects. - - tweak: Wizards can no longer etheral jaunt unto turfs that contain solid objects. -2015-07-27: - Kelenius: - - tweak: Borg shaker now works similarly to hypospray. It generates reagents that - can be poured into glasses. - - bugfix: Therefore, they can no longer duplicate rare reagents such as phoron. -2015-07-29: - Karolis2011: - - rscadd: Made tagger and sorting pipes dispensible. - - bugfix: Unwelding and welding sorting/tagger pipes, no longer delete data about - them. -2015-07-31: - HarpyEagle: - - bugfix: Fixed projectiles being able to hit people in body parts that they don't - have. This will also mean that the less limbs someone has the less effective - they will be as a body shield. -2015-08-11: - PsiOmegaDelta: - - experiment: 0.1.19 is live. - - tweak: Crew monitors now update every 5th second instead of every other. Reduces - lag and gives antags a larger window of opportunity to disable suit sensors - if they have to harm someone. -2015-08-13: - GinjaNinja32: - - rscadd: Changed language selection to allow multiple language selections, changed - humans/unathi/tajarans/skrell to not automatically gain their racial language, - instead adding it to the selectable languages for that species. Old slots will - warn when loaded that the languages may not be what you expect. - Orelbon: - - rscadd: Changed the HoP's suit to more bibrant colors and hopefully you will like - it. -2015-08-14: - HarpyEagle: - - spellcheck: Renames many guns to follow a consistent naming style. Updated and - changed gun description text to be more lore-friendly. - - rscadd: Throwing a booze bottle at something nearby while on harm intent causes - it to smash, splashing it's contents over whatever it hits. - - rscadd: Rags can now be wrung out over a container or the floor, emptying it's - contents into the container or splashing them on the floor. - - rscadd: Rags can now be soaked using the large water and fuel tanks instead of - just beakers. - - rscadd: Rags soaked in welding fuel can be lit on fire. - - rscadd: Rags can now be stuffed into booze bottles. When the bottle smashes, the - stuffed rag is dropped onto the ground. - - bugfix: Fixed eggs having a ridiculously large chemical volume. - - rscadd: T-Ray scanner effects are now only visible to the person holding the scanner. - - rscadd: Traitors can now purchase the C-20r and the STS-35 for telecrystals. - PsiOmegaDelta: - - tweak: The amount you start with in your station account is now affected by species, - rank, and NT's stance towards you. - TheWelp: - - rscadd: Bookcases are now movable/buildable/destroyable. - - rscadd: Paper can now be crumpled by using in-hand while on hurt intent. - - rscadd: Library Computer External Archive is now sortable. - Zuhayr: - - rscadd: Click a hat on a drone with help intent to equip it. Drag the drone onto - yourself with grab intent to remove it. -2015-08-15: - Kelenius: - - rscadd: Bees have been updated and are totally worth checking out (beekeeping - crate at cargo). - - rscdel: Sleeper consoles removed. All interaction is now done by clicking on the - sleeper itself. - - tweak: To put people into sleeper, you now have to click-drag people to it. Grabs - no longer work. To exit the sleeper, move. - - tweak: Sleeper now uses a NanoUI. -2015-08-16: - HarpyEagle: - - tweak: The unathi breacher is now only wearable by unathi. -2015-08-17: - PsiOmegaDelta: - - rscadd: Station time and duration now available in the Status tab. -2015-08-24: - HarpyEagle: - - tweak: Girders are now reinforced by using a screwdriver on the girder before - applying the material sheets. Use a screwdriver again instead to cancel reinforcing. - - bugfix: Mechanical traps no longer spawn in the janitor's locker. - - rscadd: Mechanical traps can now be printed with a hacked autolathe. - - rscadd: Adds armour penetration mechanic for projectiles and melee weapons. - - rscadd: Laser carbines, LWAP, and shotgun now have a small amount of armour penetration, - ballistic rifles (not SMGs) have moderate amounts, laser cannon has high armour - penetration, and the PTR mostly ignores body armour. - - tweak: 'Shotgun slugs and Z8/STS damage has been lowered slightly to accomodate - for their higher penetration. In general ballistics deal less damage but have - higher penetration than comparable laser weapons. Notable exception: X-Ray lasers - have had their damage lowered slightly but gain very high armour penetration.' - - rscadd: Energy swords now have very high armour penetration. Ninja blades do less - damage but ignore armour completely. - Kelenius: - - experiment: Click cooldowns have been removed on pretty much everything that isn't - an attack. - PsiOmegaDelta: - - rscadd: Adds the option to set the icon size to 48x48, found under the Icons menu, - along with 32x32, 64x64, and stretch to fit. - - tweak: Active AI cores now provides coverage on the AI camera network. Does not - utilize actual cameras, thus will not show up on security consoles. - - rscadd: The Dinnerware vending machine now offer both utensil knives and spoons - without first having to hack them. - - rscadd: Synths now have id cards with access levels which is checked when operating - most station equipment. - - rscadd: Station synthetics still have full station access but can no longer interact - with syndicate equipment, and syndicate borgs now start with only syndicate - access. - - rscadd: Syndicate borgs can copy the access from other cards by utilizing their - own id card module, similar to how syndicate ids work. - - rscadd: When examined up close id cards now offer a more detailed view. - - rscadd: Agent ids now offer much greater customization, allowing changing name, - age, DNA, toggling of AI tracking termination (using the electronic warfware - option), and more. - - rscadd: As AI tracking can now be enabled/disabled at will AI players should not - feel the need to hesitate before informing relevant crew members when camera - tracking is explicitly terminated. - - rscadd: Uplink menu now more organized and with new categories. - - rscadd: Now possible to cause falsified ion storm announcements. - - rscadd: Now possible to cause falsified radiation storm announcements, with expected - maintenance access changes. - - rscadd: Now possible for mercenaries to create falsified Central Command Update - messages. - - rscadd: Now possible for mercenaries to create falsified crew arrival messages - and records. - RavingManiac: - - tweak: Sound environments tweaked to feel more claustrophobic - - rscadd: Being drugged, hallucinating, dizzy, or in low-pressure or vacuum will - alter sounds you hear - - rscadd: Sound environment in holodeck will change to reflect the loaded program - Vivalas: - - rscadd: A new uplink item has been added! A briefcase full 'o thalla can now be - bought by traitors for bribes and such! - Zuhayr: - - rscadd: Pariahs are now a subspecies of Vox with less atmos/cold protection, a - useless brain, and lower health. - - rscadd: Leap now only gives a passive grab and has a shorter range. It also stuns - Pariahs longer than it does their target. - - tweak: Rewrote tiling. White floors, dark floors and freezer floors now have associated - tiles. - - tweak: Changed how decals work in the mapper. floor_decal is now used instead - of an icon in floors.dmi. - - tweak: The floor painter has been rewritten to use decals. Click it in-hand to - set direction and decal. - - tweak: Floor lights are now built from the autholathe, secured with a screwdriver, - activated by clicking them with an empty hand, and repaired with a welding torch. - - rscadd: Unathi now have minor slowdown and 20% brute resist. - - rscadd: Tajarans now have lower bonus speed and a flat 15% malus to brute and - burn. - - rscadd: Vox can now eat monkeys and small animals. - - rscadd: Tajarans can now eat small animals. - - rscadd: Unarmed attack damage has been lowered across the board. -2015-09-02: - Atlantis: - - rscadd: Converted phoron glass to borosilicate glass, adjusted heat resistances - accordingly, got rid of copypaste fire code. Fire resistance is now handled - by variables so completely fireproof windows are possible with varedit. - - rscadd: Windows take fire damage when heat exceeds 100C regular windows, 750C - reinforced regular, 2000C borosilicate and 4000C reinforced borosilicate. For - comparsions, reinforced walls begin taking damage around 6000. - Hubblenaut: - - rscadd: Adds glass bottles for Cola, Space Up and Space Mountain Wind to Booze-O-Mat. - - tweak: Some bar drink recipes have been amended to easily sum to 30 units for - drinking glasses. - - tweak: Vendors now have a product receptor for accepting goods. Opening the maintenance - painel is no longer required. - - tweak: Wrenching a vending machine is no longer a silent action. - - tweak: 'Stepup: Item placement on 4x4 grids seemed to work great. Now we''ll try - 8x8.' - Kelenius: - - tweak: Mechfab can now be upgraded using RPED, and now uses NanoUI. - Matthew951: - - rscadd: Added Vincent Volaju's hair. - - rscadd: Added Vincent Volaju's beard. - Zuhayr: - - rscadd: Added the ability for AIs in hardsuits to control suit modules and movement - with a dead or unconcious wearer. - - rscadd: Added ballistic supply drop pods. - - rscadd: Added diona gestalt random map template. - - tweak: Swapped the singularity beacon out for a hacked supply beacon. -2015-09-05: - Chinsky: - - rscadd: Made capguns into proper guns code-wise. It means you can now take people - hostage with them, stick in your mouth, and all other things you can do with - real guns but probably shouldn't. - - rscadd: Russian roulette! Fun for whole sec team! Unload some shells from revolver, - spin the cylinder(verb) and you're good to go! - HarpyEagle: - - rscadd: Shields no longer block attacks from directly behind the player. - - rscadd: Riot shields no longer stop bullets or beams (except for beanbags and - rubber bullets), however they are now more effective at blocking melee attacks - and thrown objects. - - rscadd: Energy shields block melee attacks as effectively as riot shields do. - Their ability to block projectiles is largely unchanged. - - tweak: Melee weapons now only block melee attacks. - - experiment: Two handed weapons have a small chance of blocking melee attacks when - wielded in two hands. - - rscadd: Sound and visual effects when blocking attacks with an energy shield or - energy sword. - - bugfix: Fixed dead or unconscious people blocking stuff with shields. - PsiOmegaDelta: - - tweak: Cargo now sorts under its own department on station manifests. - - rscdel: Manual radio frequency changes can no longer go outside the standard frequency - span. - - rscadd: Users with sufficient access can instead select pre-defined channels outside - this span, such as department channels, when using intercoms. -2015-09-07: - GinjaNinja32: - - rscadd: Added an auto-hiss system for those who would prefer the game do their - sss or rrr for them. Activate via Toggle Auto-Hiss in the OOC tab. - - rscadd: Auto-hiss system in 'basic' mode will extend 's' for Unathi and 'r' for - Tajara. 'Full' mode adds 'x' to 'ks' for Unathi, and is identical to 'basic' - mode for Tajara. - PsiOmegaDelta: - - tweak: 'Changed the language prefix keys to the following: , # -' - - rscadd: Language prefix keys can be changed in the Character Setup. Changes are - currently not global, but per character. -2015-09-08: - Soadreqm: - - tweak: Increased changeling starting genetic points to 25. - Zuhayr: - - bugfix: Auto-traitor should now be fixed. - - bugfix: The Secret game mode should now be fixed. -2015-09-11: - HarpyEagle: - - tweak: Made flares brighter. - - rscadd: Coffee is now poisonous to tajaran, much like how animal protein is poisonous - to skrell. -2015-09-26: - PsiOmegaDelta: - - tweak: Meteor events now select a map edge to arrive from, with a probability - for each individual wave to come from either neighboring edge. Meteors will - never arrive from opposite the starting edge. -2015-10-27: - HarpyEagle: - - bugfix: When affected by pepperspray, eye protection now prevents blindness and - face protection now prevents stun, instead of face protection doing both. -2015-11-22: - neersighted: - - bugfix: Laptop Vendors now accept ID Containers (PDA, Wallet, etc). - - bugfix: Personal Lockers now accept ID Containers (PDA, Wallet, etc). -2015-12-06: - Datraen: - - tweak: Changes standard and specific plant traits, more diverse plants. - HarpyEagle: - - tweak: Fabricated power cells start uncharged. - Hubblenaut: - - bugfix: Welding a broken camera will use the correct icon. - - tweak: Camera assemblies remember their tag and network from previous usage. - - rscadd: Light replacers can be refilled by clicking on a storage item. - - tweak: Light replacers now hold up to 32 light bulbs. - - tweak: Light replacers can be obtained through janitorial supply crates. - - tweak: A sheet of glass fills the light replacer by 16 bulbs. - - bugfix: Material stacks now properly merge upon creation. - - bugfix: Messages for adding to existing stack appear again. - - tweak: Mobs on help intent will not push others that aren't. - - rscadd: Adds tape for atmospherics. - - tweak: Tape graphics and algorithm changes. Looks a lot more appealing now. - - tweak: Starting and ending tape on the same turf will connect it to all surrounding - walls/windows. - - tweak: Lifting a part of the tape will lift an entire tape section. - - tweak: Mobs on help intent do stop for tape. - - bugfix: Crumpled tape does not affect tape breaking behavior anymore. - - bugfix: Fixes vending machines not adding stored goods when maintenance panel - is closed. - - tweak: Doors do only buzz once on failed closing attempt. - MagmaRam: - - bugfix: Fixed cloners killing fresh clones instantly with brain damage. - - bugfix: Fixed a bug where disposals pipes would show up above floors despite being - installed under them. - Neerti: - - rscadd: Adds NanoUI for communicators, the ability for communicators to call other - communicators on the station, the ability for station-bound people to call ghosts, - and for ghosts to toggle their visibility to communicators on or off in character - preferences (defaults to off). Communicators can now also support more than - one call at the same time, for both ghosts and normal communicators. - - rscadd: Adds new machine to telecomms, the Exonet node. It is very basic in terms - of functionality, but certain services can be selectively disabled from it, - such as newscaster updates, communicators, or external PDA messages. Adds methods - for building and deconstructing Exonet nodes. - - experiment: Adds framework for a fake-networking system called EPv2 that communicators - will now use, and perhaps other machines will in the future, for good or for - evil. - - rscdel: Changeling Spacearmor reduced in protective ability. - - rscdel: Cryogenic String and Delayed Toxic Sting now have a three minute cooldown - upon stinging someone. - - rscdel: Cryotoxin, the chemical used in Cryogenic String, is 25% less potent now. - - rscdel: The rune to summon Narsie has been changed. Narsie is no longer summoned, - but Hell still comes. - - rscdel: Spooky mobs spawned from spooky portals as a result of Hell coming have - had their speed, health, and damage reduced. - - rscdel: Manifested humans no longer count for summoning Hell. - - experiment: Changes how armor calculations work. All the armor values remain - the same, but the 'two dice rolls' system has been replaced with a mix of reliable - damage reduction and a bit of RNG to keep things interesting. The intention - is to make weaker armor more relevent and stronger armor less overpowered. - - tweak: When you are hit, it uses the armor protection as a base amount to protect - you from, then it does a roll between +25% and -25% of that base protection, - and adds it to the base protection. The result of that is how much damage is - reduced from the attack. For example, if you are hit by an energy sword in - the chest while wearing armor that has 50 melee protection, the base protection - is 50, then RNG can make the final protection be between 37.5 and 62.5 percent. - The damage you'd take could range from 11.25 to 18.75, instead of 0, 15, or - 30. Remember that some weapons can penetrate armor. - - rscadd: Added personal communicators, a device that enables someone to talk to - someone else at vast distances. You can talk to people who are far from the - station, so long as telecommunications remains operational. - - rscadd: To use, become a ghost, then use the appropiate verb and pick a communicator - to call. Then you wait until someone picks up. Once that occurs, you will - be placed inside the communicator. The voice you use is your currently loaded - character. Languages are supported as well. - - tweak: Round-end is now three minutes instead of one, and counts down, to allow - for some more post-round roleplay. If the station blows up for whatever reason, - the old one minute restart is retained. - PsiOmegaDelta: - - rscdel: Manual radio frequency changes can no longer go outside the standard frequency - span. - - rscadd: Users with sufficient access can instead select pre-defined channels outside - this span, such as department channels, when using intercoms. - Zuhayr: - - tweak: Aiming has been rewritten, keep an eye out for weird behavior. - - rscdel: Removed the detective scanner and associated machinery. - - rscadd: Added a microscope, machine forensic scanner, etc. from Aurora forensics. -2015-12-16: - HarpyEagle: - - bugfix: Fixed a couple of bugs causing phoron gas fires to burn cooler and slower - than they were supposed to. - - bugfix: Merc bombs are now appropriately explosive again. Same goes for bombs - made by toxins. - Hubblenaut: - - bugfix: Airlock backup power test light properly offline when backup power down. - - bugfix: Empty flavor texts no longer draw an empty line on examination. - - bugfix: Material stacks now properly merge upon creation. - - bugfix: Messages for adding to existing stack appear again. - TheWelp: - - rscdel: Removed higher Secret player requirements. -2016-02-11: - Datraen: - - rscadd: Moderators can now see and use AOOC. - - bugfix: Other synthetics given EAL. - - bugfix: Trays now drop items when placed on table, dropped. - - bugfix: Objects can now be yanked out of synthetics. - - tweak: Respawn time moved down from 30 minutes to 15 minutes. - - rscadd: Telecrystal item added for trading telecrystals between traitors and mercenaries. - - rscadd: Telecrystal item now has tech values. - EmperorJon: - - tweak: Traitor synths can no longer be locked down from the robotics console. - Attempting to lock them down (or release the lockdown) notifies the synth of - the attempt and updates the console's UI as normal. - Neerti: - - rscadd: Suit cooling units can now be attached to voidsuits. Note that coolers - and air tanks are mutually exclusive. - - bugfix: EMP no longer hits twice on humans. - - tweak: EMP drains powercells using the cell's current charge, and not the cell's - maximum potential charge, to ensure two blasts do not completely disable a synthetic. - - tweak: EMP hitting a prosthetic limb or organ will now do less damage. - - tweak: EMP hitting a cyborg will no longer outright stun them. Instead, they - gain the 'confused' status for a few moments, making movement difficult. In - addition, their HUD gets staticy, and their modules are forced to be retracted. - - rscadd: Stasis bags will protect the occupant from the outside enviroment's atmosphere. - - rscadd: Stasis bags can be hit with a health analyzer to analyze the occupant. - Zuhayr: - - rscadd: Drones can now pull a variety of things (such as scrubbers). This came - with a pulling refactor so please report any strangeness with pulling in general. - - rscadd: Drones (and any mob that can be picked up) can be bashed against airlocks - and such to use their internal access, so long as the person using them does - not have an ID card equipped. - - rscadd: Added foam weapons to cargo for LARP shenanigans. - - rscadd: Added the ability to equip grenades to the mask slot, and to prime them - by clicking someone with harm intent targeting the mouth. - - rscadd: Removed the species restrictions on transplanted internal organs. Have - fun. - - rscadd: Added 'full body' prosthetic options to character generation. - - rscadd: Removed IPC. No tears were shed. - - rscadd: 'RE: borgs, Renamed ''robot'' type to ''drone'' and ''android'' type to - ''robot'' for clarity with new ''android'' human mobs.' - - rscadd: Rejuvenate will now reapply robolimb/autopsy data. - - rscadd: Lots of backend work relating to the above. If you're a coder go look - at the PR or ask Zuhayr for details. - - rscdel: Removed brute and burn resist from robolimbs, removed sever vulnerability - from robolimbs. - - rscadd: Added a config option for visible human death messages. - - rscadd: pAIs and small mobs can now bump open doors. - - rscadd: Added functionality for two-handed guns; these guns will give an accuracy - penalty if fired without an empty offhand. - - rscadd: Unified two-handed melee weapons with the above; while the offhand is - empty, the weapon will count as wielded. -2016-03-11: - Datraen: - - rscadd: Adds ckeys, player panel to the antagonists panel. - - tweak: Fragmentation grenades are no longer launchable. - - tweak: Adds amount of telecrystals to the set telecrystal verb. - - rscadd: Added a verb to just add to telecrystals. - Kelenius: - - rscadd: Drying rack now has a new sprite. - - rscadd: Beekeeping materials and a honey extractor have been added to hydroponics. - - tweak: There is now a ten-second delay for carding the AI. - Zuhayr: - - rscadd: Small species now take smaller bites/gulps from food and drink. - - rscadd: Small species are now effected by alchol and toxins twice as much. - - rscadd: blood_volume is now a species-level var and Teshari have lowered blood - volume. - - rscadd: Hunger is a species var and Teshari get hungry faster. - - rscadd: Small mobs have a reduced climb delay. - - rscadd: Teshari gain more nutrition from meat. -2016-03-16: - Datraen: - - bugfix: Harmbaton no longer causes halloss while inactive. - Kelenius: - - bugfix: Potassium and nitroglycerin explosive grenades now work. -2016-03-29: - Datraen: - - rscadd: 'Added Three New Mixed Gamemodes: Lizard, Changeling + Wizard; Intrigue, - Traitors + Ninja; Visitors, Ninja + Wizard.' - - tweak: Created a variable for latespawning antagonist templates, for customization - of autospawning antagonists in mixed game modes. - - bugfix: Fixes the buckled check limiting whether or not someone can interact while - sitting. - - bugfix: Resisting while buckled and cuffed will process the hand and leg cuffs - before unbuckling. - - tweak: Removed JSON encoding of the PDA Manifest list. - - bugfix: Microwaves no longer try cooking their components while cooking. - - bugfix: Adds a check to prison breaks that makes sure the APC is on before continuing. - - bugfix: Artifacts will no longer spawn on floor turfs. - - bugfix: Stops traitorborgs from being able to hack other borgs. - - bugfix: Stops traitorAIs from being able to hack unlinked borgs. - Yoshax: - - tweak: Player preferences has been overhauled. Please update your preferences, - found at "Character Setup" > "Global" > "Preferences", as they have been reset. -2016-04-04: - Kelenius: - - bugfix: Monkeys can ventcrawl once again. - Yoshax: - - rscadd: Tasks that take time to perform now have a progress bar. - - rscadd: Visibility of progress bars can be toggled in preferences. Default is - on. -2016-04-07: - Datraen: - - bugfix: If a slice of an item is spawned independently, it will get generic settings. - Kelenius: - - tweak: Changelings will now change appearance and species together when transforming. - - tweak: Changelings no longer have gender honorifics in lingchat. - - rscadd: Absorbing the DNA from any source will allow you to use its name, species, - and languages. - - bugfix: DNA extract sting won't produce a strange message if there's no target. - - tweak: Cultists no longer need to research words. -2016-04-17: - Datraen: - - rscadd: Manually ports /tg/station's dark click code https://github.com/tgstation/-tg-station/pull/10272 - by Razharas. - - bugfix: Teshari smocks now spawn as smocks, and not aqua jumpsuits. - - bugfix: Checks to see if new a two-handed weapon can be wielded when dropped. - EmperorJon: - - bugfix: Robotics Console now correctly shows the operational/lockdown state and - button based off if it thinks the synthetic is locked down or not. - - bugfix: Autotraitor synths now behave the same as Traitor synths - they are not - locked down. - Kelenius: - - rscadd: Solars now start wired. - Neerti: - - rscadd: Ports Bay's volume-based inventory system. It works off by weight classes - instead of just slots, allowing you to hold more light items than you could - previously. - - rscadd: Bulky items can now go in your backpack, however it will require twice - the space of a normal sized item. - - rscdel: Spacesuits, RIGs, and sniper rifles made heavier. -2016-05-05: - Datraen: - - rscadd: Added three mixed modes, 'Mercenaries & Wizard', 'Mercenaries & Renegades', - and 'Traitors & Renegades'. - Hubblenaut: - - tweak: Hydroponics vendor and biogenerator offer full bottles of fertilizer. Prices - and amount available adjusted to accomodate. - Kelenius: - - tweak: Move delay after clicking has been removed. - PsiOmegaDelta: - - rscadd: Can now prefill the loadout flask and vacuum-flask with a relevant liquid - of your choice. - Yoshax: - - tweak: 'Splits gender into biological gender and gender identity. Biological gender - modifies the sprite (for between male and female) and gender identity determines - what pronouns show up when examined or suchlike. Both are displayed in medical - records and such. ' - - tweak: Smoke grenades can now have their smoke color set by using a multitool - on them. -2016-05-12: - Yoshax: - - tweak: Doubles the maximum length of records and names to 6144 & 52, respectively. - Also increases book length to 12288. (All numbers are in characters.) - - bugfix: Makes various services in the antag uplink purchasable once again. This - includes the fake crew arrival. - - bugifx: Neckgrabs will no longer force people to the ground. In addition, weakened - people can no longer resist. - - rscadd: All vending machines now have a small chance of vending an additional - item. - - tweak: Smoke from smoke bombs now lasts approximately 3 times as long and spawns - some more smoke to make a heavier cloud. - - bugfix: Smoke from smoke bombs now properly does a small amount of oxygen loss - damage. This damage is per cloud of smoke. -2016-05-13: - HarpyEagle: - - tweak: Shotgun flare illumination now lasts longer, around 3-4 minutes. - - bugfix: Fixed attack animation playing when using flashes even if the flash was - not actually used due to being broken or recharging. - - bugfix: Fixed lightswitches layering over darkness. Now only the light layers - above shadow. Lightswitch illumination is now much more subtle. - Yoshax: - - bugfix: Processing strata floor can now be pried up with a crowbar. - - bugfix: Blue carpet can now also be removed with a crowbar, and has had it's ability - to burn and have corners restored. - - rscadd: Changelings will now store and apply the flavor text of their victims - when they absorb and transform into them. - - rscadd: Gives Diona a starting funds wage the same as Tajaran and Unathi. - - bugfix: Brain damage no longer prevent implant removal surgery. -2016-05-16: - Yoshax: - - rscadd: Uplinks now have a discounted item every 15 minutes. This is per uplink, - and random, the discount is also random, but weighted as such that a low discount - such as 10% off, or 20% off has a higher chance of happening than a high discount - such as 90% of. An item will never cost less than 1. - - tweak: Mercenaries now spawn with their own, personal uplinks. - - bugfix: Faked announcements are now once again purchasable from the uplink, and - actually work. - - rscadd: Adds several new items to the uplink including tactical knives, metal - foam grenades, ambrosia seeds and much more. -2016-05-17: - SilveryFerret: - - rscadd: Changes the Death Alarms from announcing over Common channel, to announcing - only over Medical and Security channels. - Yoshax: - - rscadd: Added shotglasses. These can contain 10 units. They have their whole contents - swalloed in one gulp. They can be produced in the autolathe or found in the - booze vending machine in the bar. -2016-05-25: - Serithi: - - rscadd: Adds in lavender. - Yoshax: - - tweak: Cables of any color can now be merged. - - tweak: More and different colors are now available to be used by cable. - - tweak: Adjusting your suit sensors now displays a message to other people in range - that you did so. In addition, seeing someone else adjust someone's suit sensors - no longer informs you to what level. - - rscadd: Added towels to the loadout. These can be worn on the head, belt or outwear - slots. You can also whip people with them for a special message and sound! In - addition, using them in-hand will produce an emote where your towel yourself - off. -2016-05-27: - Yoshax: - - rscadd: Added a new preference that allows you to disable fake nanoui styling - on relevant windows. However, if it is your first time loading with this new - preference you will need to save your character slot, as there is a problem - with satanisiation and it believes the preference is set to disable the nanoui - styling. -2016-05-29: - Datraen: - - rscdel: Injecting people with mutationtoxin no longer mutates them into slime - people. - - rscdel: Removes amutationtoxin. - - rscdel: Removes slime core recipies. - - rscadd: Adds slime monkey cubes, which are created by injecting monkey cubes with - mutationtoxin and activating like a posibrain. - - wip: Maps for Xenobio2 research labs/stations. - Zuhayr: - - tweak: 'Backend change: allowed accessories to be placed on any clothing item - with the appropriate variables set.' -2016-05-30: - EmperorJon: - - rscadd: Ports Baystation's setup screen changes, thanks to PsiOmegaDelta. - - rscadd: Includes character preview with toggleable equipment, visible loadout - items, ghost character sprites, and custom colour underwear. Your underwear - will have reset, so you'll need to set it back. -2016-06-07: - Datraen: - - rscadd: Adds a trait tool for Xenobio2. It was supposed to be in the initial implementation, - but fell through the cracks, sorry! - - bugfix: Fixed the xenobio smartfridge not displaying it's starting core amount. - - bugfix: Fixed an inverted check with slimes. - EmperorJon: - - tweak: Increased loadout points from 10 back to 15. We've added so many things - like lunchboxes and communicators that everyone just takes by default, so a - few more points will be nice. - JerTheAce: - - rscadd: Adds a variety of new guns. Some of these guns and and their ammunition - are purchasable through antag uplink, cargo, or can be spawned during Renegade - or Heist modes. - - rscadd: Adds ammunition clips for reloading magazines and some guns (such as bolt-actions). - - rscadd: All magazines and ammunitions can now be produced with the autolathe. - - maptweak: New bullpup SMG is available in armory area on CentCom level. - - tweak: Revolvers now use 6 shots. Finally. - - tweak: Most guns that didn't use magazines before for some reason (such as the - Uzi) now use magazines. - - tweak: All casings now update icons if they have been spent. - - tweak: Corrects Pulse Rifle charge cost consistency. - - tweak: Corrects and improves a number of icons for guns, including a couple of - energy guns, and adds fallback icons so they do not turn invisible when held - or strapped to your back. - - tweak: Made the icons for some guns look differently depending on what magazine - is loaded into them. - - tweak: Made antag uplink menu for guns and ammo more informative. - - tweak: Machinegun magazines no longer fit in pockets. - - spellcheck: Made names and descriptions for all projectile guns and ammo consistent - while removing grammar and spelling errors. - - bugfix: Autolathe no longer exploitable for ammo by repeatedly recycling empty - magazines. - - bugfix: Guns now check a list of compatible magazines. - - bugfix: Ranged mobs no longer drop usable .357 casings. - - soundadd: Added a variety of new gun sound effects, and swapped out the old default - gun sound. -2016-06-08: - Yoshax: - - maptweak: There is now more soap on the map. The chef also gets a dropper. - - tweak: Changes in gravity now stun for much longer. - - tweak: Bullets now have a better chance of penetrating objects such as filing - 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. -2016-06-15: - Yoshax: - - tweak: The categories for items in the cargo ordering console have been reworked. - Items shoulw now be in more sensible categories. If you cannot find something, - try the sensible category. -2016-06-21: - HarpyEagle: - - bugfix: Fixes disarm-attack dislocation chances being so low that you were very - likely to break the targeted limb before it would dislocate. - - bugfix: It is now possible to disarm-attack with stunbatons like with other melee - weapons. Note that this means that using a stunbaton on disarm intent will hurt - people. - - rscadd: Trying to move while being grabbed will now automatically resist. - - tweak: Small mobs are no longer able to pin larger mobs. - - tweak: Resisting a smaller mob's grab is more likely to be successful. - - bugfix: Fixed being able to climb onto a larger mob while restrained, weakened, - unconscious, or dead. - JerTheAce: - - rscadd: CentCom Fax, Admin Prayer, and CentCom emergency messages now prompt admins - with a pleasing sound effect. - - tweak: Fax machines now sound like fax machines and not polaroid cameras. -2016-06-27: - Sin4: - - rscadd: Added NanoUI for Advanced Body Scanners, Arcade, Atmospherics Control - Computer, Chemmaster, Cloning Console, Fax Machines, Guestpass Console, Holodeck - Computer, Laptop Vendors, Operating Computer, and Photocopiers. - - bugfix: Fixes chemmaster not putting pills in pill bottles. -2016-07-01: - Aztectornado: - - tweak: Clicking a stack of sheets (Metal, phoron...) in your other hand now asks - how many you want to split off the stack, courtesy of Baycode - Datraen: - - rscadd: Antagonistic factions can now be set and viewed on the uplink. Visibilities - can be set for these as well, to help identify sympathizers/potential aids, - or to hide the information from those outside of your faction. - Yosh: - - tweaks: Increases max records and book length to ridiculous levels. - Yoshax: - - tweak: The PTR Sniper is now more accurate when scoped, but less accurate when - unscoped. In addition it now has more recoil. - - tweak: The Laser Cannon no longer holds multiple shots. It holds charge for one - shot at a time. This is because the beams it fires now do 90 damage with 100 - armor penetration. Furthermore, it is now considerably more accurate. Lastly, - to counteract it only holding one shot at a time, it now autorecharges, which - takes 60 seconds. - Zuhayr: - - rscadd: Ports/adapted several kitchen machines from Apollo Station. -2016-07-08: - EmperorJon: - - rscadd: Adds admin functionality to call a trader ship event with the Beruang - in the same manner as ERT dispatches. - - rscadd: Adds a Trader 'antagonist' as they use the antagonist framework. Not considered - an actual antagonist, like the ERT. - - maptweak: Alters Beruang base to provide some clothing for Traders plus a locked-down - area for admins to spawn cargo. - - maptweak: Alters Beruang access to a new Trader-ID-only access requirement. - Neerti: - - maptweak: Restructred the AI core massively, and the upload slightly. - - rscadd: Adds a new material type, called Durasteel, which is made from plasteel - and diamonds. It's incredibly tough and also reflective. The inner walls of - the AI core contain this new material to protect it. - - rscadd: New turret subtype just for the AI core, that is more durable, has a chance - to shrug off EMP, and fires xray lasers. They even turn green. - - tweak: Turrets now wait to go back down in their covers upon losing sight of a - target. - - tweak: Emitters now have health, and can be damaged by projectiles. They will - explode on death. - - tweak: Critical APCs (the type found in the engine and AI core) are now more resistant - to EMP. Equipment and Enviroment stays on during an EMP, and less of the cell - is drained. - Sin4: - - rscadd: Added benches. - - rscadd: Added floor lamps. - - rscadd: Added water-cooler cup dispenser. - Yoshax: - - rscadd: Adds recipes for four new non-alcoholic cocktails. Shirley Temples, Roy - Rogers, Arnold Palmers and Collins Mixes. - - rscadd: Adds five new Tajaran hairstyles ported from Aurora. -2016-07-10: - Anewbe: - - bugfix: Changelings will no longer remain stunned or suchlike when attempting - to regenerate. - Cirra/: - - rscadd: Added a chemistry gripper for Crisis borgs. - GinjaNinja32: - - rscadd: Adds 3x & 4x upscaling options for players with very large monitors. - HarpyEagle: - - tweak: Runtime can now become friends with anyone, regardless of their initial - job. - Neerti: - - rscadd: Mining can now be done with explosives. The effectiveness depends on - the spot chosen to explode, so using an ore scanner is advised. - PsiOmegaDelta: - - rscadd: MedHUD overlays now have more stages, both for 'normal' and critical stages - of injury, for improved quick-diagnosis. - Redstryker: - - bugfix: Communicators will no longer show up on camera networks by default. - - rscadd: Adds a selection of flannels to the loadout. These can have their sleeves - rolled up, their buttons buttoned up, be tucked in and any combination of those. - Techhead: - - rscadd: 'New Random Event: Solar Storms. Similar to a radiation storm, but anywhere - inside the station is safe. Also boosts solar panel output significantly for - the duration.' - Yoshax: - - rscadd: Ports an Advanced Who verb that allows normal players to see what players - are in game, and which aren't. - Zuhayr: - - tweak: Modifies the health HUD element to display limb damage individually. It - will reflect your species, prosthetics, loss of limbs, as well as being on fire. -2016-07-13: - Anewbe: - - rscdel: Removed detonating borgs via Robotics Console - Yoshax: - - tweak: Emagging a cargo supply console will now properly hack it and will also - remove the access requirement. - - bugfix: Languages selected during character setup will once again be properly - added to mobs. - xDarkSapphire: - - rscadd: 'Adds a new hairstyle: Spiky Ponytail.' -2016-07-22: - Anewbe: - - rscdel: Removes assault carbine from uplink. - - tweak: Speeds up the toxin reagents - EmperorJon: - - bugfix: Having between 20 and 100 nutrition and over 45 toxin damage will no longer - cause you to gag ad-infinitum and die. It now respects vomit time restraints. - - tweak: Gagging now occurs only when the mob has no nutrition at all. It no longer - causes three toxin damage, only weakens as before. - - tweak: Vomiting and/or gagging from toxins now occurs regardless of nutrition, - not only 20+. - Neerti: - - rscadd: Adds ability for ghosts to send and receive text messages via communicator. - Yoshax: - - tweak: Drop pod contents have been adjusted. In general, you will get something - more useful and the less useful contents have been made more interesting. There - is a total of 12 drop pod content lists and 7/12 are useful, 4/12 are useless, - 1/12 is potentially useful. - - tweak: Stun Revolvers will no longer be able to spawn from random energy weapon - spawns. In addition, some of the other random item spawns have new items and - adjusted probablities. - - rscdel: Tajaran are no longer negatively affected by coffee. - - tweak: Bucklecuffing as it has been known for the longest time is no longer a - thing. When you resist when cuffed and buckled to something, you will now resist - out of the handcuffs first, allowing you to simply unbuckle yourself once done. -2016-07-25: - PsiOmegaDelta: - - bugfix: Robot upgrades produced in robotics to be applied to Cyborgs can now once - again actually be applied. - Rymdmannen: - - rscadd: Added department specific rubber stamps for cargo and warden. - - maptweak: Replaced 'small rubber stamp' with corresponding new ones in cargo area - and warden's office. - - spellcheck: Renamed ''quartermaster's stamp'' to ''quartermaster's rubber stamp''. - Superbee29: - - rscadd: Ghosts can now see the power in a cable when examining it. - Yoshax: - - tweak: Flashes no longer provide an instant stun. Flashes now confuse and blind - the affected person for five seconds and in addition makes their eyes blurry - for ten seconds. - - tweak: The empty box supply crate has been replaced with a shipping crate. Which - contains what you need to send stuff places! - - maptweak: The chef now gets a destination tagger and packaging paper to send people - food. - - bugfix: Drinking glasses now have a material cost in the autolathe. - - tweak: When emagged security bots such as the Securitron and ED-209 will now move - and pursue faster. - - bufix: Securty bots such as mentioned above will now be properly emagged. - - tweak: The cost of items in the antag uplink have been tweaked. Some are cheaper, - some are more expensive. In addition, you can now buy singular grenades isntead - of boxes. Buying a box has a discount over the singular. - - bugfix: Repairing burn damage on FBPs will now once again properly work. - - bugfix: Undislocating limbs will now once again properly work. - - rscadd: The phoron assembly crate in cargo has been renamed to a Phoron research - crate and now contains more supplies including tank transfer valves. - - tweak: The cooldown between discount offers in the antag uplink is now 10 minutes - versus the previous 15 minutes. - - tweak: The ordering of the items in the autolathe will now be somewhat diferrent - due to a code overhaul. It is now in alphabetic order. - - tweak: Security robots such as the Securitron or ED-209 are now more hardy and - can take more damage before dying. - - tweak: The silenced pistol no longer has any recoil and can be fired faster with - less delay in between shots. -2016-07-31: - Anewbe: - - rscadd: Sprays now respect shields. - Yoshax: - - bugfix: Certain items such as pills and suchlike will once again be usable on - someone who is on a surgical table/table. -2016-08-05: - Anewbe: - - rscadd: Changeling Self-Respiration is now a toggle. By default they breathe normally, - but if they use the power they no longer require oxygen, or experience the effects - of inhaled gasses. - - tweak: Heat based damage has been increased. This includes fire. - Hubblenaut: - - rscadd: Windoor assemblies can now be named with a pen. - - rscadd: Windoor and airlock assemblies now show their custom name during construction - phase. - - tweak: Windoors can now be made out of two sheets of glass or reinforced glass, - for normal and secure windoors respectively. - - tweak: Windoors now automatically close after construction. - - tweak: Adjusts the algorism for how windoors and windows are placed on construction - (when there are already windows co on the same turf). - - bugfix: Windoors will now drop exactly the materials they were made of. - - bugfix: Prying a broken circuit out of a windoor will no longer cause duplicates - to drop. - - bugfix: Airlocks no longer spark after spawn and several other icon update issues - were fixed. - - bugfix: Fixes reinforced walls not being constructable with one sheet left in - stack. - - bugfix: Windows that were busted out of their frame by force are now correctly - rotatable. - - bugfix: Lots of spellchecking and code cleanup in windoor and airlock code. - - rscdel: Killed innocent kittens. - Sin4: - - bugfix: Advanced Body Scanners are now deconstructable - - bugfix: You can now add coolant to the Radiocarbon Spectrometers - - tweak: Frame code revamped and cleaned up. - - rscadd: R&D server circuitboards can be swapped between core and robotics types - using a screwdriver. - Yoshax: - - bugfix: Wounds will now once again bleed. - - bugfix: Xeno loadout items will now properly be reloaded into a slot when the - server restarts. - - rscadd: A new item has been added to the uplink. Package bombs. These come in - two variants, small and big, which cost 20 TC and 40 TC respectively. These - come in a box with an explosive, a disguised detonator and a screwdriver. The - use the detonator you muse apply the screwdriver to configure it into detonator - mode. This must be done when it is closed. -2016-08-07: - HarpyEagle: - - rscadd: Severe enough burn damage now causes one-time blood loss due to blistering - and body fluid cook-off. - Sin4: - - bugfix: Fixed ERT icon not showing up properly for sechuds. - - tweak: Fixed instances of the game mode's config_tag being displayed instead of - the game mode name. - Yoshax: - - rscadd: Attacking yourself, or anyone else with a stack of five or more telecrystals - will teleport the attacked person to a random, safe (not in space) location - within 14 metres. - - tweak: All telecrystals ammounts have been multiplied by 10. This means the base - amount is now 120, and an emag for example costs 30, vs the previous 12 and - 3, respectively. - - tweak: You can once again use telecrystals on an emag to add more uses to it. - You get 1 use per every 2 telecrystals. - - tweak: Instead of only being able to remove 1 telecrystal from your uplink, you - can now remove 1, 5, 10, 25, 50. -2016-08-08: - Kelenius: - - rscadd: Xenoarcheology code has been partially redone. - - tweak: Pick set will now sort the picks inside it. - - tweak: Removed useless random numbers from GPS coordinates in various places. - I'm sure we have not lost the arcane knowledge of rounding 500 years into the - future. - - tweak: Picks renamed to show their excavation depths. - - tweak: Suspension generator's power use lowered. - - tweak: Suspension generator's different field types removed. By the way, remember - that they can suspend any item and even mobs. - - tweak: Archeology belts and pick sets can now hold small pickaxes. Pick sets still - only have 7 slots. Brushes fit on your ears. - - tweak: Empty rock drop rate reduced. - - tweak: Empty rock renamed from 'rock' to 'small rock' so you can tell if you are - clicking on a turf or an item when hovering over it. - - tweak: Empty boulder spawn rate reduced. - - tweak: Tape measuring is a bit faster. - - tweak: Scanner now shows the lowest and the highest depth of the find (highest - is depth + clearance) for easier calculations. Ideally, you need to hit exactly - the lowest spot. Less ideally, hit anywhere between higest and lowest. Hit below - lowest and you have a chance to break the find. - - tweak: You can now use a brush to clear strange rocks. Welder uses less fuel for - that than before. - - tweak: Anomaly analyser's report made a bit easier to read. - - tweak: Anomaly locater will now also locate normal finds. - - bugfix: Gas masks will now correctly spawn as archeological finds. - - bugfix: Digsites will now properly contain several (4-12) turfs in a 5x5 radius. - Be careful when digging near your finds. - - bugfix: Suspension generator will now correctly turn off (qdel issue). - - bugfix: Archeology overlays won't disappear when the icon is updated (e.g. when - mining next to it). - - bugfix: Archeology overlays won't overlap each other and will properly disappear - when you mine out a find. - - bugfix: Some spawning oddities were fixed. - - bugfix: Checks for whether you get a strange rock or a clean item were fixed (previously - it always gave you clean item where it should have been rolling a random number). - - bugfix: Can no longer get rid of any item by putting it into evidence bag and - bag into core sampler. - - bugfix: Can no longer irreversibly fold pick set into cardboard. - - bugfix: CO2 generator effect now has a type. - - bugfix: Phoron generator effect will now always generate phoron, not sometimes - phoron and sometimes oxygen. - Sin4: - - tweak: Scheduler ported from Baystation's port of Paradise's scheduler. - Yoshax: - - tweak: Some items such as commonly found tools are now slightly more effective - when wielded as weapons. This change has been made because many of them were - too low, and low because of mostly holdovers from other servers where things - such as grey tide are big concerns. -2016-08-13: - Yoshax: - - bugfix: The ERT camera monitor on the shuttle will now connect to the right network. - - bugfix: The 'choose sprite' verb as a ghost will no longer prematurely clear you - sprite and will now return your sprite to what it was previous when you press - 'no'. However, it will not allow you to get back the sprite of your actual character - because those are horrible snowflakes. - - bugfix: The Atmos Substation is now a proper substation with a breaker box and - all! - - bugfix: Diona Nymphs now get a popup window on evolution to allow them to input - a name. - - bugfix: Changeling revive will now close any surgical incisions. -2016-08-15: - Anewbe: - - tweak: Changed some words to match current Tajaran lore. - Hubblenaut: - - rscadd: Adds a verb for toggling whether to show specific pieces of underwear. - - tweak: Changes medical belt sprite. Mostly white now so they go nicely with all - medical uniforms. - Yoshax: - - bugfix: Dirt accumulation on tiles will now work again. - - bugfix: The change appearance window provided to antagoniss such as mercenaries, - heisters or suchlike (including traders!) will now properly allow people to - select species they are whitelisted for. -2016-08-29: - Haswell: - - rscadd: Modules installed within a hardsuit will now be listed when examining - the hardsuit control module while being held or worn, if the maintenance panel - is open. - Hubblenaut: - - bugfix: Bottles will now actually sell for their set prices. - - tweak: Chief Medical Officer and Medical Doctors now spawn with a health analyzer - instead of a penlight. - Sin4: - - bugfix: Camera Console swaps to active camera upon clicking on. - - bugfix: Hugs gender correctly. - - bugfix: Prometheans gender correctly and have a gender identity. - - bugfix: Meatspike no longer takes you prisoner upon placing something on it. - - rscadd: Lighting someone on fire now tells the admins. - - bugfix: Wiping something down with a damp rag no longer wets the floor. - - bugfix: Captains gloves now appear when put on. - - bugfix: Fixes Station Administrator Spawn point and access/restrictions. - - tweak: Renamed items from captain to station administrator. - Yoshax: - - bugfix: IDs can now actually be put onto your ears. - - bugfix: Lungs will now once again rupture when you are in an area where you cannot - breathe. This has a relatively small chance to happen. -2016-08-30: - Anewbe: - - tweak: Arm and leg guards are now slightly less slowing. - - tweak: Mining RIG is now faster - - tweak: Tweaks security voidsuit armor values. - - rscadd: Hardsuits (RIGs) now have an inbuilt suit cooling system, toggled via - HUD button. This only works when the hardsuit is fully deployed, and drains - charge from its power cell. - Neerti: - - rscadd: Emitters can be examined to see if they are damaged. They can also be - repaired by applying metal sheets to them. - - tweak: Emitters now only explode on death if they are on a powered wire with significant - power flowing through it. - - bugfix: Emitters don't explode in one hit, or by tasers or non-damaging projectiles - anymore. -2016-09-01: - Alberyk: - - rscadd: Added more horns and horns related facial options for Unathi. - Anewbe: - - tweak: Hyperzine metabolizes twice as quickly. - - rscadd: Changeling space suits now have magboots. - - rscadd: Armblade now has suicide_act text. - Techhead: - - rscadd: Medical splints can now also be applied to hands and feet (in addition - to arms and legs). - - rscadd: For those that miss the old functionality, ghetto splints have been added. - These can be crafted with a roll of tape and a metal rod and can only splint - arms and legs. - Yosh: - - rscadd: The secure briefcase is now available in the loadout for anyone who wishes - to use it. - - bugfix: Leaving a space area and entering a non-space area will no longer leave - your sprite floating. - - rscadd: Ponchos can now be attached to your uniform as an accessory. In addition - they can also be attached to suits! - - bugfix: Changeling regenerative stasis will now properly regrow limbs. - - bugfix: Changeling regenerative stasis will no longer runtime and refuse to work - when you have a missing limb. - - tweak: The shuttle during revolution will no longer take forever and a day to - arrive and such. -2016-09-02: - Yosh: - - rscadd: DNA Lockable guns have been finished. Any gun can be made into a DNA Lockable - gun by inserting a DNA Chip Lock. These are not currently available, and are - adminspawn only. Please refer to your nearest staffmember/developer to begin - discussion for future implementations of this feature. - - rscadd: A new hairstyle has been added named poofy2. - Yoshax: - - tweak: Autotraitor now needs 0 players to start in secret. - - tweak: Diona are now slightly faster! -2016-09-03: - Yosh: - - tweak: Projectile flash rounds will now do the same as a flash when it hits the - target. As such, it will blind, confuse and blur the eyes of thw target. Pistol - and machine gun rounds last the same length as a flash, shotgun rounds last - longer. - - tweak: Changeling recursive enhancement is now a toggleable passive ability, instead - of a one-time use active ability. - - rscadd: You can now vomit by using the vomit emote. - Yoshax: - - bugfix: Changeling armor and space armor can now be cast off regardless of your - stored chemicals. -2016-09-16: - Anewbe: - - tweak: Explosive implants should no longer gib the target if the setting is Localized - Limb. - - rscadd: Lasercannon has 4 shots and fires slightly faster. - - tweak: Lasercannon shots are slightly weaker to compensate for increased sustain. - - tweak: Changes Unathi sprites slightly. - - tweak: The advanced egun, laser carbine, and lasercannon now take up a bit more - space in bags. - - tweak: Prosthetic limbs and extremities no longer increase body temperature. - - tweak: Ninja and Technomancer now require 5 players to start in either secret - or voted. - - tweak: Split skirts into 'skirts', which are just a skirt, and 'skirt outfits', - which cover the upper body. Check your loadouts, they should remain otherwise - unchanged. - - rscdel: Splints are no longer reusable. - - tweak: Water is now more effective at dousing burning people. - - rscdel: Ninjas now vanish in a cloud of smoke, rather than exploding. - Chinsky: - - rscadd: Added a hawaii shirt to loadout accessories. Can be attached to clothing - like suit jackets etc. Can also be found in mixed wardrobes. - Yoshax: - - tweak: People bleed faster and more. - - bugfix: Splints are once again reusable and have been improved behind the scenes. - - bugfix: Removing splints will now correctly give you the splint used to splint - the organ. -2016-09-19: - Anewbe: - - rscadd: Blood Drain now heals internal damage, including broken bones and internal - bleeding. - - rscadd: Adds the Command Secretary job. - - rscadd: CE hardsuit now has proper magboots and insulated gauntlets. - - bugfix: Powersinks should actually explode again, after a while. - MagmaRam: - - rscadd: Lasers and energy projectiles in general now glow in the dark. - - tweak: Robotic and prosthetic limbs can now be used in creation of simple robots, - rather than just the robotic (lawed-chasis) limbs. - Zuhayr: - - rscadd: Added /vg/ direct-action ventcrawling. You will now crawl through the - actual pipe network, a step at a time. Have fun. -2016-10-02: - Anewbe: - - tweak: Pain from burn damage is now equal to that of brute damage. - - bugfix: Removed the exploit by which you could gain cargo points by ordering plastic - crates. - - rscadd: Upped cargo point gain by 50%. - - rscdel: Parapen in SpecOps crate replaced with a 4th smoke grenade. - HarpyEagle: - - rscadd: Adds applying pressure to body parts to reduce bleeding. With desired - body part selected, help-intent click yourself or get an aggressive grab, then - help-intent attack with the grab item. Each person should only be able to apply - pressure to one body part on one person at a time, so choose wisely. Applying - pressure will get blood on your hands. - Yoshax: - - rscadd: Armbands can now be attached to things that go in the outer suit slot. - - rscadd: Shanking has been added. You can shank someone by getting an aggressive - grab on them, targetting their chest and attacking them with a sharp item. This - has a special attack that has greatly increased chance to do internal damage, - also does bonus damage for weapons that are both sharp and have edge. - Zuhayr: - - rscadd: Added /vg/ direct-action ventcrawling. You will now crawl through the - actual pipe network, a step at a time. Have fun. -2016-10-05: - Redstryker: - - rscadd: Added four sounds that are randomly played when bones break. Also allows - the Technomancer to play the bone break sound. - - rscadd: Adds a black variety of the Security Voidsuit called the 'Crowd Control' - voidsuit. It can be obtained from a Suit Cycler with Security clearence. - - bugfix: Codes in icon state for the Press Vest. - - rscadd: Added a child of the Medical armband with a red cross on it. It is available - on the loadout. -2016-10-06: - Anewbe: - - rscadd: Energy weapons and stunbatons now use special device power cells, these - can still be recharged. - - rscadd: Energy weapons can be unloaded and reloaded by clicking them with an empty - hand or a device cell, respectively. The process of loading a cell takes a few - moments. - - rscadd: Stunbatons no longer require a screwdriver to switch cells. - - tweak: Tweaked the order in which stunbatons check for power, they should now - visibly power off when their cell hits 0, instead of one hit after. - - rscadd: Security lockers (HoS, Warden, and Officer) now have an extra device cell - in them. - - rscadd: Protolathe can print device cells. - - rscadd: Adds start_recharge() proc to energy weapons. When called, this should - cause the affected weapon to begin self-charging. - - rscdel: Weapons that self-recharge won't do so for a short period after firing. - - tweak: On weapons that can fire both lethally and non-lethally, lasers drain twice - as much power as tasers. - - tweak: Laser cannon, LWAP, and self_recharging weapons cannot switch cells. - - tweak: Map has been changed to include more rechargers. Merc and ERT bases include - extra device cells. - Neerti: - - tweak: Cleaned up the work in progress event system. - - rscadd: Added framework for a new grid check for the new event system. - Spades Neil: - - tweak: Replaced Station Administrator with Colony Director, based on feedback - literally from NASA. - Yoshax: - - bugfix: You can now only fit one pizza per box, and pizzas will no longer vanish - to pizza gnomes. - - rscadd: Energy swords will now produce a small light. The light is determined - by the color of the blade. - - bugfix: Simple mobs such as slimes, or carp, will now ignore intent requirements - for passing applied tape. - - bugfix: Long records will no longer be devoured by long-record-goblins when attempting - to edit them using a console in-round. - - bugfix: AIs with special roles will now get access to the fancy law manager. -2016-10-08: - Anewbe: - - bugfix: Unloading an energy weapon should now correctly show what was unloaded. - - tweak: Borg stun baton is back to the old cost, for balance reasons. - Redstryker: - - rscadd: '''Overseer'' added as an alt title to Colony Director alt titles list.' - Spades Neil: - - rscadd: Adds the ability to hack Jukeboxes. - Yoshax: - - rscadd: Flashlights now take powercells. - - rscadd: Flashlights now have multiple brightness levels, including low, medium - and high. -2016-10-10: - Anewbe: - - tweak: The base device cell has been shrunk, for use in non-weapon devices. - - rscadd: Adds another class of device cell, for use in weapons. - - rscadd: Belts can now hold device cells. - - rscadd: Cryopods (including the portal and elevator) no longer consume ammo or - device cells. - - bugfix: Low Yield EMP grenades now have the proper EMP radii. - Redstryker: - - bugfix: Allows promotion to Colony Director on the ID console. -2016-10-24: - Anewbe: - - tweak: The color selectable beret should now be more vibrantly colored. - - rscadd: Bullet armor has a higher chance of preventing an embed. - - tweak: The actual system by which embed works has been changed. The overall effect - should be negligible. - - tweak: Flashlights use device cells. Time of use should be roughly unchanged. - - rscadd: Device cells have a chance to spawn where normal cells do. - - rscadd: Internal Affairs Agent HUD icon added. - - tweak: Command, QM, and Bridge Secretary icons are now blue. - - tweak: Research department icons are now purple. - - tweak: Supply department icons are now brown. - - tweak: Chemist icon is now white and red, like the rest of medical. - - tweak: Using a roll of tape on a person requires the same level of grip as handcuffs. - - tweak: The disclocation chance when using disarm intent with a weapon has had - its' formula changed, meaning the threshold for always disclocatiing is now - higher, and no longer 15 force. Meaning weapons will dislocate limbs less often - and will also do less damage. - MagmaRam: - - tweak: Rates of blood loss now depend on the type of wound inflicted and where - the wound is inflicted, as well as the damage. - Neerti: - - tweak: Changes how the grid check event works. A new machine called the grid - checker exists in engineering, near the engineering substation. The actual - event now involves a power spike originating from the engine, which the grid - checker will activate upon sensing it, and causing a blackout. Engineering - can restore power faster if they hack the grid checker correctly. A piece of - paper left in the substation has more details. - - rscadd: Adds new 'spell power' mechanic, currently tied to technomancer cores. - Certain cores will augment various characteristics of spells, such as damage, - radius, etc Base spell power is 100% (internally 1.0) and some cores may raise - or lower it. - - rscadd: Adds new 'info' tab for Technomancers that hopefully tells new them what - they need to know. - - tweak: Round-end now shows every spell each technomancer has, as well as their - core type. - - tweak: Ability HUD buttons can be re-ordered by clickdragging one button onto - another. - - bugfix: Recycling core now actually works. - - rscadd: Adds two new cores. The Safety Core, which reduces instability by 70%, - however it hass less energy, lower recharge rate and lower spell power. Also - the Overcharged Core which uses more energy, caused more instability, but has - far higher spell potency. - - rscadd: Adds a new Spyglass item, that functions exactly like a pair of binoculars. - This is for Techomancers. - - tweak: Technomancer Resurrect now has a deadline of 30 minutes until a dead person - can't be revived, instead of 10 minutes. - - tweak: Technomancer Radiance is now three times as strong. Also Radiance with - a Scepter prevents the caster and allies from being afflicted. - PapaDrow: - - rscadd: Striped undergarments now exist. - Redstryker: - - rscadd: Added a blue variant of the Medical voidsuit called the 'Emergency Medical - Response Voidsuit' that can be obtained from the suit cycler. -2016-10-25: - Anewbe: - - tweak: The effects from empty-handed disarming now have a cooldown. - - rscdel: HoS and Detective equipment is less protective. -2016-11-13: - Anewbe: - - rscadd: Adds a list to prevent certain jobs from being certain roundstart antags, - rather than outright preventing them. - - bugfix: Surplus crates won't make more surplus crates. - - tweak: Random buys from uplinks will no longer buy anything out of the Badassery - tab. - - bugfix: Loincloth now has an on-mob sprite. - - rscadd: Ported Bay's tape recorders (which actually work). - Broseph Stylin: - - rscadd: Added HUD aviators to the loadout. They're restricted to security, and - can toggle between HUD and flash protection modes, but won't offer both at once. - MagmaRam: - - rscadd: Holsters can be concealed by some suit-slot items, others conceal all - accessories. - - bugfix: Fixed certain suit-slot items not hiding jumpsuits properly. - RedStryker: - - rscadd: Adds a Guy Fawkes mask. - Yoshax: - - rscadd: Clipboards can now be made out of wood. -2016-11-17: - Anewbe: - - tweak: Slowdown in armor sets moved to chest and legs, rather than arms and legs. - - rscadd: Bullets and lasers will now show up on Autopsy Reports. - - bugfix: Fixed all ERT calls being silent, regardless of selected option. - - rscadd: Flashlights can now fit in rechargers. - - rscadd: 'Added flashlights, maglights, and the secHUD sunglasses (Sec only) to - the loadout. ' - TheGreyWolf: - - rscadd: Added Sign language, which can be selected from character setup. -2016-11-18: - Anewbe: - - rscadd: Added .45 and tommygun AP ammo to the uplink. - - tweak: CPR can be performed on corpses, doesn't actually help them. - Datraen: - - tweak: Makes cameras faster, removing a large chunk of bloat relating to taking - pictures. Specifically for taking pictures of angry cheetos. - MagmaRam: - - bugfix: Slimes will now properly process chems that have zero effect on them (that - is, they'll get rid of them instead of clogging up their metabolism forever). - Nerezza: - - rscadd: Added Lemon Juice to soda dispensers across the station. Reagent cartridge - refills can be ordered via cargo. - - rscadd: Added Lemon Juice and Milk Cartons to the bar's Booze-o-Mat. You can now - order milkshakes and not get shot (maybe). - Yoshax: - - experiment: Being unable to breathe and having oxyloss will now cause brain damage - that scales with the amount of oxyloss you have. Without oxygen, the brain takes - damage and will EVENTUALLY die (but you would most likely die of actual oxyloss - before that point.) -2016-11-20: - Datraen: - - tweak: Global announcer now has access to engineering channel. - - tweak: Supermatter now uses the global announcer. - Nerezza: - - bugfix: Digital FBP/Cyborg brains no longer drop brains. - - rscadd: Digital FBP/Cyborg brains are tagged with their designation now. - - bugfix: All cyborgs can now unbuckle people from beds/chairs. Just attack the - structure with no module selected. - - rscadd: Added the current station date to the Status tab. Ported from Baystation. - Yoshax: - - rscadd: Adds the ability for Hydroponics Trays to enter cryogenic stasis. You - can do this by using a multitool on one. Wheh in stasis the plant will be frozen - in time, it will neither grow nor die. Now you can have a life! -2016-11-21: - Anewbe: - - tweak: Drawing blood with a syringe now takes a moment. - - rscadd: Communicators no longer have a loadout cost. - - rscdel: Having more than 50 tox will now cause liver damage, rather than 60. - - rscadd: Adds Stimm, a homemade hyperzine made of sugar and welding fuel. - - rscdel: Hyperzine is now toxic. - Nerezza: - - tweak: Space suits now hide jumpsuits, so excessively bulky jumpsuits no longer - peek through. - - bugfix: Teshari wearing webbing now have the correct sprite overlay. More accessories - need sprites, however. - - wip: Teshari sprites no longer show the majority of suit accessories, anyone who - wants to pitch in to fix this are invited to do so! - - rscadd: Windoors can now be disassembled. Apply crowbar when open. - - rscadd: Engiborgs and drons can name door and windoor assemblines now. Click an - adjacent assembly with no modules active. - - bugfix: Windoors now know how to name themselves. In addition, unnamed windoors - now spawn with their default name instead of null. - RedStryker: - - rscadd: Added a colorable hairflower to the loadout. - - rscadd: Added a taqiyah to the loadout that can be colored with the color datum. - - tweak: Fixed the sprite for the red Security Hat backwards sprite so that the - 'N' on it is no longer backwards. - Yoshax: - - tweak: All robots now get crowbars, flashes and fire extinguishers. - - tweak: IV Drips are no longer dense, meaning they can be walked through like chairs. - - tweak: Robots can now use the toggle lock verb on crates and lockers. - - rscadd: There is now an experimental welding tool, it regenerates its fuel on - its own! One is given to the Chief Engineer, produced in Research, or found - in Syndicate toolboxes. -2016-12-01: - Anewbe: - - bugfix: Adult Diona should be able to name themselves properly now. Tweaked from - a Baystation PR by FTangSteve. - - rscdel: Lightning spells and bioelectrogenesis will no longer stun outright. - - rscadd: FBPs should no longer get mutations from radiation. - - bugfix: Observe warning should properly show how long you have before you can - join. - - rscadd: Adds a Toggle Shoe Layer verb to shoes, that let them be worn over the - uniform (ie tucking your pants into your shoes). - - bugfix: Shoes now properly check if they can hold knives or not. - - bugfix: Sign language can now be used while muzzled. - Datraen: - - tweak: Skrell are now more resistant to various chemicals, more susceptible to - pepperspray. - ForFoxSake: - - bugfix: Fixed a possible href exploit allowing any living player to speak any - language. - - bugfix: Organic beings can no longer speak Encoded Audio Language, although they - can still understand it just fine. - - tweak: Positronic brains can now speak Encoded Audio Language. - - tweak: Station manufactured Full Body Prosthetics can now speak Encoded Audio - Language. - MagmaRam: - - tweak: Corpses will now process a select few chemicals, meaning you can now add - blood into people who bled out before defibbing them. - - bugfix: Defibrilators fixed again. - - bugfix: R&D machines will now accept stacks of metal and glass from Cargo orders - properly. - N3X15: - - bugfix: Electrical storms no longer affect only cargo. If you're not cargo, your - lights are no longer safe. - Nerezza: - - rscadd: APCs now have a new EMP behavior. Regular APCs shut off for a few minutes, - critical APCs (engine and AI) shut off for 30ish seconds. Medbay will now not - be permanently disabled by EMPs if no engineers are available to fix their APCs. - - rscadd: Bay's timed reboot interface for APCs has been ported for EMPed APCs. - - tweak: APCs affected by grid checks say so on their nanoUI now. - - tweak: APCs damaged by the apc_damage random event are now effectively emagged - APCs. Anyone can operate their interface. - - tweak: Emagged APCs can now be repaired by removing their power cell and using - a multitool to 'reboot' them manually. - - bugfix: Nin and twiz no longer **** up APCs if they drain the battery completely. - - tweak: Nin and twiz drain power from the wire an APC is connected to first, then - drain from the power cell to fill the drain's 'quota'. Because the amount of - power given from the power net is random, this means the battery will still - drain but this also means you don't need to crowbar tiles in a room if the APC - is empty. - - bugfix: Bluescreened APC wire panels now visibly open like they should. - - tweak: Bashing APCs open was only effective under certain circumstances, but would - spam everyone anyway. This has been changed to only spam the user and to be - more indicative of when you can bash the cover off. - - spellcheck: Full grammar pass on APCs. - - rscadd: Hazard shutters animate slightly and play a sound so players can more - readily identify where shutters are being pried. - - bugfix: Two people can't pry the same shutter simultaneously anymore. - - bugfix: Fixed a bug causing shutters to immediately pry open when people didn't - want the shutter open. - - rscadd: Inflatables can be deflated using ctrl-click. - - rscadd: Inflatables can be deployed on adjacent tiles by clicking them. - - bugfix: Bumping into closed inflatable doors will no longer freeze them for a - few moments. - Yoshax: - - maptweak: All Heads of Staff now get multi-color pens in their office. - - tweak: Doors that do not have an access requirement can now be opened when handcuffed. -2016-12-17: - Anewbe: - - bugfix: EVA rig now has insulated gauntlets. - - rscadd: Adds another slot to select languages, if desired. - - rscadd: The base device cell is now selectable in the loadout. - ForFoxSake: - - tweak: Digital Valve pipes can now be made and moved. - - tweak: Air Vents can now have their direction changed. - - maptweak: Atmospherics is now a little less cluttered. - MagmaRam: - - rscadd: Added a nice implant that allows humans to speak EAL. - N3X15: - - rscadd: Added a changelog editing system that should cause fewer conflicts and - more accurate timestamps. - - rscdel: Killed innocent kittens. -2016-12-30: - Anewbe: - - rscadd: Changed run/walk speed to be based only on a config file. - - tweak: Walking should be faster now. - - tweak: Removed shoeless slowdown. - Atermonera: - - bugfix: Science grippers can install and remove borg components - - bugfix: Exosuit grippers can install exosuit equipment - - bugfix: Sheetloaders can load materials into protolathes and circuit imprinters. - - tweak: Protolathes and circuit imprinters input materials like autolathes, taking - as much of the fed stack as it can. - MagmaRam: - - tweak: Beakers can now have longer labels. - - rscadd: Adds defibrilator crate for cargo. - - tweak: Changed how certain stacks spawn behind the scenes. Should fix a few esoteric - bugs without impacting anything else. - Neerti: - - bugfix: Subtracting, multiplying, and dividing with arithmetic circuits should - actually occur now. - - rscadd: Added new arithmetic circuits; sign, round, and exponent. -2017-01-03: - Anewbe: - - bugfix: Farmbots should be buildable again. - - rscadd: FBPs with vital (head/torso/groin) damage will now show up on the crew - monitor as being damaged. - - bugfix: Flashes should now properly affect accuracy in hand-to-hand. - - bugfix: Taj should no longer be poisoned by any sort of coffee. Looks like we - missed a spot last time. - - rscadd: Recording tapes can now hold 30 minutes of chat. - - rscadd: Tape recorders and their tapes now fit in security and detective belts. - - rscadd: Lasers can now ignite thermite on walls. - - bugfix: Device cells now fit in wall rechargers. -2017-01-12: - Anewbe: - - rscadd: Ported over a bunch of hairstyles and underclothes from Baystation. - - tweak: Nurse spiders inject eggs less frequently. - - rscadd: Nurse spiders give a warning to the victim when they implant eggs. - Neerti: - - rscadd: Hand-held flashes and flash rounds will now stun upon repeated applications, - similar to stun batons. -2017-01-23: - Anewbe: - - rscadd: Can now just click ones boots to draw a holstered knife. - - rscadd: More boots can hold knives now. - - rscadd: Added an action button for breath masks, making it easier to toggle them. - - rscadd: Space Carp have a chance of sticking around after their event completes. - - tweak: Robotic limbs will no longer show up on the health scanners. - - rscadd: Medics and Security can open firedoors. Do so at your own risk. - - rscadd: Chaplain hoodie now has pockets and an actual hood. - - tweak: Winter coat hoods have the same armor values as their coats. - - rscadd: Characters will now spawn in at a random level of hunger. - - rscadd: Assisted and Prosthetic organs now have sprites. - - rscadd: Surgical tools will not attack while on help intent, this should prevent - people getting accidentally stabbed in surgery. - - rscadd: Tajaran now process reagents slightly faster. - - rscdel: Taj are now allergic to coffee again, per loremaster request. - - tweak: Taj now get drunk faster. - - tweak: Hyperzine is now more toxic to Taj. - - rscadd: Readded the Vox for admin/antag use and testing. They breathe Phoron now, - rather than Nitrogen. - - bugfix: The Xenotaser should work properly. - FTangSteve: - - wip: RootSpeak is now split into a local and a global variant. For now the global - acts as a hivemind. - Hubblenaut: - - tweak: Can now click on turfs with trash bags and similar to quick-gather everything - on it. No longer pixelhunting for cigarettes and bullets. - - bugfix: Buckets and other reagent holders will no longer simply be put into the - janitorial cart's trash bag. - PsiOmegaDelta: - - tweak: The round start and auto-antag spawners can now check if players have played - long enough to be eligable for selection. - Techhead: - - rscadd: 'Added a new random event: Shipping Error - A random crate is mistakenly - shipped to the station.' -2017-01-28: - Anewbe: - - rscadd: Added Medical and Meson aviators. - - rscadd: Medical and Meson aviators are now in the loadout, department locked. - - rscadd: Meson Scanners have been added to the loadout, department locked. - - rscadd: Medical hardsuit has a toggleable sprint. - - bugfix: Carbon and Hematite should show up in asteroid walls. - - rscadd: Readded the random crates from mining. - - rscadd: Digging through an artifact sometimes doesn't destroy the artifact. - - bugfix: Space and cracked sand should no longer stop mining drills. - - rscadd: Diona can regenerate organs and limbs. - PsiOmegaDelta: - - rscadd: Resetting a character slot now requires confirmation. - Zuhayr: - - rscadd: Added a reset slot button to chargen. -2017-02-24: - Anewbe: - - rscadd: Fake command reports now make the paper show up. - - bugfix: Mining cameras should work now. - MagmaRam: - - tweak: There is now a short delay before being able to fire when using hostage-taking - mode, and a short delay between shots. This should make hostage mode useful - for taking hostages and ambushes, rather than as an aimbot in actual firefights. - - bugfix: Sandwiches at max size can be eaten with a fork. - Yosh: - - rscadd: Some vending machines now log the items they've vended and had stocked, - storing the name of the user, the time and the item. These can be found by using - the new verb for vending machines, or from the right click menu. - Zuhayr: - - rscadd: Adminhelps now have a TAKE button that allow an admin to claim it, and - inform the adminhelper that someone is on the case. -2017-03-22: - Anewbe: - - tweak: Oxyloss now shows up as cyan in scanners. - Arokha: - - tweak: Having less than 30% blood (as a result of literally having that little - blood, or a broken heart) causes 75 oxyloss per tick rather than 300 toxins - and instant death, to allow for heart transplants. - - bugfix: Infections now spread and process properly between external organs. - - rscadd: Infections now have appropriate symptoms that indicate to a player that - they have one. - - rscadd: Infections are now diagnosable more accurately in a medscanner, or visually - for high level infections or dead limbs. - Atermonera: - - bugfix: EAL, Sign language, and emotes will no longer use autohiss - - rscadd: Surgeon Borgs now have a proper medical hud module -2017-03-28: - Anewbe: - - spellcheck: Disregard the last changelog on the spelling of HI, the correct spelling - is Hephaestus. My bad. - - rscadd: Added a changelog editing system that should cause fewer conflicts and - more accurate timestamps. - - rscadd: Added Myelamine, a blood clotting chemical. This is available to antags, - and can be ordered from cargo or mixed. - - rscadd: Added Osteodaxon, a bone fixing medicine. This is available to antags, - and can be mixed. - - rscadd: Added Carthatoline, a stronger anti-toxin. - - rscadd: Added Spidertoxin, which comes from spiders (duh), and is used in making - Myelamine. - - rscadd: Death Alarms can now be ordered from cargo. - - rscdel: Dexalin Plus is half as strong (still pretty strong, though). - - rscadd: Ninja, Merc, and ERT-M Hardsuits can now inject myelamine. - - tweak: Inaprovaline now decreases the effects of bloodloss, and lessens brain - damage taken from OxyLoss. - - tweak: Prosthetic organs now take randomised damage when emp'd, this should roughly - average out to the old values. - - tweak: The effects of heart damage have been tweaked, should be slightly easier - to survive now. - - tweak: Some of the stronger chems have side effects, like confusion or blurry - vision. These should be fairly minor, and we may be tweaking them in the future. - - tweak: The suiciding var now wears off, making it possible to save suicide victims - if quick action is taken. - - tweak: Death Alarms now announce on General comms again. - - rscadd: Borgs can climb tables. - - tweak: Skrell can now be up to 130 years old. - - tweak: Skrell are more vulnerable to flashes, due to their large eyes. - - tweak: Tajaran no longer have appendicies. - - tweak: Tajaran are more vulnerable to flashes. - - tweak: Unathi have less brute resist, but some burn resist. - - tweak: Unathi gender is now unclear to non-Unathi. -2017-03-30: - Anewbe: - - tweak: Italics in chat are now trigged with | , rather than / . - - rscadd: Energy weapons, flashlights, stunbatons, and welders can now be moved - from hand to hand by click+dragging. - - rscadd: Flashlights can now be placed in wall rechargers. - - rscadd: Adds jumper cables, that act a bit like a defib for FBPs. - - bugfix: Bicaridine and Myelamine should now properly repair internal bleeding. - - rscadd: Overdoses are now more dangerous. - - rscadd: Chloral Hydrate overdoses are now even more dangerous. - Arokha: - - rscadd: Adds body markings and tattoos. - MagmaRam: - - bugfix: Borgs and assorted robits can now use grinders in chemistry and the kitchen. -2017-03-31: - Anewbe: - - rscadd: Added a number of crates to cargo. - - rscadd: Added the electric welder as a hidden autolathe recipe. - - rscadd: Added a few colored (in sprite, not in color) flashlights, to the loadout. - Sprites c/o Schnayy. - - rscadd: Maps in a pair of jumper cable kits. Use these to revive FBPs. -2017-04-08: - Anewbe: - - rscadd: Aprons now have pockets. - - bugfix: Automute shouldn't trigger if you don't type anything. - - rscadd: Adds the Chief of Security alt title for the HoS. - - rscadd: Wooden circlets can now be worn on the head. - - tweak: Package bombs now beep when activated, and have a delay before exploding. - - tweak: Package bombs are more expensive. - - tweak: Robolimbs can take a bit more damage before they start malfunctioning. - - tweak: Shrieking now decloaks changelings. - - rscadd: Drying yourself off with a towel should actually dry you off a bit now. - Arokha: - - tweak: Simple animals resist out of buckles and lockers - - tweak: Simple animals with retaliate but not hostile assist each other better - if they also have cooperative - - tweak: E-nets now are resist-out-of (or clickable) by the one inside or outside, - rather than having HP, and can be dragged around - Atermonera: - - rscadd: FBPs can now have numbers in their name. The first character cannot be - a number. - - rscadd: Common simple animals now have their own language, and as such are no - longer understandable by humans. - - bugfix: Translators can't understand the same languages that recorders can't, - including the new animal languages. - Leshana: - - rscadd: Upgrades the automatic pipe layer to modernize its code and make it constructable! - Constructs and deconstruts like other machines now. Circuits are buildable in - the autolathe. Uses steel to make pipes. - Magmaram: - - bugfix: Splints will now show up in examine text on hands and feet as well as - arms and legs. - Sin4: - - bugfix: Fixed back icons for Z8 Carbine, C20r, fireaxe, spear, and baseball bat. - - rscadd: If observing before roundstart, you may respawn. -2017-04-12: - Anewbe: - - rscadd: Material weapons now go dull instead of shattering. Certain weapons, like - spears, will still shatter. - - rscadd: Dull weapons do less damage, but can be sharpened with a whetstone. - - rscadd: Whetstones can be crafted using plasteel. - Belsima: - - tweak: Replaces cypherkey sprites with improved ones. - Sin4: - - bugfix: You can no longer ascend a table by walking from a flipped table to a - non-flipped one. -2017-04-16: - Anewbe: - - rscadd: Bartenders now spawn with their shotgun permit. Click on it in hand to - name it. - - experiment: Lessens the bloodloss from severe burn damage. - - rscadd: Hardhats now give some ear protection. - - rscdel: Hardhats can no longer fit in pockets. - LorenLuke: - - rscadd: Allows removal of PDA ID with alt-click. - Yosh: - - tweak: Scrubbers now scrub Phoron by default. - - tweak: Scrubbers now have the first dangerzone at anything more than 0 Phoron. - - bugfix: No longer will you attack Alarms with your ID when trying to unlock them. -2017-04-19: - Anewbe: - - rscadd: Unathi ribcages now reach down to their lower torso. - - rscadd: Unathi no longer have appendices or kidneys, the function of the kidneys - is now a function of their liver. - - rscadd: Unathi are more slightly more difficult to damage. - - rscadd: Unathi now process medicine 15% slower. Additionally, it's harder for - them to get drunk. - - rscadd: Unathi age range is now 32 to 260. - - rscadd: Unathi are not as slowed by heavy items. - Atermonera: - - bugfix: Translators no longer try to translate null languages. - LorenLuke: - - rscadd: Allows Blast doors to be attacked and broken like regular airlocks. - - tweak: Changelings can bank up to a maximum of 3 respecs at one time. - - tweak: Changelings begin with 2 respecs. - - tweak: Firing a silenced weapon gives a message in text to the user. - MagmaRam: - - rscadd: Added instructions on how to use the changelog updating scripts. - - tweak: Updated in-game EVA manual. - Neerti: - - rscadd: Adds makeshift armor for the head and chest regions. How protective they - are depends on the material used to craft it. The helmet is made by using wirecutters - on a bucket, then using a stack of material. The chestpiece is made by crafting - two armor plate, using wires on one of them, then hiting one with the other. - Yoshax: - - bugfix: Water such as the pool will no longer apply fire stacks when you enter, - meaning you will no longer be flammable from swimming. -2017-04-25: - Anewbe: - - rscadd: Cultist armor now has better protection from strange energies. - - rscadd: Adds the ion pistol to the uplink. - - tweak: The ion pistol can now be holstered. - - bugfix: Sprites on the smoking pipes should be fixed. - Atermonera: - - rscadd: Brain type (Organic, cyborg, posi, or drone) is now displayed in all records. - Belsima: - - tweak: Changes relaymove() code in bodybags. - - bugfix: Above tweak used to allow exiting bodybag while in closed morgue tray. - Leshana: - - rscadd: Implements footstep sound system and adds sounds to various floor types - including plating, tiles, wood, and carpet. - LorenLuke: - - bugfix: Allows people who are bucked to give/receive items. - - tweak: Can click-drag people onto chairs/beds from 1 tile away to buckle them. - - tweak: Allows you to place tape masks/restraints back on the roll (roll is still - infinite). - - bugfix: Fixes ventcrawling for spiderbots/implants/etc. - Neerti: - - rscadd: Drones will now spawn with an EIO-mandated ID card alongside their NT - ID. - - tweak: Fabricate Clothing for Changelings costs one point instead of two, and - is fabricated twice as fast. - - tweak: Dead changelings can no longer hear deadchat or freely ghost. - - tweak: Shrieks now share a 10 second cooldown. - - tweak: Lings cannot transform or shriek inside containers such as closets and - pipes. - - tweak: Regen. Stasis timer adjusted to be between 2 to 4 minutes. - - tweak: Visible Camo. should end if the user is stunned. - - rscadd: Visible Camo. now blocks AI tracking when active. - - rscdel: Recursive Visible Camo. no longer gives true invis. - - rscadd: Recursive Visible Camo. will allow the changeling to run while cloaked - instead. - - rscadd: Ling chemical meter on HUD now has a blinking exclaimation mark if below - 20 chemicals, to warn that they cannot revive if they should die while still - below 20. - Yoshax: - - tweak: Tape color is different now. Security tape is red rather than yellow, Engineering - tape remains yellow and Atmos tape is a lighter cyan rather than blue. -2017-05-05: - Anewbe: - - rscadd: Adds a cup for dice games, in the loadout. - - rscadd: Thermals now let you see in the dark. - Arokha: - - rscadd: Sleepers now have a 'stasis' level setting, that will ignore varying numbers - of life() ticks on the patient. - - tweak: Stasis bags and Ody sleepers now use a fixed level of this new stasis system - (ignore 2/3 life ticks). - - tweak: You can escape from being asleep in a sleeper, similar to escaping from - a cryotube. - - rscadd: You can now use grabs on sleepers to insert patients, same as scanners. - Datraen: - - bugfix: Xenobiological traits are made unique on each mutate, avoiding mutating - other mobs with same trait data. - Leshana: - - bugfix: Resetting a fire alert will no longer open firedoors if atmos alert is - in effect and vice versa - LorenLuke: - - Bugfix: Unfucks the screen bug on roundstart changelings. - - bugfix: Changeling now display 'alive' status on Medhuds properly. - - tweak: Refactors changeling ranged stings not passing over tables. Can now pass - over tables, any machinery (except doors), machine frames, and past closet subtypes. - - bugfix: You can now view an active video call by using the communicator in hand. - - tweak: Guns on harm intent in aim mode will target, rather than shoot pointblank - on first click. - - bugfix: You can now put handcuffs on yourself. -2017-05-09: - Anewbe: - - rscadd: Ports but does not enable Bay's MultiZAS. - Leshana: - - tweak: Optimized (but still not enabled) multi-z ZAS - - rscadd: Multi-Z explosion transfer coefficient is now configurable - N3X15: - - tweak: Flashlights on the high setting are no longer Beacons of Gondor. - Neerti: - - tweak: Tesla armor now retaliates against ranged attacks if within 3 tiles, and - recharges in 15 seconds, from 20. - - tweak: Technomancer Instability fades away slower. - - tweak: Fire and frost auras made more potent. - - rscadd: Gambit can now give rare spells unobtainable by other means, based on - spell power. - - tweak: Mend Wounds and Mend Burns combined into Mend Life. Mend Metal and Mend - Wires combined into Mend Synthetic. - - rscadd: Adds Lesser Chain Lightning, a more spammable version, but weaker. - - rscadd: Adds Destabilize, which makes an area glow with instability for 20 seconds. - - rscadd: Adds Ionic Bolt, which ruins the lives of synthetics. - - tweak: Oxygenate made cheaper. - SiegDerMaus: - - rscadd: Adds one new haircut, a chin-length bob. - Yosh: - - rscadd: Ports a bunch of hair from Bay. Knock yourself out. -2017-08-20: - Anewbe: - - tweak: The names of 5.56 and 7.62 ammo have been swapped, as have the guns that - use them. The magazines should look the same, and the guns will do the same - damage they used to do. - Atermonera: - - bugfix: Borgs can now raise an evil army of slimes - Belsima: - - rscadd: Added a lot of new lore-friendly drinks. - - spellcheck: Adjusted the descriptions of some drinks. - - rscadd: Added fingerless gloves to the loadout. - - imageadd: Added several new robot icons. - - imageadd: Added animations to some robots. - - bugfix: Fixed Usagi's eyes not turning off when dead. - - rscadd: Added several new pAI sprites. - - rscadd: Added a load of sweaters to the accessories tab of the loadout. - - rscadd: Added a new swimsuit to the pool. - Cirra: - - rscadd: Added a unified radiation system. Radiation is lessened by obstacles, - and distance. - - rscadd: Added a geiger counter for measuring radiation levels, which can be found - in certain vending machines and radiation closets. - Leshana: - - tweak: During the gravity failure event, you can now buckle yourself to a chair - to prevent falling when gravity returns. - - rscadd: Added an admin verb to debug the map datum. - - rscadd: Added nanomap capability to the Power Monitoring Computer - - rscadd: Added nanomap capability to the Atmos Control Computer - - tweak: Expanded nanomap on Camera Console to all station z-levels by default. - - tweak: Crew Monitoring nanomap will support crew monitors built on other station - map z levels. - - imageadd: Updated z1 nanomap for Northern Star - - imageadd: Generated z5 nanomap for Northern Star - - tweak: Optimized the unified radiation system. Made the radiation cutoff level - configurable. - - bugfix: Standing still won't save you from radiation storms. - - bugfix: Bedsheets can be put into washing machines again. - LorenLuke: - - imageadd: Ghosts can now choose from a number of animal sprites. - - experiment: Gives IECs some TLC (see below). - - rscadd: Adds 'Separator' circuit, allowing the player to now divide strings. - - rscadd: Adds 'grenade' circuit, allowing the player to detonate a stored grenade - in an assembly. - - rscadd: Adds 'device' electronic assembly, allowing an 'assembly'-type (signaler/igniter) - circuit to be used to interact with others. - - tweak: Modifies some storage and complexity constants. - - tweak: Adds 'size' variable for manual setting. - - tweak: No longer requires screwdriver to remove components. - - tweak: Enables multitool to wire/debug circuits with lesser functionality (can - disable via variable). - - tweak: IECs no longer drown the player in windows, each assembly always uses only - one window. - - tweak: Added functionality to UI to help with user experience of above point. - - rscadd: Adds 'on set' output pulses to multiplexer and memory circuits. - - bugfix: Fixes multiplexer and memory circuits not pushing data to attached circuits. - - bugfix: Number to string converts null inputs as '0' due to engine limitations - (at least they work). - - bugfix: Gun manipulator circuit now functions properly (and can read '0' value - inputs). - - wip: Phase 1/2 for wiring rework. - MagmaRam: - - tweak: Nerfed health regeneration, especially on bruises. - Nalarac: - - tweak: Modifies the illegal equipment module for borgs to scrambled equipment - module that only activates the special items and doesn't actually emag the borg - - bugfix: Mining cyborg diamond drill is now obtainable in a more sensible manner - - tweak: Click dragging has been added to the cryogenics tubes, cloning pod, and - all methods of cryostorage - - tweak: Some quality of life changes for research, crisis, surgeon, and service - cyborgs - - bugfix: Jumper cables readded - - tweak: Construction cyborgs merged back with engineering cyborgs - PrismaticGynoid: - - tweak: Replaces intelliCards with intelliCores. - - rscadd: Wheelchairs can now be collapsed like rollerbeds for ease of storage and - movement. Too big to put in backpacks though. - - rscadd: Wheelchairs are now available in a color-customizable form via the loadout, - under utility. Now you can ride in style, and keep your feet too. - - bugfix: Wheelchair users can now enter the gateway and residential elevator without - being forced to leave behind their mobility aid. - Sarmie: - - bugfix: Dionaea have remembered how to regrow their limbs properly. -2017-08-26: - Belsima: - - imageadd: Replaced APC sprites with better shaded ones. - - tweak: Adjusted some atmos sprites for visibility. - - soundadd: Added cough and sneeze noises for Teshari. - - tweak: Turning on flashlights and locking lockers both make a click sound. - - imageadd: Replaced soda cans with new soda cans. - - rscadd: Added a tiedye shirt. - MagmaRam: - - bugfix: Tesla relays no longer draw power when their attached power cell is full. -2017-09-24: - Belsima: - - imageadd: Replaced air tank sprites. - - imageadd: Added new xeno weed, egg, and resin sprites. - - imageadd: Added two new bar sign sprites. - - imageadd: Replaced blast door sprites. - - spellcheck: Microwave is no longer a proper noun. - - rscadd: Added croissants to the available recipes. - - imageadd: Added new status displays for the AI. - - spellcheck: Made spelling of corporations and planets more consistent. - - rscadd: Added more planets to character setup. - - imageadd: Added a bunch of new hairstyles. - - imageadd: Added a new holographic hud. - - maptweak: Added a grinder and enzyme to the abandoned bar, for illicit operations. - - imageadd: Replaced solar panel sprites. - - imageadd: Replaced shield generator sprites with ones from the Eris. - - rscadd: Added Qerr-quem and Talum-quem, a pair of Skrellian drugs. - - soundadd: Added a variety of sounds for opening cans, explosions, sparks, falling - down, mechs, and bullet casings. - - soundadd: Added a new death sound for mice. - - imageadd: Vox have been entirely resprited. - - rscadd: Added wood buckets, craftable with hydropnoics. - - soundadd: Added sounds for chopping wood. - - bugfix: Fixed a bug that would make default Zippo lighters invisible. - Chaoko99: - - rscadd: Nitrous Oxide is now an oxidizer. - - rscdel: 'Removed all instances of Volatile Fuel ever being simulated. To devs: - It still exists. Please, for the love of god, only use it with assume_gas.' - Cyantime: - - tweak: Tabling now requires a completed aggressive grab. - Nalarac: - - tweak: Removes the module restraint for the cyborg jetpack upgrade - - rscadd: Added the hand drill and jaws of life to the protolathe - - tweak: Syndicate toolbox now comes with power tools - Neerti: - - wip: Adds the Lost Drone, which can be found on the Surface of the future map. - - rscadd: You can now modify an unslaved borg's laws by hitting it with a law module, - after a significant delay. - - rscadd: Adds several new lawsets. Currently there are no lawboards for these. - - rscadd: Adds new 'shocker' baton, for the Lost Drone. - - tweak: Combat borg shields are now easier to use, only requiring that they sit - on one of your hands and not your active hand. The shield is also more energy - efficent. - PrismaticGynoid: - - tweak: You now keep your languages when removed from/transplanted into a body. - - tweak: AIs and borgs load languages from preferences when spawning. - - bugfix: Fixed sign language being usable while lacking both hands. - - rscdel: Brains are no longer able to hear binary (robot talk). - - rscadd: Adds the ability for research to print drone brains. - - tweak: Makes all MMIs, posibrains, and drone brains radio-enabled. Anyone holding - the brain can also disable the radio for antag purposes. - SpadesNeil: - - tweak: Windows can no longer be damaged by very weak attacks. - Woodrat: - - tweak: Ported floor types and floor sprites (Techfloors) from Vorestation (who - ported them from Eris). Brought our floortypes in line with how Vorestation - has theirs set up. - - bugfix: Missing Techfloor floor tile sprites added. - - wip: Floor sprites from Vorestation not yet ported. To be done once we go to the - new map. - - maptweak: Added catwalks and railings to SC station. Fixed first Z-level. - - rscadd: Added the ability to make catwalks and railings as ported from vore. - - tweak: Cable heavy duty file tweaks to remove red overlay color from them. - - tweak: Added in a color icon for centcomm beach areas. - - maptweak: Fixed issues with SC centcomm z that prevented it from loading. - - maptweak: Rework of xenobio/xenoflora outpost on SC planetside main map. - - rscadd: Added Wilderness z-level for SC, teleportation transition to it may be - bugged. - - rscadd: Cable ender file added. Allows power transfer between z-levels. - - tweak: Southern cross files for areas and defines in relation to z-level work. -2017-11-06: - Atermonera: - - bugfix: AI's can speak local rootspeak. - - rscadd: Implements Virtual Reality. - Woodrat: - - rscadd: Added 'see down' in open spaces from Vore. - - rscadd: Added talking and visible messages upward through open space from Vore. - - rscadd: Added a Syndicate ID with all access (admin spawn only). - - tweak: Port of 'Syndicate id cards now listen for owner destruction' from Bay. -2017-11-29: - Anewbe: - - rscadd: FBPs are now affected by Radiation, it gives them ToxLoss. Wear your PPE. - - rscadd: FBPs can have ToxLoss decreased by going into a charger. - - rscadd: It is now possible to move FBPs and robots into chargers, via click+drag - or grabs. - Atermonera: - - bugfix: AI verbs are no longer hidden on the tabs. - - bugfix: Incapacitated mobs can no longer open your inventory and steal your gubbins. - MoondancerPony: - - bugfix: Fixed a mislabeled pulse pin on the microphone. - - bugfix: Fixed an issue with reference pins and multiplexers, and reference pins - in general. - PrismaticGynoid: - - tweak: Adjusts the amount of camera locations the AI can store from 10 to 30. -2018-01-12: - Atermonera: - - rscadd: Communicators now have a weather app. - - rscadd: Mobs in VR can switch between translucent and opaque forms. - Leshana: - - tweak: Examining construction frames shows which circuit board (if any) is installed. - - tweak: Convert the machinery controller to a StonedMC subsystem - MrStonedOne: - - rscadd: Added admin verb 'Display del() Log' displaying garabage collector statistics. - PrismaticGynoid: - - rscadd: Adds the ability to 'crawl' to an adjacent turf by click-dragging yourself - to it, after a delay. This can be used to move while unable to stand. You can - also do this with other movable objects, if you really wanted to. - - tweak: Conscious mobs lying on the ground can now buckle themselves to chairs/beds. - This includes people missing legs. -2018-01-25: - Anewbe: - - rscadd: Southern Cross Map is now live - Arokha: - - tweak: Remove borg hud items as they have normal huds as their sensor augs now, - and can see records with them. - Atermonera: - - rscadd: Communicators have a flashlight under the settings menu, functions as - the PDA one - - rscadd: Station-bound synthetics now have gps units - Cerebulon: - - rscadd: Added 19 food recipes from /tg/station - Leshana: - - soundadd: Sounds of Tesla engine lighting bolts - - imageadd: Sprites for grounding rod and Tesla coil - - imageadd: Sprites for lighting bolts - - rscadd: The Tesla Engine, Tesla Coils, and Grounding Rods - - rscadd: Wiki search URL is now configurable in config.txt - - rscadd: Breaker boxes can be constructed in game. - - bugfix: Construction of heat exchange pipes, vents, and scrubbers now works properly - again. - - tweak: Fix singularity energy balance so it is stable under normal operation. - - bugfix: Fix emitter beams and PA effects from being grav pulled or consumed. - - rscadd: Added the operating manual book for the Tesla Engine. - Mechoid: - - rscadd: Brains can be set to be a source of genetic information. - - rscadd: Promethean cores can be inserted into a cloning scanner to be cloned. - This gives them a worse modifier upon completion. - - rscadd: Promethean cores can now have chemicals added or removed from them. Base - for future slime cloner. - - rscadd: Species-based cloning sicknesses possible. - - spellcheck: Cyboernetic - > Cybernetic - Neerti: - - rscadd: Adds boats that can be ridden by multiple people, which use oars. Can - be crafted with large amounts of wooden planks. - - rscadd: Adds autopilot functionality to Southern Cross Shuttle One and Shuttle - Two. - - rscadd: Adds ability to rename certain shuttles on the Southern Cross. - - rscadd: Areas about to be occupied by a shuttle will display a visual warning, - of a bunch of circles growing over five seconds. - SunnyDaff: - - rscadd: Added new food items. - - rscadd: Added Cider. - - rscadd: Added Apple Juice to bar vending machine. - - bugfix: Fixed Vodka recipe. - - bugfix: Fixed Apple and Carrot cake recipes - - tweak: Changed Cake recipes to not include fruit juice - ZeroBits: - - rscadd: Added the ability to have multiple loadouts per character. - battlefieldCommander: - - rscadd: Adds a communicator watch, a variant of the communicator you can wear - on your wrist. - - rscadd: Replaces the communicator in the loadout with a communicator selection. - Choose either the traditional communicator, or the new commwatch. -2018-02-07: - Anewbe: - - tweak: Lessens the bomb, bio, and rad protection on the Explorer Suit. - - tweak: Replaces the Hunting Rifle cabinets with a Phase Pistol cabinet. Same general - purpose, shoot animals, kill animals. Shoot people, get laughed at. - - tweak: Gloves are generally less protective from shocks. - - tweak: Budget Insulated Gloves will almost always be better than any other non-insulated - glove. - - tweak: Hyposprays and autoinjectors now have a delay on use when the target is - conscious and not in Help Intent. - - bugfix: You need a parachute to survive atmospheric reentry. Closets, mechs, and - other impromptu parachutes will not longer prevent splatting. - Atermonera: - - tweak: ID computer can set command secretary and IAA access - - tweak: Command secretary has keycard auth. access - Cerebulon: - - rscadd: Added toggleable 'Open' sign to bar hallway so you can tell if it's open - without walking inside. - Mechoid: - - rscadd: Adds material girders. - - tweak: Girder decon time is now partially dependant on material. Stronger girders - take slightly longer. - - tweak: Wall girders are now under the integrity-based construction listing. Material-Name - Wall Girder. - - rscadd: Explosive-resistant girders in walls have a chance to survive as an unanchored - girder, if their wall is destroyed. - - rscadd: Radioactive girders affect the completed wall's radioactivity. - SunnyDaff: - - rscadd: Added new food items. - - rscadd: Added Onions. - - tweak: Changed Apple and Lemon Sprite -2018-02-10: - Atermonera: - - tweak: Ethylredoxrazine actively removes alcohol from the stomach and bloodstream - - tweak: GPS units won't report the exact location of other GPS units, just range - and approximate direction - - tweak: POI gps units won't give any information about the POI, merely its location - - rscadd: Adds EMP mines. - Cerebulon: - - rscadd: Adds antibiotic resistance chance to viruses, capped at 90% without admin - edits. - - rscadd: Adds adminspawned non-transmittable viruses - - rscadd: Adds several new disease symptoms - - tweak: Vomit is now a disease vector - - tweak: Viruses have a lower chance of curing themselves without medical intervention - - bugfix: Virus food no longer infinitely generates in incubator beakers - - bugfix: Xenomorphs and supernatural begins can no longer catch the flu - Hubblenaut: - - tweak: If a cycling airlock is already near the target pressure, pressing the - buttons will toggle the doors instead of making it reenter the cycle process. - Leshana and mustafakalash: - - rscadd: A new 'planetary' mode for airlocks which makes them purge the chamber - contents to the exterior atmosphere before filling with clean air, and vice - versa. - MistyLuminescence: - - tweak: Mines are now very, /very/ dangerous to step on (so don't do that). You - can disarm them with a multitool and wirecutters - ping is good, beep is bad - - or by shooting or exploding them from a distance. Be careful! - Woodrat: - - rscadd: Shaft Miner, Search & Rescue, Explorer can now select webbing vests and - pouches from the loadout. - - bugfix: Allow utility uniforms to roll up their sleeves. - - rscadd: Shuttle upgraded with enviroment sensors and shuttle doors that can be - detected from the shuttle console. - - rscadd: secure gun cabinets in the hangar control rooms. Locked to armory, explorer, - and pilot access. - - maptweak: Redesign of medical surgery rooms, replacement of the closets with wall - closets. - - bugfix: Multiple map bugfixes including distro and scrubber lines to deck 3. -2018-02-17: - Anewbe: - - rscadd: Added a random mine spawner, for use in PoIs. Replaces mines in PoIs with - the random spawner. - - rscadd: Mines now give a visible message when they go off. - - tweak: Land mines on the ground can no longer be told apart from one another, - to prevent gaming the system. - - bugfix: Hovering mobs (viscerators, drones, Poly, carp) no longer set off land - mines. - - tweak: Arming a land mine now takes concentration. If you move, it will boom. - - tweak: RINGS AND CERTAIN GLOVES INCREASE PUNCHING DAMAGE. - - tweak: BRASS KNUCKLES HAVE BEEN TURNED INTO GLOVES AND REBALANCED. THEY DO LESS - DAMAGE PER HIT BECAUSE IT'S HARD TO DISARM A PAIR OF GLOVES. - - rscadd: Cyborg Chargers now decrease radiation on FBPs. - - tweak: Falling one floor now does a lot less damage, on average. - - bugfix: Falling one floor in a Mech no longer hurts the occupant. - PrismaticGynoid: - - rscadd: A lot more machines can now be moved with a wrench, mostly kitchen, hydroponics, - and virology machines. - - tweak: Changed department ponchos to be open to any job, just like department - jackets. - Schnayy: - - rscadd: Adds bouquets. Can be ordered via 'gift crate' in cargo. - - rscadd: Adds fake bouquets for the cheap. Can currently be won from arcade machines. - - rscadd: Adds chocolate heart-shaped boxes. Can be ordered via 'gift crate' in - cargo. - - rscadd: Adds gift cards with four cover variations. Function like paper. Can be - ordered via 'gift crate' in cargo. - battlefieldCommander: - - rscadd: Added packed snow brick material. Craft it using snow piles. - - recadd: Added snow girders and igloo walls. Craft them using snow bricks. - - rscadd: Added various snowmen. Craft them using snow piles. Punch 'em to destroy. -2018-02-21: - Anewbe: - - rscadd: Headsets for jobs that spend a lot of time planetside can now function - as local radios when comms are down. - - rscadd: Most headsets now have on-mob sprites. - - rscadd: Added a Planetside Gun Permit item, specifying permission to possess a - firearm on the planet's surface. Explorers should spawn with these by default, - and a further two can be found in their gun locker. - - rscadd: Prometheans now react to water. Being soaked will stop their regen and - deal minor toxin damage. Drinking or being injected with water will deal slightly - more toxin damage. - - bugfix: Suit Coolers now properly cool FBPs in slightly burning rooms. If it gets - too hot for your suit, you're still dead. - Leshana: - - rscadd: Makes electrochromatic glass buildable and programmable in game. Use - cable and multitool. - Woodrat: - - rscadd: Additions of 6 new POIs for the cave area. -2018-02-22: - Anewbe: - - rscadd: Added Warden and HoS helmets. - - tweak: Clothing items must be click+dragged to be unequipped. A lot of them already - had this, but the system is now standardized. - - tweak: Accessories now apply slowdown to what they're attached to. - - tweak: Certain items, notably Technomancer spells, no longer show up when you - examine the mob wearing them. - - tweak: Flashbangs confuse, instead of stunning. - Atermonera: - - tweak: GPS units are generally more useful, providing both coordinate locations - and, so long as you're on the same Z level, direction with x-y component distances, - to 1m accuracy - - rscadd: Added a halogen counter tool, functions as the PDA function. - - tweak: Analyzers can now analyze gas containers, in addition to providing atmosphere - readouts, as the PDA gas scanner function. - - rscadd: Added umbrellas. - battlefieldCommander: - - rscadd: Added fireplaces which operate similarly to bonfires. - - bugfix: Fixed an oversight that allowed for an in-between state in bonfires where - the fire would mysteriously go out after adding wood. - - rscadd: Added blue sifwood floor tiles. - - bugfix: Fixed blue carpet, now known as teal carpet - - rscadd: Added the ability to dig up tree stumps with a shovel. -2018-02-25: - Anewbe: - - tweak: Splinted bodyparts act broken 30% of the time. - - tweak: Splinted legs still slow you down like broken ones. - Leshana: - - rscadd: Added a client preference setting for wether Hotkeys Mode should be enabled - or disabled by default. - - bugfix: CTRL+NUMPAD8 while playing a robot won't runtime anymore. - - tweak: Grounding rods act intuitively, only having an expanded lighting catch - area when anchored. - Nerezza: - - bugfix: Fixes not being able to install the different carpet colors. Finally. - - bugfix: Removes certain unusable duplicate stacks of tiles from the code. - Schnayy: - - rscadd: Added Gilthari Luxury Champagne. Drink responsibly. - - rscadd: Added a singular AlliCo Baubles and Confectionaries vending machine in - the locker rooms. Dispenses a variety of gifts. - - rscdel: Removed hot drinks vendor from locker room. -2018-02-28: - Atermonera: - - rscadd: Adds umbrellas to the loadout, for 3 points. Colorable! - Nerezza: - - bugfix: Using tape (police/medical/engineering) on a hazard shutter now tapes - the hazard shutter instead of trying to open the hazard shutter. - - rscadd: Added /tg/-style floor tile swapping. Equip crowbar/screwdriver in offhand - and click the floor tiles you want to directly swap with a stack of new floor - tiles (like teal carpet). - Woodrat: - - maptweak: Heavy rework of the wilderness, minor adjustments to mining and outpost - z-levels. To get to the wilderness you now have to travel through the mine z-level - to do so, follow the green flagged path. Through the mine. - - tweak: Shuttles can now land at a site near the enterance to the wilderness. Removal - of the mine shuttle landing pad to move to the wilderness. - - rscadd: New addition of warning sign, thanks to Schnayy. - battlefieldCommander: - - rscadd: Added craftable joints. Dry something (ideally ambrosia) on the drying - rack and apply it to a rolling paper to create a joint you can smoke. - - rscadd: Added a box of rolling papers to the cigarette vending machine. -2018-03-05: - Anewbe: - - rscdel: Removes Command Liaison, Bridge Secretary, Hydroponicist, Prospector, - Sanitation Technician, Professor, and Historian alt-titles. - - rscdel: Removed universal translators from the loadout. - - rscadd: RnD can print earpiece translators. - Mechoid: - - rscadd: Add a surgical operation for repairing the brainstem of a decapitated - individual. - - rscadd: Add a permanent modifier for frankensteining individuals. - Nerezza: - - rscadd: Package bomb detonators can be re-bound by hitting the new package bomb - with them. - PrismaticGynoid: - - bugfix: The succumb verb will now work on species that can't take oxyloss damage. -2018-03-15: - Anewbe: - - tweak: Pills and ingested reagents actually process at half speed, rather than - just ignoring half of the reagents. - - rscdel: Robotic limbs now need internal repair at 30 composite damage, rather - than 30 of burn or brute. - - tweak: Syringes now inject their entire payload with one click, but in 5 unit - increments. There is a delay in between each of these. - - rscadd: Assisted robotic organs (internals, eyes) are less vulnerable to EMP. - - rscdel: Lifelike robotic organs (currently VeyMed) are more vulnerable to EMP. - Cerebulon: - - rscadd: Added Akhani language for Tajaran. - - spellcheck: Fixed incorrect singular form of Tajaran in several places. - MisterLayne: - - rscadd: Added a version of the ED-209 called the ED-CLN. It is a more efficient - Cleanbot. - - bugfix: Reinforced snowballs can now actually be made in a reasonable time limit. - Nerezza: - - tweak: Broken APCs can be bashed open with slightly smaller objects now. This - means wrenches are acceptable, no need to hunt down a fire extinguisher. - - rscdel: EVA rigsuit/hardsuit no longer holds toolboxes in suit storage since those - have been a volume inventory for some time now. RIP ghetto satchel. - - rsctweak: CE's rigsuit/hardsuit no longer holds pickaxes and ore satchels, but - can now hold inflateables. - - bugfix: Retracting rigsuit/hardsuit helmets with no valid mask equipped now disables - internals. - - bugfix: Offline rigsuits/hardsuits are no longer considered valid air supplies - by the internals button. Before, your internals would instantly shut off before - you could get a breath out of the rigsuit. Now, the internals button will look - for a different tank instead. - - rscadd: Tajaran now get to keep their tails when they wear the EVA, RD, or Industrial - rigsuits/hardsuits. Unathi sprites to come soon! - - bugfix: Sifwood floor tiles now correctly use their double-stacked icon instead - of disappearing. - Woodrat: - - rscadd: Added in a weapons crate for explorers that has bolt action rifles. - - rscadd: Weapon powercells can be ordered from cargo (security access crate). - - tweak: Automatic weapons crate split into two crates now. One for SMGs one for - the rifle. Minor adjustments to other munitions and security supply packs as - well. - - rscadd: The automatic weapons ammo crate has also been split. - - tweak: Names of the crates for the munitions and security catogory supply packs - have been adjusted slightly. In certain places contents also adjusted. - - bugfix: Holoplant now comes in a crate. -2018-04-01: - Anewbe: - - tweak: Medical Doctors and EMTs spawn with white medkits. - Cameron653: - - rscadd: Adds a xenoarch excavation tool, craftable in R&D. Allows depth selection - of 1-30 - - rscadd: Adds a xenoarch multitool, craftable in R&D. Has xenoarch counter, measure - tool, and depth scanner all in one. - Heroman3003: - - bugfix: Attaching exosuit equipment with a gripper correctly removes it from the - gripper. - - bugfix: Engineering gripper can no longer duplicate frame parts. - MistyLuminescence: - - tweak: Wallets can now hold a wider variety of objects. - Woodrat: - - rscadd: Added two 44 cal revolvers. - - rscadd: Added 44 cal speedloader for revolvers. - - rscadd: Added 44 cal rubber rounds. - - bugfix: Fixed the icon_state for 'structure/plushie/carp' and the random first - aid kit spawner. - - rscadd: Added a random chance tool spawn for power tools (most of the time it - should still just be regular tools). - - tweak: Adjusted the spawn rate of medkits, combat medkits should be more rare. - - tweak: Cash split into its own loot item. - - tweak: Plushies split into large and small plushies. - - rscadd: All the extra plushie spawns added to the random plushie spawn. - - tweak: Eightball and conch shell added to toy spawns. - - rscadd: Added spawn points for the large plushies, cash, and the power tools to - the station. - battlefieldCommander: - - rscadd: Added permanent markers, an alternative to crayons. - - tweak: The chemistry recipe for paint now uses marker ink instead of crayon dust. - - rscdel: Removed crayon boxes from the map. They can still be ordered from cargo - in case you need a snack. -2018-04-19: - Anewbe: - - rscdel: AOOC is no longer available to traitors, renegades, and thugs. - Woodrat: - - bugfix: Flashers in brig cells should work now, extra floor flash in communal - brig to deal with crims. - - bugfix: Improper access, SMES rooms. - - bugfix: Trader start point is no longer dark. - - rscadd: Medical Vendor Plus has more advanced burn and trauma kits. - - tweak: Cell 1 and 2 in the brig can now be accessed by detectives. - - tweak: Additional r-walls next to the engine room to help with rads. - - tweak: Floor decals in a couple areas. - - tweak: RD office now has its telescreen back. - lorwp: - - bugfix: Pilot headsets can now fallback to shortwave radio -2018-04-28: - Anewbe: - - tweak: Communicator visibility (the thing that lets people see your communicator - when you're a ghost) is now saved to character slots, rather than globally. - - tweak: Jobs that are set to Never on your preferences are hidden by default on - the Late Join selection menu. There is a button to reveal them. - Arokha: - - bugfix: Nerve reattaching surgery now works correctly. (Hemostat on limb) - - bugfix: Limbs dropped by people have appropriate flags. - Atermonera: - - tweak: Human examine code has received a major refactor. If you encounter unusual - behaviour that seems wrong, please report it. - Cerebulon: - - bugfix: Pumpkins are no longer green ovals. They now grow on actual vines. - schnayy: - - bugfix: Space carp plushies now load sprites and are all selectable from loadout. - - tweak: Adds several newer plushies to the gift vendor as well as adjusting cost - of gift vendor's contents. -2018-05-01: - Mechoid: - - tweak: Skrell can be affected by flashbangs from a range of 8 tiles without protection. - - tweak: Promethean regen consumes additional nutrition. - - tweak: Many healing chemicals are less effective on Prometheans due to the natural - regeneration. - - tweak: Lots of other Promethean tweaks. No seriously, I'm not putting the list - here. - PrismaticGynoid: - - rscadd: Adds new skrell sprites to hardsuit helmets that were missing them. -2018-05-24: - Anewbe: - - bugfix: Moving items out of one's active hand cancels any zoom-in they may be - providing. - - tweak: Meteor events should be a lot less brutal. - Arokha: - - rscadd: Added a 'Client FPS' setting in the Global tab of character setup for - adjusting the FPS to your preference. - - rscadd: Added a 'fake SSAO' toggle to Global in character setup, ported from /tg/. - Looks like drop shadows on (almost) everything. - Atermonera: - - bugfix: Laptops no longer consume IDs indefinitely. - Mechoid: - - rsctweak: Promethean limbs store more damage. - - rsctweak: Promethean limbs, in addition to normal severing rules, have a higher - chance to be splattered or ashed once they reach maximum damage. - - rscadd: Limbs can now spread their damage to neighbors with the spread_dam var, - when reaching max damage. - PrismaticGynoid: - - rscadd: Added laser pointers. Available in your loadout, and printed and upgraded - by R&D. - lorwp: - - tweak: Search and Rescue can now add certain medical restricted items to their - loadouts -2018-06-08: - Anewbe: - - tweak: Merc mobs in PoIs no longer drop gear. This is to help us balance the PoIs - that contain them, and by extension every other PoI. - - tweak: Merc mobs have been shuffled around in their PoIs. At some point, this - may actually be randomized, but for now, expect slightly different placements. - - rscadd: Adds a laser rifle and ion rifle version of the Merc mob, for variety. - - tweak: PoI turrets are lethal again, and will likely shoot crawlers. - - rscadd: Certain mobs, namely robots and mercs, now have some amount of armor. - - rscadd: Ranged mercs will now knife people when cornered, rather than punch them - really hard. - Mechoid: - - rscadd: Added some background things for Events. - - bugfix: Ion rifles hit the correct 3x3 instead of 5x5 - - rscadd: Seed Storage Vendors are now hackable. Can choose from various lists of - concerning plants. -2018-06-21: - Anewbe: - - rscadd: Added a biomass reagent, made from protein, sugar, and phoron. - - tweak: Cloners and bioprinters now use the biomass reagent. Both can be refilled - or have their capacity increased by replacing the bottles they spawn with. - - experiment: Mapped in a bioprinter, for further testing. - - rscadd: Adds the ability to make robolimb brands more or less vulnerable to brute - or burn. - - rscdel: Makes VeyMed limbs more vulnerable to brute and burn. - Mechoid: - - rscadd: Allow AIs to create and take control of mindless drones from fabricators. -2018-07-12: - Anewbe: - - bugfix: Technomancer Apportation now properly checks for range and scepter, again. -2018-07-14: - Anewbe: - - tweak: Certain languages now require assistance for a species to speak, but not - understand, much like EAL. - - tweak: Alai can only be `spoken` by Taj and Teshari. - - rscadd: Adds a voicebox/larynx organ. Its only purpose at the moment is to assist - in speaking certain langauges. - - tweak: Language implants, like the EAL implant, now affect the voicebox organ, - instead of being a freefloating implant. - - rscadd: Adds a language implant for Common Skrellian. - Atermonera: - - rscadd: Steel sheets can be used to construct Roofing Tiles - - rscadd: Roofing tiles can be used on tiles under open spaces or space tiles in - multiZ maps to place a lattice and plating on the space above - - rscadd: Roofing tiles can be used on outdoor turfs to make them indoors - - rscadd: Both functions work together on multiZ maps with outdoor turfs, only one - roofing tile is used per tile roofed. - Mechoid: - - rscadd: Adds a new surgical procedure for fixing brute and burn on limbs. -2018-08-01: - KasparoVv: - - rscadd: You can now change the order of your body markings at character creation. - Shift markings up or down layers at will to design the character you've always - wanted, more easily than ever before. - Mechoid: - - rscadd: Added the Gigaphone. Currently unused. - Mewchild: - - rscadd: Ports several AI core sprites from ages and places past - PrismaticGynoid: - - rscadd: Adds four types of colorblindness to the traits in the setup menu. - - tweak: pAIs can now be picked up while unfolded, and can display more than 9 emotions. -2018-08-08: - Atermonera: - - rscadd: The supply controller has been refactored and shifted to nanoUI. - - rscadd: The ordering and control consoles are now generally upgraded in terms - of information and options. - Mechoid: - - rsctweak: Hallucinations are no longer only Pun Pun. - Neerti: - - soundadd: Adds new ambience sounds for various areas, especially on the surface - of Sif. - - sounddel: Removes low and high-pitched droning from available ambience. Consider - trying ambience again if you had turned it off to avoid those. -2018-08-28: - Mechoid: - - rscadd: Mechs now have multiple equipment slot types, and more slots in total - for greater customization. - - rscadd: A large number of Mech weapon modules and their jury rigged versions. -2018-09-22: - Mechoid: - - rscadd: Adds two vehicles to Robotics and Cargo, the Quad and Spacebike. - Poojawa: - - rscadd: Ported /vg/ instrument code, improved the UI of instruments. - - rscadd: Added a client side pref that mutes instruments being played for you. - Woodrat: - - rscadd: Adds two rig suits. Military Rig suit from Bay and PMC rigsuit - - rscadd: Adds four exploration and pilot voidsuits (alternate sprites by Naidh) - - rscadd: Adds exploration and pilot voidsuits -2018-10-13: - Anewbe: - - bugfix: You can no longer have ALL of your blood punched out. - - bugfix: Haemophiliacs will no longer spontaneously have ALL of their blood go - missing from ~90%. - - rscadd: Emitters can be locked while off, too. - - rscadd: Graves are now a thing in the code, will need some testing and probably - more work before they get more common. - Mechoid: - - rscadd: Added a RIG customization kit. - - tweak: RIGs now use a var called suit_state to determine the basis for their component - icons, rather than the rig's icon state. -2018-11-30: - Cerebulon: - - rscadd: Added 1000+ surnames and 1200+ forenames from various world cultures to - human namelists - LBnesquik: - - rscadd: Replaced the plant clippers with a reskinned pair of hedgetrimmers. - Lbnesquik: - - rscadd: 'General biogenerator improvements:' - - rscadd: Added feedback noise to the processing. - - rscadd: Allow for cream dispensing. - - rscadd: Allow for plant bag creation. - - rscadd: Allow for 5 units of meat to be dispensed at once. - - rscadd: Allow for 5 units of liquids to be dispensed at once totalling 50u. - - rscadd: Add and allow the creation of larger plant bags for easier ferrying of - plants.. - - rscadd: Add a description to the machine itself. - Mechoid: - - tweak: Prometheans are no longer murdered by blood, and instead process it like - a weak nutrient. Will slow the regeneration of toxins due to water content. - - rscadd: Ctrl clicking a Rapid Service Fabricator when held will allow you to choose - the container it deploys. - - bugfix: The Rapid Service Fabricator's icon is correctly set. - Neerti: - - experiment: Rewrites the AI system for mobs. It should be more responsive and - robust. Some mobs have special AIs which can do certain things like kiting, - following you on a lark, or telling you to go away before shooting you. - - tweak: Rewrites literally every 'simple_animal' mob into new, shinier, and hopefully - more interesting 'simple_mob' mobs, some with new mechanics, like spiders, fake - mechas, and hivebots. There are so many changes that it wouldn't be possible - to list them here. - - rscadd: RCDs can now build grilles and windows, with a new mode. They can also - finish walls when used on girders on floor/wall mode. - - rscadd: Adds various new RCDs that are not obtainable at the moment. - Woodrat: - - rscadd: Xenoflora and Xenobio moved to station, first deck. - - bugfix: Minor bugfixes including mislabeled lockers in robotics and floor decals. - kartagrafi: - - rscadd: Adds new hairstyle 'Sharp Ponytail' - - rscadd: Adds several new underwear - 'Binder', 'Strapless Binder', 'Longsleeve - Striped Shirt, Pink', 'Pink Wing Shirt', 'Pink and Black T-Shirt', 'Leggings' - - tweak: Changes name of 'Supernova' hairstyle to 'Glossy', and makes the sprite - somewhat neater - - bugfix: Fixes a hairstyle not appearing -2018-12-08: - Cerebulon: - - rscadd: 'Added 12 new loadout items plus colour variants: Utility pants, sleek - overalls, sari, modern wrap jacket, ascetic garb, asymmetrical jackets, cowled - vest, kamishimo, jingasa, maang tikka, thin-frame glasses, rimless glasses.' - Mechoid: - - rscadd: Research and Engineering borgs now have 'Circuit Grippers', used for constructing - and operating integrated circuit machinery. - - tweak: Grippers now allow interaction with their contents, by attacking the gripper - itself with an item when one is held. I.E., drawing from a beaker with a syringe. - - tweak: Grippers now show their held item's examine information when examined. - Tab information added. - - tweak: Cyborgs can now interact with integrated circuit printers and machines - when adjacent to them. - - tweak: Multitools now have a menu to switch modes between standard use and integrated - circuit reference scanning. Antag multi-tools untouched for now. - - bugfix: Integrated circuit printer now respects adjacency, if it is not set to - debug. -2019-01-06: - Mechoid: - - bugfix: Slimes now respect slime colors as their faction when dealing with other - slimes. - - tweak: Taser and Security xeno-taser shot count dropped from 10 to 5. - Neerti: - - soundadd: Adds a lot of sounds, and the code to let them loop seemlessly. Things - made audible now include the microwave, deep fryer, showers, the supermatter - when it's active, the TEGs when active, geiger counters, and severe weather - on Sif. The weather has different sounds for when indoors and when outdoors. - - tweak: Weather sounds and the supermatter hum can be disabled in your preferences. - - rscadd: Adds a few more weather types that can only be activated by admin powers, - such as ash storms and fallout. - Novacat: - - tweak: All emergency air tanks now spawn at full capacity. -2019-01-16: - Anewbe: - - tweak: Adds a Gibberish language that gets used when you goof on a language key. - - bugfix: Voice changing masks no longer give up when you put on a hardsuit. - - tweak: Mask voice changers start on. - - tweak: Mask voice changers that do not have a set voice will now default to your - worn ID's name. - - tweak: Mask voice changers now have a verb to reset their name. - - tweak: Eguns take 4 shots to stun, rather than 3. - Atermonera: - - rscadd: Clothing now has pressure protection variables, that set lower and upper - pressure bounds within which they will protect you from pressure-based harm. - - rscadd: Protection falls off when exceeding the pressure limits from 100% protection - at the boundary to 0% at 10% in excess (above the max or below the min) boundary. - - tweak: Currently, only hat and suit slots are checked for this protection (No - change). - - tweak: Anomaly suits (The orange ones) now offer limited pressure protection in - case anomalies start making or draining air. - - bugfix: Firesuits are no longer spaceproof, but still offer protection against - the high pressures of fire. - Cerebulon: - - rscadd: Added customizable religious icons to the chaplain's office. - - rscadd: Added black and white candles. - - tweak: Updated religion lists in character setup to be lore friendly. -2019-01-25: - Anewbe: - - tweak: The hyphen (-) is no longer a default language key, as people use it to - represent other things. If you are still having issues with Gibberish, reset - your language keys, or at least make sure they don't include any characters - you regularly start speech with. - Atermonera: - - bugfix: Stasis bags don't squish organics with high pressure when organics try - to seek shelter from flesh wounds. - - tweak: Body- and stasis bags can be tread upon when open. - - bugfix: Suit coolers and rigsuit coolers now protect FBPs against vacuum again. - - bugfix: Bot sound files have been decrypted following a bizarre ransomware attack - by Boiling Point remnants. Securitrons, cleanbots, et al should no longer spew - gibberish. - Cerebulon: - - rscadd: Added teshari hardsuit sprites. -2019-02-01: - Anewbe: - - tweak: Pilot consoles now require pilot access to use. - Atermonera: - - bugfix: Powersink drains have been unclogged and work once more - Mechoid: - - bugfix: Oversight regarding Changeling revive not removing restraints fixed. - - tweak: Straight Jackets can now be resisted out of in 8 minutes, or as low as - 5 depending on species attacks. Shredding or hulked humans will break out in - 20 seconds, destroying the jacket. - - tweak: Xenomorph plasma vessels now regenerate phoron passively, at an incredibly - slow rate. Can be accelerated by consuming liquid phoron. - - tweak: Xenomorph organs now give their respective abilities when implanted. - - tweak: Virtual Reality pods cleaned up. - - rscadd: Replicant organs added, versions of many organs that do not reject in - their host. Two currently exist that give special passives. -2019-02-07: - Atermonera: - - bugfix: Stairs have been straightened and now connect to both the heavens and - hells, formerly just the hells. - Elgeonmb: - - rscadd: Added the Zaddat species, voidsuit-clad fragile bug people. Whitelist - applications will be available at a later date. - - rscadd: Added glucose hypos to the SWEATMAX vendors and a few other places thoughout - the station. - - rscadd: Zaddat equipment is now available through cargo. - - rscadd: Some new, very very chuuni accessories to play with; the half cape, the - full cape, and the sash - - tweak: Most accessories can now fit on suits. - - rscdel: Dionaea and vox can no longer use station rigs. - Mechoid: - - tweak: Flashes now actually run the risk of burning out. - - tweak: Flashes that burn out can be repaired after approximately 40 seconds and - with some luck, via a screwdriver. - - tweak: Cyborg flashes use charge only, and do not have the 10 flash limit. They - instead begin burning large amounts of charge. - - tweak: Flashes use miniscule charge in addition to their capacitor burn-out, totalling - 12 uses, taking 4 to down a human. They can be charged within a standard charger. -2019-03-04: - Anewbe: - - bugfix: Vedahq is now properly locked behind a whitelist. - - tweak: Headgibbing is now determined by config - - tweak: Promethean regeneration has been toned down. It will no longer provide - healing if the Promethean is wet, too hungry, too hot, or too cold. - - tweak: Prometheans are no longer shock resistant. It should now be more possible - to catch them alive. - - tweak: Promethean body temperature is now the default room temperature. They also - hit cold_level_2 at a higher temperature. - Atermonera: - - bugfix: Rigsuits have been resupplied following a mass-recall after a number of - suits were reported to have defective pressure-sealant mechanisms. The new sealant - mechanisms have been thoroughly tested and should be less prone to failure. - Mechoid: - - tweak: Tweaked Respiro- Cordra- Gastiro- and Hepanephro- Daxons to be more effective - with dealing with the side-effects of damaged organs. - kartagrafi: - - rscadd: 'Adds several clothing items to loadout such as: Nock masks, cowls and - robes.' -2019-04-17: - Anewbe: - - rscadd: The Subspace Jammer traitor item now lasts about 10 minutes. It now blocks - signalers from sending or receiving, and also obscures suit sensors around it. - N3X15 (MistyLuminescence): - - tweak: Departmental winter coats can now hold the same items as their standard - departmental suit items - labcoats, hazard vests, body armor, aprons, etc. - Neerti: - - tweak: Removes ability for AI to print and inhabit maintenance and construction - drones. This has been replaced with a system which allows for AIs to inhabit - special cyborg shells, called AI Shells, which are built with a new MMI type - in Robotics. Most of the regular cyborg mechanics applies to AI Shells. - Novacat: - - rscadd: Adds new status displays for all alert levels - - rscadd: Adds yellow, violet, and orange alert levels - - rscadd: Added Stasis Cages, which allows safe transport of mobs. - PrismaticGynoid: - - rscadd: Adds the ability to copy a character slot onto another one, allowing for - easier rearranging of characters, or wiping characters by copying empty slots. - - rscadd: Adds three new crashed escape pod PoIs. - Woodrat: - - tweak: Arrivals dock should not stay locked shut - - bugfix: Two windoors in xenobio stationside lacking access requirements - mistyLuminescence: - - rscadd: Lays the foundation for RIGs to be worn on the belt slot. Doesn't apply - to any RIGs currently, unless VV'd, but stay tuned! - - tweak: Large autoinjectors are now scannable and syringeable again, just like - they used to be. Unidentified autoinjectors still aren't, unless you ID them - first. - - rscadd: Adds beakers to the hydroponics lockers and NutriMax vendors. - - tweak: More jobs can now take certain items in the loadout. - - rscadd: Adds departmental turtlenecks, available in department wardrobes or the - loadout selection. Look good... in space. -2019-04-26: - Heroman3003: - - rscadd: Allows voidsuits to have parts attached and removed while held in hand - (but still not when worn). - - tweak: Syringes will now immediately inject 5 units per injection into reagent - containers. Does not change how injecting mobs work - - tweak: Tape rolls can now be used on tiles with directional windows as long as - they don't directly obstruct them. - Mechoid: - - rscadd: Reagents can now have a list of organs specified to slow their processing. - - rscadd: Reagents now process in the bloodstream at a rate determined by current - pulse. No pulse, for any reason, will cause slightly slower processing if your - species has a heart. - - rscadd: The heart organ determines the 'standard pulse' if the species has one. - - rscadd: Modifiers can set pulse directly, or shift it. - - rscadd: Adds Robobags and Corp-Tags to Robotics. - - rscadd: Re-adds the Space Worm with New and Improved [Doesn't Break The Universe] - logic. - - rscadd: Sterilizine now hurts slimes, similar to water. - N3X15: - - bugfix: Cyborgs can now use ladders regardless of whether they have a tool enabled - or not. - Neerti: - - rscadd: During severe weather such as storms and blizzards, wind can cause you - to move slower or faster in specific directions. - - rscadd: Weather application in the communicator displays wind direction and severity. - - rscdel: Holding umbrellas while in a storm no longer stuns you. - chaoko99: - - rscadd: Ore bags will automatically pick up items when held, belted, or pocketed, - and automatically deposit ore in boxes if one is being pulled. -2019-05-06: - Mechoid: - - rscadd: Added fishing mechanics, and fishing gear. - - tweak: Cloth can make normal cloth things. - Novacat: - - rscadd: Ports Bay code to allow hiding accessories when jumpsuits are rolled down/sleeve - rolled. - - rscadd: Ports medals and ribbons from SEV Torch. - - rscadd: Ports initial infrastructure for modular computers from Baystation. - - rscadd: Cameras now have a slight static when viewing through them. - - rscadd: Adds Digital Warrant Program, to set warrants. Comes with a device. - - rscadd: Adds Supermatter Monitor program. - - tweak: Chemistry processes instantly again. - - tweak: Nanoui sends stuff even after client connect. - - tweak: Shortwave radios now can transmit across connected Z levels. - - tweak: Relays on moving platforms (shuttles) will now function. -2019-06-04: - Chaoko99: - - tweak: The medibot's minimum configurable threshhold has been lowered to 0, from - 5. Perfect for silly-billies coming into medical with 2 brute boo boos, thanks - to accidentally throwing something at themselves or.. something. - Heroman3003: - - tweak: Restricts Alarm Monitor modular computer program to engineering access. - - tweak: Removed access to departmental networks on camera modular computer program - for average people. - - rscadd: Added access to full network on camera modular computer program for heads. - Mechoid: - - tweak: Borers can speak through nearby mobs if they have a sufficient build-up - of chemicals. - - tweak: Borers have a max chemical volume. - - rscadd: The Sakimm, Frostfly, Glitterfly, River Leech, Crystal-Feathered Duck, - and Kururak are now able to be used on the map and PoIs. - - tweak: Glass jars can now hold glitterflies, river leeches, and frostflies. - - tweak: Glass jars now respect mobs that exist over the lighting plane, adding - a special overlay visible when on the ground. - Nalarac: - - bugfix: Closed all bugs on tracker that are no longer relevant or a bug. - Novacat: - - bugfix: Attempts to fix the timer SS to be moore robust - - tweak: Fixes bug with custom laptops. - - tweak: Raises cost of the elite model to 7 loadout points. - chaoko99: - - rscadd: Adds the clientside 'ping' and 'reconnect' commands to the file menu. - mistyLuminescence: - - bugfix: Prone people can no longer interact with an empty hand. - - bugfix: Two-handed items are now correctly unwielded when the user's offhand is - severed. - - bugfix: Mecha syringe guns now respect pierceproof clothing. - - bugfix: Securitrons now correctly ignore attacks when disabled. - - bugfix: Rechargers now correctly benefit from upgraded capacitors. - - bugfix: Medical record laptops and detective TV camera consoles no longer turn - into regular consoles when de- and re-constructed. - - bugfix: Zaddat Shrouds now retain their base name when damaged, if the shroud - has been customized. - - rscadd: Adds the makeover kit to the traitor uplink for 5 TC, also available in - the Infiltrator bundle null crate in Cargo. Makeover kits can be used to change - the user's hair style and color, and eye color. - - bugfix: Random event timers now wait until the round starts to begin counting - down. -2019-06-23: - Mechoid: - - tweak: E-swords and Changeling arm-weapons can now block projectiles (again). - Novacat: - - rscadd: Adds greyscale pills, which are colored by their reagent - - rscadd: Adds colored pill bottles, most pre-spawned pill bottles are colored - - tweak: Prespawn pills and pill bottles have had their names simplified - - tweak: Attempts to make lighting less uniform - - tweak: Cleans up lighting code - TheFurryFeline: - - bugfix: Fixes infinite frame production for some machinery objects such as grounding - rods or exonet nodes. If there's no available circuit board to get, then don't - return anything when attempting deconstruction. Ported from Cit RP. Eliminates - 'Cannot read null.board_type' runtimes where they apply. - - tweak: Allows hydroponic machines to be unwrenched. - Woodrat: - - rscadd: Turrets and respective controls added to each teleporter room. - - tweak: Air tank on shuttles switched out with an air canister. - - tweak: Roundstart Tcomms SMES starts fully charged. - - tweak: Air tanks on station have the same amount in them as air canisters. - - tweak: Expanded atmospheric tanks to be 2 by 3 instead of 2 by 2. - - tweak: Wilderness Shuttle landing point shelter updated. - - tweak: Teleporter room hand tele can now spawn in one of 4 places. - - tweak: Halved the warm up time when the autopilot on the shuttles start at round - start from ten minutes to five and nine respectively. Should mean the first - shuttle will be taking from the outpost when the second shuttle leaves the station. - - tweak: Reduced transit time from 75 seconds with pilot, 150 seconds without to - 60 and 120 respectively. - - tweak: Amount of phoron in the outposts reduced. - - tweak: Ground Xenobio and Xenoflora torn down partially. - - rscdel: Reduction of the amount of steel and glass in engineering by half. - - rscdel: Reduction of the amount of steel and glass in EVA by half. - - bugfix: Fix for Dock 2 Transfer Shuttle airlock buttons not working. - - rscadd: Intercoms added to arrivals shuttle. - - rscadd: Modular computers scattered around the main station. - - rscadd: Elevator can be accessed at centcomm. - - bugfix: Fix Bridge Secretary Quarters tint. - - bugfix: Landmarks for Bluespacerift added. - - bugfix: Wilderness Shuttle landing sides should no longer shiskabob shuttles. - - bugfix: Modular Computers replacing wrong computers. - - bugfix: Chapel Mass Driver. - - bugfix: Merc Turrets function properly. - - bugfix: Map issues on the main outpost. - mistyLuminescence: - - tweak: Splints now work on all areas of the body. - - tweak: When the supermatter explodes, it now leaves behind a shattered plinth - that continues to emit radiation. You should probably get rid of it. - - bugfix: If you destroy the supermatter early (e.g. through admin deletion shenanigans), - it no longer irradiates everyone forever. - - bugfix: Welding lockers now actually updates their sprites properly. - - tweak: Every floor tile now has a minor (2%) chance to spawn with some dirt on - it. The Janitor now has a job again. - - tweak: Similarly, every Sif grass tile now has a minor (5%) chance to spawn with - some fancy eyebulb grass on it. It can be removed by clicking on it with harm - intent. - - rscadd: Adds cats-in-boxes, which can be activated (once) to spawn cats. There's - an orange tabby (Cargo cats) and a tuxedo (Runtime) version. - - bugfix: Fixes a material duplication exploit. -2019-07-07: - Heroman3003: - - rscadd: Broken components now have matter worth of 1000 steel units (half a sheet). - - tweak: Components dropped from loot piles will now use random proper sprite instead - of default placeholder. - mistyLuminescence: - - rscadd: 'Now available in Cargo: xenoarch technology (100 points) and tactical - light armor (75 points)!' - - rscadd: Tactical light armor is like regular tactical armor, but lighter (a full - set is 0.5 slowdown), warmer (protects against moderate snow) and a little less - protective. - - tweak: Leg guards can now store bootknives. - - tweak: Xenoarch brushes and pickaxes now have a reasonable force rating instead - of hitting like a truck. - - tweak: Adds the 'POI - ' prefix to the POI location names to make it easier for - ghosts to teleport to them- e.g. 'POI - Rocky2' rather than just 'Rocky2'. - - bugfix: Fixes a runtime caused by attempting to use a crew monitor console while - on an invalid Z-level. - - bugfix: Fixes GPSes not detecting other GPSes while on an invalid Z-level. Transit - Z is unaffected by this- no spying on other shuttles! -2019-07-19: - Nalarac: - - tweak: Add xenobio/xenobot to farmbots. - Woodrat: - - rscadd: Added a clotting kit to the Raider Shuttle. - - tweak: Swapped out the ai turrets for industrial turrets in the teleporter rooms. - - tweak: Adjusted access to the turret controls to heads of staff access, moved - them outside of the rooms. -2019-07-27: - Mechoid: - - rscadd: Pipes will now leak if their ends are unsealed. - - rscadd: Added stasis clamps, which act as valves that can be placed on existing - straight pipe segments. - - rscadd: Added automatic shutoff valves, which can automatically close if a leak - appears anywhere on their pipe network. - - rscadd: Added a Xenobio-compatible ED-209. - Nalarac: - - bugfix: Repairing bots (like Beepsky) works now. - - rscadd: Emagged bots can be repaired with proximity sensors. - - tweak: Combat mechs can punch more things. Mech punch sounds like juggernaut now - - tweak: Simple mobs can attack more things. - - bugfix: Cult pylons take damage from bullets. - - bugfix: Click delay added on attacking simple doors and security barricades. - - tweak: Material doors and barricades have different attacked sounds depending - if its metal, wood, or resin. - - tweak: Fixes ability of cyborg meson to see holes in ceiling. - - rscadd: Gives cyborgs a roofing synthesizer. - - tweak: Husking bodies requires more burn. - - rscadd: Ripley speed boost module that can be built in robotics. - - rscadd: Added transmission and capacitance SMES coils to supply console. - - rscadd: Adds laser tag turrets orderable from cargo. - - bugfix: Turrets will shoot people laying down if emagged or set to lethal. - - bugfix: Turrets can not be lethal if built with non-lethal weapon. - - bugfix: Alien pistol fire noise moved to projectile. Now the turret will use the - proper noise. - - tweak: Turrets will have new colors based on projectile used. - - tweak: Projectile lastertag is no more. It is now properly lasertag. - - bugfix: Integrated circuit printers no longer take fractions of a sheet. - Schnayy: - - tweak: Replaces Cindi Kate's and Boot Knives bar sign sprites with new ones. - - rscadd: 'Added new clothes to the loadout: cardigans, pleated skirt, lilac dress, - ugly Christmas sweater, flowery sweater, and red turtleneck.' -2019-07-30: - Atermonera: - - rscadd: Added a shutoff monitoring console, which displays the status and location - of all automatic shutoff valves. Currently mapped into the atmos monitoring - room and the auxiliary engineering room on deck 1. -2019-08-08: - Mechoid: - - rscadd: 'Adds two new integrated circuit components: an advanced Text to Speech, - and a Sign-Language reading camera.' - Nalarac: - - tweak: Lowered Chance of bots being emagged during ion storm. - - tweak: Changes space helmet cameras to be a verb instead of on toggling lights. - - rscadd: Toggling helmet camera resets user upon activation (so you can have a - new user). - - bugfix: Medibots will no longer attempt to heal FBPs. - - tweak: Heavy-duty cell chargers can be built and upgraded. - - bugfix: Cyborgs can upgrade rechargers now. - - bugfix: Security bots will smack attackers once more. - - tweak: Security bots will cable cuff people with hardsuit gauntlets instead of - stun-locking. - - tweak: Cut real time for security bots demanding surrender in half (6 seconds). - - tweak: Updates the Supermatter Engine Operating Manual. - mistyLuminescence: - - tweak: Serenity mech can now be built by robotics. -2019-08-21: - Atermonera: - - tweak: Atmospherics is now bigger, with more room for fun and sanity-destroying - spaghetti! - Mechoid: - - bugfix: Exosuits are now targetted by turrets again. - - tweak: Mining charge strength lowered, price increased. Can be upgraded through - R&D laser components. - - rscadd: Searing damage type added. Energy axe now uses searing damage. - - rscadd: Survey points added. Vendor added for explorer use. Costs are universally - 'lower' compared to the mining vendor due to the rarity of points. - - rscadd: Swiping an ID card on a cataloguer will transfer the points to the card. - - tweak: Any melee energy weapon can now be made to use a cell and charge. - - rscadd: Energy Axe prototype added to R&D. - - rscadd: Anomalous 'hunting trap' added to R&D. Useful for an initial stun on mobs - for explorer scanning. - - tweak: Beartraps now stun for a quarter of a second, so they are actually useful - again, due to resistability. - - rscadd: Emergency welding pack added. Incredibly slow, but requires no protection. - - rscadd: Random turf modifier added for mapping use. Random humanoid remains spawner - added for mapping use. - - rscadd: Plants under obj/structure/flora now can be made to be harvestable / forage-able. - - rscadd: Sif trees now occasionally have fruit containing useful microbes. Microbes - slow blood flow resulting in slower chemical absorption and blood loss. - - tweak: Flora by default are now under mobs, on the same layer as turf decals. - Flora can now also randomize their size, previously only codified in Sivian - trees. - - rscadd: Moss tendrils added to Sif, making eye-plants more rare. - - rscadd: Multiple PoIs added. 'Blue shuttle down' variant, 'UFO Frigate', multiple - geysers, cliffs, and two variants of SFR which take drastically different approaches - to the SFR standard. A vault was added, too. - - tweak: Vault PoIs are now in a template group. - - rscadd: Generic AI-controlled humanoids added. Subtype made for use on Sif, clad - in weak armor and temperature resistance, used as 'mindless clones'. - - rscadd: More artifice added. - - tweak: Fultons made to be [somewhat] sane. Now only useable planetside. - - tweak: Graviton Visor moved to R&D from the mining equipment vendor. Silver and - Diamond pickaxes removed. - - rscadd: Added multiple new organs for Prometheans. Removing them will cause them - to take large amounts of Toxloss untill they are Regenerated using the active - regeneration verb. - - rscadd: 'Organ: pneumatic network, a series of skeletal tubes with high pressure - used to move nutrients and waste.' - - rscadd: 'Organs: -regenesis systems, different ''networks'' of clumped cellular - matter that allow Prometheans to recover rapidly from small injuries. Large - or numerous injuries cause un-needed stress, and pain.' - - bugfix: Internal organs now properly add themselves to the internal organ-by-name - list, the one referenced 99.9% of the time. - - tweak: Active regeneration will now replace internal organs if they are nonexistant, - as it does for limbs. - Nalarac: - - bugfix: Mech cable layer works again. - - rscadd: Added setting for turrets to fire upon downed/laying targets. - TheFurryFeline: - - rscadd: New orange jumpsuit for loadout that doesn't get locked to tracking. - - tweak: Prison jumpsuit filepath changed accordingly and closets with obj updated. - Woodrat: - - tweak: Made the solgov uniforms use accessories for denoting department instead - of having several different sprites in the uniform dmi folder. - - tweak: Removed redundant solgov uniforms from uniform.dmi and moved the sprites - for the solgov uniforms to their own dmi. - - bugfix: Fixed storage vests and drop pouches disappearing when one rolls down - a uniform. -2019-09-07: - Heroman3003: - - tweak: Desk bells can now be picked up like normal items. - - tweak: Desk bells can now be deconstructed with a wrench while on the ground. - - tweak: Desk bells can now only be made out of steel. - MisterLayne: - - tweak: Material weapons that should not conduct, do not conduct. - - tweak: Glass shards now do damage when you attack with them, based on the type - of gloves you are wearing. - Novacat: - - rscadd: Ports MREs from Baystation, and adds a few supply crates with them to - cargo. - - rscadd: Adds liquidprotein rations, currently only found in emergency MREs. - Woodrat: - - rscadd: Mining vendor added to cargo foyer. - - rscadd: Explorer vendor added to research foyer. - - rscadd: Handful of more pipe clamps added to engineering (atmos monitoring and - EVA storage). - - tweak: Adjustment to layout of chapel mass driver. - chaoko99: - - rscadd: Ported Bay's stomach pump. -2019-12-16: - Atermonera: - - tweak: Ghosts can join as drones after only 5 minutes have passed, down from 10. - Mechoid: - - rscadd: Multiple new organs added. Humans and Skrell received spleens, all species - expected to have a stomach and intestine organ have them. - - tweak: Augment 'slots' organized. - - rscadd: Multiple augments added, currently only available in the Traitor / Mercenary - uplinks as easy-to-install implants. - - rscadd: Anesthetic / Oxygen pumps added. A mobile stabilizer has been added. All - three are available in Cargo. - - rscadd: Medical MRE rations added to Cargo. - - tweak: Roundstart implants now become invisible until being handled. - - rscadd: Neural implant added to loadout, makes the brain of the user count as - an assisted organ. Does not affect MMIs or their subtypes. - - rscadd: Bioprinters now unlock more organs upon being upgraded, once they pass - the anomalous tier, they unlock quite probably illegal organs. - - rscadd: Three medical exosuit components have been added. Crisis and Hazmat response - drones, and a mounted advanced medical analyzer. - - tweak: Medical analyzers now detect on-skin reagents. - - rscadd: Multiple new chemicals added, two used for upgrading bandage kits. - - rscadd: Brute-based medical stacks can be upgraded. - - rscadd: Crude brute kits can be made with cloth. - - tweak: Stacks can now pass their colors onto objects produced by them. (Colored - cloth, painted wood, etcetera.) - - rscadd: Two combined surgical tools added, for opening / closing ribcages and - skulls, and removing organs respectively. - - rscadd: Two dud implants added to the loadout. They do literally nothing but hurt - you if you're EMP'd. - - experiment: The larynx now controls the ability to speak. Damage to it will stop - you from being able to speak anything but non-verbal languages. - - tweak: Damage to the brain can now affect the pulse. - - tweak: Only the critical blood level causes toxin damage, meaning individuals - who die of standard oxygen loss from bloodloss can possibly be saved, but exsanguinated - persons are unlikely. - - tweak: Bioaugment.dm is now just augment.dm - - tweak: Robotic hearts do not have a pulse. - - tweak: Brain damage can now cause loss of breath. - - tweak: Paracetamol is now the precursor to tramadol. - - rscadd: Calcium is now in the chemical vendor. - Nalarac: - - bugfix: ED-209 and ED-CLN now properly accept names given with a pen. - - tweak: Removed maintenance access from ED-CLN to prevent maintenance wandering. - - tweak: Enables all channels on captain's and HoP's headset by default. - - bugfix: Power cells and device cells both properly show as empty when printed - from the protolathe and mech fabricator. - - tweak: Items with cells printed from the protolathe now start empty (e.g. phoron - pistol). - Novacat: - - rscadd: Adds a teshari plush. - PrismaticGynoid: - - tweak: You can now choose what type of graffiti or rune to draw when using crayons/markers. - TheFurryFeline: - - tweak: Tweaks desk lamps to output twice as much light as before to compensate - for a refactor. - - imageadd: Changes mouse plushie sprite to be cuter and not break the hearts of - rodent lovers. :3 Seriously, the change is from a dead mouse duplicate to one - of a brown mouse resting in place. - - imageadd: Add a new sprite for the orange jumpsuit. - - tweak: Refactors prison jumpsuits into its own thing, change a few files and dmis. - - bugfix: Fixes strange rocks size. Normal -> Small like it used to be before a - refactor. - Woodrat: - - maptweak: Rework of the civilian wing, merging the kitchen and the bar into one - area. - - maptweak: Minor movement of the mining vendor. - - maptweak: Adjustment of the kitchen and bar. - - bugfix: Area in the coffee shop. - - bugfix: Missing Ducky in the codelab. - - bugfix: Fix missing scrubber in engineering. - - bugfix: Shutter added to Kitchen door. - - maptweak: Pressure Regulators at atmospheric cutoffs start unregulated at roundstart. - - tweak: Set Modular Computers layer to 2.9 to bring them inline with regular computer - layering. - - tweak: Pump to distro set to 301 kpa to help offset issues with cutoff valves. - - rscadd: One phase pistol to each explorer locker. - - rscadd: One holster to each explorer locker. - - rscdel: Removed the old size modifier traits for mobs. - - rscadd: Port and tweak of the size modifiers from World Server for mobs. -2019-12-31: - Atermonera: - - bugfix: Radiation has been made more potent and is no longer defeated by a thin - sheet of lead. - Cerebulon: - - rscadd: Added decaf coffee to the coffee shop. - - rscadd: Added 6 types of bagel - - maptweak: Modified the coffee shop to have extra counter space and a microwave - for bagels. - - tweak: Removed chef lock on kitchen cabinet. - - spellcheck: Removed reference to outdated skrell lore from naewa cube box. - TheFurryFeline: - - tweak: Changes light replacers to allow you to automatically transfer used bulbs - into the item and get a new one every 4 bulbs replaced. Additionally, this allows - you to both use the replacer on a box of bulbs to get the bulbs added as well - as clicking the item with a box of bulbs to put them inside it. - - rscadd: Spray bottles can now be printed in the Autolathe. -2020-01-21: - Heroman3003: - - bugfix: A thin sheet of lead properly defeats radiation once more, but steel beams - remain permeable. - TheFurryFeline: - - bugfix: Name and desc vars switched for changeling combat boots so removal of - item doesn't output an excessively long name. - - bugfix: Fixes light frames returning 5 steel per deconstruction when 2 steel is - used to create the frame. - schnayy: - - rscadd: Added the Pyralis borg sprites. -2020-02-03: - Atermonera: - - rscadd: Added a printer to all preset (mapped-in) modular computers, so that word - processors can actually print stuff or something. - - tweak: Unregulated pressure regulators (Regulation set to OFF) no longer limit - flow rate, and instead act as one-way opened valves. For best results, place - away from other pumps. - - tweak: Automatic Shutoff Valves are more intelligent about finding leaks, and - won't close if there's other operating shutoff valves between them and the leak - PrismaticGynoid: - - rscadd: Adds a few toys to the loadout. - schnayy: - - rscadd: Adds book cart to library. -2020-02-14: - Atermonera: - - tweak: Radiation has to accumulate at least a little bit before it starts to become - damaging. Very low levels of radiation can be safe for a number of minutes before - you are at risk of injury. - - bugfix: Unless you idle for several minutes near the supermatter before it's been - turned on, you should no longer be at risk of taking toxloss (Including those - few spots in cargo maintenance). - - rscadd: Shutoff valve monitoring console can now remotely control shutoff valves. - Heroman3003: - - tweak: FBP repair can no longer be done through the space suits. - - tweak: Surgery can no longer be done through the space suits. - Shadow Quill: - - tweak: Batons will no longer harmbaton on disarm intent, instead doing so on grab/harm. - Woodrat: - - wip: Added sofas (no options to build one in round yet, will be added after this - pull). - - rscadd: Add neonsigns, currently one neon sign, Cafe. (Code is copy pasta from - holosigns). - - rscadd: Add boxes with mugs and cups. - - tweak: Neon signs and holosigns now emit light while on. - - maptweak: Merged the Coffee Shop with the Library. - - maptweak: Moved the Locker Room to where the Coffee Shop was, adjusted the holodeck. - - maptweak: Old Locker Room turned into a construction area. - - maptweak: Adjusted holodeck maps to new orientation. - - tweak: Changed sprite of barcode scanner. - - tweak: Cleaned up furniture icon dmi, fixed arm rest icons for shuttle chairs. -2020-02-28: - Cerebulon: - - rscadd: Added cataloguer info for the radioactive manhole cover and decoupled - engine PoIs - - tweak: Renamed several PoIs to have more descriptive/immersive names - - rscadd: Most items can now be placed precisely on tables and racks. - - rscadd: Thrown items now land on a random spot on the target tile. - Nalarac: - - tweak: The 'enable helmet camera' verb has been moved from the object tab to the - hardsuit tab. - Neerti: - - rscadd: Adds an in-game feedback system that can be activated in the server configuration. - Can be accessed from the lobby, with a button next to the other lobby buttons. - Additional features and restrictions on usage are controlled by the server configuration. - leshana: - - bugfix: NTNet Quantum Relay can be constructed/deconstructed without runtimes. - lorilili: - - tweak: You can now place defibs in rechargers. - - imageadd: Adds Holographic PDA type. - - soundadd: Skrell may now *warble. -2020-03-11: - Cerebulon: - - soundadd: Added button sounds to various machines. - Mechoid: - - rscadd: Added Hardpoint Actuator equipment for Exosuits, allowing them (And most - effectively, Ripleys) to swap components on the fly, after a short delay. - - rscadd: Added Exosuit Inflatables Deployer, allowing exosuits to pick up and deploy - inflatables. - - rscadd: Added Exosuit-mounted screwdriver, wirecutters, and welding laser, to - help round-out the tool-based equipment types. - - tweak: Incendiary exo weapons now use fire modifiers instead of fire stacks. - - tweak: Ignition effects from weapons now use fire modifiers instead of fire stacks. - - bugfix: Exosuit shocker armor now retaliates properly against melee. - - rscadd: Add RIG components to robotics mechfab, plus incredibly basic belt-voidsuit - RIG. - - rscadd: Add Graphite, made by compressing coal, presently only used heavily in - RIG components. - Neerti: - - tweak: The 'cut' and 'pulse' buttons in the hacking interface now check both hands - for tools, instead of only the active hand. - - tweak: The textual indicators at the bottom of the hacking window will now go - bold when they change, until the next window refresh. - - tweak: Hacking an Autolathe no longer requires you to hack it using the Autolathe's - main window, but instead opens the hacking window like everything else. - schnayy: - - rscadd: Adds yeast as a reagent. It can be found in the kitchen vendor and in - cargo kitchen supply crates. - - tweak: Bread now calls for 5 units yeast instead of an egg, and baguettes and - croissants call for 5 units yeast in addition to former ingredients. - - rscadd: Corn oil added to the Dinnerware vendor and the Booze-o-Mat. - - imageadd: Sprites for peanut butter, mayo, and yeast condiments. - - bugfix: Boiled slime core now links to the proper sprite. -2020-03-20: - Aronai/Arokha: - - tweak: You can now fill buckets (, beakers, etc.,) from water tiles. - Cerebulon: - - soundadd: Added sounds when dropping/throwing items. Toggleable in preferences. - - soundadd: Added incidental sounds to several item interactions. - Mechoid: - - rscadd: 'Energy Daggerpens (20): Disguised energy-knives, which do 15 searing - on melee, or 30 when thrown.' - - rscadd: 'Thieves gloves (30): Special gloves that allow you to peep in others'' - backpacks and belts, and plant items in their bags / pockets.' - - rscadd: 'Buzzer Ring (30): Makes your first two punches electrically charged, - first with 25 damage in a shock, then approximately 12.5 damage in the second. - If the charge is over 90%, you can force-defib a corpse, even if it''s a mindless - one. Damage rules still apply, however time-of-death does not.' - - rscadd: 'Resource Crate (60): A crate of uranium, phoron, gold, silver, osmium, - and plasteel.' - - rscadd: 'Exotic Plantlife Crate (20): A crate of numerous random seeds.' - - rscadd: 'Spare Organ Crate (20): A crate of bioprinted organs.' - - rscadd: 'Graviton goggles (15): A pair of combined meson/material goggles.' - - rscadd: 'Integrated Circuit Printer (10): An upgraded circuit printer used to - make integrated machine.' - - rscadd: 'Flamethrower (60): A large, flame-based weapon.' - - rscadd: '8 Concussion Grenades (30): A box of eight concussion grenades.' - - rscadd: '4 Hunting Traps (30): A box of four hunting-traps, similar to those found - in the explorer vendor.' - - rscadd: '3 Virus Samples (40): A box of three unique virus samples.' - - rscadd: 'Quickdraw Syringe Case (20): A case that can hold six syringes, and rapidly - deploy them. Fits in your pocket.' - - rscadd: 'Clotting Injector Case (20): A case that starts with 3 clotting med injectors - instead.' - - rscadd: 'Bonemed Injector Case (20): A case that starts with bonemeds.' - - tweak: Announcement costs lowered to be more equivalent. - - tweak: Egun changed from 60 to 30 TC. It is nowhere near as powerful as a lascannon. - - tweak: Exosuit rigged laser from 60 to 30 TC. - - tweak: Xray gun from 85 to 60 TC. - - tweak: Augments can now be used by everyone, as robot-specific ones will require - FBP organ revamp. - - tweak: Augment guns use slightly less blood / system instability to charge, so - it doesn't kill you dead in moments. - - bugfix: Anti-Materiel Rifle can once again be used with thermals. - - bugfix: Energy Shields work again, and can be colored. - Meghan-Rossi: - - tweak: Language keys are now case-sensitive. - - tweak: The language key for Chimpanzee has changed from 6 to C to resolve a conflict - with EAL. - - tweak: The language key for Bird has changed from m to B to resolve a conflict - with Mouse. - - tweak: All other language keys are now lowercase-only. - Neerti: - - tweak: Holsters can now be worn alongside webbing vests. - - soundadd: Receiving an antag role will now play a sound to the new antagonist. - - soundadd: Having laws changed as a silicon (AI or Borg) will now play a sound - and show the changed law in the chat. - - soundadd: Being offered a ghost role while a ghost will now play a sound. - - soundadd: Someone attempting to revive someone else will play a sound to the player - being revived, if they are not in their body. - - rscadd: Most Non-hitscan projectiles now have a pixel-perfect visual effect when - they impact something, or when they expire from moving too far without hitting - anything. - - soundadd: Projectiles can now have sounds for when they hit someone. They can - also have a different sound when they hit something solid like a wall. - - soundadd: A sound is now played when a projectile 'narrowly misses' someone. - - rsctweak: Getting hit with a projectile is now more noticeable in the chat log, - with bigger text. Only the person who got hit will see the bigger text. - PrismaticGynoid: - - bugfix: Fixes xenoarch artifacts breaking when performing excavation correctly. - TheFurryFeline: - - bugfix: Fixes lack of easily accessible Response Team shortcut to type in. Type - .k or :k to speak on the channel. - schnayy: - - rscadd: Adds Sabitsuki and Bedhead Longest hairstyles. - - tweak: Adjusts pixels on the Jessica, Celeb Curls, and Beach Waves hairstyles. -2020-03-27: - Arokha: - - rscadd: Ported VChat. If you find any messages that are not sorted by any filters, - or that you feel are sorted incorrectly, please submit a bug report on our issue - tracker on github. - Atermonera: - - rscadd: Basic distillery (not the industrial-) will ping when it reaches its target - temperature. - - tweak: Basic distillery uses logistic curve to determine temperature change, and - should be much faster. - - tweak: Industrial distillery respects gas laws, particularly as pertains to low - temperatures. - - bugfix: Prometheans can be slipped by disarm intent again - Leshana: - - rscadd: Added skybox parallax background for space. - - rscadd: Baystation12 style Overmap - - tweak: Make transit turfs (shuttle transit) actually look like they move in the - right direction. - Mechoid: - - bugfix: Artifact shields now work again. - - bugfix: Anomaly batteries work again. - - rscadd: Archaeology sites can have unique batteries, syringes, rings, and 'clubs'. - - rscadd: Multiple artifact effects added, in order to provide more spice, from - naughty to nice. - - tweak: Tweaks to normal artifact finds to be more unique. - Shadow-Quill: - - rscadd: Adds emergency backup cells to most light fixtures - - tweak: AIs can turn emergency lighting on and off by clicking light fixtures. - Flickering the lights has been moved to alt-click. -2020-04-05: - Atermonera: - - bugfix: Headphones (and other two-ear clothing items) don't break the off-ear - slot when click-dragged to unequip. - Neerti: - - tweak: The eject button on both the Chemical Dispenser and Chem Master will place - the ejected beaker into your hands, instead of on top of the machine, if possible. - (Requested by Nalarac.) - - tweak: Suit sensor consoles now display a friendly textual indicator of what z-level - someone is on, instead of a number. They will also now avoid spoiling the names - of Points of Interest. - - tweak: The beakers containing Cryoxadone near cryogenics are now labeled. (Requested - by Nalarac.) - - bugfix: The sleeper consoles now finally face towards the sleepers, at last. It - only took a year for someone to fix it. - novacat: - - rscadd: Adds action buttons for scoping all sniper weapons. -2020-04-20: - Atermonera: - - bugfix: Circuit clothes can have accessories attached. - - tweak: Control-shift-click on circuit clothes to use items on the circuit. - - tweak: Employment records can have comments similar to medical records. - - rscadd: Added a preference to switch between a few extra modes of examining things. - Verb in the preferences tab. - - rscadd: Added Combat Logs filter category, to filter messages from things hitting - you. This category will also eat up most other messages that are red and bold, - please report any such messages that aren't specifically related to punching - things. - - rscadd: Added categories for sorting various types of admin logs. - - rscadd: Adds a preference to forcibly disable (or enable) VChat. Useful mostly - for people on linux, to skip the 60s waiting period where it tries to work and - keeps you from seeing chat. Reloading VChat or reconnecting to the server are - required for any changes to the preference to take effect. Support for issues - that arise as a result of this preference is not guaranteed. - Leshana: - - rscadd: Glass Emergency Shutters are now constructable and deconstructing them - will give you the glass back. - Neerti: - - rscadd: All sources of stasis (sleepers, stasis bags) will prolong the amount - of time that lets someone be revived by a defib, proportional to how powerful - the stasis effect is. - - tweak: Opening a stasis bag that's being used now gives a prompt to confirm if - you want to open it and make the bag expire. No more misclicks making doctors - want to murder you. -2020-04-29: - Leshana: - - rscadd: Ship Helm, Sensors, Navigation, and Engine Control consoles are now de-/constructable. - - rscadd: Exploration (Overmap) Shuttle Console is now de-/constructable. - - tweak: Mappers no longer need to varedit shuttle_tag on shuttle consoles. - - rscadd: Admin Start Now verb can be used at any time during startup and it won't - actually start the game until initialization is completed. - - rscadd: Lobby stat panel shows time remaining on lobby votes and if the server - is done initializing. - Neerti: - - rscadd: You can now eat as much food as you want, even while 'full'. - Novacat: - - tweak: Re-enabled dual wielding penalties for most weapons that had them. - - rscadd: New dual-wielding sprites for weapons that needed them and did not have - them. - Shadow Quill: - - bugfix: Fixes the 'broken/damaged' message when an airlock is just broken. - - tweak: Heavy duty cell chargers now have flashing lights as they charge! When - all the lights are flashing, that means the cell is done. - atlantiscze: - - rscadd: Shutoff valve monitoring is now also available as a modular computer program. - Its UI has also been cleaned up a little. - - rscadd: Research robot module now has basic exploration and xenoarchaeology tools. -2020-05-13: - Atermonera: - - rscadd: Added a preference to control multilingual parsing behaviour, with a few - different modes. Should hopefully be less punishing to people who stutter and - use hyphens as a language key. - - tweak: The examine mode preference should now persist across reconnections during - a single round, but if the server is fully restarted it still appears to reset. - This issue is also present for the multilingual preference, and I'm still looking - into it. Savefiles are cryptic. - Layne: - - rscadd: Added Promethean language. - Mechoid: - - rscadd: Adds more interactions with animals, like shearing and taming. - - rscadd: New PoIs - - rscadd: Thermal poncho attachment, has minor slowdown, but gives thermal protection - to the armor it is attached to. - - rscadd: Mercenaries now drop their guns again. Most likely to be broken, however - they can be repaired. Examining when adjacent will allow you to inspect the - gun for what is needed. - - rscadd: Mercenary Snipers now exist. They will telegraph their shots approximately - 2 seconds in advance, and can fire at 14 tiles away. Will occasionally drop - pieces of their PTRs that survive combat. - - tweak: Clothing can now check attachments for temperature resistance. - - bugfix: MHD Howitzer beam effect actually exists again. - - bugfix: Xenoresin ground cover is properly colored again. - atlantiscze: - - rscadd: Robots can now search loot piles. - - rscadd: Hardsuits now allow backpacks to be carried in storage slot. This is limited - to hardsuits which are worn on the back slot. - - rscadd: SMES units now have automatic load balancing both on inputs and outputs - - rscadd: SMES units (and derived objects, such as PSUs) can now have more than - one input terminal. This allows for input from more otherwise isolated power - networks. - - tweak: Completely redesigned cell rack PSUs, removed ghetto variant. Cell rack - PSUs now support multiple power cells and hot-swapping of cells during operation. - This allows for either charging multiple cells at once in one device (directly - from power cable) or for powering up various machinery with only a power cell. - They are still inferior to SMESes in pretty much all aspects. - - tweak: Multitool on a cable now shows nicer results with large currents (uses - kW or MW accordingly) - - tweak: Multitool may be now used to change colour of cable coils. - - tweak: Supermatter delamination effects have been tweaked. Delamination is considerably - less laggy, and less directly destructive. Instead, it causes larger health - hazard and secondary engineering problems such as power outage or partial damage - of solar arrays. -2020-06-21: - Arokha: - - rscadd: New sprites for janicart - - tweak: Alt-click helpers for stowing mop, chemicals on janicart - Atermonera: - - rscadd: Added verb to export vchat logs, found in OOC tab when vchat has successfully - loaded. - - tweak: Vchat only sends you enough messages to fill your buffer on reconnect, - instead of all of them. - Billy Bangles: - - rscadd: Light and dark marble floor tiles can now be crafted with marble sheets. - Greenjoe: - - rscadd: Added a wrist-bound PDA, selectable from the PDA selection menu in char - setup. it can go in the glove slot along with the ID and belt slots, and shows - on your character's wrist no matter which of those 3 slots you put it in! - KasparoVv: - - rscadd: You can now quickly cycle hrough previous or next hair/facial styles at - character creation. - - rscadd: Use the -mv- button to pick a marking and place it above of another on - your character. Saves you from pressing up or down a bunch. - - tweak: Ports color_square() from Paradise for colour previews, cleaning up pref. - code & correct alignment issue w/ nested tables. - - tweak: Markings are now properly aligned within a table. -2020-08-03: - Cerebulon: - - imageadd: Added new book sprites, replaced old book sprites. - - rscadd: Added sticky notes, orderable from cargo - - rscadd: You can now carve graffiti into suitable walls/floors with sharp objects. - - rscadd: Trash, graffiti, dirt (Not blood), noticeboards and stickynotes are now - persistent across rounds. This is admin-toggleable. - Mechoid: - - rscadd: Adds a glass jar subtype, the glass tank, that can be used to hold live - fish. Remember to add water! - Rykka Stormheart: - - rscadd: Ported over Aurora Cooking from AuroraStation and Citadel-RP! - - rscadd: Recipes are separate per appliance, and all appliances have a use! - - rscadd: Please take note, Chefs, to pre-heat you appliances at the start of your - shift. - - rscadd: Fryer Recipes require batter before they can be made! - - rscadd: Fire alarms will go off if you burn food! - - rscadd: The largest change - Cooking takes TIME. Around 6 minutes for the largest - recipes in the game. - - rscadd: 'Too many other changes to list - refer to PR #7344 https://github.com/PolarisSS13/Polaris/pull/7344' -2020-08-06: - Cerebulon: - - rscadd: Added new mobs Fire Bugs, Ice Hares, Tymisian Moths and Siffets to surface - spawnlists. Also added a new dog breed, woof. - ForFoxSake: - - rscadd: Ported tgstation styled magazine restocking. Hit a bullet on a table or - floor with a partially empty magazine to start restocking. - Mechoid: - - rscadd: Exosuits now have internal components, mostly like borgs, but larger. - - rscadd: Autolathes can use plastic and plasteel. - - rscadd: Autolathes can have tiered recipes, based on their manipulator rating. - - tweak: Exosuit base health has been lowered due to the changes to damage processing. - Rykka Stormheart: - - rscadd: Blast Doors will now crush people, if they are on the same turf when it - closes, and throw them to an adjacent open turf. - - rscadd: The damage should be delayed enough that you can walk out of the door - before the sprite animation finishes and you will be safe. The delay is being - reviewed, and will likely be adjusted after sufficient feedback is gathered. - - rscadd: Blast doors and shutters (the types that go on bar/kitchen/etc) will also - throw items on their tiles. -2020-08-20: - Atermonera: - - maptweak: Mapped Overmap sensors onto the Southern Cross. Deck 2, central ring, - starboard side. Departmental sensor installations and dedicated rooms may be - added in the future. - - wip: To use the new sensors, you first have to click on them, hit 'Reconnect' - on the window, close the window, then reopen it to get the console to link up - with the sensors properly. - - wip: Enabled overmap event generation. This doesn't really do anything yet because - the shuttles haven't been upgraded, but it's very pretty! - BlinsKot: - - rscadd: You can now alt-click to turn on the washing machine. - - rscadd: You can now alt-click on a mech while piloting it to toggle strafing. - Blinskot: - - rscadd: You can now alt-click on a mech while piloting it to toggle strafing. - - rscadd: You can now alt-click to turn on the washing machine. - Cerebulon: - - rscadd: Added extended flavour text to most things related to commercial vending - machines and their contents. - - rscadd: Added chewing gum, lollipops and chewing tobacco. Unwrap it and place - it in your mask slot like a cigarette. - - rscadd: Added snack food, vending drink and beer brand variety. - - imageadd: New booze bottle, coffee, juice, snack and cigarette packet sprites. - Lorilili: - - tweak: Skrellian blood is now hemocyanin-based and regenerates with copper, not - iron. - - rscadd: You can now wear caution signs and warning cones. - - rscadd: You can now point using shift and middle mouse button. - Mechoid: - - rscadd: Mortiferin added in place of old Necroxadone as a normal chem recipe. - - tweak: Necroxadone changed to a more powerful alternative to Mortiferin which - works even on corpses without bloodflow. - - rscadd: Added reagent pumps. You can refill water tanks planetside! - - rscadd: Added reagent hoses. Only used player-side by tanks, pumps, and spray - nozzles to move reagents from one container to another. - Meghan Rossi: - - bugfix: Cyborgs can now put things into oven dishes with their grippers - - bugfix: Cyborgs can now put oven dishes in the oven with their grippers - - tweak: Bots that are idle in doorways (including firedoors and blastdoors) will - move out of the way. - - rscadd: Multiple cleanbots will no longer attempt to clean the same tile at the - same time. - - rscadd: Cleanbots will now clean tiles closer to them first. - - bugfix: You can now use duct tape on yourself. - - rscadd: Ghosts now have a toggleable security HUD. Use the 'Toggle Security HUD' - verb in the ghost tab to enable it - - rscadd: Ghosts can now shift-click things to examine them. - - rscadd: Ghosts can now alt-click adjacent things to open the turf tab. - - bugfix: You can now build plating on grass with floor tiles. - - rscadd: Improved descriptions for some floors. - - rscadd: The rapid service fabricator (found on service borgs) can now produce - metamorphic pint glasses. - - rscadd: The party supplies and bar supplies crates orderable from cargo now contain - metamorphic pint glasses. - - rscadd: The autolathe can now produce metamorphic pint and half-pint glasses. - - rscadd: The autolathe can now produce all drinking glasses in batches of 5 or - 10. - Nyria: - - rscadd: Added volume settings, available in character setup or from the Preferences - tab. - - rscadd: More settings and affected sounds may be added at a later date. - - rscadd: Added a TGui window to control the new settings with shiny sliders. - Rykka Stormheart: - - rscadd: Adds a mech vs mech combat system for the toy mechs earned from arcades - and found around the station. - - rscadd: You can initiate combat with yourself by hitting a toy mech with another - toy mech, or fight another player if you attack a player holding a mech toy - with your own mech toy while not on harm intent. - - rscadd: Each mech has its own health stat and special ability that they'll use - in combat against each other. - SplinterGP: - - rscadd: Added verb for FBP's to change their monitor display. - - rscdel: Removed monitor mask item(replaced by verb). - Subber: - - rscadd: 'Added a new prosthetic sprite set: Cyber Solutions - Outdated.' -2020-09-06: - Atermonera: - - tweak: You can use Move Up/Down to traverse ladders. No popup 'Which way do you - want to go?' windows required for bidirectional ladders!. - Killian: - - tweak: Added a bunch more random spawners for mapping use. - - tweak: You can now inject reagents directly into a synth's 'blood' stream using - syringes and hypos (inc. borg hypos). Taking oil/coolant samples is still impossible. - Kot: - - tweak: Mecha drills can now butcher dead mobs better. Like gibs and gore and guts - stuff. - Lorilili: - - rscadd: You can now pet borgs on help intent and punch on hurt intent. Old behavior - is now grab intent. - Lorilili (Port from Aurora): - - rscadd: Added knee-high and thigh-high jackboots. - - imageadd: Replaced laceup and leather shoes with oxford shoes. - - imageadd: Replaced standard shoe and high-top sprites with newer ones. - Mechoid: - - maptweak: Mapped distillery into Chemistry, beside the Grinder. - - maptweak: Moves wrapper, spacecleaner, and labeller from the grinder table to - the Chem locker. - - rscadd: Added distilling recipe for Synthetic Plasma, which acts as a blood-restoration - of 1.2 units per synthplas. Also orderable in cargo. - Rykka Stormheart: - - rscadd: Adds Ambience Chance and Repeating Ambience Preferences into Globals, - underneath Client FPS - - rscadd: Random-Ambience-Frequency controls how long before it checks if it can - play ambience to you again. Setting it to 0 disables the random re-play of ambience. - - rscadd: Ambience Chance affects the % chance to play ambience to your client. - It defaults to 35%, but can be set from 0 to 100 to disable it or always play - every time you move into an area or have the Random Ambience check called. - Shadow Larkens: - - rscadd: Added the ability to right click and lower preferences for jobs in the - Occupation Menu. - SplinterGP: - - rscadd: Adds new hailer masks with quotes with sound, allowing you to use a hailer - on a face mask to combine them. - - soundadd: Adds new sound effects for hailer face masks. +DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. +--- +2013-01-07: + Cael_Aislinn: + - tgs: Updated server to tgstation r5200 (November 26th, 2012), see https://code.google.com/p/tgstation13/source/list + for tg's changelog. + Chinsky: + - rscadd: 'Implants: Explosvie implant, exploding when victim hears the codephrase + you set.' + - rscadd: 'Implants: Compressed Matter implat, scan item (making it disappear), + inject yourself and recall that item on will!' + - rscadd: Implant removal surgery, with !!FUN!! results if you mess up it. + - rscadd: Coats now have pockets again. + - rscadd: Bash people on tabetops. an windows, or with stools. Grab people to bash + them on tables or windows (better grab for better hit on windows). Drag stool + sprite on you to pick it up, click on it in hand to make it usual stool again. + - rscadd: Surgical caps, and new sprites for bloodbags and fixovein. + - rscadd: Now some surgery steps will bloody your hands, Full-body blood coat in + case youy mess up spectacualry. + - rscadd: Ported some crates (Art, Surgery, Sterile equiplemnt). + - tweak: Changed contraband crates. Posters moved to Art Crate, cigs and lipstick + ot party crate. Now contraband crate has illegal booze and illicit drugs. + - bugfix: Finally got evac party lights + - bugfix: Now disfigurment,now it WILL happen when damage is bad enough. + - experiment: Now if you speak in depressurized area (less than 10 kPa) only people + next to you can hear you. Radios still work though. +2013-01-13: + Chinsky: + - tweak: If you get enough (6) blood drips on one tile, it'll turn into a blood + puddle. Should make bleeding out more visible. + - tweak: Security belt now able to hold taser, baton and tape roll. + - tweak: Added alternative security uniform to Security wardrobes. + - rscadd: 'Ported Urist cult runes. Down with the crayon drawings! Example: http://dl.dropbox.com/u/26846767/images/SS13/255_symbols.PNG' + - bugfix: Engineering tape now require engineer OR atmos access instead of both. + - rscadd: Implants now will react to EMP, possibly in !!FUN!! ways + GauHelldragon: + - rscadd: Servicebots now have RoboTray and Printing Pen. Robotray can be used to + pick up and drop food/drinks. Printing pen can alternate between writing mode + and rename paper mode by clicking it. + - rscadd: Farmbots. A new type of robot that weeds, waters and fertilizes. Use robot + arm on water tank. Then use plant analyzer, mini-hoe, bucket and finally proximity + sensor. + - rscadd: Chefs can clang their serving trays with a rolling pin. Just like a riot + shield! +2013-01-21: + Cael_Aislinn: + - bugfix: Satchels and ore boxes can now hold strange rocks. + - rscadd: Closets and crates can now be built out of 5 and 10 plasteel respectively. + - rscadd: Observers can become mice once more. +2013-01-23: + Cael_Aislinn: + - tgs: Updated server to tgstation r5200 (November 26th, 2012), see https://code.google.com/p/tgstation13/source/list + for tg's changelog. +2013-01-31: + CIB: + - bugfix: Chilis and cold chilis no longer kill in small amounts + - bugfix: Chloral now again needs around 5 units to start killing somebody +2013-02-13: + Erthilo: + - bugfix: Fixed SSD (logged-out) players not staying asleep. + - bugfix: Fixed set-pose verb and mice emotes having extra periods. + - bugfix: Fixed virus crate not appearing and breaking supply shuttle. + - bugfix: Fixed newcaster photos not being censored. +2013-02-14: + CIB: + - rscadd: Medical side-effects(patients are going to come back for secondary treatment) + - rscadd: NT loyalty setting(affects command reports and gives antags hints who + might collaborate with them) + - tweak: Simple animal balance fixes(They're slower now) + CaelAislinn: + - rscadd: Re-added old ion storm laws, re-added grid check event. + - rscadd: Added Rogue Drone and Vermin Infestation random events. + - rscadd: Added/fixed space vines random event. + - tweak: Updates to the virus events. + - tweak: Spider infestation and alien infestation events turned off by default. + - tweak: Soghun, taj and skrell all have unique language text colours. + - tweak: Moderators will no longer be listed in adminwho, instead use modwho. + Gamerofthegame: + - rscadd: Miscellaneous mapfixes. +2013-02-18: + Cael Aislinn: + - rscadd: Security bots will now target hostile mobs, and vice versa. + - tweak: Carp should actually emigrate now, instead of just immigrating then squatting + around the outer hull. + - tweak: Admins and moderators have been split up into separate 'who' verbs (adminwho + and modwho respectively). +2013-02-20: + Chinsky: + - rscadd: 'Added new surgery: putting items inside people. After you use retractor + to keep incision open, just click with any item to put it inside. But be wary, + if you try to fit something too big, you might rip the veins. To remove items, + use implant removal surgery.' + - rscadd: Crowbar can be used as alternative to retractor. + - rscadd: Can now unload guns by clicking them in hand. + - tweak: Fixed distance calculation in bullet missing chance computation, it was + always assuming 1 or 0 tiles. Now distace REALLY matters when you shoot. + - rscadd: To add more FUN to previous thing, bullets missed to not disappear but + keep going until they hit something else. + - bugfix: Compressed Matter and Explosive implants spawn properly now. + - tweak: 'Tweaks to medical effects: removed itch caused by bandages. Chemical effects + now have non-100 chance of appearing, the stronger medicine, the more probality + it''ll have side effects.' +2013-02-22: + Chinsky: + - tweak: Change to body cavity surgery. Can only put items in chest, groind and + head. Max size for item - 3 (chest), 2 (groin), 1 (head). For chest surgery + ribs should be bent open, (lung surgery until second scalpel step). Surgery + step needs preparation step, with drill. After that you can place item inside, + or seal it with cautery to do other step instead. +2013-02-23: + Cael Aislinn: + - wip: RUST machinery components should now be researchable (with high requirements) + and orderable through QM (with high cost). + - wip: Shield machinery should now be researchable (with high requirements) and + orderable through QM (with high cost). This one is reportedly buggy. + - tweak: Rogue vending machines should revert back to normal at the end of the event. + - rscadd: New Unathi hair styles. +2013-02-25: + Cael Aislinn: + - rscadd: As well as building hull shield generators, normal shield gens can now + be built (see http://baystation12.net/forums/viewtopic.php?f=1&t;=6993). + - rscadd: 'New random events: multiple new system wide-events have been have been + added to the newscaster feeds, some not quite as respectable as others.' + - rscadd: 'New random event: some lucky winners will win the TC Daily Grand Slam + Lotto, while others may be the target of malicious hackers.' +2013-02-27: + Gamerofthegame: + - rscadd: Added the (base gear) ERT preset for the debug command. + - rscadd: Map fixes, Virology hole fixed. Atmospheric fixes for mining and, to a + less extent, the science outpost. (No, not cycling airlocks) + - rscadd: Fiddled with the ERT set up location on Centcom. Radmins will now have + a even easier time equiping a team of any real pratical size, especially coupled + with the above debug command. +2013-03-05: + CIB: + - rscadd: Added internal organs. They're currently all located in the chest. Use + advanced scanner to detect damage. Use the same surgery as for ruptured lungs + to fix them. + Cael Aislinn: + - soundadd: Set roundstart music to randomly choose between space.ogg and traitor.ogg + (see http://baystation12.net/forums/viewtopic.php?f=5&t;=6972) + - experiment: All RUST components except for TEGs (which generate the power) are + now obtainable ingame, bored engineers should get hold of them and setup an + experimental reactor for testing purposes. +2013-03-06: + Cael Aislinn: + - rscadd: Type 1 thermoelectric generators and the associated binary circulators + are now moveable (wrench to secure/unsecure) and orderable via Quartermaster. + - wip: code/maps/rust_test.dmm contains an example setup for a functional RUST reactor. + Maximum output is in the range of 12 to 20MW (12 to 20 million watts). + - bugfix: Removed double announcement for gridchecks, reduced duration of gridchecks. + RavingManiac: + - rscadd: You can now stab people with syringes using the "harm" intent. This destroys + the syringe and transfers a random percentage of its contents into the target. + Armor has a 50% chance of blocking the syringe. +2013-03-09: + Cael Aislinn: + - rscadd: "Beekeeping is now possible. Construct an apiary of out wood and embed\ + \ it into a hydroponics tray, then get a queen bee and bottle of BeezEez from\ + \ cargo bay. \n\t\tHives produce honey and honeycomb, but be wary if the bees\ + \ start swarming." +2013-03-11: + CIB: + - rscadd: Cloning now requires you to put slabs of meat into the cloning pod to + replenish biomass. + Cael Aislinn: + - wip: The xenoarchaeology update is here. This includes a major content overhaul + and a bunch of new features for xenoarchaeology. + - tweak: Digsites (strange rock deposits) are now much more nuanced and interesting, + and a huge number of minor (non-artifact) finds have been added. + - rscadd: Excavation is now a complex process that involves digging into the rock + to the right depth. + - rscadd: Chemical analysis is required for safe excavation of the digsites, in + order to determine how best to extract the finds. + - bugfix: Anomalous artifacts have been overhauled and many longstanding bugs with + existing effects have been fixed - the anomaly utiliser should now work much + more often. + - rscadd: Numerous new artifact effects have been added and some new artifact types + can be dug up from the asteroid. + - rscadd: New tools and equipment have been added, including normal and spaceworthy + versions of the anomaly suits, excavation tools and other neat gadgets. + - rscadd: Five books have been written by subject matter experts from around the + galaxy to help the crew of the Exodus come to grips with this exacting new science + (over 3000 words of tutorials!). + Chinsky: + - rscadd: Sec HUDs now can see short versions of sec records.on examine. Med HUDs + do same for medical records, and can set medical status of patient. + - rscadd: Damage to the head can now cause brain damage. +2013-03-14: + Spamcat: + - rscadd: Figured I should make one of these. Syringestabbing now produces a broken + syringe complete with fingerprints of attacker and blood of a victim, so dispose + your evidence carefully. Maximum transfer amount per stab is lowered to 10. +2013-03-15: + Cael_Aislinn: + - rscadd: Mapped a compact research base on the mining asteroid, with multiple labs + and testing rooms. It's reachable through a new (old) shuttle dock that leaves + from the research wing on the main station. +2013-03-26: + Spamcat: + - bugfix: Chemmaster now puts pills in pill bottles (if one is inserted). + - tweak: Stabbing someone with a syringe now deals 3 damage instead of 7 because + 7 is like, a crowbar punch. + - bugfix: Lizards can now join mid-round again. + - rscadd: Chemicals in bloodstream will transfer with blood now, so don't get drunk + before your blood donation. Viruses and antibodies transfer through blood too. + - bugfix: Virology is working again. +2013-03-27: + Asanadas: + - tweak: The Null Rod has recovered its de-culting ability, for balance reasons. + Metagaming with it is a big no-no! + - rscadd: Holy Water as a liquid is able to de-cult. Less effective, but less bloody. + May be changed over the course of time for balance. +2013-04-04: + SkyMarshal: + - bugfix: Fixed ZAS + - bugfix: Fixed Fire + Spamcat: + - bugfix: Blood type is now saved in character creation menu, no need to edit it + manually every round. +2013-04-09: + SkyMarshal: + - bugfix: Fire Issues (Firedoors, Flamethrowers, Incendiary Grenades) fixed. + - bugfix: Fixed a bad line of code that was preventing autoignition of flammable + gas mixes. + - bugfix: Volatile fuel is burned up after a point. + - rscdel: Partial-tile firedoors removed. This is due to ZAS breaking when interacting + with them. +2013-04-11: + SkyMarshal: + - experiment: Fire has been reworked. + - experiment: In-game variable editor is both readded and expanded with fire controlling + capability. +2013-04-17: + SkyMarshal: + - experiment: ZAS is now more deadly, as per decision by administrative team. May + be tweaked, but currently AIRFLOW is the biggest griefer. + - experiment: World startup optimized, many functions now delayed until a player + joins the server. (Reduces server boot time significantly) + - tweak: Zones will now equalize air more rapidly. + - bugfix: ZAS now respects active magboots when airflow occurs. + - bugfix: Airflow will no longer throw you into doors and open them. + - bugfix: Race condition in zone construction has been fixed, so zones connect properly + at round start. + - bugfix: Plasma effects readded. + - bugfix: Fixed runtime involving away mission. +2013-04-24: + Jediluke69: + - rscadd: Added 5 new drinks (Kira Special, Lemonade, Brown Star, Milkshakes, Rewriter) + - tweak: Nanopaste now heals about half of what it used to + - tweak: Ballistic crates should now come with shotguns loaded with actual shells + no more beanbags + - bugfix: Iced tea no longer makes a glass of .what? + NerdyBoy1104: + - rscadd: 'New Botany additions: Rice and Plastellium. New sheet material: Plastic.' + - rscadd: Plastellium is refined into plastic by first grinding the produce to get + plasticide. 20 plasticide + 10 polytrinic acid makes 10 sheets of plastic which + can be used to make crates, forks, spoons, knives, ashtrays or plastic bags + from. + - rscadd: Rice seeds grows into rice stalks that you grind to get rice. 10 Rice + + 5 Water makes boiled rice, 10 rice + 5 milk makes rice pudding, 10 rice + + 5 universal enzyme (in beaker) makes Sake. + faux: + - imageadd: Mixed Wardrobe Closet now has colored shoes and plaid skirts. + - imageadd: Dress uniforms added to the Captain, RD, and HoP wardrobe closets. A + uniform jacket has also been added to the Captain's closet. HoS' hat has been + re-added to their closet. I do not love the CMO and CE enough to give them anything. + - imageadd: Atheletic closet now has five different swimsuits *for the ladies* in + them. If you are a guy, be prepared to be yelled at if you run around like a + moron in one of these. Same goes for ladies who run around in shorts with their + titties swaying in the space winds. + - imageadd: A set of dispatcher uniforms will spawn in the security closet. These + are for playtesting the dispatcher role. + - imageadd: New suit spawns in the laundry room. It's for geezer's only. You're + welcome, Book. + - imageadd: Nurse outfit variant, orderly uniform, and first responder jacket will + now spawn in the medical wardrobe closet. + - imageadd: 'A white wedding dress will spawn in the chaplain''s closet. There are + also several dresses currently only adminspawnable. Admins: Look either under + "bride" or "dress." The bride one leads to the colored wedding dresses, and + there are some other kinds of dresses under dress.' + - tweak: No more luchador masks or boxing gloves or boxing ring. You guys have a + swimming pool now, dip in and enjoy it. + - tweak: he meeting hall has been replaced with an awkwardly placed security office + meant for prisoner processing. + - tweak: Added a couple more welding goggles to engineering since you guys liked + those a lot. + - imageadd: Flasks spawn behind the bar. Only three. Don't fight over them. I don't + know how to add them to the bar vending machine otherwise I would have done + that instead. Detective, you have your own flask in your office, it's underneath + the cigarettes on your desk. + - tweak: Added two canes to the medical storage, for people who have leg injuries + and can't walk good and stuff. I do not want to see doctors pretending to be + House. These are for patients. Do not make me delete this addition and declare + you guys not being able to have nice things. + - tweak: Secondary entance to EVA now directly leads into the medbay hardsuit section. + Sorry for any inconviences this will cause. The CMO can now fetch the hardsuits + whenever they want. + - tweak: Secondary security hardsuit has been added to the armory. Security members + please stop stealing engineer's hardsuits when you guys want to pair up for + space travel. + - tweak: Firelocks have been moved around in the main hallways to form really ghetto + versions of airlocks. + - tweak: Violin spawns in theatre storage now. I didn't put the piano there though, + that was someone else. + - tweak: Psych office in medbay has been made better looking. +2013-05-14: + Cael_Aislinn: + - experiment: Depth scanners can now be used to determine what material archaeological + deposits are made of, meaning lab analysis is no longer required. + - tweak: Some useability issues with xenoarchaeology tools have been resolved, and + the transit pods cycle automatically now. +2013-05-15: + Spamcat: + - rscadd: Added telescopic batons + to HoS's and captain's lockers. These are quite robust and easily concealable. +2013-05-21: + SkyMarshal: + - experiment: ZAS will now speed air movement into/out of a zone when unsimulated + tiles (e.g. space) are involved, in relation to the number of tiles. + - experiment: Portable Canisters will now automatically connect to any portable + connecter beneath them on map load. + - bugfix: Bug involving mis-mapped disposal junction fixed + - bugfix: Air alarms now work for atmos techs (whoops!) + - bugfix: The Master Controller now properly stops atmos when it runtimes. + - bugfix: Backpacks can no longer be contaminated + - tweak: ZAS no longer logs air statistics. + - tweak: ZAS now rebuilds as soon as it detects a semi-complex change in geometry. (It + was doing this already, but in a convoluted way which was actually less efficient) + - tweak: General code cleanup/commenting of ZAS + - tweak: Jungle now initializes after the random Z-level loads and atmos initializes. +2013-05-25: + Erthilo: + - bugfix: Fixes alien races appearing an unknown when speaking their language. + - bugfix: Fixes alien races losing their language when cloned. + - bugfix: Fixes UI getting randomly reset when trying to change it in Genetics Scanners. +2013-05-26: + Chinsky: + - rscadd: Tentacles! Now clone damage will make you horribly malformed like examine + text says. + Meyar: + - rscadd: The syndicate shuttle now has a cycling airlock during Nuke rounds. + - rscadd: Restored the ability for the syndicate Agent ID to change the name on + the card (reforge it) more than once. + - rscadd: ERT Radio now functional again. + - rscadd: 'Research blast doors now actually lock down the entirety of station-side + Research. ' + - rscadd: 'Added lock down buttons to the wardens office. ' + - rscadd: 'The randomized barsign has made a return. ' + - rscadd: Syndicate Agent ID's external airlock access restored. + VitrescentTortoise: + - rscadd: Added a third option for not getting any job preferences. It allows you + to return to the lobby instead of joining. +2013-05-28: + Erthilo: + - bugfix: Fixes everyone being able to understand alien languages. HERE IS YOUR + TOWER OF BABEL + VitrescentTortoise: + - bugfix: Wizard's forcewall now works. +2013-05-30: + Segrain: + - bugfix: Meteor showers actually spawn meteors now. + - tweak: Engineering tape fits into toolbelt and can be placed on doors. + - rscadd: Pill bottles can hold paper. + Spamcat: + - tweak: Pill bottle capacity increased to 14 items. + - bugfix: Fixed Lamarr (it now spawns properly) + proliberate: + - rscadd: Station time is now displayed in the status tab for new players and AIs. +2013-05-31: + Segrain: + - bugfix: Portable canisters now properly connect to ports beneath them on map load. + - bugfix: Fixed unfastening gas meters. +2013-06-01: + Chinsky: + - rscadd: Bloody footprints! Now stepping in the puddle will dirty your shoes/feet + and make you leave bloody footprints for a bit. + - rscadd: Blood now dries up after some time. Puddles take ~30 minutes, small things + 5 minutes. + - bugfix: Untreated wounds now heal. No more toe stubs spamming you with pain messages + for the rest of the shift. + - experiment: On the other side, everything is healed slowly. Maximum you cna squeeze + out of first aid is 0.5 health per tick per organ. Lying down makes it faster + too, by 1.5x factor. + - rscadd: Lids! Click beaker/bottle in hand to put them on/off. Prevent spilling + - rscadd: Added 'hailer' to security lockers. If used in hand, says "Halt! Security!". + For those who can't run and type. +2013-06-05: + Chinsky: + - rscadd: Load bearing equipment - webbings and vests for engineers and sec. Attach + to jumpsuit, use 'Look in storage' verb (object tab) to open. + Segrain: + - rscadd: Exosuits now can open firelocks by walking into them. +2013-06-06: + Asanadas: + - rscadd: Added a whimsical suit to the head of personnel's secret clothing locker. + Meyar: + - bugfix: Disposal's mail routing fixed. Missing pipes replaced. + - bugfix: 'Chemistry is once again a part of the disposals delivery circuit. ' + - bugfix: Added missing sorting junctions to Security and HoS office. + - bugfix: Fixed a duplicate sorting junction. +2013-06-09: + Segrain: + - bugfix: Emagged supply console can order SpecOp crates again. +2013-06-11: + Meyar: + - bugfix: Fixes a security door with a firedoor ontop of it. + - bugfix: Fixed a typo relating to the admin Select Equipment Verb. (It's RESPONSE + team not RESCUE team) + - rscadd: ERT are now automated, from their spawn to their shuttle. Admin intervention + no longer required! (Getting to the mechs still requires admin permission generally) + - rscadd: Added flashlights to compensate for the weakened PDA lights + - tweak: 'ERT Uniforms updated to be in line with Centcom uniforms. No more turtlenecks, + no sir. ' +2013-06-12: + Zuhayr: + - rscadd: Added pneumatic cannon and harpoons. + - experiment: Added embedded projectiles. Bullets and thrown weapons may stick in + targets. Throwing them by hand won't make them stick, firing them from a cannon + might. Implant removal surgery will get rid of shrapnel and stuck items. +2013-06-13: + Kilakk: + - rscadd: Added the Xenobiologist job. Has access to the research hallway and to + xenobiology. + - rscdel: Removed Xenobiology access from Scientists. + - rscdel: Removed the Xenobiologist alternate title from Scientists. + - rscadd: Added "Xenoarchaeology" to the RD, Scientists, and to the ID computer. + - tweak: Changed the Research Outpost doors to use "Xenoarchaeology" access. +2013-06-18: + Segrain: + - bugfix: Fixed some bugs in windoor construction. + - tweak: Secure windoors are made with rods again. + - rscadd: Windoors drop their electronics when broken. Emagged windoors can have + theirs removed by crowbar. + - rscadd: Airlock electronics can be configured to make door open for any single + access on it instead of all of them. + - rscadd: Cyborgs can preview their icons before choosing. +2013-06-21: + Jupotter: + - bugfix: Fix the robotiscist preview in the char setupe screen +2013-06-22: + Cael_Aislinn: + - tweak: The xenoarchaeology depth scanner will now tell you what energy field is + required to safely extract a find. + - tweak: Excavation picks will now dig faster, and xenoarchaeology as a whole should + be easier to do. +2013-06-23: + Segrain: + - rscadd: Airlocks of various models can be constructed again. + faux: + - experiment: There has been a complete medbay renovation spearheaded by Vetinarix. + http://baystation12.net/forums/viewtopic.php?f=20&t;=7847 <-- Please + put any commentary good or bad, here. + - tweak: Some maintenance doors within RnD and Medbay have had their accesses changed. + Maintenance doors in the joint areas (leading to the research shuttle, virology, + and xenobiology) are now zero access. Which means anyone in those joints can + enter the maintenance tunnels. This was done to add additional evacuation locations + during radiation storms. Additional maintenance doors were added to the tunnels + in these areas to prevent docs and scientists from running about. + - tweak: Starboard emergency storage isn't gone now, it's simply located in the + escape wing. + - experiment: An engineering training room has been added to engineering. This location + was previously where surgery was located. If you are new to engineering or need + to brush up on your skills, please use this area for testing. +2013-06-26: + Segrain: + - bugfix: Autopsy scanner properly displays time of wound infliction and death. + - bugfix: Autopsy scanner properly displays wounds by projectile weapons. + Whitellama: + - bugfix: One-antag rounds (like wizard/ninja) no longer end automatically upon + death + - wip: Space ninja has been implemented as a voteable gamemode + - rscadd: Space ninja spawn landmarks have been implemented (but not yet placed + on the map), still spawn at carps-pawns instead. (The code will warn you about + this and ask you to report it, it's a known issue.) + - rscadd: Five new space ninja directives have been added, old directives have been + reworded to be less harsh + - wip: Space ninjas have been given their own list as antagonists, and are no longer + bundled up with traitors + - bugfix: Space ninjas with a "steal a functional AI" objective will now succeed + by downloading one into their suits + - tweak: Space ninja suits' exploding on death has been nerfed, so as not to cause + breaches + - rscadd: A few space ninja titles/names have been added and removed to be slightly + more believable + - bugfix: The antagonist selector no longer chooses jobbanned players when it runs + out of willing options +2013-06-27: + Segrain: + - bugfix: ID cards properly setup bloodtype, DNA and fingerprints again. +2013-06-28: + Segrain: + - rscadd: AIs are now able to examine what they see. +2013-07-03: + Segrain: + - rscadd: Security and medical cyborgs can use their HUDs to access records. +2013-07-05: + Spamcat: + - rscadd: Pulse! Humans now have hearbeat rate, which can be measured by right-clicking + someone - Check pulse or by health analyzer. Medical machinery also has heartbeat + monitors. Certain meds and conditions can influence it. +2013-07-06: + Chinsky: + - rscadd: Humans now can be infected with more than one virus at once. + - rscadd: All analyzed viruses are put into virus DB. You can view it and edit their + name and description on medical record consoles. + - tweak: 'Only known viruses (ones in DB) will be detected by the machinery and + HUDs. ' + - rscadd: Viruses cause fever, body temperature rising the more stage is. + - bugfix: Humans' body temperature does not drift towards room one unless there's + big difference in them. + - tweak: Virus incubators now can transmit viuses from dishes to blood sample. + - rscadd: New machine - centrifuge. It can isolate antibodies or viruses (spawning + virus dish) from a blood sample in vials. Accepts vials only. + - rscadd: Fancy vial boxes in virology, one of them is locked by ID with MD access. + - tweak: Engineered viruses are now ariborne too. +2013-07-11: + Chinsky: + - rscadd: Gun delays. All guns now have delays between shots. Most have less than + second, lasercannons and pulse rifles have around 2 seconds delay. Automatics + have zero, click-speed. +2013-07-26: + Kilakk: + - bugfix: Brig cell timers will no longer start counting down automatically. + - tweak: Separated the actual countdown timer from the timer controls. Pressing + "Set" while the timer is counting down will reset the countdown timer to the + time selected. +2013-07-28: + Segrain: + - rscadd: Camera console circuits can be adjusted for different networks. + - rscadd: Nuclear operatives and ERT members have built-in cameras in their helmets. + Activate helmet to initialize it. +2013-07-30: + Erthilo: + - bugfix: EFTPOS and ATM machines should now connect to databases. + - bugfix: Gravitational Catapults can now be removed from mechs. + - bugfix: Ghost manifest rune paper naming now works correctly. + - bugfix: Fix for newscaster special characters. Still not recommended. + Kilakk: + - rscadd: Added colored department radio channels. +2013-08-01: + Asanadas: + - tweak: The Null Rod has recovered its de-culting ability, for balance reasons. + Metagaming with it is a big no-no! + - rscadd: Holy Water as a liquid is able to de-cult. Less effective, but less bloody. + May be changed over the course of time for balance. + CIB: + - bugfix: Chilis and cold chilis no longer kill in small amounts + - bugfix: Chloral now again needs around 5 units to start killing somebody + Cael Aislinn: + - rscadd: Security bots will now target hostile mobs, and vice versa. + - tweak: Carp should actually emigrate now, instead of just immigrating then squatting + around the outer hull. + - tweak: Admins and moderators have been split up into separate 'who' verbs (adminwho + and modwho respectively). + CaelAislinn: + - rscadd: Re-added old ion storm laws, re-added grid check event. + - rscadd: Added Rogue Drone and Vermin Infestation random events. + - rscadd: Added/fixed space vines random event. + - tweak: Updates to the virus events. + - tweak: Spider infestation and alien infestation events turned off by default. + - tweak: Soghun, taj and skrell all have unique language text colours. + - tweak: Moderators will no longer be listed in adminwho, instead use modwho. + Cael_Aislinn: + - tgs: Updated server to tgstation r5200 (November 26th, 2012), see https://code.google.com/p/tgstation13/source/list + for tg's changelog. + Chinsky: + - rscadd: 'Old new medical features:' + - rscadd: Autoinjectors! They come preloaded with 5u of inapro, can be used instantly, + and are one-use. You can replace chems inside using a syringe. Box of them is + added to Medicine closet and medical supplies crate. + - rscadd: Splints! Target broken liimb and click on person to apply. Can be taken + off in inventory menu, like handcuffs. Splinted limbs have less negative effects. + - rscadd: Advanced medikit! Red and mean, all doctors spawn with one. Contains better + stuff - advanced versions of bandaids and aloe heal 12 damage on the first use. + - tweak: Wounds with damage above 50 won't heal by themselves even if bandaged/salved. + Would have to seek advanced medical attention for those. + Erthilo: + - bugfix: Fixed SSD (logged-out) players not staying asleep. + - bugfix: Fixed set-pose verb and mice emotes having extra periods. + - bugfix: Fixed virus crate not appearing and breaking supply shuttle. + - bugfix: Fixed newcaster photos not being censored. + Gamerofthegame: + - rscadd: Miscellaneous mapfixes. + GauHelldragon: + - rscadd: Servicebots now have RoboTray and Printing Pen. Robotray can be used to + pick up and drop food/drinks. Printing pen can alternate between writing mode + and rename paper mode by clicking it. + - rscadd: Farmbots. A new type of robot that weeds, waters and fertilizes. Use robot + arm on water tank. Then use plant analyzer, mini-hoe, bucket and finally proximity + sensor. + - rscadd: Chefs can clang their serving trays with a rolling pin. Just like a riot + shield! + Jediluke69: + - rscadd: Added 5 new drinks (Kira Special, Lemonade, Brown Star, Milkshakes, Rewriter) + - tweak: Nanopaste now heals about half of what it used to + - tweak: Ballistic crates should now come with shotguns loaded with actual shells + no more beanbags + - bugfix: Iced tea no longer makes a glass of .what? + Jupotter: + - bugfix: Fix the robotiscist preview in the char setupe screen + Kilakk: + - rscadd: Added the Xenobiologist job. Has access to the research hallway and to + xenobiology. + - rscdel: Removed Xenobiology access from Scientists. + - rscdel: Removed the Xenobiologist alternate title from Scientists. + - rscadd: Added "Xenoarchaeology" to the RD, Scientists, and to the ID computer. + - tweak: Changed the Research Outpost doors to use "Xenoarchaeology" access. + Meyar: + - rscadd: The syndicate shuttle now has a cycling airlock during Nuke rounds. + - rscadd: Restored the ability for the syndicate Agent ID to change the name on + the card (reforge it) more than once. + - rscadd: ERT Radio now functional again. + - rscadd: 'Research blast doors now actually lock down the entirety of station-side + Research. ' + - rscadd: 'Added lock down buttons to the wardens office. ' + - rscadd: 'The randomized barsign has made a return. ' + - rscadd: Syndicate Agent ID's external airlock access restored. + NerdyBoy1104: + - rscadd: 'New Botany additions: Rice and Plastellium. New sheet material: Plastic.' + - rscadd: Plastellium is refined into plastic by first grinding the produce to get + plasticide. 20 plasticide + 10 polytrinic acid makes 10 sheets of plastic which + can be used to make crates, forks, spoons, knives, ashtrays or plastic bags + from. + - rscadd: Rice seeds grows into rice stalks that you grind to get rice. 10 Rice + + 5 Water makes boiled rice, 10 rice + 5 milk makes rice pudding, 10 rice + + 5 universal enzyme (in beaker) makes Sake. + RavingManiac: + - rscadd: You can now stab people with syringes using the "harm" intent. This destroys + the syringe and transfers a random percentage of its contents into the target. + Armor has a 50% chance of blocking the syringe. + Segrain: + - bugfix: Meteor showers actually spawn meteors now. + - tweak: Engineering tape fits into toolbelt and can be placed on doors. + - rscadd: Pill bottles can hold paper. + SkyMarshal: + - bugfix: Fixed ZAS + - bugfix: Fixed Fire + Spamcat: + - rscadd: Figured I should make one of these. Syringestabbing now produces a broken + syringe complete with fingerprints of attacker and blood of a victim, so dispose + your evidence carefully. Maximum transfer amount per stab is lowered to 10. + VitrescentTortoise: + - rscadd: Added a third option for not getting any job preferences. It allows you + to return to the lobby instead of joining. + Whitellama: + - bugfix: One-antag rounds (like wizard/ninja) no longer end automatically upon + death + - wip: Space ninja has been implemented as a voteable gamemode + - rscadd: Space ninja spawn landmarks have been implemented (but not yet placed + on the map), still spawn at carps-pawns instead. (The code will warn you about + this and ask you to report it, it's a known issue.) + - rscadd: Five new space ninja directives have been added, old directives have been + reworded to be less harsh + - wip: Space ninjas have been given their own list as antagonists, and are no longer + bundled up with traitors + - bugfix: Space ninjas with a "steal a functional AI" objective will now succeed + by downloading one into their suits + - tweak: Space ninja suits' exploding on death has been nerfed, so as not to cause + breaches + - rscadd: A few space ninja titles/names have been added and removed to be slightly + more believable + - bugfix: The antagonist selector no longer chooses jobbanned players when it runs + out of willing options + Zuhayr: + - rscadd: Added pneumatic cannon and harpoons. + - experiment: Added embedded projectiles. Bullets and thrown weapons may stick in + targets. Throwing them by hand won't make them stick, firing them from a cannon + might. Implant removal surgery will get rid of shrapnel and stuck items. + faux: + - imageadd: Mixed Wardrobe Closet now has colored shoes and plaid skirts. + - imageadd: Dress uniforms added to the Captain, RD, and HoP wardrobe closets. A + uniform jacket has also been added to the Captain's closet. HoS' hat has been + re-added to their closet. I do not love the CMO and CE enough to give them anything. + - imageadd: Atheletic closet now has five different swimsuits *for the ladies* in + them. If you are a guy, be prepared to be yelled at if you run around like a + moron in one of these. Same goes for ladies who run around in shorts with their + titties swaying in the space winds. + - imageadd: A set of dispatcher uniforms will spawn in the security closet. These + are for playtesting the dispatcher role. + - imageadd: New suit spawns in the laundry room. It's for geezer's only. You're + welcome, Book. + - imageadd: Nurse outfit variant, orderly uniform, and first responder jacket will + now spawn in the medical wardrobe closet. + - imageadd: 'A white wedding dress will spawn in the chaplain''s closet. There are + also several dresses currently only adminspawnable. Admins: Look either under + "bride" or "dress." The bride one leads to the colored wedding dresses, and + there are some other kinds of dresses under dress.' + - tweak: No more luchador masks or boxing gloves or boxing ring. You guys have a + swimming pool now, dip in and enjoy it. + - tweak: he meeting hall has been replaced with an awkwardly placed security office + meant for prisoner processing. + - tweak: Added a couple more welding goggles to engineering since you guys liked + those a lot. + - imageadd: Flasks spawn behind the bar. Only three. Don't fight over them. I don't + know how to add them to the bar vending machine otherwise I would have done + that instead. Detective, you have your own flask in your office, it's underneath + the cigarettes on your desk. + - tweak: Added two canes to the medical storage, for people who have leg injuries + and can't walk good and stuff. I do not want to see doctors pretending to be + House. These are for patients. Do not make me delete this addition and declare + you guys not being able to have nice things. + - tweak: Secondary entance to EVA now directly leads into the medbay hardsuit section. + Sorry for any inconviences this will cause. The CMO can now fetch the hardsuits + whenever they want. + - tweak: Secondary security hardsuit has been added to the armory. Security members + please stop stealing engineer's hardsuits when you guys want to pair up for + space travel. + - tweak: Firelocks have been moved around in the main hallways to form really ghetto + versions of airlocks. + - tweak: Violin spawns in theatre storage now. I didn't put the piano there though, + that was someone else. + - tweak: Psych office in medbay has been made better looking. + proliberate: + - rscadd: Station time is now displayed in the status tab for new players and AIs. +2013-08-04: + Chinsky: + - rscadd: Health HUD indicator replaced with Pain indicator. Now health indicator + shows pain level instead of actual vitals level. Some types of damage contribute + more to pain, some less, usually feeling worse than they really are. +2013-08-08: + Erthilo: + - bugfix: Raise Dead rune now properly heals and revives dead corpse. + - bugfix: Admin-only rejuvenate verb now heals all organs, limbs, and diseases. + - bugfix: Cyborg sprites now correctly reset with reset boards. This means cyborg + appearances can now be changed without admin intervention. +2013-09-18: + Kilakk: + - rscadd: Fax machines! The Captain and IA agents can use the fax machine to send + properly formatted messages to Central Command. + - imageadd: Gave the fax machine a fancy animated sprite. Thanks Cajoes! +2013-09-24: + Snapshot: + - rscdel: Removed hidden vote counts. + - rscdel: Removed hiding of vote results. + - rscdel: Removed OOC muting during votes. + - rscadd: Crew transfers are no longer callable during Red and Delta alert. + - wip: Started work on Auto transfer framework. +2013-10-06: + Chinsky: + - rscadd: Return of dreaded side effects. They now manifest well after their cause + disappears, so curing them should be possible without them reappearing immediately. + They also lost last stage damaging effects. +2013-10-29: + Cael_Aislinn: + - rscadd: Xenoarchaeology's chemical analysis and six analysis machines are gone, + replaced by a single one which can be beaten in a minigame. + - rscadd: Sneaky traitors will find new challenges to overcome at the research outpost, + but may also find new opportunities (transit tubes can now be traversed). + - rscadd: Finding active alien machinery should now be made significantly easier + with the Alden-Saraspova counter. +2013-11-01: + Various: + - rscadd: Autovoting, Get off the station when your 15 hour workweek is done, thanks + unions! + - rscadd: Some beach props that Chinsky finds useless. + - wip: Updated NanoUI + - rscadd: Dialysis while in sleepers - removes reagents from mobs, like the chemist, + toss him in there! + - tweak: Pipe Dispensers can now be ordered by Cargo + - rscadd: Fancy G-G-G-G-Ghosts! +2013-11-23: + Ccomp5950: + - bugfix: Players are now no longer able to commit suicide with a lasertag gun, + and will feel silly for doing so. + - bugfix: Ghosts hit with the cult book shall now actually become visible. + - bugfix: The powercells spawned with Exosuits will now properly be named to not + confuse bearded roboticists. + - bugfix: Blindfolded players will now no longer require eye surgery to repair their + sight, removing the blindfold will be sufficient. + - rscadd: Atmospheric Technicians will now have access to Exterior airlocks. +2013-11-24: + Yinadele: + - experiment: Supermatter engine added! Please treat your new engine gently, and + report any strangeness! + - tweak: Rebalanced events so people don't explode into appendicitis or have their + organs constantly explode. + - rscadd: Vending machines have had bottled water, iced tea, and grape soda added. + - rscadd: Head reattachment surgery added! Sew heads back on proper rather than + monkey madness. + - rscadd: Pain crit rebalanced - Added aim variance depending on pain levels, nerfed + blackscreen severely. + - rscadd: 'Cyborg alt titles: Robot, and Android added! These will make you spawn + as a posibrained robot. Please enjoy!' + - bugfix: Fixed the sprite on the modified welding goggles, added a pair to the + CE's office where they'll be used. + - bugfix: Fixed atmos computers- They are once again responsive! + - tweak: Added in functionality proper for explosive implants- You can now set their + level of detonation, and their effects are more responsively concrete depending + on setting. + - rscadd: Hemostats re-added to autolathe! + - rscadd: Added two manuals on atmosia and EVA, by MagmaRam! Found in engineering + and the engineering bookcase. + - bugfix: Fixed areas in medbay to have fully functional APC sectors. + - rscadd: Girders are now lasable. + - experiment: Please wait warmly, new features planned for next merge! +2013-12-01: + 'Various Developers banged their keyboards together:': + - rscadd: New Engine, the supermatter, figure out what a cooling loop is, or don't + and blow up engineering! + - rscadd: Each department will have it's own fax, make a copy of your butt and fax + it to the admins! + - rscadd: Booze and soda dispensers, they are like chemmasters, only with booze + and soda! + - rscadd: Bluespace and Cryostasis beakers, how do they work? Fuggin bluespace + how do they work? + - rscadd: You can now shove things into vending machines, impress your friends on + how things magically disappear out of your hands into the machine! + - rscadd: Robots and Androids (And gynoids too!) can now use custom job titles + - bugfix: Various bugfixes +2013-12-18: + RavingManiac: + - rscadd: Mousetraps can now be "hidden" through the right-click menu. This makes + them go under tables, clutter and the like. The filthy rodents will never see + it coming! + - tweak: Monkeys will no longer move randomly while being pulled. +2014-01-01: + Various: + - rscadd: AntagHUD and MedicalHUD for ghosts, see who the baddies are, check for + new configuration options. + - rscadd: Ghosts will now have bold text if they are in the same room as the person + making conversations easier to follow. + - rscadd: New hairstyles! Now you can use something other then hotpink floor length + braid. + - wip: DNA rework, tell us how you were cloned and became albino! + - rscadd: Dirty floors, so now you know exactly how lazy the janitors are! + - rscadd: A new UI system, feel free to color it yourself, don't set it to completely + clear or you will have a bad time. + - rscadd: Cryogenic storage, for all your SSD needs. + - rscadd: New hardsuits for those syndicate tajaran +2014-02-01: + Various: + - rscadd: NanoUI for PDA + - rscadd: Write in blood while a ghost in cult rounds with enough cultists + - rscadd: Cookies, absurd sandwiches, and even cookable dioanae nymphs! + - rscadd: A bunch of new guns and other weapons + - rscadd: Species specific blood +2014-02-19: + Aryn: + - experiment: New air model. Nothing should change to a great degree, but temperature + flow might be affected due to closed connections not sticking around. +2014-03-01: + Various: + - rscadd: Paint Mixing, red and blue makes purple! + - rscadd: New posters to tell you to respect those darned cat people + - rscadd: NanoUI for APC's, Canisters, Tank Transfer Valves and the heaters / coolers + - tweak: PDA bombs are now less annoying, and won't always blow up / cause internal + bleeding + - tweak: Blob made less deadly + - rscadd: Objectiveless Antags now a configuration option, choose your own adventure! + - wip: Engineering redesign, now with better monitoring of the explodium supermatter! + - rscadd: Security EOD + - rscadd: New playable race, IPC's, go beep boop boop all over the station! + - rscadd: Gamemode autovoting, now players don't have to call for gamemode votes, + it's automatic! +2014-03-05: + RavingManiac: + - rscadd: Smartfridges added to the bar, chemistry and virology. No more clutter! + - rscadd: A certain musical instrument has returned to the bar. + - rscadd: There is now a ten second delay between ingesting a pill/donut/milkshake + and regretting it. +2014-03-10: + Chinsky: + - rscadd: Viruses now affect certain range of species, different for each virus + - tweak: Spaceacilline now prevents infection, and has a small chance to cure viruses + at Stage 1. It does not give them antibodies though, so they can get sick again! + - tweak: Biosuits and spacesuits now offer more protection against viruses. Full + biosuit competely prevents airborne infection, when coupled with gloves they + both protect quite well from contact ones + - rscadd: Sneezing now spreads viruses in front of mob. Sometimes he gets a warning + beforehand though +2014-03-30: + RavingManiac: + - rscadd: Inflatable walls and doors added. Useful for sealing off hull breaches, + but easily punctured by sharp objects and Tajarans. +2014-04-06: + RavingManiac: + - tweak: Tape recorders and station-bounced radios now work inside containers and + closets. +2014-04-11: + Jarcolr: + - rscadd: You can now flip coins like a D2 + - tweak: Miscellaneous cargo crates got a tiny buff, Standard Costume crate is now + Costume Crate + - tweak: Grammar patch,telekinesis/amputated arm exploit fixes,more in the future + - tweak: Grille kicking now does less damage + - tweak: TELESCOPIC baton no longer knocks anybody down,still got a lot of force + though + - tweak: Other small-ish changes and fixes that aren't worth mentioning +2014-04-25: + Various: + - rscadd: Overhauled saycode, you can now use languages over the radio. + - rscadd: Chamelon items beyond just the suit. + - rscadd: NanoUI Virology + - rscadd: 3D Sounds + - rscadd: AI Channel color for when they want to be all sneaky + - rscadd: New inflatable walls and airlocks for your breach sealing pleasure. + - rscadd: Carbon Copy papers, so you can subject everyone to your authority and + paperwork, but mainly paperwork + - rscadd: Undershirts and rolling down jumpsuits + - rscadd: Insta-hit tasers, can be shot through glass as well. + - rscadd: Changeling balances, an emphasis put more on stealth. + - rscdel: Genetics disabled + - rscdel: Telescience removed, might be added again when we come up with a less + math headache enducing version of it. + - bugfix: Bugfixes galore! +2014-04-29: + HarpyEagle: + - rscadd: Webbing vest storage can now be accessed by clicking on the item in inventory + - rscadd: Holsters can be accessed by clicking on them in inventory + - rscadd: Webbings and other suit attachments are now visible on the icon in inventory + - tweak: Removing jumpsuits now requires drag and drop to prevent accidental undressing + - rscadd: Added an action icon for magboots that can be used to toggle them similar + to flashlights + - rscadd: Fuel tanks now spill fuel when wrenched open +2014-05-03: + Cael_Aislinn: + - rscadd: "Coming out of nowhere the past few months, the Garland Corporation has\ + \ made headlines with a new prehistoric theme park delighting travellers with\ + \ species thought extinct. Now available for research stations everywhere is\ + \ the technology that made it all possible! Features include:
    \n\t\t\t-\ + \ 13 discoverable prehistoric species to clone from fossils (including 5 brand\ + \ new ones).
    \n\t\t\t- 11 discoverable prehistoric plants to clone from fossils\ + \ (including 9 brand new ones).
    \n\t\t\t- New minigame that involves correctly\ + \ ordering the genomes inside each genetic sequence to unlock an animal/plant.
    \n\ + \t\t\t- Some prehistoric animals and plants may seem strangely familiar... while\ + \ others may bring more than the erstwhile scientist bargains for.
    \n




    " +2014-05-06: + Hubble: + - rscadd: Clip papers together by hitting a paper with a paper or photo + - imageadd: Adds icons for copied stamps +2014-05-16: + HarpyEagle: + - rscadd: Silicon mob types (AI, cyborgs, PAI) can now speak certain species languages + depending on type and module + - rscadd: Languages can now be whispered when using the language code with either + the whisper verb or the whisper speech code +2014-05-23: + Hubble: + - rscadd: Personal lockers are now resettable + - rscadd: Take off people's accessories or change their sensors in the drag and + drop-interface + - rscadd: Merge paper bundles by hitting one with another + - tweak: Line breaks in Security, Medical and Employment Records + - tweak: Record printouts will have names on it + - tweak: Set other people's internals in belt and suit storage slots + - bugfix: No longer changing suit sensors while cuffed + - bugfix: No longer emptying other people's pockets when they are not full yet +2014-05-28: + Chinsky: + - rscadd: Adds few new paperBBcode tags, to make up for HTML removal. + - rscadd: '[logo] tag draws NT logo image (one from wiki).' + - rscadd: '[table] [/table] tags mark borders of tables. [grid] [/grid] are borderless + tables, useful of making layouts. Inside tables following tags are used: [row] + marks beginning of new table row, [cell] - beginning of new table cell.' +2014-05-31: + Jarcolr: + - rscadd: 21 New cargo crates, go check them out! + - rscadd: Peanuts have now been added, food items are now being developed. + - rscadd: 2 new cargo groups, Miscellaneous and Supply. + - rscadd: Sugarcane seeds can now be gotten from the seed dispenser. + - rscadd: 5 new satchels when selecting "satchel" for RD, scientist, botanist, virologist, + geneticist (disabled) and chemist. + - rscadd: Clicking on a player with a paper/book when you have the eyes selected + shows them the book/paper forcefully. +2014-06-03: + Hubblenaut: + - rscadd: Added wheelchairs + - tweak: Replaced stool in Medical Examination with wheelchair + - tweak: Using a fire-extinguisher to propel you on a chair can have consequences + (drive into walls and people, do it!) +2014-06-13: + HarpyEagle: + - rscadd: Added docking ports for shuttles + - rscadd: Shuttle airlocks will automatically open and close, preventing people + from being sucked into space by because someone on another z-level called a + shuttle + - rscadd: Some docking ports can also double as airlocks + - rscadd: Docking ports can be overriden to prevent any automatic action. Shuttles + will wait for players to open/close doors manually + - rscadd: Shuttles can be forced launched, which will make them not wait for airlocks + to be properly closed +2014-06-15: + HarpyEagle: + - bugfix: Fixed wound autohealing regardless of damage amount. The appropriate wound + will now be assigned correctly based on damage amount and type + - bugfix: Fixed several other bugs related wounds that resulted in damage magically + disappearing + - bugfix: Fixed various sharp objects not being counted as sharp, bullets in particular + - bugfix: Fixed armour providing more protection from bullets than it was supposed + to +2014-06-19: + Chinsky: + - rscadd: Adds guest terminals on the map. These wall terminals let anyone issue + temporary IDs. Only access that issuer has can be granted, and maximum time + pass can be issued for is 20 minutes. All operations are logged in terminals. +2014-06-20: + Cael_Aislinn: + - rscadd: 'New discoverable items added to xenoarchaeology, and new features for + some existing ones. Artifact harvesters can now harvest the secondary effect + of artifacts as well as the primary one.
    + +
    ' + - tweak: 'Artifact utilisers should be much nicer/easier to use now.
    + +
  • Alden-Saraspova counters and talking items should work properly + now.
    + +
  • + +
    ' +2014-07-01: + Various: + - experiment: Hardsuit breaching. + - experiment: Rewritten fire. + - experiment: Supermatter now glows and sucks things into it as it approaches criticality. + - rscadd: Station Vox (Vox pariahs) are now available. + - rscadd: Wheelchairs. + - rscadd: Cargo Trains. + - rscadd: Hardsuit cycler machinery. + - rscadd: Rewritten lighting (coloured lights!) + - rscadd: New Mining machinery and rewritten smelting. + - rscadd: Rewritten autolathe + - rscadd: Mutiny mode. + - rscadd: NanoUI airlock and docking controllers. + - rscadd: Completely rewritten shuttle code. + - rscadd: 'Derelict Z-level replacement: construction site.' + - rscadd: Computer3 laptops. + - rscadd: Constructable SMES units. + - rscadd: Omni-directional atmos machinery. + - rscadd: Climbable tables and crates. + - rscadd: Xenoflora added to Science. + - rscadd: Utensils can be used to eat food. + - rscadd: Decks of cards are now around the station. + - rscadd: Service robots can speak languages. + - wip: Xenoarch updates and fixes. + - tweak: Rewritten species-specific gear icon handling. + - tweak: Cats and borers can be picked up. + - tweak: Botanist renamed to Gardener. + - tweak: Hydroponics merged with the Kitchen. + - tweak: Latejoin spawn points (Arrivals, Cryostorage, Gateway). + - rscadd: Escape pods only launch automatically during emergency evacuations + - rscadd: Escape pods can be made to launch during regular crew transfers using + the control panel inside the pod, or by emagging the panel outside the pod + - rscadd: When swiped or emagged, the crew transfer shuttle can be delayed in addition + to being launched early +2014-07-06: + HarpyEagle: + - rscadd: Re-enabled and rewrote the wound infection system + - rscadd: Infections can be prevented by properly bandaging and salving wounds + - rscadd: Infections are cured by spaceacillin +2014-07-20: + PsiOmegaDelta: + - rscadd: AI can now store up to five camera locations and return to them when desired. + - rscadd: AI can now alt+left click turfs in camera view to list and interact with + the objects. + - rscadd: AI can now ctrl+click turret controls to enable/disable turrets. + - rscadd: AI can now alt+click turret controls to toggle stun/lethal mode. + - rscadd: AI can now select which channel to state laws on. +2014-07-26: + Whitellama: + - rscadd: Added dynamic flavour text. + - bugfix: Fixed bug with suit fibers and fingerprints. +2014-07-31: + HarpyEagle: + - tweak: Stun batons now work like tasers and deal agony instead of stun + - rscadd: Being hit in the hands with a stun weapon will cause whatever is being + held to be dropped + - tweak: Handcuffs now require an aggressive grab to be used +2014-08-02: + Whitellama: + - bugfix: Arcane tomes can now be stored on bookshelves. + - bugfix: Dionaea players no longer crash on death, and now become nymphs properly. +2014-08-05: + HarpyEagle: + - tweak: Atmos Rewrite. Many atmos devices now use power according to their load + and gas physics + - rscadd: Pressure regulator device. Replaces the passive gate and can regulate + input or output pressure + - rscadd: Gas heaters and gas coolers are now constructable and can be upgraded + with parts from research + - bugfix: Fixes recharger and cell charger power draw. Rechargers draw 15 kW, wall + chargers draw 25 kW, and heavy-duty cell chargers draw 40 kW. Cyborg charging + stations draw 75 kW. + - bugfix: Laptops, and various other machines, now draw more reasonable amounts + of power + - bugfix: Machines will periodically update their powered status if moved from a + powered to an unpowered area and vice versa +2014-08-27: + Whitellama: + - bugfix: Made destination taggers more intuitive so you know when you've tagged + something + - rscadd: Ported package label and tag sprites + - rscadd: Ported using a pen on a package to give it a title, or to write a note + - rscadd: Donut boxes and egg boxes can be constructed out of cardboard +2014-08-31: + Whitellama: + - bugfix: Matches and candles can be used to burn papers, too. + - bugfix: Observers have a bit more time (20 seconds, instead of 7.5) before the + Diona join prompt disappears. +2014-09-05: + RavingManiac: + - experiment: 'NewPipe implemented: Supply and scrubber pipes can be run in parallel + without connecting to each other.' + - rscadd: Supply pipes will only connect to supply pipes, vents and Universal Pipe + Adapters(UPAs). + - rscadd: Scrubber pipes will only connect to scrubber pipes, scrubbers and UPAs. + - rscadd: UPAs will connect to regular, scrubber and supply pipes. +2014-09-20: + HarpyEagle: + - bugfix: Fixes evidence bags and boxes eating each other. Evidence bags now store + items by dragging the bag onto the item to be stored. +2014-09-28: + Gamerofthegame: + - rscadd: Hoverpods fully supported, currently orderable from cargo. Two slots, + three cargo, space flight and a working mech for all other intents and purposes. + - rscadd: Added the Rigged laser and Passenger Compartment equipment. The rigged + laser is a weapon for working exosuits - just a ordinary laser, but with triple + the cool down and rather power inefficient. The passenger compartment allows + other people to board and hitch a ride on the mech - such as in fire rescue + or for space flight. + Zuhayr: + - rscadd: Organs can now be removed and transplanted. + - tweak: Brain surgery is now the same as chest surgery regarding the steps leading + up to it. + - tweak: Appendix and kidney now share the groin and removing the first will prevent + appendicitis. + - tweak: Lots of backend surgery/organ stuff, see the PR if you need to know. +2014-10-01: + RavingManiac: + - rscadd: Zooming with the sniper rifle now adds a view offset in the direction + you are facing. + - rscadd: Added binoculars - functionally similar to sniper scope. Adminspawn-only + for now. + - rscadd: Bottles from chemistry now, like beakers, use chemical overlays instead + of fixed sprites. + - rscadd: Being in space while not magbooted to something will cause your sprite + to bob up and down. + Zuhayr: + - rscadd: Added species organ checks to several areas (phoron burn, welder burn, + appendicitis, vox cortical stacks, flashes). + - rscadd: Added VV option to add or remove organs. + - rscadd: Added simple bioprinter (adminspawn). + - rscadd: Added smashing/slashing behavior from xenos to some unarmed attacks. + - rscadd: Added some new state icons for diona nymphs. + - rscadd: Added borer husk functionality (cortical borers can turn dead humans into + zombies). + - rscadd: Added tackle verb. + - rscadd: Added NO_SLIP. + - rscadd: Added species-specific orans to Dionaea, new Xenomorphs and vox. + - rscadd: Added colour and species to blood data. + - rscadd: Added lethal consequences to missing your heart. + - rscdel: Removed robot_talk_understand and alien_talk_understand. + - rscdel: Removed attack_alien() and several flavours of is_alien() procs. + - rscdel: Removed /mob/living/carbon/alien/humanoid. + - rscdel: Removed alien_hud(). + - rscdel: Removed IS_SLOW, NEEDS_LIGHT and RAD_ABSORB. + - rscdel: Renamed is_larva() to is_alien(). + - tweak: Refactored a ton of files, either condensing or expanding them, or moving + them to new directories. + - tweak: Refactored some attack vars from simple_animal to mob/living level. + - tweak: Refactored internal organs to /mob/living/carbon level. + - tweak: Refactored rad and light absorbtion to organ level. + - tweak: Refactored brains to /obj/item/organ/brain. + - tweak: Refactored a lot of blood splattering to use blood_splatter() proc. + - tweak: Refactored broadcast languages (changeling and alien hiveminds, drone and + binary chat) to actual languages. + - tweak: Refactored xenomorph abilities to work for humans. + - tweak: Refactored xenomorphs into human species. + - tweak: Rewrote larva_hud() and human_hud(). The latter now takes data from the + species datum. + - tweak: Rewrote diona nymphs as descendents of /mob/living/carbon/alien. + - tweak: Rewrote xenolarva as descendents of /mob/living/carbon/alien. + - tweak: Rewrote /mob/living/carbon/alien. + - tweak: Moved alcohol and toxin processing to the liver. + - tweak: Moved drone light proc to robot level, added integrated_light_power and + local_transmit vars to robots. + - tweak: Moved human brainloss onto the brain organ. + - tweak: Shuffled around and collapsed several redundant procs down to carbon level + (hide, ventcrawl, Bump). + - tweak: Fixed species swaps from NO_BLOOD to those with blood killing the subject + instantly. +2014-11-01: + PsiOmegaDelta: + - bugfix: Adds the last missing step to deconstruct fire alarms. Apply wirecutters. + - rscadd: There's a "new" mining outpost nearby the Research outpost. + - rscadd: Manifest ghosts now have spookier names. + - rscadd: Adds a gas monitor computer for the toxin mixing chamber. + - rscadd: AI can now change the display of individual AI status screens. + - rscadd: More ion laws.. + - rscadd: All turrets have been replaced with portable variants. Potential targets + can be configured on a per turret basis. + - bugfix: Improved crew monitor map positioning. + - rscadd: Can now order plastic, body-, and statis bags from cargo + - rscadd: PDAs now receive newscasts. + - rscadd: (De)constructable emergency shutters. + - rscadd: Borgs can now select to simply state their laws or select a radio channel, + same as the AI. +2014-11-04: + TwistedAkai: + - rscadd: Almost any window which has been fully unsecured can now be dismantled + with a wrench. +2014-11-08: + PsiOmegaDelta: + - rscadd: Service personnel now have their own frequency to communicate over. Use + "say :v". + - rscadd: The AI can now has proper quick access to its private channel. Use "say + :o". + - rscadd: Newscasters supports photo captions. Simply pen one on the attached photo. + - rscadd: Once made visible by a cultist ghosts can toggle visiblity at will. + - rscadd: Detonating cyborgs using the cyborg monitor console now notifies the master + AI, if any. + - rscadd: More machinery, such as APCs, air alarms, etc., now support attaching + signalers to the wires. + - tweak: Random event overhaul. Admins may wish check the verb "Event Manager Panel". +2014-11-22: + Zuhayr: + - rscadd: Added the /obj/item/weapon/rig class - back-mounted deployable hardsuits. + - rscadd: Replaced existing hardsuits with 'voidsuits', functionally identical. + - rscdel: Removed the mounted device and helmet/boot procs from voidsuits. + - tweak: Refactored a shit-ton of ninja code into the new rig class. + - wip: This is more than likely going to take a lot of balancing to get into a good + place. +2015-01-09: + Zuhayr: + - tweak: Voice changers no longer use ID cards. They have Toggle and Set Voice verbs + on the actual mask object now. + - rscadd: Readded moonwalking. Alt-dir to face new dir, or Face-Direction verb to + face current dir. +2015-02-04: + RavingManiac: + - rscadd: Holodeck is now bigger and better, with toggleable gravity and a new courtroom + setting + TwistedAkai: + - bugfix: Purple Combs should now be visible and have their proper icon +2015-02-12: + Daranz: + - rscadd: Vending machines now use NanoUI and accept cash. The vendor account can + now be suspended to disable all sales in all machines on station. +2015-02-16: + RavingManiac: + - rscadd: Say hello to the new Thermoelectric Supermatter Engine. Read the operating + manual to get started. +2015-02-18: + PsiOmegaDelta: + - rscadd: Synths now have timestamped radio and chat messages. + - rscadd: New and updated uplink items. + - rscadd: Multiple AIs can now share the same holopad. + - rscadd: The AI now has built-in consoles, accessible from the subsystem tab. +2015-02-24: + Zuhayr: + - experiment: Major changes to the kitchen and hydroponics mechanics. Review the + detailed changelog here, +2015-04-07: + RavingManiac: + - tweak: You can now pay vending machines and EFTPOS scanners without removing your + ID from your PDA or wallet. Clicking on the vending machine with your ID/PDA/wallet/cash + also brings up the menu now instead of attacking the vending machine. +2015-04-18: + PsiOmegaDelta: + - rscadd: Added a changelog editing system that should cause fewer conflicts and + more accurate timestamps. +2015-04-23: + Dennok: + - rscadd: Added an automatic pipelayer. + - rscadd: Added an automatic cablelayer. + PsiOmegaDelta: + - bugfix: Shower curtains no longer lose their default color upon being washed. + - bugfix: Emergency shutters can again be examined, and from the proper distance. + - bugfix: The virus event will now only infect mobs on the station, currently controlled + by player that has been active in the last 5 minutes. + - bugfix: Laptops now use the proper proc for checking camera status. + - rscadd: Makes it possible to eject PDA cartridges using a verb. + - rscadd: Makes it possible to shake tables with one's bare hands to stop climbers. + - bugfix: Added a mass driver door in disposals to prevent trash from floating out + into space before proper ejection. + - rscadd: Rig/Hardsuit module tab - Less informative than the NanoUI hardsuit interface + but allows quicker access to the various rig modules. + - rscadd: Silicons with the medical augmentation sensors enabled now also see alive/dead + status if sensors are set accordingly. + - rscadd: Emergency shutters opened by silicons are now treated as having been forced + open by a crowbar. + - rscadd: An active AI chassis can now be pushed, just as an empty chassis can be. + - rscadd: The AI can now use the crew monitor console to track crew members with + full sensors enabled. + - rscadd: The AI now has a shortcut to track people holding up messages to cameras. + - rscadd: The AI now has a shortcut to track people sending PDA messages. + - rscadd: Multiple AIs can now share the same holopad. + - rscadd: Admin ghosts can now transfer other ghosts into mobs by drag-clicking. + - rscadd: Ghosts can now toggle seeing darkness and other ghosts separately. + - rscadd: Moving while dead now auto-ghosts you. + - rscadd: 'Two new random events: Space dust and gravitation failure.' + - rscadd: Upgraded wizard spell interface and new spells. + - rscadd: More uplink items. + - rscadd: Uplink items now have rudimentary descriptions. + Yoshax: + - tweak: Adjusts fruits and other stuff to have a minmum of 10 units of juice and + stuff. +2015-04-24: + Dennok: + - bugfix: Fixes overmap ship speed calculations. + - rscadd: Adds overmap ship rotation. + - rscadd: Added a floorlayer. +2015-04-28: + Jarcolr: + - rscadd: Added 9 new bar sign designs/sprites. + Kelenius: + - rscadd: 'Good news to the roboticists! The long waited firmware update for the + bots has arrived. You can expect the following changes:' + - rscadd: Medbots have improved the disease detection algorithms. + - rscadd: Floorbot firmware has been bugtested. In particular, they will no longer + get stuck near the windows, hopelessly trying to fix the floor under the glass. + - rscadd: Floorbots have also received an internal low-power metal synthesizer. + They will use it to make their own tiles. Slowly. + - rscadd: Following the complains from humanitarian organizations regarding securitron + brutality, stength of their stunners has been toned down. They will also politely + demand that you get on the floor before arresting you. Except for the taser-mounted + guys, they will still tase you down. + - rscadd: Other minor fixes. + - rscdel: 'The lasertag bots are now forbidden to build and use following the incident + #1526672. Please don''t let it happen again.' + - rscadd: The farmbot design has been finished! Made from a watertank, robot arm, + plant analyzer, bucket, minihoe and a proximity sensor, these small (not really) + bots will be a useful companion to any gardener and/or xenobotanist. + - tweak: 'Spider learning alert: they have learned to recognize the bots and will + mercilessly attack them.' + - rscadd: An experimental CPU upgrade would theoretically allow any of the bots + to function with the same intelligence capacity as the maintenance drones. We + still have no idea what causes it to boot up. Science! + - rscadd: 'INCOMING TRANSMISSION: Greetings to agents, pirates, operatives, and + anyone who otherwise uses our equipment. Following the NT update of bot firmware, + we have updated the cryptographic sequencer''s hacking routines as well. The + medbots you emag will not poison you anymore, the clanbots won''t clean after + themselves immediately, and floorbots... wear a space suit. Oh, and it works + on the new farmbots, too.' + PsiOmegaDelta: + - rscadd: Beware. Airlocks can now crush more things than just mobs. + - rscadd: AIs now have a personal atmospherics control subsystem. + - rscadd: Some borg modules now have additional subsystems. + - tweak: Improves borg module handling. + - tweak: Secure airlocks now buzz when access is denied. + - tweak: The mental health office door now requires psychiatrist access, and the + related button now opens/closes the door instead of bolting. + - soundadd: Restores an old soundtrack 'Thunderdome.ogg'. + - rscadd: Some holodeck programs now have custom ambience tracks. + RavingManiac: + - rscadd: The phoron research lab has been renovated to include a heat-exchange + system, a gas mixer/filter and a waste gas disposal pump. + - tweak: Candles now burn for about 30 mintutes. + Yoshax: + - tweak: Adds items to the orderable antag surgical kit so its actually useful for + surgery. + - tweak: Adjusts custom loadout costs to be more standardised and balances. Purely + cosmetic items, shoes, hats, and all things that do not provide a straight advtange + (sterile mask, or pAI, protection from viruses and possible door hacking or + records access, respectively), each cost 1 point, items that provide an advantage + like those just mentioned, or provide armor or storage cost 2 points. + - rscadd: Adds practice rounds, both .45 for Sec and Detective's guns, also 9mm + top mounted for the Saber, and for the Bulldog. + - rscadd: Adds the .45 and 9mm practice rounds to the armory. + - rscadd: Adds all the practice rounds to the autolathe. + - tweak: Adds r_walls to the back of the firing range, leaves the sides normal. + - bugfix: Fixes HoS' office door to not be CMO locked. +2015-04-29: + Daranz: + - rscadd: Paper bundles can now have papers inserted at arbitrary points. This can + be done by clicking the previous/next page links with a sheet of paper in hand. + HarpyEagle: + - rscadd: 'Added new fire modes to various guns: c20r, STS-35, WT-550, Z8, L6 SAW, + and double barreled shotgun. The firing modes work the same way as the egun; + click on the weapon with it in your active hand to cycle between modes. Unloading + these weapons now requires that you click on them with an empty hand.' + PsiOmegaDelta: + - rscadd: Portable atmospheric pumps and scrubbers now use NanoUI. + - rscadd: Two new events which will cause damage to APCs or cameras when triggered. +2015-04-30: + Yoshax: + - rscadd: Adds more items to custom loadout, including a number of dressy suits + and some other things. +2015-05-02: + HarpyEagle: + - bugfix: Neck-grabbing someone now stuns them properly. + PsiOmegaDelta: + - tweak: The spider infestation event now makes an announcement much sooner. + - rscadd: Admins can now toggle OOC/LOOC separately. + - tweak: Mice are now numbered to aid admins. + Yoshax: + - rscadd: Adds an option and verb to the AI to send emergency messages to Central, + functions same as comms console option. + - tweak: Changes comms console to only have one level of ID require, meaning all + heads of staff have what was captain access, allowing them to change alert, + send emergency messages and make announcements. + - rscadd: Adds an emergency bluespace relay machine which is mapped into teletcomms, + this machine takes emergency messages and sends them to central, if one does + not exist on any Z, you cannot send any emergency messages. + - rscadd: Adds an emergency bluespace relay assembly kit orderable from cargo for + when the ones on telecomms are destroyed. Assembly is required. + - rscadd: Adds the emergency bluespace relay circuitboard to be researchable and + printable in R&D, with sufficient tech levels. +2015-05-05: + PsiOmegaDelta: + - tweak: Grilles no longer return too many rods when destroyed (using means other + than wirecutters). + RavingManiac: + - tweak: Intent menu now appears while zooming with a sniper rifle. +2015-05-06: + PsiOmegaDelta: + - rscadd: Examining a pen or crayon now lists the available special commands in + the examine tab. +2015-05-07: + HarpyEagle: + - rscadd: Breaking out of lockers now has sound and animation. + PsiOmegaDelta: + - bugfix: The cloning computer can again successfully locate nearby cloning vats + and DNA scanners at round start. + - rscadd: Security equipment now treats individuals with CentCom ids with the greatest + respect. + - maptweak: Adds stretches of power cable around the construction outpost, ensuring + one does not have to climb over machines to being laying cables. + RavingManiac: + - rscadd: Muzzle-flash lighting effect for guns + - rscadd: Energy guns now display shots remaining on examine +2015-05-09: + Yoshax: + - rscadd: Maps in the top mounted 9mm practice rounds, .45 practice rounds, and + practice shotgun shells into the armory. +2015-05-10: + GinjaNinja32: + - rscadd: Acting jobs on the manifest will now sort with their non-acting counterparts. + All assignments beginning with the word 'acting', 'temporary', or 'interim' + will do this. + Yoshax: + - tweak: Removes sleepy chems from being cloned, adds a consistent period of 30 + tick sleep. +2015-05-11: + Mloc: + - experiment: Rewritten lighting system. + - rscadd: Better coloured lights. + - rscadd: Animated transitions. + PsiOmegaDelta: + - bugfix: As an observer, using antagHUD should now always restrict you from respawning + without admin intervention. + Techhead: + - rscadd: Voidsuits can have tanks inserted into the storage slot. + - rscadd: Voidsuits display helpful information on their contents on examine. + - rscadd: Magboots can be equipped over other shoes. Except other magboots. +2015-05-12: + Dennok: + - imageadd: New buildmode icons made by BartNixon. + HarpyEagle: + - rscadd: Masks and helmets that cover the face block feeding food, drinks, and + pills. + MrSnapwalk: + - imageadd: Added seven new AI core displays. + - tweak: Changed the pAI sprite and added several new expressions. + PsiOmegaDelta: + - rscadd: The space vine event now comes with a station announcement. +2015-05-14: + PsiOmegaDelta: + - maptweak: Should now be more evident that the brig disposal chute sends its goods + to the common brig area. + - bugfix: Cells now drain when using more charge than what is available. + - tweak: The rig stealth module now requires as much power to run as the energy + blade module. + Techhead: + - rscadd: Vox will spawn with emergency nitrogen tanks in their survival boxes. + - rscadd: Diona will spawn with an emergency flare instead of a survival box. + - rscdel: Engineers no longer spawn with extended-capacity oxygen tanks. + - bugfix: Vox spawning without backpacks will have their nitrogen tank equipped + to their back. + - tweak: The Bartender's spare beanbag shells have been moved into bar backroom + with the shotgun. + - bugfix: Portable air pumps now fill based on external/airtank pressure when pumping + in. +2015-05-16: + GinjaNinja32: + - rscadd: Rewrote tables. To construct a table, use steel to make a table frame, + then plate the frame with a material such as steel, gold, wood, etc. Hold a + stack in your hand and drag it to the table to reinforce it. To deconstruct + a table, use a screwdriver to remove the reinforcements (if present), then a + wrench to remove the plating, and a wrench again to dismantle the frame. Use + a welder to repair any damage. Use a carpet tile on a table to add felt, and + a crowbar to remove it. + HarpyEagle: + - rscadd: Adds tail animations for tajaran and unathi. Animations are controlled + using emotes. +2015-05-17: + PsiOmegaDelta: + - bugfix: Teleporter artifacts should no longer teleport mobs inside objects. +2015-05-18: + Hubblenaut: + - rscadd: Adds a light for available backup power on airlocks. + Kelenius: + - tweak: 'There has been a big update to the reagent system. A full-ish changelog + can be found here: http://pastebin.com/imHXTRHz. In particular:' + - tweak: Reagents now differentiate between being ingested (food, pills, smoke), + injected (syringes, IV drips), and put on the skin (sprays, beaker splashing). + - tweak: Injecting food and drinks will cause bad effects. + - tweak: Healing reagents, generally speaking, have stronger effects when injected. + - tweak: Toxins now work slower and deal more damage. Seek medical help! + - tweak: Alcohol robustness has been lowered. + - tweak: Acid will no longer melt large numbers of items at once. + - tweak: Synaptizine is no longer hilariously deadly. + Loganbacca: + - tweak: Changed MULE destination selection to be list based. + PsiOmegaDelta: + - tweak: Destroying a camera by brute force now has a chance to break the wiring + within. + - rscadd: Turf are now processed. This, for example, causes radioactive walls to + regularly irradiate nearby mobs. + - bugfix: Welders should now always update their icon and inhand states properly. +2015-05-22: + Ccomp5950: + - bugfix: Beepsky no longer kills goats. + - tweak: Goats will move towards vines that are 4 spaces away now instead of 1 + - bugfix: Goats will eat the spawning plants for vines as well as the vines themselves. + Chinsky: + - rscadd: Ghetto diagnosis. Grab patient, aim at bodypart you want to check, click + on them with help intent. This will tell you about their wounds, fractures and + other oddities (toxins/oxygen) for that bodypart. + - rscadd: Fractures are visible on very damaged limbs. Dislocations are always visible. + Surgery incisions now visible too. + - rscadd: Stethoscopes actually make sense now. They care for heart/lungs status + when reporting pulse and respiration now. + HarpyEagle: + - rscadd: Re-implemented fuel fires. Tweaked fire behaviour overall. + Yoshax: + - tweak: Bear traps now do damage when stood on, enough to break bones! Bear traps + can now affect any limb of a person who is on the ground, including head! Bear + traps are no longer legcuffs and instead embed in the limb they attack. + - tweak: Bear traps now take several seconds to deploy and cannot be picked up when + armed, they must be disarmed by clicking on them. They also cannot be moved + then they are deployed. + Zuhayr: + - rscadd: Massive material refactor. Walls, beds, chairs, stools, tables, ashtrays, + knives, baseball bats, axes, simple doors, barricades, so on. + - rscadd: Tables are now built via steel then another sheet on the resulting frame. + They can then be reinforced by dragging a stack of sheets onto the table. + - rscadd: Walls are built with steel for girders, then right-click the girder and + select the reinforce verb while holding a stack, then click the girders with + a final sheet. + - rscadd: Various things can be built with various sheet types. Experiment! Just + keep in mind that uranium is now radioactive and phoron is now flammable. +2015-05-26: + Atlantis: + - rscadd: NanoUI for Robotics Control Console + - rscadd: NanoUI for Supermatter Crystal - AI/Robot only, purely informational + Chinsky: + - rscadd: Meat limbs now can be attached. Use limb on missing area, then hemostat + to finalize it. + - rscadd: Limbs from other races can be now attached. They'll cause rejection, but + it can be kept at bay with spaceacilline to some point. Species special attack + is carried over too, i.e. you can clawn people if you sew a cathand to yourself. + - rscadd: Limbs that are left in open will rot in ~7 minutes. Use freezers or cryobags + to stop it. You can still attach them, but you wish you couldn't. + PsiOmegaDelta: + - tweak: Both the pulse taker and target must now remain still for the duration + of the check or it will fail. + RavingManiac: + - rscadd: Tape recorders now record hearable emotes and action messages (e.g. gunshots). + - bugfix: You can now see actions from inside mechs and closets. + Techhead: + - rscadd: Removed gaseous reagents from the chemistry system and replaced with real-world + organic chemistry precursors. + - rscadd: Hydrogen has been replaced with hydrazine, a highly toxic, flammable liquid. + - rscadd: Oxygen has been replaced with acetone, a mildly toxic liquid. Ethanol's + ink-sovlent capabilities have been copied to it. + - rscadd: Chlorine has been replaced with hydrochloric acid. It is a stronger acid + than sulphuric but less toxic. + - tweak: Nitrogen has been replaced with ammonia. Ammonia now acts as a Dexalin-equivalent + for Vox. + - tweak: Flourine has also been replaced with hydrazine in its one recipe. Flourosurficant + has been renamed azosurficant. + - tweak: Being splashed with liquid Phoron will burn eyes and contaminate clothes + like being exposed to Phoron gas. + Zuhayr: + - rscadd: Added a ghost requisition system for posibrains and living plants. + - rscadd: Added attack_ghost() to hydro trays and posibrains to allow ghosts to + enter them. + - rscadd: Prosthetic limbs are now only repairable with welders/cable coils if they + have suffered below 30 combined damage. + - rscadd: 'Surgery steps that cause no pain and have no failure wounding have been + added: screwdriver for ''incision'', crowbar to open, multitool to ''decouple'' + a prosthetic organ. Hemostat is still used to take an organ out.' + - rscadd: Using a welder or a cable coil as a surgical tool after opening a maintenance + hatch will repair damage beyond the 30 damage cap. In other words, severe damage + to robolimbs requires expert repair from someone else. + - rscdel: Eye and brain surgery were removed; they predate the current organ system + and are redundant. + - rscadd: IPC are now simply full prosthetic bodies using a specific manufacturer + (Morpheus Cyberkinetics). + - rscadd: IPC can 'recharge' in a cyborg station to regain nutriment. They no longer + interface with APCs. + - rscadd: NO_BLOOD flag now bypasses ingested and blood reagent processing. + - rscadd: NO_SCAN now bypasses mutagen reagent effects. + - rscadd: Cyborg analyzers now show damage to prosthetic limbs and organs on humans. + - tweak: Prosthetic EMP damage was reduced. + - tweak: Several organ files were split up/moved around. +2015-05-27: + PsiOmegaDelta: + - tweak: The inactive check process now respects client holder status and can be + configured how long clients may remain inactive before being kicked. + Zuhayr: + - rscadd: Unfolded pAIs can now be scooped up and worn as hats. + - tweak: Scoop-up behavior is now standardized to selecting help intent and dragging + their icon onto yours. +2015-05-30: + Atlantis: + - rscadd: Malfunction Overhaul - Whole gamemode was completely reworked from scratch. + Most old abilities have been removed and quite a lot of new abilities was added. + AI also has to hack APCs to unlock higher tier abilities faster, instead of + having access to them from the round start. Most forced things, such as, shuttle + recalling were removed and are instead controlled by the AI. Code is fully modular + allowing for future modifications. + HarpyEagle: + - bugfix: Fixes Engineer ERT gloves not being insulated. + - tweak: IV stands are no longer bullet shields. They also allow mice, drones, pAIs + et al to pass though. + Kelenius: + - tweak: AI now hears LOOC both around its eye and its core, and speaks in LOOC + around its eye. Keep in mind that you won't hear and won't be heard if there + is a wall between your eye and the target. + PsiOmegaDelta: + - rscadd: You can now review the server revision date and hash by using the 'Show + Server Revision' verb in the OOC category. +2015-06-02: + Techhead: + - rscadd: Re-adds extended capacity emergency oxygen tanks to relevant jobs. +2015-06-04: + PsiOmegaDelta: + - rscadd: AI eyes can now be found in the observer follow list. + - rscadd: Synths can now review all law modules that can be found on the station + from their law manager. + - rscadd: Synths can state these laws if desired, however this is strongly discouraged + unless subverted/malfunctioning. + - bugfix: Astral projecting mobs, such as wizards or cultists, may no longer respawn + as something else while their body lives. + Techhead: + - rscadd: Prison break event has been expanded to include Virology or Xenobiology + - rscadd: Prison break event will warn Enginering and the AI beforehand so they + can take preventive measures. + - bugfix: Disabling area power will now prevent doors from opening during the event +2015-06-05: + PsiOmegaDelta: + - bugfix: Split stacks no longer lose their coloring. + - tweak: Can no longer merge cables of different colors. + - tweak: Blobs and simple mobs now attack all external organs instead of a subset. + The overall damage remains the same but the number of fractures caused will, + in general, be fewer. + - rscadd: Spider nurses now have a chance of injecting their victims with spider + eggs which eventually hatch. If the limb is removed from the host, the host + dies, or the spiderling has matured sufficiently it will crawl out into freedom. + Medical scanners will pick upp eggs and spiderlings as foreign bodies. + Yoshax: + - tweak: Makes hyposprays start empty instead of filled with Tricord. + - tweak: Makes the special wizard projectile staffs, Animate, Change, Focus and + any future ones only usable by wizards. Also makes it so only wizards can use + spellbooks and teleportation scrolls. +2015-06-08: + PsiOmegaDelta: + - rscadd: The AI chassis now glows, with the color depending on the currently selected + display. +2015-06-09: + PsiOmegaDelta: + - rscadd: Ports /tg/'s meteor event. Meteors now appear to be more accurate, come + in a greater variety, and may drop ores on their final destruction. +2015-06-16: + Chinsky: + - rscadd: 'Updated penlights to be more of use in diagnostics, they now show following + conditions:' + - rscadd: Eye damage + - rscadd: Blurry eyes (overall slower reaction) + - rscadd: Brain damage (one eye reacts slower) + - rscadd: Opiates use (pinpoint pupils) + - rscadd: Drugs use (dilated pupils) + PsiOmegaDelta: + - rscadd: Observers can now follow both the AI and its eye upon speech. + - rscadd: Observers can now follow both observers and their body, if they ever had + one, upon speech. + - rscadd: Observers can now follow hivemind speakers if the speaker is not using + an alias or antagHUD is enabled. + - rscadd: Turret controls now glow, with the color depending on the current mode. + Techhead: + - rscadd: Converted Request Console interface into NanoUI. +2015-06-19: + HarpyEagle: + - bugfix: Prevents being on fire from merely warming mobs up slightly in some cases. + Mob fires also burn hotter. + - rscadd: Matches can now be used to light things adjacent to you when thrown. + - tweak: Made the effects of having a damaged robotic leg more prominent. + - bugfix: Robot limbs no longer cause pain messages. A reminder that you can still + check their status with 'Help Intent' -> 'Click Self'. + - tweak: Knifing damage scales with weapon force and throat protection. Helmets + only provide throat protection if they are air tight. Trying to cut someone's + throat with wirecutters and/or while wearing an armoured sealed helmet will + require several attempts before the victim passes out. + - tweak: Knifing switches on harm intent, in case you just wanted to beat on the + victim for some reason. + - bugfix: Prevents knifing bots or silicons. +2015-06-22: + PsiOmegaDelta: + - tweak: The traitor uplink no longer displays all items in a long list, instead + has categories which when accessed shows the relevant items. +2015-06-24: + HarpyEagle: + - bugfix: Fixed Tajaran name generation producing names without a space between + first and last. + - wip: Adds docking to the mercenary shuttle. Works similarly to other shuttles, + except docking and undocking is manually initiated and not automatic. A system + to approve or deny dock requests still to be implemented. + - rscadd: Toolboxes can now hold larger items, such as stacks of metal or power + cells, at the cost of having less space for other things. + - tweak: Gloves/shoes can now be worn even if you have one hand/foot missing. The + other one still has to be present, of course. The items still drop when you + first lose the hand/foot. + - tweak: Budget insulated gloves are somewhat less useless. On average, they will + stop half the damage from getting shocked, and the worst case insulation is + not as bad as it used to be. Budget gloves that are as good as regular insulated + gloves are still as rare as they were before though. + - tweak: PTR bullets are now hitscan, to make them somewhat better for actual sniping. + - maptweak: The telecoms server room now has an actual cycling airlock into it. + - tweak: Non-vital body parts will no longer take further damage above a certain + amount, and will inflict paincrit effects instead. On most humaniods the head, + chest, and groin are vital. + - rscadd: 'Engineers now spawn with industrial workboots (credit: ChessPiece/Bishop).' + - bugfix: Damaged robotic legs now more likely to have an effect. + - bugfix: Fixed bug preventing internal organs from taking damage in some cases. + - maptweak: New flavours of tables around the station. Engineering starts with more + plastic. + - bugfix: Fixed worn items not appearing in some cases. Most notably crossbows and + certain guns when worn on the back. As a side effect, laundry machines no longer + transform items. + - bugfix: Crit oxyloss now runs in game time instead of real time. So if lag is + slowing your movement the same slowdown applies to the dying person you're trying + to reach. + - rscadd: Breathmasks can now be adjusted by clicking on them in your hand, in addition + to the verb. + - rscadd: Wearing a space helmet or similar face-covering gear now prevents eating + and force-feeding food, drink, and pills. + - rscadd: Phoron in air ignites above it's flashpoint temperature and a certain + (very small) minimum concentration. Environments that have oxygen and are hot + enough, and have phoron but not enough concentration to burn will produce flareouts, + which are mostly a visual effect. + - rscadd: Adds animation when making unarmed attacks or attacking with melee weapons, + to help make it clearer who is attacking. + - soundadd: Opening an unpowered door now has an appropriate sound. + - rscadd: Ingesting diseased blood may contract the disease. +2015-06-26: {} +2015-06-30: + PsiOmegaDelta: + - maptweak: Non-general areas on Crescent are now protected by blast doors to enforce + area restrictions. Admins can operate these from the central checkpoint. +2015-07-04: + PsiOmegaDelta: + - tweak: Portable turrets now only blocks movement while deployed. + - tweak: Portable turrets are no longer invincible while undeployed, however they + have increased damage resistance in this state. + - bugfix: Crescent portable turrets should no longer act up during attempts to (un)wrench + and alter their settings. +2015-07-06: + GinjaNinja32: + - rscadd: '''Provisional'' is now also a valid temporary position prefix for manifest + sorting.' +2015-07-10: + Zuhayr: + - rscadd: Ninja now spawns on a little pod on Z2 and can teleport to the main level. +2015-07-11: + HarpyEagle: + - imageadd: Added inhand sprites for flashes, flashbangs, emp and other grenades. + Loganbacca: + - bugfix: Turrets no longer burn holes through the AI. + - tweak: Projectiles now have a chance of hitting mobs riding cargo trains. + - bugfix: Fixed visual bugs with projectile effects. +2015-07-14: + HarpyEagle: + - bugfix: Fixes wrong information being reported when analyzing locked abandoned + crates with a multitool. + PsiOmegaDelta: + - tweak: Ninjas can no longer teleport unto turfs that contain solid objects. + - tweak: Wizards can no longer etheral jaunt unto turfs that contain solid objects. +2015-07-27: + Kelenius: + - tweak: Borg shaker now works similarly to hypospray. It generates reagents that + can be poured into glasses. + - bugfix: Therefore, they can no longer duplicate rare reagents such as phoron. +2015-07-29: + Karolis2011: + - rscadd: Made tagger and sorting pipes dispensible. + - bugfix: Unwelding and welding sorting/tagger pipes, no longer delete data about + them. +2015-07-31: + HarpyEagle: + - bugfix: Fixed projectiles being able to hit people in body parts that they don't + have. This will also mean that the less limbs someone has the less effective + they will be as a body shield. +2015-08-11: + PsiOmegaDelta: + - experiment: 0.1.19 is live. + - tweak: Crew monitors now update every 5th second instead of every other. Reduces + lag and gives antags a larger window of opportunity to disable suit sensors + if they have to harm someone. +2015-08-13: + GinjaNinja32: + - rscadd: Changed language selection to allow multiple language selections, changed + humans/unathi/tajarans/skrell to not automatically gain their racial language, + instead adding it to the selectable languages for that species. Old slots will + warn when loaded that the languages may not be what you expect. + Orelbon: + - rscadd: Changed the HoP's suit to more bibrant colors and hopefully you will like + it. +2015-08-14: + HarpyEagle: + - spellcheck: Renames many guns to follow a consistent naming style. Updated and + changed gun description text to be more lore-friendly. + - rscadd: Throwing a booze bottle at something nearby while on harm intent causes + it to smash, splashing it's contents over whatever it hits. + - rscadd: Rags can now be wrung out over a container or the floor, emptying it's + contents into the container or splashing them on the floor. + - rscadd: Rags can now be soaked using the large water and fuel tanks instead of + just beakers. + - rscadd: Rags soaked in welding fuel can be lit on fire. + - rscadd: Rags can now be stuffed into booze bottles. When the bottle smashes, the + stuffed rag is dropped onto the ground. + - bugfix: Fixed eggs having a ridiculously large chemical volume. + - rscadd: T-Ray scanner effects are now only visible to the person holding the scanner. + - rscadd: Traitors can now purchase the C-20r and the STS-35 for telecrystals. + PsiOmegaDelta: + - tweak: The amount you start with in your station account is now affected by species, + rank, and NT's stance towards you. + TheWelp: + - rscadd: Bookcases are now movable/buildable/destroyable. + - rscadd: Paper can now be crumpled by using in-hand while on hurt intent. + - rscadd: Library Computer External Archive is now sortable. + Zuhayr: + - rscadd: Click a hat on a drone with help intent to equip it. Drag the drone onto + yourself with grab intent to remove it. +2015-08-15: + Kelenius: + - rscadd: Bees have been updated and are totally worth checking out (beekeeping + crate at cargo). + - rscdel: Sleeper consoles removed. All interaction is now done by clicking on the + sleeper itself. + - tweak: To put people into sleeper, you now have to click-drag people to it. Grabs + no longer work. To exit the sleeper, move. + - tweak: Sleeper now uses a NanoUI. +2015-08-16: + HarpyEagle: + - tweak: The unathi breacher is now only wearable by unathi. +2015-08-17: + PsiOmegaDelta: + - rscadd: Station time and duration now available in the Status tab. +2015-08-24: + HarpyEagle: + - tweak: Girders are now reinforced by using a screwdriver on the girder before + applying the material sheets. Use a screwdriver again instead to cancel reinforcing. + - bugfix: Mechanical traps no longer spawn in the janitor's locker. + - rscadd: Mechanical traps can now be printed with a hacked autolathe. + - rscadd: Adds armour penetration mechanic for projectiles and melee weapons. + - rscadd: Laser carbines, LWAP, and shotgun now have a small amount of armour penetration, + ballistic rifles (not SMGs) have moderate amounts, laser cannon has high armour + penetration, and the PTR mostly ignores body armour. + - tweak: 'Shotgun slugs and Z8/STS damage has been lowered slightly to accomodate + for their higher penetration. In general ballistics deal less damage but have + higher penetration than comparable laser weapons. Notable exception: X-Ray lasers + have had their damage lowered slightly but gain very high armour penetration.' + - rscadd: Energy swords now have very high armour penetration. Ninja blades do less + damage but ignore armour completely. + Kelenius: + - experiment: Click cooldowns have been removed on pretty much everything that isn't + an attack. + PsiOmegaDelta: + - rscadd: Adds the option to set the icon size to 48x48, found under the Icons menu, + along with 32x32, 64x64, and stretch to fit. + - tweak: Active AI cores now provides coverage on the AI camera network. Does not + utilize actual cameras, thus will not show up on security consoles. + - rscadd: The Dinnerware vending machine now offer both utensil knives and spoons + without first having to hack them. + - rscadd: Synths now have id cards with access levels which is checked when operating + most station equipment. + - rscadd: Station synthetics still have full station access but can no longer interact + with syndicate equipment, and syndicate borgs now start with only syndicate + access. + - rscadd: Syndicate borgs can copy the access from other cards by utilizing their + own id card module, similar to how syndicate ids work. + - rscadd: When examined up close id cards now offer a more detailed view. + - rscadd: Agent ids now offer much greater customization, allowing changing name, + age, DNA, toggling of AI tracking termination (using the electronic warfware + option), and more. + - rscadd: As AI tracking can now be enabled/disabled at will AI players should not + feel the need to hesitate before informing relevant crew members when camera + tracking is explicitly terminated. + - rscadd: Uplink menu now more organized and with new categories. + - rscadd: Now possible to cause falsified ion storm announcements. + - rscadd: Now possible to cause falsified radiation storm announcements, with expected + maintenance access changes. + - rscadd: Now possible for mercenaries to create falsified Central Command Update + messages. + - rscadd: Now possible for mercenaries to create falsified crew arrival messages + and records. + RavingManiac: + - tweak: Sound environments tweaked to feel more claustrophobic + - rscadd: Being drugged, hallucinating, dizzy, or in low-pressure or vacuum will + alter sounds you hear + - rscadd: Sound environment in holodeck will change to reflect the loaded program + Vivalas: + - rscadd: A new uplink item has been added! A briefcase full 'o thalla can now be + bought by traitors for bribes and such! + Zuhayr: + - rscadd: Pariahs are now a subspecies of Vox with less atmos/cold protection, a + useless brain, and lower health. + - rscadd: Leap now only gives a passive grab and has a shorter range. It also stuns + Pariahs longer than it does their target. + - tweak: Rewrote tiling. White floors, dark floors and freezer floors now have associated + tiles. + - tweak: Changed how decals work in the mapper. floor_decal is now used instead + of an icon in floors.dmi. + - tweak: The floor painter has been rewritten to use decals. Click it in-hand to + set direction and decal. + - tweak: Floor lights are now built from the autholathe, secured with a screwdriver, + activated by clicking them with an empty hand, and repaired with a welding torch. + - rscadd: Unathi now have minor slowdown and 20% brute resist. + - rscadd: Tajarans now have lower bonus speed and a flat 15% malus to brute and + burn. + - rscadd: Vox can now eat monkeys and small animals. + - rscadd: Tajarans can now eat small animals. + - rscadd: Unarmed attack damage has been lowered across the board. +2015-09-02: + Atlantis: + - rscadd: Converted phoron glass to borosilicate glass, adjusted heat resistances + accordingly, got rid of copypaste fire code. Fire resistance is now handled + by variables so completely fireproof windows are possible with varedit. + - rscadd: Windows take fire damage when heat exceeds 100C regular windows, 750C + reinforced regular, 2000C borosilicate and 4000C reinforced borosilicate. For + comparsions, reinforced walls begin taking damage around 6000. + Hubblenaut: + - rscadd: Adds glass bottles for Cola, Space Up and Space Mountain Wind to Booze-O-Mat. + - tweak: Some bar drink recipes have been amended to easily sum to 30 units for + drinking glasses. + - tweak: Vendors now have a product receptor for accepting goods. Opening the maintenance + painel is no longer required. + - tweak: Wrenching a vending machine is no longer a silent action. + - tweak: 'Stepup: Item placement on 4x4 grids seemed to work great. Now we''ll try + 8x8.' + Kelenius: + - tweak: Mechfab can now be upgraded using RPED, and now uses NanoUI. + Matthew951: + - rscadd: Added Vincent Volaju's hair. + - rscadd: Added Vincent Volaju's beard. + Zuhayr: + - rscadd: Added the ability for AIs in hardsuits to control suit modules and movement + with a dead or unconcious wearer. + - rscadd: Added ballistic supply drop pods. + - rscadd: Added diona gestalt random map template. + - tweak: Swapped the singularity beacon out for a hacked supply beacon. +2015-09-05: + Chinsky: + - rscadd: Made capguns into proper guns code-wise. It means you can now take people + hostage with them, stick in your mouth, and all other things you can do with + real guns but probably shouldn't. + - rscadd: Russian roulette! Fun for whole sec team! Unload some shells from revolver, + spin the cylinder(verb) and you're good to go! + HarpyEagle: + - rscadd: Shields no longer block attacks from directly behind the player. + - rscadd: Riot shields no longer stop bullets or beams (except for beanbags and + rubber bullets), however they are now more effective at blocking melee attacks + and thrown objects. + - rscadd: Energy shields block melee attacks as effectively as riot shields do. + Their ability to block projectiles is largely unchanged. + - tweak: Melee weapons now only block melee attacks. + - experiment: Two handed weapons have a small chance of blocking melee attacks when + wielded in two hands. + - rscadd: Sound and visual effects when blocking attacks with an energy shield or + energy sword. + - bugfix: Fixed dead or unconscious people blocking stuff with shields. + PsiOmegaDelta: + - tweak: Cargo now sorts under its own department on station manifests. + - rscdel: Manual radio frequency changes can no longer go outside the standard frequency + span. + - rscadd: Users with sufficient access can instead select pre-defined channels outside + this span, such as department channels, when using intercoms. +2015-09-07: + GinjaNinja32: + - rscadd: Added an auto-hiss system for those who would prefer the game do their + sss or rrr for them. Activate via Toggle Auto-Hiss in the OOC tab. + - rscadd: Auto-hiss system in 'basic' mode will extend 's' for Unathi and 'r' for + Tajara. 'Full' mode adds 'x' to 'ks' for Unathi, and is identical to 'basic' + mode for Tajara. + PsiOmegaDelta: + - tweak: 'Changed the language prefix keys to the following: , # -' + - rscadd: Language prefix keys can be changed in the Character Setup. Changes are + currently not global, but per character. +2015-09-08: + Soadreqm: + - tweak: Increased changeling starting genetic points to 25. + Zuhayr: + - bugfix: Auto-traitor should now be fixed. + - bugfix: The Secret game mode should now be fixed. +2015-09-11: + HarpyEagle: + - tweak: Made flares brighter. + - rscadd: Coffee is now poisonous to tajaran, much like how animal protein is poisonous + to skrell. +2015-09-26: + PsiOmegaDelta: + - tweak: Meteor events now select a map edge to arrive from, with a probability + for each individual wave to come from either neighboring edge. Meteors will + never arrive from opposite the starting edge. +2015-10-27: + HarpyEagle: + - bugfix: When affected by pepperspray, eye protection now prevents blindness and + face protection now prevents stun, instead of face protection doing both. +2015-11-22: + neersighted: + - bugfix: Laptop Vendors now accept ID Containers (PDA, Wallet, etc). + - bugfix: Personal Lockers now accept ID Containers (PDA, Wallet, etc). +2015-12-06: + Datraen: + - tweak: Changes standard and specific plant traits, more diverse plants. + HarpyEagle: + - tweak: Fabricated power cells start uncharged. + Hubblenaut: + - bugfix: Welding a broken camera will use the correct icon. + - tweak: Camera assemblies remember their tag and network from previous usage. + - rscadd: Light replacers can be refilled by clicking on a storage item. + - tweak: Light replacers now hold up to 32 light bulbs. + - tweak: Light replacers can be obtained through janitorial supply crates. + - tweak: A sheet of glass fills the light replacer by 16 bulbs. + - bugfix: Material stacks now properly merge upon creation. + - bugfix: Messages for adding to existing stack appear again. + - tweak: Mobs on help intent will not push others that aren't. + - rscadd: Adds tape for atmospherics. + - tweak: Tape graphics and algorithm changes. Looks a lot more appealing now. + - tweak: Starting and ending tape on the same turf will connect it to all surrounding + walls/windows. + - tweak: Lifting a part of the tape will lift an entire tape section. + - tweak: Mobs on help intent do stop for tape. + - bugfix: Crumpled tape does not affect tape breaking behavior anymore. + - bugfix: Fixes vending machines not adding stored goods when maintenance panel + is closed. + - tweak: Doors do only buzz once on failed closing attempt. + MagmaRam: + - bugfix: Fixed cloners killing fresh clones instantly with brain damage. + - bugfix: Fixed a bug where disposals pipes would show up above floors despite being + installed under them. + Neerti: + - rscadd: Adds NanoUI for communicators, the ability for communicators to call other + communicators on the station, the ability for station-bound people to call ghosts, + and for ghosts to toggle their visibility to communicators on or off in character + preferences (defaults to off). Communicators can now also support more than + one call at the same time, for both ghosts and normal communicators. + - rscadd: Adds new machine to telecomms, the Exonet node. It is very basic in terms + of functionality, but certain services can be selectively disabled from it, + such as newscaster updates, communicators, or external PDA messages. Adds methods + for building and deconstructing Exonet nodes. + - experiment: Adds framework for a fake-networking system called EPv2 that communicators + will now use, and perhaps other machines will in the future, for good or for + evil. + - rscdel: Changeling Spacearmor reduced in protective ability. + - rscdel: Cryogenic String and Delayed Toxic Sting now have a three minute cooldown + upon stinging someone. + - rscdel: Cryotoxin, the chemical used in Cryogenic String, is 25% less potent now. + - rscdel: The rune to summon Narsie has been changed. Narsie is no longer summoned, + but Hell still comes. + - rscdel: Spooky mobs spawned from spooky portals as a result of Hell coming have + had their speed, health, and damage reduced. + - rscdel: Manifested humans no longer count for summoning Hell. + - experiment: Changes how armor calculations work. All the armor values remain + the same, but the 'two dice rolls' system has been replaced with a mix of reliable + damage reduction and a bit of RNG to keep things interesting. The intention + is to make weaker armor more relevent and stronger armor less overpowered. + - tweak: When you are hit, it uses the armor protection as a base amount to protect + you from, then it does a roll between +25% and -25% of that base protection, + and adds it to the base protection. The result of that is how much damage is + reduced from the attack. For example, if you are hit by an energy sword in + the chest while wearing armor that has 50 melee protection, the base protection + is 50, then RNG can make the final protection be between 37.5 and 62.5 percent. + The damage you'd take could range from 11.25 to 18.75, instead of 0, 15, or + 30. Remember that some weapons can penetrate armor. + - rscadd: Added personal communicators, a device that enables someone to talk to + someone else at vast distances. You can talk to people who are far from the + station, so long as telecommunications remains operational. + - rscadd: To use, become a ghost, then use the appropiate verb and pick a communicator + to call. Then you wait until someone picks up. Once that occurs, you will + be placed inside the communicator. The voice you use is your currently loaded + character. Languages are supported as well. + - tweak: Round-end is now three minutes instead of one, and counts down, to allow + for some more post-round roleplay. If the station blows up for whatever reason, + the old one minute restart is retained. + PsiOmegaDelta: + - rscdel: Manual radio frequency changes can no longer go outside the standard frequency + span. + - rscadd: Users with sufficient access can instead select pre-defined channels outside + this span, such as department channels, when using intercoms. + Zuhayr: + - tweak: Aiming has been rewritten, keep an eye out for weird behavior. + - rscdel: Removed the detective scanner and associated machinery. + - rscadd: Added a microscope, machine forensic scanner, etc. from Aurora forensics. +2015-12-16: + HarpyEagle: + - bugfix: Fixed a couple of bugs causing phoron gas fires to burn cooler and slower + than they were supposed to. + - bugfix: Merc bombs are now appropriately explosive again. Same goes for bombs + made by toxins. + Hubblenaut: + - bugfix: Airlock backup power test light properly offline when backup power down. + - bugfix: Empty flavor texts no longer draw an empty line on examination. + - bugfix: Material stacks now properly merge upon creation. + - bugfix: Messages for adding to existing stack appear again. + TheWelp: + - rscdel: Removed higher Secret player requirements. +2016-02-11: + Datraen: + - rscadd: Moderators can now see and use AOOC. + - bugfix: Other synthetics given EAL. + - bugfix: Trays now drop items when placed on table, dropped. + - bugfix: Objects can now be yanked out of synthetics. + - tweak: Respawn time moved down from 30 minutes to 15 minutes. + - rscadd: Telecrystal item added for trading telecrystals between traitors and mercenaries. + - rscadd: Telecrystal item now has tech values. + EmperorJon: + - tweak: Traitor synths can no longer be locked down from the robotics console. + Attempting to lock them down (or release the lockdown) notifies the synth of + the attempt and updates the console's UI as normal. + Neerti: + - rscadd: Suit cooling units can now be attached to voidsuits. Note that coolers + and air tanks are mutually exclusive. + - bugfix: EMP no longer hits twice on humans. + - tweak: EMP drains powercells using the cell's current charge, and not the cell's + maximum potential charge, to ensure two blasts do not completely disable a synthetic. + - tweak: EMP hitting a prosthetic limb or organ will now do less damage. + - tweak: EMP hitting a cyborg will no longer outright stun them. Instead, they + gain the 'confused' status for a few moments, making movement difficult. In + addition, their HUD gets staticy, and their modules are forced to be retracted. + - rscadd: Stasis bags will protect the occupant from the outside enviroment's atmosphere. + - rscadd: Stasis bags can be hit with a health analyzer to analyze the occupant. + Zuhayr: + - rscadd: Drones can now pull a variety of things (such as scrubbers). This came + with a pulling refactor so please report any strangeness with pulling in general. + - rscadd: Drones (and any mob that can be picked up) can be bashed against airlocks + and such to use their internal access, so long as the person using them does + not have an ID card equipped. + - rscadd: Added foam weapons to cargo for LARP shenanigans. + - rscadd: Added the ability to equip grenades to the mask slot, and to prime them + by clicking someone with harm intent targeting the mouth. + - rscadd: Removed the species restrictions on transplanted internal organs. Have + fun. + - rscadd: Added 'full body' prosthetic options to character generation. + - rscadd: Removed IPC. No tears were shed. + - rscadd: 'RE: borgs, Renamed ''robot'' type to ''drone'' and ''android'' type to + ''robot'' for clarity with new ''android'' human mobs.' + - rscadd: Rejuvenate will now reapply robolimb/autopsy data. + - rscadd: Lots of backend work relating to the above. If you're a coder go look + at the PR or ask Zuhayr for details. + - rscdel: Removed brute and burn resist from robolimbs, removed sever vulnerability + from robolimbs. + - rscadd: Added a config option for visible human death messages. + - rscadd: pAIs and small mobs can now bump open doors. + - rscadd: Added functionality for two-handed guns; these guns will give an accuracy + penalty if fired without an empty offhand. + - rscadd: Unified two-handed melee weapons with the above; while the offhand is + empty, the weapon will count as wielded. +2016-03-11: + Datraen: + - rscadd: Adds ckeys, player panel to the antagonists panel. + - tweak: Fragmentation grenades are no longer launchable. + - tweak: Adds amount of telecrystals to the set telecrystal verb. + - rscadd: Added a verb to just add to telecrystals. + Kelenius: + - rscadd: Drying rack now has a new sprite. + - rscadd: Beekeeping materials and a honey extractor have been added to hydroponics. + - tweak: There is now a ten-second delay for carding the AI. + Zuhayr: + - rscadd: Small species now take smaller bites/gulps from food and drink. + - rscadd: Small species are now effected by alchol and toxins twice as much. + - rscadd: blood_volume is now a species-level var and Teshari have lowered blood + volume. + - rscadd: Hunger is a species var and Teshari get hungry faster. + - rscadd: Small mobs have a reduced climb delay. + - rscadd: Teshari gain more nutrition from meat. +2016-03-16: + Datraen: + - bugfix: Harmbaton no longer causes halloss while inactive. + Kelenius: + - bugfix: Potassium and nitroglycerin explosive grenades now work. +2016-03-29: + Datraen: + - rscadd: 'Added Three New Mixed Gamemodes: Lizard, Changeling + Wizard; Intrigue, + Traitors + Ninja; Visitors, Ninja + Wizard.' + - tweak: Created a variable for latespawning antagonist templates, for customization + of autospawning antagonists in mixed game modes. + - bugfix: Fixes the buckled check limiting whether or not someone can interact while + sitting. + - bugfix: Resisting while buckled and cuffed will process the hand and leg cuffs + before unbuckling. + - tweak: Removed JSON encoding of the PDA Manifest list. + - bugfix: Microwaves no longer try cooking their components while cooking. + - bugfix: Adds a check to prison breaks that makes sure the APC is on before continuing. + - bugfix: Artifacts will no longer spawn on floor turfs. + - bugfix: Stops traitorborgs from being able to hack other borgs. + - bugfix: Stops traitorAIs from being able to hack unlinked borgs. + Yoshax: + - tweak: Player preferences has been overhauled. Please update your preferences, + found at "Character Setup" > "Global" > "Preferences", as they have been reset. +2016-04-04: + Kelenius: + - bugfix: Monkeys can ventcrawl once again. + Yoshax: + - rscadd: Tasks that take time to perform now have a progress bar. + - rscadd: Visibility of progress bars can be toggled in preferences. Default is + on. +2016-04-07: + Datraen: + - bugfix: If a slice of an item is spawned independently, it will get generic settings. + Kelenius: + - tweak: Changelings will now change appearance and species together when transforming. + - tweak: Changelings no longer have gender honorifics in lingchat. + - rscadd: Absorbing the DNA from any source will allow you to use its name, species, + and languages. + - bugfix: DNA extract sting won't produce a strange message if there's no target. + - tweak: Cultists no longer need to research words. +2016-04-17: + Datraen: + - rscadd: Manually ports /tg/station's dark click code https://github.com/tgstation/-tg-station/pull/10272 + by Razharas. + - bugfix: Teshari smocks now spawn as smocks, and not aqua jumpsuits. + - bugfix: Checks to see if new a two-handed weapon can be wielded when dropped. + EmperorJon: + - bugfix: Robotics Console now correctly shows the operational/lockdown state and + button based off if it thinks the synthetic is locked down or not. + - bugfix: Autotraitor synths now behave the same as Traitor synths - they are not + locked down. + Kelenius: + - rscadd: Solars now start wired. + Neerti: + - rscadd: Ports Bay's volume-based inventory system. It works off by weight classes + instead of just slots, allowing you to hold more light items than you could + previously. + - rscadd: Bulky items can now go in your backpack, however it will require twice + the space of a normal sized item. + - rscdel: Spacesuits, RIGs, and sniper rifles made heavier. +2016-05-05: + Datraen: + - rscadd: Added three mixed modes, 'Mercenaries & Wizard', 'Mercenaries & Renegades', + and 'Traitors & Renegades'. + Hubblenaut: + - tweak: Hydroponics vendor and biogenerator offer full bottles of fertilizer. Prices + and amount available adjusted to accomodate. + Kelenius: + - tweak: Move delay after clicking has been removed. + PsiOmegaDelta: + - rscadd: Can now prefill the loadout flask and vacuum-flask with a relevant liquid + of your choice. + Yoshax: + - tweak: 'Splits gender into biological gender and gender identity. Biological gender + modifies the sprite (for between male and female) and gender identity determines + what pronouns show up when examined or suchlike. Both are displayed in medical + records and such. ' + - tweak: Smoke grenades can now have their smoke color set by using a multitool + on them. +2016-05-12: + Yoshax: + - tweak: Doubles the maximum length of records and names to 6144 & 52, respectively. + Also increases book length to 12288. (All numbers are in characters.) + - bugfix: Makes various services in the antag uplink purchasable once again. This + includes the fake crew arrival. + - bugifx: Neckgrabs will no longer force people to the ground. In addition, weakened + people can no longer resist. + - rscadd: All vending machines now have a small chance of vending an additional + item. + - tweak: Smoke from smoke bombs now lasts approximately 3 times as long and spawns + some more smoke to make a heavier cloud. + - bugfix: Smoke from smoke bombs now properly does a small amount of oxygen loss + damage. This damage is per cloud of smoke. +2016-05-13: + HarpyEagle: + - tweak: Shotgun flare illumination now lasts longer, around 3-4 minutes. + - bugfix: Fixed attack animation playing when using flashes even if the flash was + not actually used due to being broken or recharging. + - bugfix: Fixed lightswitches layering over darkness. Now only the light layers + above shadow. Lightswitch illumination is now much more subtle. + Yoshax: + - bugfix: Processing strata floor can now be pried up with a crowbar. + - bugfix: Blue carpet can now also be removed with a crowbar, and has had it's ability + to burn and have corners restored. + - rscadd: Changelings will now store and apply the flavor text of their victims + when they absorb and transform into them. + - rscadd: Gives Diona a starting funds wage the same as Tajaran and Unathi. + - bugfix: Brain damage no longer prevent implant removal surgery. +2016-05-16: + Yoshax: + - rscadd: Uplinks now have a discounted item every 15 minutes. This is per uplink, + and random, the discount is also random, but weighted as such that a low discount + such as 10% off, or 20% off has a higher chance of happening than a high discount + such as 90% of. An item will never cost less than 1. + - tweak: Mercenaries now spawn with their own, personal uplinks. + - bugfix: Faked announcements are now once again purchasable from the uplink, and + actually work. + - rscadd: Adds several new items to the uplink including tactical knives, metal + foam grenades, ambrosia seeds and much more. +2016-05-17: + SilveryFerret: + - rscadd: Changes the Death Alarms from announcing over Common channel, to announcing + only over Medical and Security channels. + Yoshax: + - rscadd: Added shotglasses. These can contain 10 units. They have their whole contents + swalloed in one gulp. They can be produced in the autolathe or found in the + booze vending machine in the bar. +2016-05-25: + Serithi: + - rscadd: Adds in lavender. + Yoshax: + - tweak: Cables of any color can now be merged. + - tweak: More and different colors are now available to be used by cable. + - tweak: Adjusting your suit sensors now displays a message to other people in range + that you did so. In addition, seeing someone else adjust someone's suit sensors + no longer informs you to what level. + - rscadd: Added towels to the loadout. These can be worn on the head, belt or outwear + slots. You can also whip people with them for a special message and sound! In + addition, using them in-hand will produce an emote where your towel yourself + off. +2016-05-27: + Yoshax: + - rscadd: Added a new preference that allows you to disable fake nanoui styling + on relevant windows. However, if it is your first time loading with this new + preference you will need to save your character slot, as there is a problem + with satanisiation and it believes the preference is set to disable the nanoui + styling. +2016-05-29: + Datraen: + - rscdel: Injecting people with mutationtoxin no longer mutates them into slime + people. + - rscdel: Removes amutationtoxin. + - rscdel: Removes slime core recipies. + - rscadd: Adds slime monkey cubes, which are created by injecting monkey cubes with + mutationtoxin and activating like a posibrain. + - wip: Maps for Xenobio2 research labs/stations. + Zuhayr: + - tweak: 'Backend change: allowed accessories to be placed on any clothing item + with the appropriate variables set.' +2016-05-30: + EmperorJon: + - rscadd: Ports Baystation's setup screen changes, thanks to PsiOmegaDelta. + - rscadd: Includes character preview with toggleable equipment, visible loadout + items, ghost character sprites, and custom colour underwear. Your underwear + will have reset, so you'll need to set it back. +2016-06-07: + Datraen: + - rscadd: Adds a trait tool for Xenobio2. It was supposed to be in the initial implementation, + but fell through the cracks, sorry! + - bugfix: Fixed the xenobio smartfridge not displaying it's starting core amount. + - bugfix: Fixed an inverted check with slimes. + EmperorJon: + - tweak: Increased loadout points from 10 back to 15. We've added so many things + like lunchboxes and communicators that everyone just takes by default, so a + few more points will be nice. + JerTheAce: + - rscadd: Adds a variety of new guns. Some of these guns and and their ammunition + are purchasable through antag uplink, cargo, or can be spawned during Renegade + or Heist modes. + - rscadd: Adds ammunition clips for reloading magazines and some guns (such as bolt-actions). + - rscadd: All magazines and ammunitions can now be produced with the autolathe. + - maptweak: New bullpup SMG is available in armory area on CentCom level. + - tweak: Revolvers now use 6 shots. Finally. + - tweak: Most guns that didn't use magazines before for some reason (such as the + Uzi) now use magazines. + - tweak: All casings now update icons if they have been spent. + - tweak: Corrects Pulse Rifle charge cost consistency. + - tweak: Corrects and improves a number of icons for guns, including a couple of + energy guns, and adds fallback icons so they do not turn invisible when held + or strapped to your back. + - tweak: Made the icons for some guns look differently depending on what magazine + is loaded into them. + - tweak: Made antag uplink menu for guns and ammo more informative. + - tweak: Machinegun magazines no longer fit in pockets. + - spellcheck: Made names and descriptions for all projectile guns and ammo consistent + while removing grammar and spelling errors. + - bugfix: Autolathe no longer exploitable for ammo by repeatedly recycling empty + magazines. + - bugfix: Guns now check a list of compatible magazines. + - bugfix: Ranged mobs no longer drop usable .357 casings. + - soundadd: Added a variety of new gun sound effects, and swapped out the old default + gun sound. +2016-06-08: + Yoshax: + - maptweak: There is now more soap on the map. The chef also gets a dropper. + - tweak: Changes in gravity now stun for much longer. + - tweak: Bullets now have a better chance of penetrating objects such as filing + 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. +2016-06-15: + Yoshax: + - tweak: The categories for items in the cargo ordering console have been reworked. + Items shoulw now be in more sensible categories. If you cannot find something, + try the sensible category. +2016-06-21: + HarpyEagle: + - bugfix: Fixes disarm-attack dislocation chances being so low that you were very + likely to break the targeted limb before it would dislocate. + - bugfix: It is now possible to disarm-attack with stunbatons like with other melee + weapons. Note that this means that using a stunbaton on disarm intent will hurt + people. + - rscadd: Trying to move while being grabbed will now automatically resist. + - tweak: Small mobs are no longer able to pin larger mobs. + - tweak: Resisting a smaller mob's grab is more likely to be successful. + - bugfix: Fixed being able to climb onto a larger mob while restrained, weakened, + unconscious, or dead. + JerTheAce: + - rscadd: CentCom Fax, Admin Prayer, and CentCom emergency messages now prompt admins + with a pleasing sound effect. + - tweak: Fax machines now sound like fax machines and not polaroid cameras. +2016-06-27: + Sin4: + - rscadd: Added NanoUI for Advanced Body Scanners, Arcade, Atmospherics Control + Computer, Chemmaster, Cloning Console, Fax Machines, Guestpass Console, Holodeck + Computer, Laptop Vendors, Operating Computer, and Photocopiers. + - bugfix: Fixes chemmaster not putting pills in pill bottles. +2016-07-01: + Aztectornado: + - tweak: Clicking a stack of sheets (Metal, phoron...) in your other hand now asks + how many you want to split off the stack, courtesy of Baycode + Datraen: + - rscadd: Antagonistic factions can now be set and viewed on the uplink. Visibilities + can be set for these as well, to help identify sympathizers/potential aids, + or to hide the information from those outside of your faction. + Yosh: + - tweaks: Increases max records and book length to ridiculous levels. + Yoshax: + - tweak: The PTR Sniper is now more accurate when scoped, but less accurate when + unscoped. In addition it now has more recoil. + - tweak: The Laser Cannon no longer holds multiple shots. It holds charge for one + shot at a time. This is because the beams it fires now do 90 damage with 100 + armor penetration. Furthermore, it is now considerably more accurate. Lastly, + to counteract it only holding one shot at a time, it now autorecharges, which + takes 60 seconds. + Zuhayr: + - rscadd: Ports/adapted several kitchen machines from Apollo Station. +2016-07-08: + EmperorJon: + - rscadd: Adds admin functionality to call a trader ship event with the Beruang + in the same manner as ERT dispatches. + - rscadd: Adds a Trader 'antagonist' as they use the antagonist framework. Not considered + an actual antagonist, like the ERT. + - maptweak: Alters Beruang base to provide some clothing for Traders plus a locked-down + area for admins to spawn cargo. + - maptweak: Alters Beruang access to a new Trader-ID-only access requirement. + Neerti: + - maptweak: Restructred the AI core massively, and the upload slightly. + - rscadd: Adds a new material type, called Durasteel, which is made from plasteel + and diamonds. It's incredibly tough and also reflective. The inner walls of + the AI core contain this new material to protect it. + - rscadd: New turret subtype just for the AI core, that is more durable, has a chance + to shrug off EMP, and fires xray lasers. They even turn green. + - tweak: Turrets now wait to go back down in their covers upon losing sight of a + target. + - tweak: Emitters now have health, and can be damaged by projectiles. They will + explode on death. + - tweak: Critical APCs (the type found in the engine and AI core) are now more resistant + to EMP. Equipment and Enviroment stays on during an EMP, and less of the cell + is drained. + Sin4: + - rscadd: Added benches. + - rscadd: Added floor lamps. + - rscadd: Added water-cooler cup dispenser. + Yoshax: + - rscadd: Adds recipes for four new non-alcoholic cocktails. Shirley Temples, Roy + Rogers, Arnold Palmers and Collins Mixes. + - rscadd: Adds five new Tajaran hairstyles ported from Aurora. +2016-07-10: + Anewbe: + - bugfix: Changelings will no longer remain stunned or suchlike when attempting + to regenerate. + Cirra/: + - rscadd: Added a chemistry gripper for Crisis borgs. + GinjaNinja32: + - rscadd: Adds 3x & 4x upscaling options for players with very large monitors. + HarpyEagle: + - tweak: Runtime can now become friends with anyone, regardless of their initial + job. + Neerti: + - rscadd: Mining can now be done with explosives. The effectiveness depends on + the spot chosen to explode, so using an ore scanner is advised. + PsiOmegaDelta: + - rscadd: MedHUD overlays now have more stages, both for 'normal' and critical stages + of injury, for improved quick-diagnosis. + Redstryker: + - bugfix: Communicators will no longer show up on camera networks by default. + - rscadd: Adds a selection of flannels to the loadout. These can have their sleeves + rolled up, their buttons buttoned up, be tucked in and any combination of those. + Techhead: + - rscadd: 'New Random Event: Solar Storms. Similar to a radiation storm, but anywhere + inside the station is safe. Also boosts solar panel output significantly for + the duration.' + Yoshax: + - rscadd: Ports an Advanced Who verb that allows normal players to see what players + are in game, and which aren't. + Zuhayr: + - tweak: Modifies the health HUD element to display limb damage individually. It + will reflect your species, prosthetics, loss of limbs, as well as being on fire. +2016-07-13: + Anewbe: + - rscdel: Removed detonating borgs via Robotics Console + Yoshax: + - tweak: Emagging a cargo supply console will now properly hack it and will also + remove the access requirement. + - bugfix: Languages selected during character setup will once again be properly + added to mobs. + xDarkSapphire: + - rscadd: 'Adds a new hairstyle: Spiky Ponytail.' +2016-07-22: + Anewbe: + - rscdel: Removes assault carbine from uplink. + - tweak: Speeds up the toxin reagents + EmperorJon: + - bugfix: Having between 20 and 100 nutrition and over 45 toxin damage will no longer + cause you to gag ad-infinitum and die. It now respects vomit time restraints. + - tweak: Gagging now occurs only when the mob has no nutrition at all. It no longer + causes three toxin damage, only weakens as before. + - tweak: Vomiting and/or gagging from toxins now occurs regardless of nutrition, + not only 20+. + Neerti: + - rscadd: Adds ability for ghosts to send and receive text messages via communicator. + Yoshax: + - tweak: Drop pod contents have been adjusted. In general, you will get something + more useful and the less useful contents have been made more interesting. There + is a total of 12 drop pod content lists and 7/12 are useful, 4/12 are useless, + 1/12 is potentially useful. + - tweak: Stun Revolvers will no longer be able to spawn from random energy weapon + spawns. In addition, some of the other random item spawns have new items and + adjusted probablities. + - rscdel: Tajaran are no longer negatively affected by coffee. + - tweak: Bucklecuffing as it has been known for the longest time is no longer a + thing. When you resist when cuffed and buckled to something, you will now resist + out of the handcuffs first, allowing you to simply unbuckle yourself once done. +2016-07-25: + PsiOmegaDelta: + - bugfix: Robot upgrades produced in robotics to be applied to Cyborgs can now once + again actually be applied. + Rymdmannen: + - rscadd: Added department specific rubber stamps for cargo and warden. + - maptweak: Replaced 'small rubber stamp' with corresponding new ones in cargo area + and warden's office. + - spellcheck: Renamed ''quartermaster's stamp'' to ''quartermaster's rubber stamp''. + Superbee29: + - rscadd: Ghosts can now see the power in a cable when examining it. + Yoshax: + - tweak: Flashes no longer provide an instant stun. Flashes now confuse and blind + the affected person for five seconds and in addition makes their eyes blurry + for ten seconds. + - tweak: The empty box supply crate has been replaced with a shipping crate. Which + contains what you need to send stuff places! + - maptweak: The chef now gets a destination tagger and packaging paper to send people + food. + - bugfix: Drinking glasses now have a material cost in the autolathe. + - tweak: When emagged security bots such as the Securitron and ED-209 will now move + and pursue faster. + - bufix: Securty bots such as mentioned above will now be properly emagged. + - tweak: The cost of items in the antag uplink have been tweaked. Some are cheaper, + some are more expensive. In addition, you can now buy singular grenades isntead + of boxes. Buying a box has a discount over the singular. + - bugfix: Repairing burn damage on FBPs will now once again properly work. + - bugfix: Undislocating limbs will now once again properly work. + - rscadd: The phoron assembly crate in cargo has been renamed to a Phoron research + crate and now contains more supplies including tank transfer valves. + - tweak: The cooldown between discount offers in the antag uplink is now 10 minutes + versus the previous 15 minutes. + - tweak: The ordering of the items in the autolathe will now be somewhat diferrent + due to a code overhaul. It is now in alphabetic order. + - tweak: Security robots such as the Securitron or ED-209 are now more hardy and + can take more damage before dying. + - tweak: The silenced pistol no longer has any recoil and can be fired faster with + less delay in between shots. +2016-07-31: + Anewbe: + - rscadd: Sprays now respect shields. + Yoshax: + - bugfix: Certain items such as pills and suchlike will once again be usable on + someone who is on a surgical table/table. +2016-08-05: + Anewbe: + - rscadd: Changeling Self-Respiration is now a toggle. By default they breathe normally, + but if they use the power they no longer require oxygen, or experience the effects + of inhaled gasses. + - tweak: Heat based damage has been increased. This includes fire. + Hubblenaut: + - rscadd: Windoor assemblies can now be named with a pen. + - rscadd: Windoor and airlock assemblies now show their custom name during construction + phase. + - tweak: Windoors can now be made out of two sheets of glass or reinforced glass, + for normal and secure windoors respectively. + - tweak: Windoors now automatically close after construction. + - tweak: Adjusts the algorism for how windoors and windows are placed on construction + (when there are already windows co on the same turf). + - bugfix: Windoors will now drop exactly the materials they were made of. + - bugfix: Prying a broken circuit out of a windoor will no longer cause duplicates + to drop. + - bugfix: Airlocks no longer spark after spawn and several other icon update issues + were fixed. + - bugfix: Fixes reinforced walls not being constructable with one sheet left in + stack. + - bugfix: Windows that were busted out of their frame by force are now correctly + rotatable. + - bugfix: Lots of spellchecking and code cleanup in windoor and airlock code. + - rscdel: Killed innocent kittens. + Sin4: + - bugfix: Advanced Body Scanners are now deconstructable + - bugfix: You can now add coolant to the Radiocarbon Spectrometers + - tweak: Frame code revamped and cleaned up. + - rscadd: R&D server circuitboards can be swapped between core and robotics types + using a screwdriver. + Yoshax: + - bugfix: Wounds will now once again bleed. + - bugfix: Xeno loadout items will now properly be reloaded into a slot when the + server restarts. + - rscadd: A new item has been added to the uplink. Package bombs. These come in + two variants, small and big, which cost 20 TC and 40 TC respectively. These + come in a box with an explosive, a disguised detonator and a screwdriver. The + use the detonator you muse apply the screwdriver to configure it into detonator + mode. This must be done when it is closed. +2016-08-07: + HarpyEagle: + - rscadd: Severe enough burn damage now causes one-time blood loss due to blistering + and body fluid cook-off. + Sin4: + - bugfix: Fixed ERT icon not showing up properly for sechuds. + - tweak: Fixed instances of the game mode's config_tag being displayed instead of + the game mode name. + Yoshax: + - rscadd: Attacking yourself, or anyone else with a stack of five or more telecrystals + will teleport the attacked person to a random, safe (not in space) location + within 14 metres. + - tweak: All telecrystals ammounts have been multiplied by 10. This means the base + amount is now 120, and an emag for example costs 30, vs the previous 12 and + 3, respectively. + - tweak: You can once again use telecrystals on an emag to add more uses to it. + You get 1 use per every 2 telecrystals. + - tweak: Instead of only being able to remove 1 telecrystal from your uplink, you + can now remove 1, 5, 10, 25, 50. +2016-08-08: + Kelenius: + - rscadd: Xenoarcheology code has been partially redone. + - tweak: Pick set will now sort the picks inside it. + - tweak: Removed useless random numbers from GPS coordinates in various places. + I'm sure we have not lost the arcane knowledge of rounding 500 years into the + future. + - tweak: Picks renamed to show their excavation depths. + - tweak: Suspension generator's power use lowered. + - tweak: Suspension generator's different field types removed. By the way, remember + that they can suspend any item and even mobs. + - tweak: Archeology belts and pick sets can now hold small pickaxes. Pick sets still + only have 7 slots. Brushes fit on your ears. + - tweak: Empty rock drop rate reduced. + - tweak: Empty rock renamed from 'rock' to 'small rock' so you can tell if you are + clicking on a turf or an item when hovering over it. + - tweak: Empty boulder spawn rate reduced. + - tweak: Tape measuring is a bit faster. + - tweak: Scanner now shows the lowest and the highest depth of the find (highest + is depth + clearance) for easier calculations. Ideally, you need to hit exactly + the lowest spot. Less ideally, hit anywhere between higest and lowest. Hit below + lowest and you have a chance to break the find. + - tweak: You can now use a brush to clear strange rocks. Welder uses less fuel for + that than before. + - tweak: Anomaly analyser's report made a bit easier to read. + - tweak: Anomaly locater will now also locate normal finds. + - bugfix: Gas masks will now correctly spawn as archeological finds. + - bugfix: Digsites will now properly contain several (4-12) turfs in a 5x5 radius. + Be careful when digging near your finds. + - bugfix: Suspension generator will now correctly turn off (qdel issue). + - bugfix: Archeology overlays won't disappear when the icon is updated (e.g. when + mining next to it). + - bugfix: Archeology overlays won't overlap each other and will properly disappear + when you mine out a find. + - bugfix: Some spawning oddities were fixed. + - bugfix: Checks for whether you get a strange rock or a clean item were fixed (previously + it always gave you clean item where it should have been rolling a random number). + - bugfix: Can no longer get rid of any item by putting it into evidence bag and + bag into core sampler. + - bugfix: Can no longer irreversibly fold pick set into cardboard. + - bugfix: CO2 generator effect now has a type. + - bugfix: Phoron generator effect will now always generate phoron, not sometimes + phoron and sometimes oxygen. + Sin4: + - tweak: Scheduler ported from Baystation's port of Paradise's scheduler. + Yoshax: + - tweak: Some items such as commonly found tools are now slightly more effective + when wielded as weapons. This change has been made because many of them were + too low, and low because of mostly holdovers from other servers where things + such as grey tide are big concerns. +2016-08-13: + Yoshax: + - bugfix: The ERT camera monitor on the shuttle will now connect to the right network. + - bugfix: The 'choose sprite' verb as a ghost will no longer prematurely clear you + sprite and will now return your sprite to what it was previous when you press + 'no'. However, it will not allow you to get back the sprite of your actual character + because those are horrible snowflakes. + - bugfix: The Atmos Substation is now a proper substation with a breaker box and + all! + - bugfix: Diona Nymphs now get a popup window on evolution to allow them to input + a name. + - bugfix: Changeling revive will now close any surgical incisions. +2016-08-15: + Anewbe: + - tweak: Changed some words to match current Tajaran lore. + Hubblenaut: + - rscadd: Adds a verb for toggling whether to show specific pieces of underwear. + - tweak: Changes medical belt sprite. Mostly white now so they go nicely with all + medical uniforms. + Yoshax: + - bugfix: Dirt accumulation on tiles will now work again. + - bugfix: The change appearance window provided to antagoniss such as mercenaries, + heisters or suchlike (including traders!) will now properly allow people to + select species they are whitelisted for. +2016-08-29: + Haswell: + - rscadd: Modules installed within a hardsuit will now be listed when examining + the hardsuit control module while being held or worn, if the maintenance panel + is open. + Hubblenaut: + - bugfix: Bottles will now actually sell for their set prices. + - tweak: Chief Medical Officer and Medical Doctors now spawn with a health analyzer + instead of a penlight. + Sin4: + - bugfix: Camera Console swaps to active camera upon clicking on. + - bugfix: Hugs gender correctly. + - bugfix: Prometheans gender correctly and have a gender identity. + - bugfix: Meatspike no longer takes you prisoner upon placing something on it. + - rscadd: Lighting someone on fire now tells the admins. + - bugfix: Wiping something down with a damp rag no longer wets the floor. + - bugfix: Captains gloves now appear when put on. + - bugfix: Fixes Station Administrator Spawn point and access/restrictions. + - tweak: Renamed items from captain to station administrator. + Yoshax: + - bugfix: IDs can now actually be put onto your ears. + - bugfix: Lungs will now once again rupture when you are in an area where you cannot + breathe. This has a relatively small chance to happen. +2016-08-30: + Anewbe: + - tweak: Arm and leg guards are now slightly less slowing. + - tweak: Mining RIG is now faster + - tweak: Tweaks security voidsuit armor values. + - rscadd: Hardsuits (RIGs) now have an inbuilt suit cooling system, toggled via + HUD button. This only works when the hardsuit is fully deployed, and drains + charge from its power cell. + Neerti: + - rscadd: Emitters can be examined to see if they are damaged. They can also be + repaired by applying metal sheets to them. + - tweak: Emitters now only explode on death if they are on a powered wire with significant + power flowing through it. + - bugfix: Emitters don't explode in one hit, or by tasers or non-damaging projectiles + anymore. +2016-09-01: + Alberyk: + - rscadd: Added more horns and horns related facial options for Unathi. + Anewbe: + - tweak: Hyperzine metabolizes twice as quickly. + - rscadd: Changeling space suits now have magboots. + - rscadd: Armblade now has suicide_act text. + Techhead: + - rscadd: Medical splints can now also be applied to hands and feet (in addition + to arms and legs). + - rscadd: For those that miss the old functionality, ghetto splints have been added. + These can be crafted with a roll of tape and a metal rod and can only splint + arms and legs. + Yosh: + - rscadd: The secure briefcase is now available in the loadout for anyone who wishes + to use it. + - bugfix: Leaving a space area and entering a non-space area will no longer leave + your sprite floating. + - rscadd: Ponchos can now be attached to your uniform as an accessory. In addition + they can also be attached to suits! + - bugfix: Changeling regenerative stasis will now properly regrow limbs. + - bugfix: Changeling regenerative stasis will no longer runtime and refuse to work + when you have a missing limb. + - tweak: The shuttle during revolution will no longer take forever and a day to + arrive and such. +2016-09-02: + Yosh: + - rscadd: DNA Lockable guns have been finished. Any gun can be made into a DNA Lockable + gun by inserting a DNA Chip Lock. These are not currently available, and are + adminspawn only. Please refer to your nearest staffmember/developer to begin + discussion for future implementations of this feature. + - rscadd: A new hairstyle has been added named poofy2. + Yoshax: + - tweak: Autotraitor now needs 0 players to start in secret. + - tweak: Diona are now slightly faster! +2016-09-03: + Yosh: + - tweak: Projectile flash rounds will now do the same as a flash when it hits the + target. As such, it will blind, confuse and blur the eyes of thw target. Pistol + and machine gun rounds last the same length as a flash, shotgun rounds last + longer. + - tweak: Changeling recursive enhancement is now a toggleable passive ability, instead + of a one-time use active ability. + - rscadd: You can now vomit by using the vomit emote. + Yoshax: + - bugfix: Changeling armor and space armor can now be cast off regardless of your + stored chemicals. +2016-09-16: + Anewbe: + - tweak: Explosive implants should no longer gib the target if the setting is Localized + Limb. + - rscadd: Lasercannon has 4 shots and fires slightly faster. + - tweak: Lasercannon shots are slightly weaker to compensate for increased sustain. + - tweak: Changes Unathi sprites slightly. + - tweak: The advanced egun, laser carbine, and lasercannon now take up a bit more + space in bags. + - tweak: Prosthetic limbs and extremities no longer increase body temperature. + - tweak: Ninja and Technomancer now require 5 players to start in either secret + or voted. + - tweak: Split skirts into 'skirts', which are just a skirt, and 'skirt outfits', + which cover the upper body. Check your loadouts, they should remain otherwise + unchanged. + - rscdel: Splints are no longer reusable. + - tweak: Water is now more effective at dousing burning people. + - rscdel: Ninjas now vanish in a cloud of smoke, rather than exploding. + Chinsky: + - rscadd: Added a hawaii shirt to loadout accessories. Can be attached to clothing + like suit jackets etc. Can also be found in mixed wardrobes. + Yoshax: + - tweak: People bleed faster and more. + - bugfix: Splints are once again reusable and have been improved behind the scenes. + - bugfix: Removing splints will now correctly give you the splint used to splint + the organ. +2016-09-19: + Anewbe: + - rscadd: Blood Drain now heals internal damage, including broken bones and internal + bleeding. + - rscadd: Adds the Command Secretary job. + - rscadd: CE hardsuit now has proper magboots and insulated gauntlets. + - bugfix: Powersinks should actually explode again, after a while. + MagmaRam: + - rscadd: Lasers and energy projectiles in general now glow in the dark. + - tweak: Robotic and prosthetic limbs can now be used in creation of simple robots, + rather than just the robotic (lawed-chasis) limbs. + Zuhayr: + - rscadd: Added /vg/ direct-action ventcrawling. You will now crawl through the + actual pipe network, a step at a time. Have fun. +2016-10-02: + Anewbe: + - tweak: Pain from burn damage is now equal to that of brute damage. + - bugfix: Removed the exploit by which you could gain cargo points by ordering plastic + crates. + - rscadd: Upped cargo point gain by 50%. + - rscdel: Parapen in SpecOps crate replaced with a 4th smoke grenade. + HarpyEagle: + - rscadd: Adds applying pressure to body parts to reduce bleeding. With desired + body part selected, help-intent click yourself or get an aggressive grab, then + help-intent attack with the grab item. Each person should only be able to apply + pressure to one body part on one person at a time, so choose wisely. Applying + pressure will get blood on your hands. + Yoshax: + - rscadd: Armbands can now be attached to things that go in the outer suit slot. + - rscadd: Shanking has been added. You can shank someone by getting an aggressive + grab on them, targetting their chest and attacking them with a sharp item. This + has a special attack that has greatly increased chance to do internal damage, + also does bonus damage for weapons that are both sharp and have edge. + Zuhayr: + - rscadd: Added /vg/ direct-action ventcrawling. You will now crawl through the + actual pipe network, a step at a time. Have fun. +2016-10-05: + Redstryker: + - rscadd: Added four sounds that are randomly played when bones break. Also allows + the Technomancer to play the bone break sound. + - rscadd: Adds a black variety of the Security Voidsuit called the 'Crowd Control' + voidsuit. It can be obtained from a Suit Cycler with Security clearence. + - bugfix: Codes in icon state for the Press Vest. + - rscadd: Added a child of the Medical armband with a red cross on it. It is available + on the loadout. +2016-10-06: + Anewbe: + - rscadd: Energy weapons and stunbatons now use special device power cells, these + can still be recharged. + - rscadd: Energy weapons can be unloaded and reloaded by clicking them with an empty + hand or a device cell, respectively. The process of loading a cell takes a few + moments. + - rscadd: Stunbatons no longer require a screwdriver to switch cells. + - tweak: Tweaked the order in which stunbatons check for power, they should now + visibly power off when their cell hits 0, instead of one hit after. + - rscadd: Security lockers (HoS, Warden, and Officer) now have an extra device cell + in them. + - rscadd: Protolathe can print device cells. + - rscadd: Adds start_recharge() proc to energy weapons. When called, this should + cause the affected weapon to begin self-charging. + - rscdel: Weapons that self-recharge won't do so for a short period after firing. + - tweak: On weapons that can fire both lethally and non-lethally, lasers drain twice + as much power as tasers. + - tweak: Laser cannon, LWAP, and self_recharging weapons cannot switch cells. + - tweak: Map has been changed to include more rechargers. Merc and ERT bases include + extra device cells. + Neerti: + - tweak: Cleaned up the work in progress event system. + - rscadd: Added framework for a new grid check for the new event system. + Spades Neil: + - tweak: Replaced Station Administrator with Colony Director, based on feedback + literally from NASA. + Yoshax: + - bugfix: You can now only fit one pizza per box, and pizzas will no longer vanish + to pizza gnomes. + - rscadd: Energy swords will now produce a small light. The light is determined + by the color of the blade. + - bugfix: Simple mobs such as slimes, or carp, will now ignore intent requirements + for passing applied tape. + - bugfix: Long records will no longer be devoured by long-record-goblins when attempting + to edit them using a console in-round. + - bugfix: AIs with special roles will now get access to the fancy law manager. +2016-10-08: + Anewbe: + - bugfix: Unloading an energy weapon should now correctly show what was unloaded. + - tweak: Borg stun baton is back to the old cost, for balance reasons. + Redstryker: + - rscadd: '''Overseer'' added as an alt title to Colony Director alt titles list.' + Spades Neil: + - rscadd: Adds the ability to hack Jukeboxes. + Yoshax: + - rscadd: Flashlights now take powercells. + - rscadd: Flashlights now have multiple brightness levels, including low, medium + and high. +2016-10-10: + Anewbe: + - tweak: The base device cell has been shrunk, for use in non-weapon devices. + - rscadd: Adds another class of device cell, for use in weapons. + - rscadd: Belts can now hold device cells. + - rscadd: Cryopods (including the portal and elevator) no longer consume ammo or + device cells. + - bugfix: Low Yield EMP grenades now have the proper EMP radii. + Redstryker: + - bugfix: Allows promotion to Colony Director on the ID console. +2016-10-24: + Anewbe: + - tweak: The color selectable beret should now be more vibrantly colored. + - rscadd: Bullet armor has a higher chance of preventing an embed. + - tweak: The actual system by which embed works has been changed. The overall effect + should be negligible. + - tweak: Flashlights use device cells. Time of use should be roughly unchanged. + - rscadd: Device cells have a chance to spawn where normal cells do. + - rscadd: Internal Affairs Agent HUD icon added. + - tweak: Command, QM, and Bridge Secretary icons are now blue. + - tweak: Research department icons are now purple. + - tweak: Supply department icons are now brown. + - tweak: Chemist icon is now white and red, like the rest of medical. + - tweak: Using a roll of tape on a person requires the same level of grip as handcuffs. + - tweak: The disclocation chance when using disarm intent with a weapon has had + its' formula changed, meaning the threshold for always disclocatiing is now + higher, and no longer 15 force. Meaning weapons will dislocate limbs less often + and will also do less damage. + MagmaRam: + - tweak: Rates of blood loss now depend on the type of wound inflicted and where + the wound is inflicted, as well as the damage. + Neerti: + - tweak: Changes how the grid check event works. A new machine called the grid + checker exists in engineering, near the engineering substation. The actual + event now involves a power spike originating from the engine, which the grid + checker will activate upon sensing it, and causing a blackout. Engineering + can restore power faster if they hack the grid checker correctly. A piece of + paper left in the substation has more details. + - rscadd: Adds new 'spell power' mechanic, currently tied to technomancer cores. + Certain cores will augment various characteristics of spells, such as damage, + radius, etc Base spell power is 100% (internally 1.0) and some cores may raise + or lower it. + - rscadd: Adds new 'info' tab for Technomancers that hopefully tells new them what + they need to know. + - tweak: Round-end now shows every spell each technomancer has, as well as their + core type. + - tweak: Ability HUD buttons can be re-ordered by clickdragging one button onto + another. + - bugfix: Recycling core now actually works. + - rscadd: Adds two new cores. The Safety Core, which reduces instability by 70%, + however it hass less energy, lower recharge rate and lower spell power. Also + the Overcharged Core which uses more energy, caused more instability, but has + far higher spell potency. + - rscadd: Adds a new Spyglass item, that functions exactly like a pair of binoculars. + This is for Techomancers. + - tweak: Technomancer Resurrect now has a deadline of 30 minutes until a dead person + can't be revived, instead of 10 minutes. + - tweak: Technomancer Radiance is now three times as strong. Also Radiance with + a Scepter prevents the caster and allies from being afflicted. + PapaDrow: + - rscadd: Striped undergarments now exist. + Redstryker: + - rscadd: Added a blue variant of the Medical voidsuit called the 'Emergency Medical + Response Voidsuit' that can be obtained from the suit cycler. +2016-10-25: + Anewbe: + - tweak: The effects from empty-handed disarming now have a cooldown. + - rscdel: HoS and Detective equipment is less protective. +2016-11-13: + Anewbe: + - rscadd: Adds a list to prevent certain jobs from being certain roundstart antags, + rather than outright preventing them. + - bugfix: Surplus crates won't make more surplus crates. + - tweak: Random buys from uplinks will no longer buy anything out of the Badassery + tab. + - bugfix: Loincloth now has an on-mob sprite. + - rscadd: Ported Bay's tape recorders (which actually work). + Broseph Stylin: + - rscadd: Added HUD aviators to the loadout. They're restricted to security, and + can toggle between HUD and flash protection modes, but won't offer both at once. + MagmaRam: + - rscadd: Holsters can be concealed by some suit-slot items, others conceal all + accessories. + - bugfix: Fixed certain suit-slot items not hiding jumpsuits properly. + RedStryker: + - rscadd: Adds a Guy Fawkes mask. + Yoshax: + - rscadd: Clipboards can now be made out of wood. +2016-11-17: + Anewbe: + - tweak: Slowdown in armor sets moved to chest and legs, rather than arms and legs. + - rscadd: Bullets and lasers will now show up on Autopsy Reports. + - bugfix: Fixed all ERT calls being silent, regardless of selected option. + - rscadd: Flashlights can now fit in rechargers. + - rscadd: 'Added flashlights, maglights, and the secHUD sunglasses (Sec only) to + the loadout. ' + TheGreyWolf: + - rscadd: Added Sign language, which can be selected from character setup. +2016-11-18: + Anewbe: + - rscadd: Added .45 and tommygun AP ammo to the uplink. + - tweak: CPR can be performed on corpses, doesn't actually help them. + Datraen: + - tweak: Makes cameras faster, removing a large chunk of bloat relating to taking + pictures. Specifically for taking pictures of angry cheetos. + MagmaRam: + - bugfix: Slimes will now properly process chems that have zero effect on them (that + is, they'll get rid of them instead of clogging up their metabolism forever). + Nerezza: + - rscadd: Added Lemon Juice to soda dispensers across the station. Reagent cartridge + refills can be ordered via cargo. + - rscadd: Added Lemon Juice and Milk Cartons to the bar's Booze-o-Mat. You can now + order milkshakes and not get shot (maybe). + Yoshax: + - experiment: Being unable to breathe and having oxyloss will now cause brain damage + that scales with the amount of oxyloss you have. Without oxygen, the brain takes + damage and will EVENTUALLY die (but you would most likely die of actual oxyloss + before that point.) +2016-11-20: + Datraen: + - tweak: Global announcer now has access to engineering channel. + - tweak: Supermatter now uses the global announcer. + Nerezza: + - bugfix: Digital FBP/Cyborg brains no longer drop brains. + - rscadd: Digital FBP/Cyborg brains are tagged with their designation now. + - bugfix: All cyborgs can now unbuckle people from beds/chairs. Just attack the + structure with no module selected. + - rscadd: Added the current station date to the Status tab. Ported from Baystation. + Yoshax: + - rscadd: Adds the ability for Hydroponics Trays to enter cryogenic stasis. You + can do this by using a multitool on one. Wheh in stasis the plant will be frozen + in time, it will neither grow nor die. Now you can have a life! +2016-11-21: + Anewbe: + - tweak: Drawing blood with a syringe now takes a moment. + - rscadd: Communicators no longer have a loadout cost. + - rscdel: Having more than 50 tox will now cause liver damage, rather than 60. + - rscadd: Adds Stimm, a homemade hyperzine made of sugar and welding fuel. + - rscdel: Hyperzine is now toxic. + Nerezza: + - tweak: Space suits now hide jumpsuits, so excessively bulky jumpsuits no longer + peek through. + - bugfix: Teshari wearing webbing now have the correct sprite overlay. More accessories + need sprites, however. + - wip: Teshari sprites no longer show the majority of suit accessories, anyone who + wants to pitch in to fix this are invited to do so! + - rscadd: Windoors can now be disassembled. Apply crowbar when open. + - rscadd: Engiborgs and drons can name door and windoor assemblines now. Click an + adjacent assembly with no modules active. + - bugfix: Windoors now know how to name themselves. In addition, unnamed windoors + now spawn with their default name instead of null. + RedStryker: + - rscadd: Added a colorable hairflower to the loadout. + - rscadd: Added a taqiyah to the loadout that can be colored with the color datum. + - tweak: Fixed the sprite for the red Security Hat backwards sprite so that the + 'N' on it is no longer backwards. + Yoshax: + - tweak: All robots now get crowbars, flashes and fire extinguishers. + - tweak: IV Drips are no longer dense, meaning they can be walked through like chairs. + - tweak: Robots can now use the toggle lock verb on crates and lockers. + - rscadd: There is now an experimental welding tool, it regenerates its fuel on + its own! One is given to the Chief Engineer, produced in Research, or found + in Syndicate toolboxes. +2016-12-01: + Anewbe: + - bugfix: Adult Diona should be able to name themselves properly now. Tweaked from + a Baystation PR by FTangSteve. + - rscdel: Lightning spells and bioelectrogenesis will no longer stun outright. + - rscadd: FBPs should no longer get mutations from radiation. + - bugfix: Observe warning should properly show how long you have before you can + join. + - rscadd: Adds a Toggle Shoe Layer verb to shoes, that let them be worn over the + uniform (ie tucking your pants into your shoes). + - bugfix: Shoes now properly check if they can hold knives or not. + - bugfix: Sign language can now be used while muzzled. + Datraen: + - tweak: Skrell are now more resistant to various chemicals, more susceptible to + pepperspray. + ForFoxSake: + - bugfix: Fixed a possible href exploit allowing any living player to speak any + language. + - bugfix: Organic beings can no longer speak Encoded Audio Language, although they + can still understand it just fine. + - tweak: Positronic brains can now speak Encoded Audio Language. + - tweak: Station manufactured Full Body Prosthetics can now speak Encoded Audio + Language. + MagmaRam: + - tweak: Corpses will now process a select few chemicals, meaning you can now add + blood into people who bled out before defibbing them. + - bugfix: Defibrilators fixed again. + - bugfix: R&D machines will now accept stacks of metal and glass from Cargo orders + properly. + N3X15: + - bugfix: Electrical storms no longer affect only cargo. If you're not cargo, your + lights are no longer safe. + Nerezza: + - rscadd: APCs now have a new EMP behavior. Regular APCs shut off for a few minutes, + critical APCs (engine and AI) shut off for 30ish seconds. Medbay will now not + be permanently disabled by EMPs if no engineers are available to fix their APCs. + - rscadd: Bay's timed reboot interface for APCs has been ported for EMPed APCs. + - tweak: APCs affected by grid checks say so on their nanoUI now. + - tweak: APCs damaged by the apc_damage random event are now effectively emagged + APCs. Anyone can operate their interface. + - tweak: Emagged APCs can now be repaired by removing their power cell and using + a multitool to 'reboot' them manually. + - bugfix: Nin and twiz no longer **** up APCs if they drain the battery completely. + - tweak: Nin and twiz drain power from the wire an APC is connected to first, then + drain from the power cell to fill the drain's 'quota'. Because the amount of + power given from the power net is random, this means the battery will still + drain but this also means you don't need to crowbar tiles in a room if the APC + is empty. + - bugfix: Bluescreened APC wire panels now visibly open like they should. + - tweak: Bashing APCs open was only effective under certain circumstances, but would + spam everyone anyway. This has been changed to only spam the user and to be + more indicative of when you can bash the cover off. + - spellcheck: Full grammar pass on APCs. + - rscadd: Hazard shutters animate slightly and play a sound so players can more + readily identify where shutters are being pried. + - bugfix: Two people can't pry the same shutter simultaneously anymore. + - bugfix: Fixed a bug causing shutters to immediately pry open when people didn't + want the shutter open. + - rscadd: Inflatables can be deflated using ctrl-click. + - rscadd: Inflatables can be deployed on adjacent tiles by clicking them. + - bugfix: Bumping into closed inflatable doors will no longer freeze them for a + few moments. + Yoshax: + - maptweak: All Heads of Staff now get multi-color pens in their office. + - tweak: Doors that do not have an access requirement can now be opened when handcuffed. +2016-12-17: + Anewbe: + - bugfix: EVA rig now has insulated gauntlets. + - rscadd: Adds another slot to select languages, if desired. + - rscadd: The base device cell is now selectable in the loadout. + ForFoxSake: + - tweak: Digital Valve pipes can now be made and moved. + - tweak: Air Vents can now have their direction changed. + - maptweak: Atmospherics is now a little less cluttered. + MagmaRam: + - rscadd: Added a nice implant that allows humans to speak EAL. + N3X15: + - rscadd: Added a changelog editing system that should cause fewer conflicts and + more accurate timestamps. + - rscdel: Killed innocent kittens. +2016-12-30: + Anewbe: + - rscadd: Changed run/walk speed to be based only on a config file. + - tweak: Walking should be faster now. + - tweak: Removed shoeless slowdown. + Atermonera: + - bugfix: Science grippers can install and remove borg components + - bugfix: Exosuit grippers can install exosuit equipment + - bugfix: Sheetloaders can load materials into protolathes and circuit imprinters. + - tweak: Protolathes and circuit imprinters input materials like autolathes, taking + as much of the fed stack as it can. + MagmaRam: + - tweak: Beakers can now have longer labels. + - rscadd: Adds defibrilator crate for cargo. + - tweak: Changed how certain stacks spawn behind the scenes. Should fix a few esoteric + bugs without impacting anything else. + Neerti: + - bugfix: Subtracting, multiplying, and dividing with arithmetic circuits should + actually occur now. + - rscadd: Added new arithmetic circuits; sign, round, and exponent. +2017-01-03: + Anewbe: + - bugfix: Farmbots should be buildable again. + - rscadd: FBPs with vital (head/torso/groin) damage will now show up on the crew + monitor as being damaged. + - bugfix: Flashes should now properly affect accuracy in hand-to-hand. + - bugfix: Taj should no longer be poisoned by any sort of coffee. Looks like we + missed a spot last time. + - rscadd: Recording tapes can now hold 30 minutes of chat. + - rscadd: Tape recorders and their tapes now fit in security and detective belts. + - rscadd: Lasers can now ignite thermite on walls. + - bugfix: Device cells now fit in wall rechargers. +2017-01-12: + Anewbe: + - rscadd: Ported over a bunch of hairstyles and underclothes from Baystation. + - tweak: Nurse spiders inject eggs less frequently. + - rscadd: Nurse spiders give a warning to the victim when they implant eggs. + Neerti: + - rscadd: Hand-held flashes and flash rounds will now stun upon repeated applications, + similar to stun batons. +2017-01-23: + Anewbe: + - rscadd: Can now just click ones boots to draw a holstered knife. + - rscadd: More boots can hold knives now. + - rscadd: Added an action button for breath masks, making it easier to toggle them. + - rscadd: Space Carp have a chance of sticking around after their event completes. + - tweak: Robotic limbs will no longer show up on the health scanners. + - rscadd: Medics and Security can open firedoors. Do so at your own risk. + - rscadd: Chaplain hoodie now has pockets and an actual hood. + - tweak: Winter coat hoods have the same armor values as their coats. + - rscadd: Characters will now spawn in at a random level of hunger. + - rscadd: Assisted and Prosthetic organs now have sprites. + - rscadd: Surgical tools will not attack while on help intent, this should prevent + people getting accidentally stabbed in surgery. + - rscadd: Tajaran now process reagents slightly faster. + - rscdel: Taj are now allergic to coffee again, per loremaster request. + - tweak: Taj now get drunk faster. + - tweak: Hyperzine is now more toxic to Taj. + - rscadd: Readded the Vox for admin/antag use and testing. They breathe Phoron now, + rather than Nitrogen. + - bugfix: The Xenotaser should work properly. + FTangSteve: + - wip: RootSpeak is now split into a local and a global variant. For now the global + acts as a hivemind. + Hubblenaut: + - tweak: Can now click on turfs with trash bags and similar to quick-gather everything + on it. No longer pixelhunting for cigarettes and bullets. + - bugfix: Buckets and other reagent holders will no longer simply be put into the + janitorial cart's trash bag. + PsiOmegaDelta: + - tweak: The round start and auto-antag spawners can now check if players have played + long enough to be eligable for selection. + Techhead: + - rscadd: 'Added a new random event: Shipping Error - A random crate is mistakenly + shipped to the station.' +2017-01-28: + Anewbe: + - rscadd: Added Medical and Meson aviators. + - rscadd: Medical and Meson aviators are now in the loadout, department locked. + - rscadd: Meson Scanners have been added to the loadout, department locked. + - rscadd: Medical hardsuit has a toggleable sprint. + - bugfix: Carbon and Hematite should show up in asteroid walls. + - rscadd: Readded the random crates from mining. + - rscadd: Digging through an artifact sometimes doesn't destroy the artifact. + - bugfix: Space and cracked sand should no longer stop mining drills. + - rscadd: Diona can regenerate organs and limbs. + PsiOmegaDelta: + - rscadd: Resetting a character slot now requires confirmation. + Zuhayr: + - rscadd: Added a reset slot button to chargen. +2017-02-24: + Anewbe: + - rscadd: Fake command reports now make the paper show up. + - bugfix: Mining cameras should work now. + MagmaRam: + - tweak: There is now a short delay before being able to fire when using hostage-taking + mode, and a short delay between shots. This should make hostage mode useful + for taking hostages and ambushes, rather than as an aimbot in actual firefights. + - bugfix: Sandwiches at max size can be eaten with a fork. + Yosh: + - rscadd: Some vending machines now log the items they've vended and had stocked, + storing the name of the user, the time and the item. These can be found by using + the new verb for vending machines, or from the right click menu. + Zuhayr: + - rscadd: Adminhelps now have a TAKE button that allow an admin to claim it, and + inform the adminhelper that someone is on the case. +2017-03-22: + Anewbe: + - tweak: Oxyloss now shows up as cyan in scanners. + Arokha: + - tweak: Having less than 30% blood (as a result of literally having that little + blood, or a broken heart) causes 75 oxyloss per tick rather than 300 toxins + and instant death, to allow for heart transplants. + - bugfix: Infections now spread and process properly between external organs. + - rscadd: Infections now have appropriate symptoms that indicate to a player that + they have one. + - rscadd: Infections are now diagnosable more accurately in a medscanner, or visually + for high level infections or dead limbs. + Atermonera: + - bugfix: EAL, Sign language, and emotes will no longer use autohiss + - rscadd: Surgeon Borgs now have a proper medical hud module +2017-03-28: + Anewbe: + - spellcheck: Disregard the last changelog on the spelling of HI, the correct spelling + is Hephaestus. My bad. + - rscadd: Added a changelog editing system that should cause fewer conflicts and + more accurate timestamps. + - rscadd: Added Myelamine, a blood clotting chemical. This is available to antags, + and can be ordered from cargo or mixed. + - rscadd: Added Osteodaxon, a bone fixing medicine. This is available to antags, + and can be mixed. + - rscadd: Added Carthatoline, a stronger anti-toxin. + - rscadd: Added Spidertoxin, which comes from spiders (duh), and is used in making + Myelamine. + - rscadd: Death Alarms can now be ordered from cargo. + - rscdel: Dexalin Plus is half as strong (still pretty strong, though). + - rscadd: Ninja, Merc, and ERT-M Hardsuits can now inject myelamine. + - tweak: Inaprovaline now decreases the effects of bloodloss, and lessens brain + damage taken from OxyLoss. + - tweak: Prosthetic organs now take randomised damage when emp'd, this should roughly + average out to the old values. + - tweak: The effects of heart damage have been tweaked, should be slightly easier + to survive now. + - tweak: Some of the stronger chems have side effects, like confusion or blurry + vision. These should be fairly minor, and we may be tweaking them in the future. + - tweak: The suiciding var now wears off, making it possible to save suicide victims + if quick action is taken. + - tweak: Death Alarms now announce on General comms again. + - rscadd: Borgs can climb tables. + - tweak: Skrell can now be up to 130 years old. + - tweak: Skrell are more vulnerable to flashes, due to their large eyes. + - tweak: Tajaran no longer have appendicies. + - tweak: Tajaran are more vulnerable to flashes. + - tweak: Unathi have less brute resist, but some burn resist. + - tweak: Unathi gender is now unclear to non-Unathi. +2017-03-30: + Anewbe: + - tweak: Italics in chat are now trigged with | , rather than / . + - rscadd: Energy weapons, flashlights, stunbatons, and welders can now be moved + from hand to hand by click+dragging. + - rscadd: Flashlights can now be placed in wall rechargers. + - rscadd: Adds jumper cables, that act a bit like a defib for FBPs. + - bugfix: Bicaridine and Myelamine should now properly repair internal bleeding. + - rscadd: Overdoses are now more dangerous. + - rscadd: Chloral Hydrate overdoses are now even more dangerous. + Arokha: + - rscadd: Adds body markings and tattoos. + MagmaRam: + - bugfix: Borgs and assorted robits can now use grinders in chemistry and the kitchen. +2017-03-31: + Anewbe: + - rscadd: Added a number of crates to cargo. + - rscadd: Added the electric welder as a hidden autolathe recipe. + - rscadd: Added a few colored (in sprite, not in color) flashlights, to the loadout. + Sprites c/o Schnayy. + - rscadd: Maps in a pair of jumper cable kits. Use these to revive FBPs. +2017-04-08: + Anewbe: + - rscadd: Aprons now have pockets. + - bugfix: Automute shouldn't trigger if you don't type anything. + - rscadd: Adds the Chief of Security alt title for the HoS. + - rscadd: Wooden circlets can now be worn on the head. + - tweak: Package bombs now beep when activated, and have a delay before exploding. + - tweak: Package bombs are more expensive. + - tweak: Robolimbs can take a bit more damage before they start malfunctioning. + - tweak: Shrieking now decloaks changelings. + - rscadd: Drying yourself off with a towel should actually dry you off a bit now. + Arokha: + - tweak: Simple animals resist out of buckles and lockers + - tweak: Simple animals with retaliate but not hostile assist each other better + if they also have cooperative + - tweak: E-nets now are resist-out-of (or clickable) by the one inside or outside, + rather than having HP, and can be dragged around + Atermonera: + - rscadd: FBPs can now have numbers in their name. The first character cannot be + a number. + - rscadd: Common simple animals now have their own language, and as such are no + longer understandable by humans. + - bugfix: Translators can't understand the same languages that recorders can't, + including the new animal languages. + Leshana: + - rscadd: Upgrades the automatic pipe layer to modernize its code and make it constructable! + Constructs and deconstruts like other machines now. Circuits are buildable in + the autolathe. Uses steel to make pipes. + Magmaram: + - bugfix: Splints will now show up in examine text on hands and feet as well as + arms and legs. + Sin4: + - bugfix: Fixed back icons for Z8 Carbine, C20r, fireaxe, spear, and baseball bat. + - rscadd: If observing before roundstart, you may respawn. +2017-04-12: + Anewbe: + - rscadd: Material weapons now go dull instead of shattering. Certain weapons, like + spears, will still shatter. + - rscadd: Dull weapons do less damage, but can be sharpened with a whetstone. + - rscadd: Whetstones can be crafted using plasteel. + Belsima: + - tweak: Replaces cypherkey sprites with improved ones. + Sin4: + - bugfix: You can no longer ascend a table by walking from a flipped table to a + non-flipped one. +2017-04-16: + Anewbe: + - rscadd: Bartenders now spawn with their shotgun permit. Click on it in hand to + name it. + - experiment: Lessens the bloodloss from severe burn damage. + - rscadd: Hardhats now give some ear protection. + - rscdel: Hardhats can no longer fit in pockets. + LorenLuke: + - rscadd: Allows removal of PDA ID with alt-click. + Yosh: + - tweak: Scrubbers now scrub Phoron by default. + - tweak: Scrubbers now have the first dangerzone at anything more than 0 Phoron. + - bugfix: No longer will you attack Alarms with your ID when trying to unlock them. +2017-04-19: + Anewbe: + - rscadd: Unathi ribcages now reach down to their lower torso. + - rscadd: Unathi no longer have appendices or kidneys, the function of the kidneys + is now a function of their liver. + - rscadd: Unathi are more slightly more difficult to damage. + - rscadd: Unathi now process medicine 15% slower. Additionally, it's harder for + them to get drunk. + - rscadd: Unathi age range is now 32 to 260. + - rscadd: Unathi are not as slowed by heavy items. + Atermonera: + - bugfix: Translators no longer try to translate null languages. + LorenLuke: + - rscadd: Allows Blast doors to be attacked and broken like regular airlocks. + - tweak: Changelings can bank up to a maximum of 3 respecs at one time. + - tweak: Changelings begin with 2 respecs. + - tweak: Firing a silenced weapon gives a message in text to the user. + MagmaRam: + - rscadd: Added instructions on how to use the changelog updating scripts. + - tweak: Updated in-game EVA manual. + Neerti: + - rscadd: Adds makeshift armor for the head and chest regions. How protective they + are depends on the material used to craft it. The helmet is made by using wirecutters + on a bucket, then using a stack of material. The chestpiece is made by crafting + two armor plate, using wires on one of them, then hiting one with the other. + Yoshax: + - bugfix: Water such as the pool will no longer apply fire stacks when you enter, + meaning you will no longer be flammable from swimming. +2017-04-25: + Anewbe: + - rscadd: Cultist armor now has better protection from strange energies. + - rscadd: Adds the ion pistol to the uplink. + - tweak: The ion pistol can now be holstered. + - bugfix: Sprites on the smoking pipes should be fixed. + Atermonera: + - rscadd: Brain type (Organic, cyborg, posi, or drone) is now displayed in all records. + Belsima: + - tweak: Changes relaymove() code in bodybags. + - bugfix: Above tweak used to allow exiting bodybag while in closed morgue tray. + Leshana: + - rscadd: Implements footstep sound system and adds sounds to various floor types + including plating, tiles, wood, and carpet. + LorenLuke: + - bugfix: Allows people who are bucked to give/receive items. + - tweak: Can click-drag people onto chairs/beds from 1 tile away to buckle them. + - tweak: Allows you to place tape masks/restraints back on the roll (roll is still + infinite). + - bugfix: Fixes ventcrawling for spiderbots/implants/etc. + Neerti: + - rscadd: Drones will now spawn with an EIO-mandated ID card alongside their NT + ID. + - tweak: Fabricate Clothing for Changelings costs one point instead of two, and + is fabricated twice as fast. + - tweak: Dead changelings can no longer hear deadchat or freely ghost. + - tweak: Shrieks now share a 10 second cooldown. + - tweak: Lings cannot transform or shriek inside containers such as closets and + pipes. + - tweak: Regen. Stasis timer adjusted to be between 2 to 4 minutes. + - tweak: Visible Camo. should end if the user is stunned. + - rscadd: Visible Camo. now blocks AI tracking when active. + - rscdel: Recursive Visible Camo. no longer gives true invis. + - rscadd: Recursive Visible Camo. will allow the changeling to run while cloaked + instead. + - rscadd: Ling chemical meter on HUD now has a blinking exclaimation mark if below + 20 chemicals, to warn that they cannot revive if they should die while still + below 20. + Yoshax: + - tweak: Tape color is different now. Security tape is red rather than yellow, Engineering + tape remains yellow and Atmos tape is a lighter cyan rather than blue. +2017-05-05: + Anewbe: + - rscadd: Adds a cup for dice games, in the loadout. + - rscadd: Thermals now let you see in the dark. + Arokha: + - rscadd: Sleepers now have a 'stasis' level setting, that will ignore varying numbers + of life() ticks on the patient. + - tweak: Stasis bags and Ody sleepers now use a fixed level of this new stasis system + (ignore 2/3 life ticks). + - tweak: You can escape from being asleep in a sleeper, similar to escaping from + a cryotube. + - rscadd: You can now use grabs on sleepers to insert patients, same as scanners. + Datraen: + - bugfix: Xenobiological traits are made unique on each mutate, avoiding mutating + other mobs with same trait data. + Leshana: + - bugfix: Resetting a fire alert will no longer open firedoors if atmos alert is + in effect and vice versa + LorenLuke: + - Bugfix: Unfucks the screen bug on roundstart changelings. + - bugfix: Changeling now display 'alive' status on Medhuds properly. + - tweak: Refactors changeling ranged stings not passing over tables. Can now pass + over tables, any machinery (except doors), machine frames, and past closet subtypes. + - bugfix: You can now view an active video call by using the communicator in hand. + - tweak: Guns on harm intent in aim mode will target, rather than shoot pointblank + on first click. + - bugfix: You can now put handcuffs on yourself. +2017-05-09: + Anewbe: + - rscadd: Ports but does not enable Bay's MultiZAS. + Leshana: + - tweak: Optimized (but still not enabled) multi-z ZAS + - rscadd: Multi-Z explosion transfer coefficient is now configurable + N3X15: + - tweak: Flashlights on the high setting are no longer Beacons of Gondor. + Neerti: + - tweak: Tesla armor now retaliates against ranged attacks if within 3 tiles, and + recharges in 15 seconds, from 20. + - tweak: Technomancer Instability fades away slower. + - tweak: Fire and frost auras made more potent. + - rscadd: Gambit can now give rare spells unobtainable by other means, based on + spell power. + - tweak: Mend Wounds and Mend Burns combined into Mend Life. Mend Metal and Mend + Wires combined into Mend Synthetic. + - rscadd: Adds Lesser Chain Lightning, a more spammable version, but weaker. + - rscadd: Adds Destabilize, which makes an area glow with instability for 20 seconds. + - rscadd: Adds Ionic Bolt, which ruins the lives of synthetics. + - tweak: Oxygenate made cheaper. + SiegDerMaus: + - rscadd: Adds one new haircut, a chin-length bob. + Yosh: + - rscadd: Ports a bunch of hair from Bay. Knock yourself out. +2017-08-20: + Anewbe: + - tweak: The names of 5.56 and 7.62 ammo have been swapped, as have the guns that + use them. The magazines should look the same, and the guns will do the same + damage they used to do. + Atermonera: + - bugfix: Borgs can now raise an evil army of slimes + Belsima: + - rscadd: Added a lot of new lore-friendly drinks. + - spellcheck: Adjusted the descriptions of some drinks. + - rscadd: Added fingerless gloves to the loadout. + - imageadd: Added several new robot icons. + - imageadd: Added animations to some robots. + - bugfix: Fixed Usagi's eyes not turning off when dead. + - rscadd: Added several new pAI sprites. + - rscadd: Added a load of sweaters to the accessories tab of the loadout. + - rscadd: Added a new swimsuit to the pool. + Cirra: + - rscadd: Added a unified radiation system. Radiation is lessened by obstacles, + and distance. + - rscadd: Added a geiger counter for measuring radiation levels, which can be found + in certain vending machines and radiation closets. + Leshana: + - tweak: During the gravity failure event, you can now buckle yourself to a chair + to prevent falling when gravity returns. + - rscadd: Added an admin verb to debug the map datum. + - rscadd: Added nanomap capability to the Power Monitoring Computer + - rscadd: Added nanomap capability to the Atmos Control Computer + - tweak: Expanded nanomap on Camera Console to all station z-levels by default. + - tweak: Crew Monitoring nanomap will support crew monitors built on other station + map z levels. + - imageadd: Updated z1 nanomap for Northern Star + - imageadd: Generated z5 nanomap for Northern Star + - tweak: Optimized the unified radiation system. Made the radiation cutoff level + configurable. + - bugfix: Standing still won't save you from radiation storms. + - bugfix: Bedsheets can be put into washing machines again. + LorenLuke: + - imageadd: Ghosts can now choose from a number of animal sprites. + - experiment: Gives IECs some TLC (see below). + - rscadd: Adds 'Separator' circuit, allowing the player to now divide strings. + - rscadd: Adds 'grenade' circuit, allowing the player to detonate a stored grenade + in an assembly. + - rscadd: Adds 'device' electronic assembly, allowing an 'assembly'-type (signaler/igniter) + circuit to be used to interact with others. + - tweak: Modifies some storage and complexity constants. + - tweak: Adds 'size' variable for manual setting. + - tweak: No longer requires screwdriver to remove components. + - tweak: Enables multitool to wire/debug circuits with lesser functionality (can + disable via variable). + - tweak: IECs no longer drown the player in windows, each assembly always uses only + one window. + - tweak: Added functionality to UI to help with user experience of above point. + - rscadd: Adds 'on set' output pulses to multiplexer and memory circuits. + - bugfix: Fixes multiplexer and memory circuits not pushing data to attached circuits. + - bugfix: Number to string converts null inputs as '0' due to engine limitations + (at least they work). + - bugfix: Gun manipulator circuit now functions properly (and can read '0' value + inputs). + - wip: Phase 1/2 for wiring rework. + MagmaRam: + - tweak: Nerfed health regeneration, especially on bruises. + Nalarac: + - tweak: Modifies the illegal equipment module for borgs to scrambled equipment + module that only activates the special items and doesn't actually emag the borg + - bugfix: Mining cyborg diamond drill is now obtainable in a more sensible manner + - tweak: Click dragging has been added to the cryogenics tubes, cloning pod, and + all methods of cryostorage + - tweak: Some quality of life changes for research, crisis, surgeon, and service + cyborgs + - bugfix: Jumper cables readded + - tweak: Construction cyborgs merged back with engineering cyborgs + PrismaticGynoid: + - tweak: Replaces intelliCards with intelliCores. + - rscadd: Wheelchairs can now be collapsed like rollerbeds for ease of storage and + movement. Too big to put in backpacks though. + - rscadd: Wheelchairs are now available in a color-customizable form via the loadout, + under utility. Now you can ride in style, and keep your feet too. + - bugfix: Wheelchair users can now enter the gateway and residential elevator without + being forced to leave behind their mobility aid. + Sarmie: + - bugfix: Dionaea have remembered how to regrow their limbs properly. +2017-08-26: + Belsima: + - imageadd: Replaced APC sprites with better shaded ones. + - tweak: Adjusted some atmos sprites for visibility. + - soundadd: Added cough and sneeze noises for Teshari. + - tweak: Turning on flashlights and locking lockers both make a click sound. + - imageadd: Replaced soda cans with new soda cans. + - rscadd: Added a tiedye shirt. + MagmaRam: + - bugfix: Tesla relays no longer draw power when their attached power cell is full. +2017-09-24: + Belsima: + - imageadd: Replaced air tank sprites. + - imageadd: Added new xeno weed, egg, and resin sprites. + - imageadd: Added two new bar sign sprites. + - imageadd: Replaced blast door sprites. + - spellcheck: Microwave is no longer a proper noun. + - rscadd: Added croissants to the available recipes. + - imageadd: Added new status displays for the AI. + - spellcheck: Made spelling of corporations and planets more consistent. + - rscadd: Added more planets to character setup. + - imageadd: Added a bunch of new hairstyles. + - imageadd: Added a new holographic hud. + - maptweak: Added a grinder and enzyme to the abandoned bar, for illicit operations. + - imageadd: Replaced solar panel sprites. + - imageadd: Replaced shield generator sprites with ones from the Eris. + - rscadd: Added Qerr-quem and Talum-quem, a pair of Skrellian drugs. + - soundadd: Added a variety of sounds for opening cans, explosions, sparks, falling + down, mechs, and bullet casings. + - soundadd: Added a new death sound for mice. + - imageadd: Vox have been entirely resprited. + - rscadd: Added wood buckets, craftable with hydropnoics. + - soundadd: Added sounds for chopping wood. + - bugfix: Fixed a bug that would make default Zippo lighters invisible. + Chaoko99: + - rscadd: Nitrous Oxide is now an oxidizer. + - rscdel: 'Removed all instances of Volatile Fuel ever being simulated. To devs: + It still exists. Please, for the love of god, only use it with assume_gas.' + Cyantime: + - tweak: Tabling now requires a completed aggressive grab. + Nalarac: + - tweak: Removes the module restraint for the cyborg jetpack upgrade + - rscadd: Added the hand drill and jaws of life to the protolathe + - tweak: Syndicate toolbox now comes with power tools + Neerti: + - wip: Adds the Lost Drone, which can be found on the Surface of the future map. + - rscadd: You can now modify an unslaved borg's laws by hitting it with a law module, + after a significant delay. + - rscadd: Adds several new lawsets. Currently there are no lawboards for these. + - rscadd: Adds new 'shocker' baton, for the Lost Drone. + - tweak: Combat borg shields are now easier to use, only requiring that they sit + on one of your hands and not your active hand. The shield is also more energy + efficent. + PrismaticGynoid: + - tweak: You now keep your languages when removed from/transplanted into a body. + - tweak: AIs and borgs load languages from preferences when spawning. + - bugfix: Fixed sign language being usable while lacking both hands. + - rscdel: Brains are no longer able to hear binary (robot talk). + - rscadd: Adds the ability for research to print drone brains. + - tweak: Makes all MMIs, posibrains, and drone brains radio-enabled. Anyone holding + the brain can also disable the radio for antag purposes. + SpadesNeil: + - tweak: Windows can no longer be damaged by very weak attacks. + Woodrat: + - tweak: Ported floor types and floor sprites (Techfloors) from Vorestation (who + ported them from Eris). Brought our floortypes in line with how Vorestation + has theirs set up. + - bugfix: Missing Techfloor floor tile sprites added. + - wip: Floor sprites from Vorestation not yet ported. To be done once we go to the + new map. + - maptweak: Added catwalks and railings to SC station. Fixed first Z-level. + - rscadd: Added the ability to make catwalks and railings as ported from vore. + - tweak: Cable heavy duty file tweaks to remove red overlay color from them. + - tweak: Added in a color icon for centcomm beach areas. + - maptweak: Fixed issues with SC centcomm z that prevented it from loading. + - maptweak: Rework of xenobio/xenoflora outpost on SC planetside main map. + - rscadd: Added Wilderness z-level for SC, teleportation transition to it may be + bugged. + - rscadd: Cable ender file added. Allows power transfer between z-levels. + - tweak: Southern cross files for areas and defines in relation to z-level work. +2017-11-06: + Atermonera: + - bugfix: AI's can speak local rootspeak. + - rscadd: Implements Virtual Reality. + Woodrat: + - rscadd: Added 'see down' in open spaces from Vore. + - rscadd: Added talking and visible messages upward through open space from Vore. + - rscadd: Added a Syndicate ID with all access (admin spawn only). + - tweak: Port of 'Syndicate id cards now listen for owner destruction' from Bay. +2017-11-29: + Anewbe: + - rscadd: FBPs are now affected by Radiation, it gives them ToxLoss. Wear your PPE. + - rscadd: FBPs can have ToxLoss decreased by going into a charger. + - rscadd: It is now possible to move FBPs and robots into chargers, via click+drag + or grabs. + Atermonera: + - bugfix: AI verbs are no longer hidden on the tabs. + - bugfix: Incapacitated mobs can no longer open your inventory and steal your gubbins. + MoondancerPony: + - bugfix: Fixed a mislabeled pulse pin on the microphone. + - bugfix: Fixed an issue with reference pins and multiplexers, and reference pins + in general. + PrismaticGynoid: + - tweak: Adjusts the amount of camera locations the AI can store from 10 to 30. +2018-01-12: + Atermonera: + - rscadd: Communicators now have a weather app. + - rscadd: Mobs in VR can switch between translucent and opaque forms. + Leshana: + - tweak: Examining construction frames shows which circuit board (if any) is installed. + - tweak: Convert the machinery controller to a StonedMC subsystem + MrStonedOne: + - rscadd: Added admin verb 'Display del() Log' displaying garabage collector statistics. + PrismaticGynoid: + - rscadd: Adds the ability to 'crawl' to an adjacent turf by click-dragging yourself + to it, after a delay. This can be used to move while unable to stand. You can + also do this with other movable objects, if you really wanted to. + - tweak: Conscious mobs lying on the ground can now buckle themselves to chairs/beds. + This includes people missing legs. +2018-01-25: + Anewbe: + - rscadd: Southern Cross Map is now live + Arokha: + - tweak: Remove borg hud items as they have normal huds as their sensor augs now, + and can see records with them. + Atermonera: + - rscadd: Communicators have a flashlight under the settings menu, functions as + the PDA one + - rscadd: Station-bound synthetics now have gps units + Cerebulon: + - rscadd: Added 19 food recipes from /tg/station + Leshana: + - soundadd: Sounds of Tesla engine lighting bolts + - imageadd: Sprites for grounding rod and Tesla coil + - imageadd: Sprites for lighting bolts + - rscadd: The Tesla Engine, Tesla Coils, and Grounding Rods + - rscadd: Wiki search URL is now configurable in config.txt + - rscadd: Breaker boxes can be constructed in game. + - bugfix: Construction of heat exchange pipes, vents, and scrubbers now works properly + again. + - tweak: Fix singularity energy balance so it is stable under normal operation. + - bugfix: Fix emitter beams and PA effects from being grav pulled or consumed. + - rscadd: Added the operating manual book for the Tesla Engine. + Mechoid: + - rscadd: Brains can be set to be a source of genetic information. + - rscadd: Promethean cores can be inserted into a cloning scanner to be cloned. + This gives them a worse modifier upon completion. + - rscadd: Promethean cores can now have chemicals added or removed from them. Base + for future slime cloner. + - rscadd: Species-based cloning sicknesses possible. + - spellcheck: Cyboernetic - > Cybernetic + Neerti: + - rscadd: Adds boats that can be ridden by multiple people, which use oars. Can + be crafted with large amounts of wooden planks. + - rscadd: Adds autopilot functionality to Southern Cross Shuttle One and Shuttle + Two. + - rscadd: Adds ability to rename certain shuttles on the Southern Cross. + - rscadd: Areas about to be occupied by a shuttle will display a visual warning, + of a bunch of circles growing over five seconds. + SunnyDaff: + - rscadd: Added new food items. + - rscadd: Added Cider. + - rscadd: Added Apple Juice to bar vending machine. + - bugfix: Fixed Vodka recipe. + - bugfix: Fixed Apple and Carrot cake recipes + - tweak: Changed Cake recipes to not include fruit juice + ZeroBits: + - rscadd: Added the ability to have multiple loadouts per character. + battlefieldCommander: + - rscadd: Adds a communicator watch, a variant of the communicator you can wear + on your wrist. + - rscadd: Replaces the communicator in the loadout with a communicator selection. + Choose either the traditional communicator, or the new commwatch. +2018-02-07: + Anewbe: + - tweak: Lessens the bomb, bio, and rad protection on the Explorer Suit. + - tweak: Replaces the Hunting Rifle cabinets with a Phase Pistol cabinet. Same general + purpose, shoot animals, kill animals. Shoot people, get laughed at. + - tweak: Gloves are generally less protective from shocks. + - tweak: Budget Insulated Gloves will almost always be better than any other non-insulated + glove. + - tweak: Hyposprays and autoinjectors now have a delay on use when the target is + conscious and not in Help Intent. + - bugfix: You need a parachute to survive atmospheric reentry. Closets, mechs, and + other impromptu parachutes will not longer prevent splatting. + Atermonera: + - tweak: ID computer can set command secretary and IAA access + - tweak: Command secretary has keycard auth. access + Cerebulon: + - rscadd: Added toggleable 'Open' sign to bar hallway so you can tell if it's open + without walking inside. + Mechoid: + - rscadd: Adds material girders. + - tweak: Girder decon time is now partially dependant on material. Stronger girders + take slightly longer. + - tweak: Wall girders are now under the integrity-based construction listing. Material-Name + Wall Girder. + - rscadd: Explosive-resistant girders in walls have a chance to survive as an unanchored + girder, if their wall is destroyed. + - rscadd: Radioactive girders affect the completed wall's radioactivity. + SunnyDaff: + - rscadd: Added new food items. + - rscadd: Added Onions. + - tweak: Changed Apple and Lemon Sprite +2018-02-10: + Atermonera: + - tweak: Ethylredoxrazine actively removes alcohol from the stomach and bloodstream + - tweak: GPS units won't report the exact location of other GPS units, just range + and approximate direction + - tweak: POI gps units won't give any information about the POI, merely its location + - rscadd: Adds EMP mines. + Cerebulon: + - rscadd: Adds antibiotic resistance chance to viruses, capped at 90% without admin + edits. + - rscadd: Adds adminspawned non-transmittable viruses + - rscadd: Adds several new disease symptoms + - tweak: Vomit is now a disease vector + - tweak: Viruses have a lower chance of curing themselves without medical intervention + - bugfix: Virus food no longer infinitely generates in incubator beakers + - bugfix: Xenomorphs and supernatural begins can no longer catch the flu + Hubblenaut: + - tweak: If a cycling airlock is already near the target pressure, pressing the + buttons will toggle the doors instead of making it reenter the cycle process. + Leshana and mustafakalash: + - rscadd: A new 'planetary' mode for airlocks which makes them purge the chamber + contents to the exterior atmosphere before filling with clean air, and vice + versa. + MistyLuminescence: + - tweak: Mines are now very, /very/ dangerous to step on (so don't do that). You + can disarm them with a multitool and wirecutters - ping is good, beep is bad + - or by shooting or exploding them from a distance. Be careful! + Woodrat: + - rscadd: Shaft Miner, Search & Rescue, Explorer can now select webbing vests and + pouches from the loadout. + - bugfix: Allow utility uniforms to roll up their sleeves. + - rscadd: Shuttle upgraded with enviroment sensors and shuttle doors that can be + detected from the shuttle console. + - rscadd: secure gun cabinets in the hangar control rooms. Locked to armory, explorer, + and pilot access. + - maptweak: Redesign of medical surgery rooms, replacement of the closets with wall + closets. + - bugfix: Multiple map bugfixes including distro and scrubber lines to deck 3. +2018-02-17: + Anewbe: + - rscadd: Added a random mine spawner, for use in PoIs. Replaces mines in PoIs with + the random spawner. + - rscadd: Mines now give a visible message when they go off. + - tweak: Land mines on the ground can no longer be told apart from one another, + to prevent gaming the system. + - bugfix: Hovering mobs (viscerators, drones, Poly, carp) no longer set off land + mines. + - tweak: Arming a land mine now takes concentration. If you move, it will boom. + - tweak: RINGS AND CERTAIN GLOVES INCREASE PUNCHING DAMAGE. + - tweak: BRASS KNUCKLES HAVE BEEN TURNED INTO GLOVES AND REBALANCED. THEY DO LESS + DAMAGE PER HIT BECAUSE IT'S HARD TO DISARM A PAIR OF GLOVES. + - rscadd: Cyborg Chargers now decrease radiation on FBPs. + - tweak: Falling one floor now does a lot less damage, on average. + - bugfix: Falling one floor in a Mech no longer hurts the occupant. + PrismaticGynoid: + - rscadd: A lot more machines can now be moved with a wrench, mostly kitchen, hydroponics, + and virology machines. + - tweak: Changed department ponchos to be open to any job, just like department + jackets. + Schnayy: + - rscadd: Adds bouquets. Can be ordered via 'gift crate' in cargo. + - rscadd: Adds fake bouquets for the cheap. Can currently be won from arcade machines. + - rscadd: Adds chocolate heart-shaped boxes. Can be ordered via 'gift crate' in + cargo. + - rscadd: Adds gift cards with four cover variations. Function like paper. Can be + ordered via 'gift crate' in cargo. + battlefieldCommander: + - rscadd: Added packed snow brick material. Craft it using snow piles. + - recadd: Added snow girders and igloo walls. Craft them using snow bricks. + - rscadd: Added various snowmen. Craft them using snow piles. Punch 'em to destroy. +2018-02-21: + Anewbe: + - rscadd: Headsets for jobs that spend a lot of time planetside can now function + as local radios when comms are down. + - rscadd: Most headsets now have on-mob sprites. + - rscadd: Added a Planetside Gun Permit item, specifying permission to possess a + firearm on the planet's surface. Explorers should spawn with these by default, + and a further two can be found in their gun locker. + - rscadd: Prometheans now react to water. Being soaked will stop their regen and + deal minor toxin damage. Drinking or being injected with water will deal slightly + more toxin damage. + - bugfix: Suit Coolers now properly cool FBPs in slightly burning rooms. If it gets + too hot for your suit, you're still dead. + Leshana: + - rscadd: Makes electrochromatic glass buildable and programmable in game. Use + cable and multitool. + Woodrat: + - rscadd: Additions of 6 new POIs for the cave area. +2018-02-22: + Anewbe: + - rscadd: Added Warden and HoS helmets. + - tweak: Clothing items must be click+dragged to be unequipped. A lot of them already + had this, but the system is now standardized. + - tweak: Accessories now apply slowdown to what they're attached to. + - tweak: Certain items, notably Technomancer spells, no longer show up when you + examine the mob wearing them. + - tweak: Flashbangs confuse, instead of stunning. + Atermonera: + - tweak: GPS units are generally more useful, providing both coordinate locations + and, so long as you're on the same Z level, direction with x-y component distances, + to 1m accuracy + - rscadd: Added a halogen counter tool, functions as the PDA function. + - tweak: Analyzers can now analyze gas containers, in addition to providing atmosphere + readouts, as the PDA gas scanner function. + - rscadd: Added umbrellas. + battlefieldCommander: + - rscadd: Added fireplaces which operate similarly to bonfires. + - bugfix: Fixed an oversight that allowed for an in-between state in bonfires where + the fire would mysteriously go out after adding wood. + - rscadd: Added blue sifwood floor tiles. + - bugfix: Fixed blue carpet, now known as teal carpet + - rscadd: Added the ability to dig up tree stumps with a shovel. +2018-02-25: + Anewbe: + - tweak: Splinted bodyparts act broken 30% of the time. + - tweak: Splinted legs still slow you down like broken ones. + Leshana: + - rscadd: Added a client preference setting for wether Hotkeys Mode should be enabled + or disabled by default. + - bugfix: CTRL+NUMPAD8 while playing a robot won't runtime anymore. + - tweak: Grounding rods act intuitively, only having an expanded lighting catch + area when anchored. + Nerezza: + - bugfix: Fixes not being able to install the different carpet colors. Finally. + - bugfix: Removes certain unusable duplicate stacks of tiles from the code. + Schnayy: + - rscadd: Added Gilthari Luxury Champagne. Drink responsibly. + - rscadd: Added a singular AlliCo Baubles and Confectionaries vending machine in + the locker rooms. Dispenses a variety of gifts. + - rscdel: Removed hot drinks vendor from locker room. +2018-02-28: + Atermonera: + - rscadd: Adds umbrellas to the loadout, for 3 points. Colorable! + Nerezza: + - bugfix: Using tape (police/medical/engineering) on a hazard shutter now tapes + the hazard shutter instead of trying to open the hazard shutter. + - rscadd: Added /tg/-style floor tile swapping. Equip crowbar/screwdriver in offhand + and click the floor tiles you want to directly swap with a stack of new floor + tiles (like teal carpet). + Woodrat: + - maptweak: Heavy rework of the wilderness, minor adjustments to mining and outpost + z-levels. To get to the wilderness you now have to travel through the mine z-level + to do so, follow the green flagged path. Through the mine. + - tweak: Shuttles can now land at a site near the enterance to the wilderness. Removal + of the mine shuttle landing pad to move to the wilderness. + - rscadd: New addition of warning sign, thanks to Schnayy. + battlefieldCommander: + - rscadd: Added craftable joints. Dry something (ideally ambrosia) on the drying + rack and apply it to a rolling paper to create a joint you can smoke. + - rscadd: Added a box of rolling papers to the cigarette vending machine. +2018-03-05: + Anewbe: + - rscdel: Removes Command Liaison, Bridge Secretary, Hydroponicist, Prospector, + Sanitation Technician, Professor, and Historian alt-titles. + - rscdel: Removed universal translators from the loadout. + - rscadd: RnD can print earpiece translators. + Mechoid: + - rscadd: Add a surgical operation for repairing the brainstem of a decapitated + individual. + - rscadd: Add a permanent modifier for frankensteining individuals. + Nerezza: + - rscadd: Package bomb detonators can be re-bound by hitting the new package bomb + with them. + PrismaticGynoid: + - bugfix: The succumb verb will now work on species that can't take oxyloss damage. +2018-03-15: + Anewbe: + - tweak: Pills and ingested reagents actually process at half speed, rather than + just ignoring half of the reagents. + - rscdel: Robotic limbs now need internal repair at 30 composite damage, rather + than 30 of burn or brute. + - tweak: Syringes now inject their entire payload with one click, but in 5 unit + increments. There is a delay in between each of these. + - rscadd: Assisted robotic organs (internals, eyes) are less vulnerable to EMP. + - rscdel: Lifelike robotic organs (currently VeyMed) are more vulnerable to EMP. + Cerebulon: + - rscadd: Added Akhani language for Tajaran. + - spellcheck: Fixed incorrect singular form of Tajaran in several places. + MisterLayne: + - rscadd: Added a version of the ED-209 called the ED-CLN. It is a more efficient + Cleanbot. + - bugfix: Reinforced snowballs can now actually be made in a reasonable time limit. + Nerezza: + - tweak: Broken APCs can be bashed open with slightly smaller objects now. This + means wrenches are acceptable, no need to hunt down a fire extinguisher. + - rscdel: EVA rigsuit/hardsuit no longer holds toolboxes in suit storage since those + have been a volume inventory for some time now. RIP ghetto satchel. + - rsctweak: CE's rigsuit/hardsuit no longer holds pickaxes and ore satchels, but + can now hold inflateables. + - bugfix: Retracting rigsuit/hardsuit helmets with no valid mask equipped now disables + internals. + - bugfix: Offline rigsuits/hardsuits are no longer considered valid air supplies + by the internals button. Before, your internals would instantly shut off before + you could get a breath out of the rigsuit. Now, the internals button will look + for a different tank instead. + - rscadd: Tajaran now get to keep their tails when they wear the EVA, RD, or Industrial + rigsuits/hardsuits. Unathi sprites to come soon! + - bugfix: Sifwood floor tiles now correctly use their double-stacked icon instead + of disappearing. + Woodrat: + - rscadd: Added in a weapons crate for explorers that has bolt action rifles. + - rscadd: Weapon powercells can be ordered from cargo (security access crate). + - tweak: Automatic weapons crate split into two crates now. One for SMGs one for + the rifle. Minor adjustments to other munitions and security supply packs as + well. + - rscadd: The automatic weapons ammo crate has also been split. + - tweak: Names of the crates for the munitions and security catogory supply packs + have been adjusted slightly. In certain places contents also adjusted. + - bugfix: Holoplant now comes in a crate. +2018-04-01: + Anewbe: + - tweak: Medical Doctors and EMTs spawn with white medkits. + Cameron653: + - rscadd: Adds a xenoarch excavation tool, craftable in R&D. Allows depth selection + of 1-30 + - rscadd: Adds a xenoarch multitool, craftable in R&D. Has xenoarch counter, measure + tool, and depth scanner all in one. + Heroman3003: + - bugfix: Attaching exosuit equipment with a gripper correctly removes it from the + gripper. + - bugfix: Engineering gripper can no longer duplicate frame parts. + MistyLuminescence: + - tweak: Wallets can now hold a wider variety of objects. + Woodrat: + - rscadd: Added two 44 cal revolvers. + - rscadd: Added 44 cal speedloader for revolvers. + - rscadd: Added 44 cal rubber rounds. + - bugfix: Fixed the icon_state for 'structure/plushie/carp' and the random first + aid kit spawner. + - rscadd: Added a random chance tool spawn for power tools (most of the time it + should still just be regular tools). + - tweak: Adjusted the spawn rate of medkits, combat medkits should be more rare. + - tweak: Cash split into its own loot item. + - tweak: Plushies split into large and small plushies. + - rscadd: All the extra plushie spawns added to the random plushie spawn. + - tweak: Eightball and conch shell added to toy spawns. + - rscadd: Added spawn points for the large plushies, cash, and the power tools to + the station. + battlefieldCommander: + - rscadd: Added permanent markers, an alternative to crayons. + - tweak: The chemistry recipe for paint now uses marker ink instead of crayon dust. + - rscdel: Removed crayon boxes from the map. They can still be ordered from cargo + in case you need a snack. +2018-04-19: + Anewbe: + - rscdel: AOOC is no longer available to traitors, renegades, and thugs. + Woodrat: + - bugfix: Flashers in brig cells should work now, extra floor flash in communal + brig to deal with crims. + - bugfix: Improper access, SMES rooms. + - bugfix: Trader start point is no longer dark. + - rscadd: Medical Vendor Plus has more advanced burn and trauma kits. + - tweak: Cell 1 and 2 in the brig can now be accessed by detectives. + - tweak: Additional r-walls next to the engine room to help with rads. + - tweak: Floor decals in a couple areas. + - tweak: RD office now has its telescreen back. + lorwp: + - bugfix: Pilot headsets can now fallback to shortwave radio +2018-04-28: + Anewbe: + - tweak: Communicator visibility (the thing that lets people see your communicator + when you're a ghost) is now saved to character slots, rather than globally. + - tweak: Jobs that are set to Never on your preferences are hidden by default on + the Late Join selection menu. There is a button to reveal them. + Arokha: + - bugfix: Nerve reattaching surgery now works correctly. (Hemostat on limb) + - bugfix: Limbs dropped by people have appropriate flags. + Atermonera: + - tweak: Human examine code has received a major refactor. If you encounter unusual + behaviour that seems wrong, please report it. + Cerebulon: + - bugfix: Pumpkins are no longer green ovals. They now grow on actual vines. + schnayy: + - bugfix: Space carp plushies now load sprites and are all selectable from loadout. + - tweak: Adds several newer plushies to the gift vendor as well as adjusting cost + of gift vendor's contents. +2018-05-01: + Mechoid: + - tweak: Skrell can be affected by flashbangs from a range of 8 tiles without protection. + - tweak: Promethean regen consumes additional nutrition. + - tweak: Many healing chemicals are less effective on Prometheans due to the natural + regeneration. + - tweak: Lots of other Promethean tweaks. No seriously, I'm not putting the list + here. + PrismaticGynoid: + - rscadd: Adds new skrell sprites to hardsuit helmets that were missing them. +2018-05-24: + Anewbe: + - bugfix: Moving items out of one's active hand cancels any zoom-in they may be + providing. + - tweak: Meteor events should be a lot less brutal. + Arokha: + - rscadd: Added a 'Client FPS' setting in the Global tab of character setup for + adjusting the FPS to your preference. + - rscadd: Added a 'fake SSAO' toggle to Global in character setup, ported from /tg/. + Looks like drop shadows on (almost) everything. + Atermonera: + - bugfix: Laptops no longer consume IDs indefinitely. + Mechoid: + - rsctweak: Promethean limbs store more damage. + - rsctweak: Promethean limbs, in addition to normal severing rules, have a higher + chance to be splattered or ashed once they reach maximum damage. + - rscadd: Limbs can now spread their damage to neighbors with the spread_dam var, + when reaching max damage. + PrismaticGynoid: + - rscadd: Added laser pointers. Available in your loadout, and printed and upgraded + by R&D. + lorwp: + - tweak: Search and Rescue can now add certain medical restricted items to their + loadouts +2018-06-08: + Anewbe: + - tweak: Merc mobs in PoIs no longer drop gear. This is to help us balance the PoIs + that contain them, and by extension every other PoI. + - tweak: Merc mobs have been shuffled around in their PoIs. At some point, this + may actually be randomized, but for now, expect slightly different placements. + - rscadd: Adds a laser rifle and ion rifle version of the Merc mob, for variety. + - tweak: PoI turrets are lethal again, and will likely shoot crawlers. + - rscadd: Certain mobs, namely robots and mercs, now have some amount of armor. + - rscadd: Ranged mercs will now knife people when cornered, rather than punch them + really hard. + Mechoid: + - rscadd: Added some background things for Events. + - bugfix: Ion rifles hit the correct 3x3 instead of 5x5 + - rscadd: Seed Storage Vendors are now hackable. Can choose from various lists of + concerning plants. +2018-06-21: + Anewbe: + - rscadd: Added a biomass reagent, made from protein, sugar, and phoron. + - tweak: Cloners and bioprinters now use the biomass reagent. Both can be refilled + or have their capacity increased by replacing the bottles they spawn with. + - experiment: Mapped in a bioprinter, for further testing. + - rscadd: Adds the ability to make robolimb brands more or less vulnerable to brute + or burn. + - rscdel: Makes VeyMed limbs more vulnerable to brute and burn. + Mechoid: + - rscadd: Allow AIs to create and take control of mindless drones from fabricators. +2018-07-12: + Anewbe: + - bugfix: Technomancer Apportation now properly checks for range and scepter, again. +2018-07-14: + Anewbe: + - tweak: Certain languages now require assistance for a species to speak, but not + understand, much like EAL. + - tweak: Alai can only be `spoken` by Taj and Teshari. + - rscadd: Adds a voicebox/larynx organ. Its only purpose at the moment is to assist + in speaking certain langauges. + - tweak: Language implants, like the EAL implant, now affect the voicebox organ, + instead of being a freefloating implant. + - rscadd: Adds a language implant for Common Skrellian. + Atermonera: + - rscadd: Steel sheets can be used to construct Roofing Tiles + - rscadd: Roofing tiles can be used on tiles under open spaces or space tiles in + multiZ maps to place a lattice and plating on the space above + - rscadd: Roofing tiles can be used on outdoor turfs to make them indoors + - rscadd: Both functions work together on multiZ maps with outdoor turfs, only one + roofing tile is used per tile roofed. + Mechoid: + - rscadd: Adds a new surgical procedure for fixing brute and burn on limbs. +2018-08-01: + KasparoVv: + - rscadd: You can now change the order of your body markings at character creation. + Shift markings up or down layers at will to design the character you've always + wanted, more easily than ever before. + Mechoid: + - rscadd: Added the Gigaphone. Currently unused. + Mewchild: + - rscadd: Ports several AI core sprites from ages and places past + PrismaticGynoid: + - rscadd: Adds four types of colorblindness to the traits in the setup menu. + - tweak: pAIs can now be picked up while unfolded, and can display more than 9 emotions. +2018-08-08: + Atermonera: + - rscadd: The supply controller has been refactored and shifted to nanoUI. + - rscadd: The ordering and control consoles are now generally upgraded in terms + of information and options. + Mechoid: + - rsctweak: Hallucinations are no longer only Pun Pun. + Neerti: + - soundadd: Adds new ambience sounds for various areas, especially on the surface + of Sif. + - sounddel: Removes low and high-pitched droning from available ambience. Consider + trying ambience again if you had turned it off to avoid those. +2018-08-28: + Mechoid: + - rscadd: Mechs now have multiple equipment slot types, and more slots in total + for greater customization. + - rscadd: A large number of Mech weapon modules and their jury rigged versions. +2018-09-22: + Mechoid: + - rscadd: Adds two vehicles to Robotics and Cargo, the Quad and Spacebike. + Poojawa: + - rscadd: Ported /vg/ instrument code, improved the UI of instruments. + - rscadd: Added a client side pref that mutes instruments being played for you. + Woodrat: + - rscadd: Adds two rig suits. Military Rig suit from Bay and PMC rigsuit + - rscadd: Adds four exploration and pilot voidsuits (alternate sprites by Naidh) + - rscadd: Adds exploration and pilot voidsuits +2018-10-13: + Anewbe: + - bugfix: You can no longer have ALL of your blood punched out. + - bugfix: Haemophiliacs will no longer spontaneously have ALL of their blood go + missing from ~90%. + - rscadd: Emitters can be locked while off, too. + - rscadd: Graves are now a thing in the code, will need some testing and probably + more work before they get more common. + Mechoid: + - rscadd: Added a RIG customization kit. + - tweak: RIGs now use a var called suit_state to determine the basis for their component + icons, rather than the rig's icon state. +2018-11-30: + Cerebulon: + - rscadd: Added 1000+ surnames and 1200+ forenames from various world cultures to + human namelists + LBnesquik: + - rscadd: Replaced the plant clippers with a reskinned pair of hedgetrimmers. + Lbnesquik: + - rscadd: 'General biogenerator improvements:' + - rscadd: Added feedback noise to the processing. + - rscadd: Allow for cream dispensing. + - rscadd: Allow for plant bag creation. + - rscadd: Allow for 5 units of meat to be dispensed at once. + - rscadd: Allow for 5 units of liquids to be dispensed at once totalling 50u. + - rscadd: Add and allow the creation of larger plant bags for easier ferrying of + plants.. + - rscadd: Add a description to the machine itself. + Mechoid: + - tweak: Prometheans are no longer murdered by blood, and instead process it like + a weak nutrient. Will slow the regeneration of toxins due to water content. + - rscadd: Ctrl clicking a Rapid Service Fabricator when held will allow you to choose + the container it deploys. + - bugfix: The Rapid Service Fabricator's icon is correctly set. + Neerti: + - experiment: Rewrites the AI system for mobs. It should be more responsive and + robust. Some mobs have special AIs which can do certain things like kiting, + following you on a lark, or telling you to go away before shooting you. + - tweak: Rewrites literally every 'simple_animal' mob into new, shinier, and hopefully + more interesting 'simple_mob' mobs, some with new mechanics, like spiders, fake + mechas, and hivebots. There are so many changes that it wouldn't be possible + to list them here. + - rscadd: RCDs can now build grilles and windows, with a new mode. They can also + finish walls when used on girders on floor/wall mode. + - rscadd: Adds various new RCDs that are not obtainable at the moment. + Woodrat: + - rscadd: Xenoflora and Xenobio moved to station, first deck. + - bugfix: Minor bugfixes including mislabeled lockers in robotics and floor decals. + kartagrafi: + - rscadd: Adds new hairstyle 'Sharp Ponytail' + - rscadd: Adds several new underwear - 'Binder', 'Strapless Binder', 'Longsleeve + Striped Shirt, Pink', 'Pink Wing Shirt', 'Pink and Black T-Shirt', 'Leggings' + - tweak: Changes name of 'Supernova' hairstyle to 'Glossy', and makes the sprite + somewhat neater + - bugfix: Fixes a hairstyle not appearing +2018-12-08: + Cerebulon: + - rscadd: 'Added 12 new loadout items plus colour variants: Utility pants, sleek + overalls, sari, modern wrap jacket, ascetic garb, asymmetrical jackets, cowled + vest, kamishimo, jingasa, maang tikka, thin-frame glasses, rimless glasses.' + Mechoid: + - rscadd: Research and Engineering borgs now have 'Circuit Grippers', used for constructing + and operating integrated circuit machinery. + - tweak: Grippers now allow interaction with their contents, by attacking the gripper + itself with an item when one is held. I.E., drawing from a beaker with a syringe. + - tweak: Grippers now show their held item's examine information when examined. + Tab information added. + - tweak: Cyborgs can now interact with integrated circuit printers and machines + when adjacent to them. + - tweak: Multitools now have a menu to switch modes between standard use and integrated + circuit reference scanning. Antag multi-tools untouched for now. + - bugfix: Integrated circuit printer now respects adjacency, if it is not set to + debug. +2019-01-06: + Mechoid: + - bugfix: Slimes now respect slime colors as their faction when dealing with other + slimes. + - tweak: Taser and Security xeno-taser shot count dropped from 10 to 5. + Neerti: + - soundadd: Adds a lot of sounds, and the code to let them loop seemlessly. Things + made audible now include the microwave, deep fryer, showers, the supermatter + when it's active, the TEGs when active, geiger counters, and severe weather + on Sif. The weather has different sounds for when indoors and when outdoors. + - tweak: Weather sounds and the supermatter hum can be disabled in your preferences. + - rscadd: Adds a few more weather types that can only be activated by admin powers, + such as ash storms and fallout. + Novacat: + - tweak: All emergency air tanks now spawn at full capacity. +2019-01-16: + Anewbe: + - tweak: Adds a Gibberish language that gets used when you goof on a language key. + - bugfix: Voice changing masks no longer give up when you put on a hardsuit. + - tweak: Mask voice changers start on. + - tweak: Mask voice changers that do not have a set voice will now default to your + worn ID's name. + - tweak: Mask voice changers now have a verb to reset their name. + - tweak: Eguns take 4 shots to stun, rather than 3. + Atermonera: + - rscadd: Clothing now has pressure protection variables, that set lower and upper + pressure bounds within which they will protect you from pressure-based harm. + - rscadd: Protection falls off when exceeding the pressure limits from 100% protection + at the boundary to 0% at 10% in excess (above the max or below the min) boundary. + - tweak: Currently, only hat and suit slots are checked for this protection (No + change). + - tweak: Anomaly suits (The orange ones) now offer limited pressure protection in + case anomalies start making or draining air. + - bugfix: Firesuits are no longer spaceproof, but still offer protection against + the high pressures of fire. + Cerebulon: + - rscadd: Added customizable religious icons to the chaplain's office. + - rscadd: Added black and white candles. + - tweak: Updated religion lists in character setup to be lore friendly. +2019-01-25: + Anewbe: + - tweak: The hyphen (-) is no longer a default language key, as people use it to + represent other things. If you are still having issues with Gibberish, reset + your language keys, or at least make sure they don't include any characters + you regularly start speech with. + Atermonera: + - bugfix: Stasis bags don't squish organics with high pressure when organics try + to seek shelter from flesh wounds. + - tweak: Body- and stasis bags can be tread upon when open. + - bugfix: Suit coolers and rigsuit coolers now protect FBPs against vacuum again. + - bugfix: Bot sound files have been decrypted following a bizarre ransomware attack + by Boiling Point remnants. Securitrons, cleanbots, et al should no longer spew + gibberish. + Cerebulon: + - rscadd: Added teshari hardsuit sprites. +2019-02-01: + Anewbe: + - tweak: Pilot consoles now require pilot access to use. + Atermonera: + - bugfix: Powersink drains have been unclogged and work once more + Mechoid: + - bugfix: Oversight regarding Changeling revive not removing restraints fixed. + - tweak: Straight Jackets can now be resisted out of in 8 minutes, or as low as + 5 depending on species attacks. Shredding or hulked humans will break out in + 20 seconds, destroying the jacket. + - tweak: Xenomorph plasma vessels now regenerate phoron passively, at an incredibly + slow rate. Can be accelerated by consuming liquid phoron. + - tweak: Xenomorph organs now give their respective abilities when implanted. + - tweak: Virtual Reality pods cleaned up. + - rscadd: Replicant organs added, versions of many organs that do not reject in + their host. Two currently exist that give special passives. +2019-02-07: + Atermonera: + - bugfix: Stairs have been straightened and now connect to both the heavens and + hells, formerly just the hells. + Elgeonmb: + - rscadd: Added the Zaddat species, voidsuit-clad fragile bug people. Whitelist + applications will be available at a later date. + - rscadd: Added glucose hypos to the SWEATMAX vendors and a few other places thoughout + the station. + - rscadd: Zaddat equipment is now available through cargo. + - rscadd: Some new, very very chuuni accessories to play with; the half cape, the + full cape, and the sash + - tweak: Most accessories can now fit on suits. + - rscdel: Dionaea and vox can no longer use station rigs. + Mechoid: + - tweak: Flashes now actually run the risk of burning out. + - tweak: Flashes that burn out can be repaired after approximately 40 seconds and + with some luck, via a screwdriver. + - tweak: Cyborg flashes use charge only, and do not have the 10 flash limit. They + instead begin burning large amounts of charge. + - tweak: Flashes use miniscule charge in addition to their capacitor burn-out, totalling + 12 uses, taking 4 to down a human. They can be charged within a standard charger. +2019-03-04: + Anewbe: + - bugfix: Vedahq is now properly locked behind a whitelist. + - tweak: Headgibbing is now determined by config + - tweak: Promethean regeneration has been toned down. It will no longer provide + healing if the Promethean is wet, too hungry, too hot, or too cold. + - tweak: Prometheans are no longer shock resistant. It should now be more possible + to catch them alive. + - tweak: Promethean body temperature is now the default room temperature. They also + hit cold_level_2 at a higher temperature. + Atermonera: + - bugfix: Rigsuits have been resupplied following a mass-recall after a number of + suits were reported to have defective pressure-sealant mechanisms. The new sealant + mechanisms have been thoroughly tested and should be less prone to failure. + Mechoid: + - tweak: Tweaked Respiro- Cordra- Gastiro- and Hepanephro- Daxons to be more effective + with dealing with the side-effects of damaged organs. + kartagrafi: + - rscadd: 'Adds several clothing items to loadout such as: Nock masks, cowls and + robes.' +2019-04-17: + Anewbe: + - rscadd: The Subspace Jammer traitor item now lasts about 10 minutes. It now blocks + signalers from sending or receiving, and also obscures suit sensors around it. + N3X15 (MistyLuminescence): + - tweak: Departmental winter coats can now hold the same items as their standard + departmental suit items - labcoats, hazard vests, body armor, aprons, etc. + Neerti: + - tweak: Removes ability for AI to print and inhabit maintenance and construction + drones. This has been replaced with a system which allows for AIs to inhabit + special cyborg shells, called AI Shells, which are built with a new MMI type + in Robotics. Most of the regular cyborg mechanics applies to AI Shells. + Novacat: + - rscadd: Adds new status displays for all alert levels + - rscadd: Adds yellow, violet, and orange alert levels + - rscadd: Added Stasis Cages, which allows safe transport of mobs. + PrismaticGynoid: + - rscadd: Adds the ability to copy a character slot onto another one, allowing for + easier rearranging of characters, or wiping characters by copying empty slots. + - rscadd: Adds three new crashed escape pod PoIs. + Woodrat: + - tweak: Arrivals dock should not stay locked shut + - bugfix: Two windoors in xenobio stationside lacking access requirements + mistyLuminescence: + - rscadd: Lays the foundation for RIGs to be worn on the belt slot. Doesn't apply + to any RIGs currently, unless VV'd, but stay tuned! + - tweak: Large autoinjectors are now scannable and syringeable again, just like + they used to be. Unidentified autoinjectors still aren't, unless you ID them + first. + - rscadd: Adds beakers to the hydroponics lockers and NutriMax vendors. + - tweak: More jobs can now take certain items in the loadout. + - rscadd: Adds departmental turtlenecks, available in department wardrobes or the + loadout selection. Look good... in space. +2019-04-26: + Heroman3003: + - rscadd: Allows voidsuits to have parts attached and removed while held in hand + (but still not when worn). + - tweak: Syringes will now immediately inject 5 units per injection into reagent + containers. Does not change how injecting mobs work + - tweak: Tape rolls can now be used on tiles with directional windows as long as + they don't directly obstruct them. + Mechoid: + - rscadd: Reagents can now have a list of organs specified to slow their processing. + - rscadd: Reagents now process in the bloodstream at a rate determined by current + pulse. No pulse, for any reason, will cause slightly slower processing if your + species has a heart. + - rscadd: The heart organ determines the 'standard pulse' if the species has one. + - rscadd: Modifiers can set pulse directly, or shift it. + - rscadd: Adds Robobags and Corp-Tags to Robotics. + - rscadd: Re-adds the Space Worm with New and Improved [Doesn't Break The Universe] + logic. + - rscadd: Sterilizine now hurts slimes, similar to water. + N3X15: + - bugfix: Cyborgs can now use ladders regardless of whether they have a tool enabled + or not. + Neerti: + - rscadd: During severe weather such as storms and blizzards, wind can cause you + to move slower or faster in specific directions. + - rscadd: Weather application in the communicator displays wind direction and severity. + - rscdel: Holding umbrellas while in a storm no longer stuns you. + chaoko99: + - rscadd: Ore bags will automatically pick up items when held, belted, or pocketed, + and automatically deposit ore in boxes if one is being pulled. +2019-05-06: + Mechoid: + - rscadd: Added fishing mechanics, and fishing gear. + - tweak: Cloth can make normal cloth things. + Novacat: + - rscadd: Ports Bay code to allow hiding accessories when jumpsuits are rolled down/sleeve + rolled. + - rscadd: Ports medals and ribbons from SEV Torch. + - rscadd: Ports initial infrastructure for modular computers from Baystation. + - rscadd: Cameras now have a slight static when viewing through them. + - rscadd: Adds Digital Warrant Program, to set warrants. Comes with a device. + - rscadd: Adds Supermatter Monitor program. + - tweak: Chemistry processes instantly again. + - tweak: Nanoui sends stuff even after client connect. + - tweak: Shortwave radios now can transmit across connected Z levels. + - tweak: Relays on moving platforms (shuttles) will now function. +2019-06-04: + Chaoko99: + - tweak: The medibot's minimum configurable threshhold has been lowered to 0, from + 5. Perfect for silly-billies coming into medical with 2 brute boo boos, thanks + to accidentally throwing something at themselves or.. something. + Heroman3003: + - tweak: Restricts Alarm Monitor modular computer program to engineering access. + - tweak: Removed access to departmental networks on camera modular computer program + for average people. + - rscadd: Added access to full network on camera modular computer program for heads. + Mechoid: + - tweak: Borers can speak through nearby mobs if they have a sufficient build-up + of chemicals. + - tweak: Borers have a max chemical volume. + - rscadd: The Sakimm, Frostfly, Glitterfly, River Leech, Crystal-Feathered Duck, + and Kururak are now able to be used on the map and PoIs. + - tweak: Glass jars can now hold glitterflies, river leeches, and frostflies. + - tweak: Glass jars now respect mobs that exist over the lighting plane, adding + a special overlay visible when on the ground. + Nalarac: + - bugfix: Closed all bugs on tracker that are no longer relevant or a bug. + Novacat: + - bugfix: Attempts to fix the timer SS to be moore robust + - tweak: Fixes bug with custom laptops. + - tweak: Raises cost of the elite model to 7 loadout points. + chaoko99: + - rscadd: Adds the clientside 'ping' and 'reconnect' commands to the file menu. + mistyLuminescence: + - bugfix: Prone people can no longer interact with an empty hand. + - bugfix: Two-handed items are now correctly unwielded when the user's offhand is + severed. + - bugfix: Mecha syringe guns now respect pierceproof clothing. + - bugfix: Securitrons now correctly ignore attacks when disabled. + - bugfix: Rechargers now correctly benefit from upgraded capacitors. + - bugfix: Medical record laptops and detective TV camera consoles no longer turn + into regular consoles when de- and re-constructed. + - bugfix: Zaddat Shrouds now retain their base name when damaged, if the shroud + has been customized. + - rscadd: Adds the makeover kit to the traitor uplink for 5 TC, also available in + the Infiltrator bundle null crate in Cargo. Makeover kits can be used to change + the user's hair style and color, and eye color. + - bugfix: Random event timers now wait until the round starts to begin counting + down. +2019-06-23: + Mechoid: + - tweak: E-swords and Changeling arm-weapons can now block projectiles (again). + Novacat: + - rscadd: Adds greyscale pills, which are colored by their reagent + - rscadd: Adds colored pill bottles, most pre-spawned pill bottles are colored + - tweak: Prespawn pills and pill bottles have had their names simplified + - tweak: Attempts to make lighting less uniform + - tweak: Cleans up lighting code + TheFurryFeline: + - bugfix: Fixes infinite frame production for some machinery objects such as grounding + rods or exonet nodes. If there's no available circuit board to get, then don't + return anything when attempting deconstruction. Ported from Cit RP. Eliminates + 'Cannot read null.board_type' runtimes where they apply. + - tweak: Allows hydroponic machines to be unwrenched. + Woodrat: + - rscadd: Turrets and respective controls added to each teleporter room. + - tweak: Air tank on shuttles switched out with an air canister. + - tweak: Roundstart Tcomms SMES starts fully charged. + - tweak: Air tanks on station have the same amount in them as air canisters. + - tweak: Expanded atmospheric tanks to be 2 by 3 instead of 2 by 2. + - tweak: Wilderness Shuttle landing point shelter updated. + - tweak: Teleporter room hand tele can now spawn in one of 4 places. + - tweak: Halved the warm up time when the autopilot on the shuttles start at round + start from ten minutes to five and nine respectively. Should mean the first + shuttle will be taking from the outpost when the second shuttle leaves the station. + - tweak: Reduced transit time from 75 seconds with pilot, 150 seconds without to + 60 and 120 respectively. + - tweak: Amount of phoron in the outposts reduced. + - tweak: Ground Xenobio and Xenoflora torn down partially. + - rscdel: Reduction of the amount of steel and glass in engineering by half. + - rscdel: Reduction of the amount of steel and glass in EVA by half. + - bugfix: Fix for Dock 2 Transfer Shuttle airlock buttons not working. + - rscadd: Intercoms added to arrivals shuttle. + - rscadd: Modular computers scattered around the main station. + - rscadd: Elevator can be accessed at centcomm. + - bugfix: Fix Bridge Secretary Quarters tint. + - bugfix: Landmarks for Bluespacerift added. + - bugfix: Wilderness Shuttle landing sides should no longer shiskabob shuttles. + - bugfix: Modular Computers replacing wrong computers. + - bugfix: Chapel Mass Driver. + - bugfix: Merc Turrets function properly. + - bugfix: Map issues on the main outpost. + mistyLuminescence: + - tweak: Splints now work on all areas of the body. + - tweak: When the supermatter explodes, it now leaves behind a shattered plinth + that continues to emit radiation. You should probably get rid of it. + - bugfix: If you destroy the supermatter early (e.g. through admin deletion shenanigans), + it no longer irradiates everyone forever. + - bugfix: Welding lockers now actually updates their sprites properly. + - tweak: Every floor tile now has a minor (2%) chance to spawn with some dirt on + it. The Janitor now has a job again. + - tweak: Similarly, every Sif grass tile now has a minor (5%) chance to spawn with + some fancy eyebulb grass on it. It can be removed by clicking on it with harm + intent. + - rscadd: Adds cats-in-boxes, which can be activated (once) to spawn cats. There's + an orange tabby (Cargo cats) and a tuxedo (Runtime) version. + - bugfix: Fixes a material duplication exploit. +2019-07-07: + Heroman3003: + - rscadd: Broken components now have matter worth of 1000 steel units (half a sheet). + - tweak: Components dropped from loot piles will now use random proper sprite instead + of default placeholder. + mistyLuminescence: + - rscadd: 'Now available in Cargo: xenoarch technology (100 points) and tactical + light armor (75 points)!' + - rscadd: Tactical light armor is like regular tactical armor, but lighter (a full + set is 0.5 slowdown), warmer (protects against moderate snow) and a little less + protective. + - tweak: Leg guards can now store bootknives. + - tweak: Xenoarch brushes and pickaxes now have a reasonable force rating instead + of hitting like a truck. + - tweak: Adds the 'POI - ' prefix to the POI location names to make it easier for + ghosts to teleport to them- e.g. 'POI - Rocky2' rather than just 'Rocky2'. + - bugfix: Fixes a runtime caused by attempting to use a crew monitor console while + on an invalid Z-level. + - bugfix: Fixes GPSes not detecting other GPSes while on an invalid Z-level. Transit + Z is unaffected by this- no spying on other shuttles! +2019-07-19: + Nalarac: + - tweak: Add xenobio/xenobot to farmbots. + Woodrat: + - rscadd: Added a clotting kit to the Raider Shuttle. + - tweak: Swapped out the ai turrets for industrial turrets in the teleporter rooms. + - tweak: Adjusted access to the turret controls to heads of staff access, moved + them outside of the rooms. +2019-07-27: + Mechoid: + - rscadd: Pipes will now leak if their ends are unsealed. + - rscadd: Added stasis clamps, which act as valves that can be placed on existing + straight pipe segments. + - rscadd: Added automatic shutoff valves, which can automatically close if a leak + appears anywhere on their pipe network. + - rscadd: Added a Xenobio-compatible ED-209. + Nalarac: + - bugfix: Repairing bots (like Beepsky) works now. + - rscadd: Emagged bots can be repaired with proximity sensors. + - tweak: Combat mechs can punch more things. Mech punch sounds like juggernaut now + - tweak: Simple mobs can attack more things. + - bugfix: Cult pylons take damage from bullets. + - bugfix: Click delay added on attacking simple doors and security barricades. + - tweak: Material doors and barricades have different attacked sounds depending + if its metal, wood, or resin. + - tweak: Fixes ability of cyborg meson to see holes in ceiling. + - rscadd: Gives cyborgs a roofing synthesizer. + - tweak: Husking bodies requires more burn. + - rscadd: Ripley speed boost module that can be built in robotics. + - rscadd: Added transmission and capacitance SMES coils to supply console. + - rscadd: Adds laser tag turrets orderable from cargo. + - bugfix: Turrets will shoot people laying down if emagged or set to lethal. + - bugfix: Turrets can not be lethal if built with non-lethal weapon. + - bugfix: Alien pistol fire noise moved to projectile. Now the turret will use the + proper noise. + - tweak: Turrets will have new colors based on projectile used. + - tweak: Projectile lastertag is no more. It is now properly lasertag. + - bugfix: Integrated circuit printers no longer take fractions of a sheet. + Schnayy: + - tweak: Replaces Cindi Kate's and Boot Knives bar sign sprites with new ones. + - rscadd: 'Added new clothes to the loadout: cardigans, pleated skirt, lilac dress, + ugly Christmas sweater, flowery sweater, and red turtleneck.' +2019-07-30: + Atermonera: + - rscadd: Added a shutoff monitoring console, which displays the status and location + of all automatic shutoff valves. Currently mapped into the atmos monitoring + room and the auxiliary engineering room on deck 1. +2019-08-08: + Mechoid: + - rscadd: 'Adds two new integrated circuit components: an advanced Text to Speech, + and a Sign-Language reading camera.' + Nalarac: + - tweak: Lowered Chance of bots being emagged during ion storm. + - tweak: Changes space helmet cameras to be a verb instead of on toggling lights. + - rscadd: Toggling helmet camera resets user upon activation (so you can have a + new user). + - bugfix: Medibots will no longer attempt to heal FBPs. + - tweak: Heavy-duty cell chargers can be built and upgraded. + - bugfix: Cyborgs can upgrade rechargers now. + - bugfix: Security bots will smack attackers once more. + - tweak: Security bots will cable cuff people with hardsuit gauntlets instead of + stun-locking. + - tweak: Cut real time for security bots demanding surrender in half (6 seconds). + - tweak: Updates the Supermatter Engine Operating Manual. + mistyLuminescence: + - tweak: Serenity mech can now be built by robotics. +2019-08-21: + Atermonera: + - tweak: Atmospherics is now bigger, with more room for fun and sanity-destroying + spaghetti! + Mechoid: + - bugfix: Exosuits are now targetted by turrets again. + - tweak: Mining charge strength lowered, price increased. Can be upgraded through + R&D laser components. + - rscadd: Searing damage type added. Energy axe now uses searing damage. + - rscadd: Survey points added. Vendor added for explorer use. Costs are universally + 'lower' compared to the mining vendor due to the rarity of points. + - rscadd: Swiping an ID card on a cataloguer will transfer the points to the card. + - tweak: Any melee energy weapon can now be made to use a cell and charge. + - rscadd: Energy Axe prototype added to R&D. + - rscadd: Anomalous 'hunting trap' added to R&D. Useful for an initial stun on mobs + for explorer scanning. + - tweak: Beartraps now stun for a quarter of a second, so they are actually useful + again, due to resistability. + - rscadd: Emergency welding pack added. Incredibly slow, but requires no protection. + - rscadd: Random turf modifier added for mapping use. Random humanoid remains spawner + added for mapping use. + - rscadd: Plants under obj/structure/flora now can be made to be harvestable / forage-able. + - rscadd: Sif trees now occasionally have fruit containing useful microbes. Microbes + slow blood flow resulting in slower chemical absorption and blood loss. + - tweak: Flora by default are now under mobs, on the same layer as turf decals. + Flora can now also randomize their size, previously only codified in Sivian + trees. + - rscadd: Moss tendrils added to Sif, making eye-plants more rare. + - rscadd: Multiple PoIs added. 'Blue shuttle down' variant, 'UFO Frigate', multiple + geysers, cliffs, and two variants of SFR which take drastically different approaches + to the SFR standard. A vault was added, too. + - tweak: Vault PoIs are now in a template group. + - rscadd: Generic AI-controlled humanoids added. Subtype made for use on Sif, clad + in weak armor and temperature resistance, used as 'mindless clones'. + - rscadd: More artifice added. + - tweak: Fultons made to be [somewhat] sane. Now only useable planetside. + - tweak: Graviton Visor moved to R&D from the mining equipment vendor. Silver and + Diamond pickaxes removed. + - rscadd: Added multiple new organs for Prometheans. Removing them will cause them + to take large amounts of Toxloss untill they are Regenerated using the active + regeneration verb. + - rscadd: 'Organ: pneumatic network, a series of skeletal tubes with high pressure + used to move nutrients and waste.' + - rscadd: 'Organs: -regenesis systems, different ''networks'' of clumped cellular + matter that allow Prometheans to recover rapidly from small injuries. Large + or numerous injuries cause un-needed stress, and pain.' + - bugfix: Internal organs now properly add themselves to the internal organ-by-name + list, the one referenced 99.9% of the time. + - tweak: Active regeneration will now replace internal organs if they are nonexistant, + as it does for limbs. + Nalarac: + - bugfix: Mech cable layer works again. + - rscadd: Added setting for turrets to fire upon downed/laying targets. + TheFurryFeline: + - rscadd: New orange jumpsuit for loadout that doesn't get locked to tracking. + - tweak: Prison jumpsuit filepath changed accordingly and closets with obj updated. + Woodrat: + - tweak: Made the solgov uniforms use accessories for denoting department instead + of having several different sprites in the uniform dmi folder. + - tweak: Removed redundant solgov uniforms from uniform.dmi and moved the sprites + for the solgov uniforms to their own dmi. + - bugfix: Fixed storage vests and drop pouches disappearing when one rolls down + a uniform. +2019-09-07: + Heroman3003: + - tweak: Desk bells can now be picked up like normal items. + - tweak: Desk bells can now be deconstructed with a wrench while on the ground. + - tweak: Desk bells can now only be made out of steel. + MisterLayne: + - tweak: Material weapons that should not conduct, do not conduct. + - tweak: Glass shards now do damage when you attack with them, based on the type + of gloves you are wearing. + Novacat: + - rscadd: Ports MREs from Baystation, and adds a few supply crates with them to + cargo. + - rscadd: Adds liquidprotein rations, currently only found in emergency MREs. + Woodrat: + - rscadd: Mining vendor added to cargo foyer. + - rscadd: Explorer vendor added to research foyer. + - rscadd: Handful of more pipe clamps added to engineering (atmos monitoring and + EVA storage). + - tweak: Adjustment to layout of chapel mass driver. + chaoko99: + - rscadd: Ported Bay's stomach pump. +2019-12-16: + Atermonera: + - tweak: Ghosts can join as drones after only 5 minutes have passed, down from 10. + Mechoid: + - rscadd: Multiple new organs added. Humans and Skrell received spleens, all species + expected to have a stomach and intestine organ have them. + - tweak: Augment 'slots' organized. + - rscadd: Multiple augments added, currently only available in the Traitor / Mercenary + uplinks as easy-to-install implants. + - rscadd: Anesthetic / Oxygen pumps added. A mobile stabilizer has been added. All + three are available in Cargo. + - rscadd: Medical MRE rations added to Cargo. + - tweak: Roundstart implants now become invisible until being handled. + - rscadd: Neural implant added to loadout, makes the brain of the user count as + an assisted organ. Does not affect MMIs or their subtypes. + - rscadd: Bioprinters now unlock more organs upon being upgraded, once they pass + the anomalous tier, they unlock quite probably illegal organs. + - rscadd: Three medical exosuit components have been added. Crisis and Hazmat response + drones, and a mounted advanced medical analyzer. + - tweak: Medical analyzers now detect on-skin reagents. + - rscadd: Multiple new chemicals added, two used for upgrading bandage kits. + - rscadd: Brute-based medical stacks can be upgraded. + - rscadd: Crude brute kits can be made with cloth. + - tweak: Stacks can now pass their colors onto objects produced by them. (Colored + cloth, painted wood, etcetera.) + - rscadd: Two combined surgical tools added, for opening / closing ribcages and + skulls, and removing organs respectively. + - rscadd: Two dud implants added to the loadout. They do literally nothing but hurt + you if you're EMP'd. + - experiment: The larynx now controls the ability to speak. Damage to it will stop + you from being able to speak anything but non-verbal languages. + - tweak: Damage to the brain can now affect the pulse. + - tweak: Only the critical blood level causes toxin damage, meaning individuals + who die of standard oxygen loss from bloodloss can possibly be saved, but exsanguinated + persons are unlikely. + - tweak: Bioaugment.dm is now just augment.dm + - tweak: Robotic hearts do not have a pulse. + - tweak: Brain damage can now cause loss of breath. + - tweak: Paracetamol is now the precursor to tramadol. + - rscadd: Calcium is now in the chemical vendor. + Nalarac: + - bugfix: ED-209 and ED-CLN now properly accept names given with a pen. + - tweak: Removed maintenance access from ED-CLN to prevent maintenance wandering. + - tweak: Enables all channels on captain's and HoP's headset by default. + - bugfix: Power cells and device cells both properly show as empty when printed + from the protolathe and mech fabricator. + - tweak: Items with cells printed from the protolathe now start empty (e.g. phoron + pistol). + Novacat: + - rscadd: Adds a teshari plush. + PrismaticGynoid: + - tweak: You can now choose what type of graffiti or rune to draw when using crayons/markers. + TheFurryFeline: + - tweak: Tweaks desk lamps to output twice as much light as before to compensate + for a refactor. + - imageadd: Changes mouse plushie sprite to be cuter and not break the hearts of + rodent lovers. :3 Seriously, the change is from a dead mouse duplicate to one + of a brown mouse resting in place. + - imageadd: Add a new sprite for the orange jumpsuit. + - tweak: Refactors prison jumpsuits into its own thing, change a few files and dmis. + - bugfix: Fixes strange rocks size. Normal -> Small like it used to be before a + refactor. + Woodrat: + - maptweak: Rework of the civilian wing, merging the kitchen and the bar into one + area. + - maptweak: Minor movement of the mining vendor. + - maptweak: Adjustment of the kitchen and bar. + - bugfix: Area in the coffee shop. + - bugfix: Missing Ducky in the codelab. + - bugfix: Fix missing scrubber in engineering. + - bugfix: Shutter added to Kitchen door. + - maptweak: Pressure Regulators at atmospheric cutoffs start unregulated at roundstart. + - tweak: Set Modular Computers layer to 2.9 to bring them inline with regular computer + layering. + - tweak: Pump to distro set to 301 kpa to help offset issues with cutoff valves. + - rscadd: One phase pistol to each explorer locker. + - rscadd: One holster to each explorer locker. + - rscdel: Removed the old size modifier traits for mobs. + - rscadd: Port and tweak of the size modifiers from World Server for mobs. +2019-12-31: + Atermonera: + - bugfix: Radiation has been made more potent and is no longer defeated by a thin + sheet of lead. + Cerebulon: + - rscadd: Added decaf coffee to the coffee shop. + - rscadd: Added 6 types of bagel + - maptweak: Modified the coffee shop to have extra counter space and a microwave + for bagels. + - tweak: Removed chef lock on kitchen cabinet. + - spellcheck: Removed reference to outdated skrell lore from naewa cube box. + TheFurryFeline: + - tweak: Changes light replacers to allow you to automatically transfer used bulbs + into the item and get a new one every 4 bulbs replaced. Additionally, this allows + you to both use the replacer on a box of bulbs to get the bulbs added as well + as clicking the item with a box of bulbs to put them inside it. + - rscadd: Spray bottles can now be printed in the Autolathe. +2020-01-21: + Heroman3003: + - bugfix: A thin sheet of lead properly defeats radiation once more, but steel beams + remain permeable. + TheFurryFeline: + - bugfix: Name and desc vars switched for changeling combat boots so removal of + item doesn't output an excessively long name. + - bugfix: Fixes light frames returning 5 steel per deconstruction when 2 steel is + used to create the frame. + schnayy: + - rscadd: Added the Pyralis borg sprites. +2020-02-03: + Atermonera: + - rscadd: Added a printer to all preset (mapped-in) modular computers, so that word + processors can actually print stuff or something. + - tweak: Unregulated pressure regulators (Regulation set to OFF) no longer limit + flow rate, and instead act as one-way opened valves. For best results, place + away from other pumps. + - tweak: Automatic Shutoff Valves are more intelligent about finding leaks, and + won't close if there's other operating shutoff valves between them and the leak + PrismaticGynoid: + - rscadd: Adds a few toys to the loadout. + schnayy: + - rscadd: Adds book cart to library. +2020-02-14: + Atermonera: + - tweak: Radiation has to accumulate at least a little bit before it starts to become + damaging. Very low levels of radiation can be safe for a number of minutes before + you are at risk of injury. + - bugfix: Unless you idle for several minutes near the supermatter before it's been + turned on, you should no longer be at risk of taking toxloss (Including those + few spots in cargo maintenance). + - rscadd: Shutoff valve monitoring console can now remotely control shutoff valves. + Heroman3003: + - tweak: FBP repair can no longer be done through the space suits. + - tweak: Surgery can no longer be done through the space suits. + Shadow Quill: + - tweak: Batons will no longer harmbaton on disarm intent, instead doing so on grab/harm. + Woodrat: + - wip: Added sofas (no options to build one in round yet, will be added after this + pull). + - rscadd: Add neonsigns, currently one neon sign, Cafe. (Code is copy pasta from + holosigns). + - rscadd: Add boxes with mugs and cups. + - tweak: Neon signs and holosigns now emit light while on. + - maptweak: Merged the Coffee Shop with the Library. + - maptweak: Moved the Locker Room to where the Coffee Shop was, adjusted the holodeck. + - maptweak: Old Locker Room turned into a construction area. + - maptweak: Adjusted holodeck maps to new orientation. + - tweak: Changed sprite of barcode scanner. + - tweak: Cleaned up furniture icon dmi, fixed arm rest icons for shuttle chairs. +2020-02-28: + Cerebulon: + - rscadd: Added cataloguer info for the radioactive manhole cover and decoupled + engine PoIs + - tweak: Renamed several PoIs to have more descriptive/immersive names + - rscadd: Most items can now be placed precisely on tables and racks. + - rscadd: Thrown items now land on a random spot on the target tile. + Nalarac: + - tweak: The 'enable helmet camera' verb has been moved from the object tab to the + hardsuit tab. + Neerti: + - rscadd: Adds an in-game feedback system that can be activated in the server configuration. + Can be accessed from the lobby, with a button next to the other lobby buttons. + Additional features and restrictions on usage are controlled by the server configuration. + leshana: + - bugfix: NTNet Quantum Relay can be constructed/deconstructed without runtimes. + lorilili: + - tweak: You can now place defibs in rechargers. + - imageadd: Adds Holographic PDA type. + - soundadd: Skrell may now *warble. +2020-03-11: + Cerebulon: + - soundadd: Added button sounds to various machines. + Mechoid: + - rscadd: Added Hardpoint Actuator equipment for Exosuits, allowing them (And most + effectively, Ripleys) to swap components on the fly, after a short delay. + - rscadd: Added Exosuit Inflatables Deployer, allowing exosuits to pick up and deploy + inflatables. + - rscadd: Added Exosuit-mounted screwdriver, wirecutters, and welding laser, to + help round-out the tool-based equipment types. + - tweak: Incendiary exo weapons now use fire modifiers instead of fire stacks. + - tweak: Ignition effects from weapons now use fire modifiers instead of fire stacks. + - bugfix: Exosuit shocker armor now retaliates properly against melee. + - rscadd: Add RIG components to robotics mechfab, plus incredibly basic belt-voidsuit + RIG. + - rscadd: Add Graphite, made by compressing coal, presently only used heavily in + RIG components. + Neerti: + - tweak: The 'cut' and 'pulse' buttons in the hacking interface now check both hands + for tools, instead of only the active hand. + - tweak: The textual indicators at the bottom of the hacking window will now go + bold when they change, until the next window refresh. + - tweak: Hacking an Autolathe no longer requires you to hack it using the Autolathe's + main window, but instead opens the hacking window like everything else. + schnayy: + - rscadd: Adds yeast as a reagent. It can be found in the kitchen vendor and in + cargo kitchen supply crates. + - tweak: Bread now calls for 5 units yeast instead of an egg, and baguettes and + croissants call for 5 units yeast in addition to former ingredients. + - rscadd: Corn oil added to the Dinnerware vendor and the Booze-o-Mat. + - imageadd: Sprites for peanut butter, mayo, and yeast condiments. + - bugfix: Boiled slime core now links to the proper sprite. +2020-03-20: + Aronai/Arokha: + - tweak: You can now fill buckets (, beakers, etc.,) from water tiles. + Cerebulon: + - soundadd: Added sounds when dropping/throwing items. Toggleable in preferences. + - soundadd: Added incidental sounds to several item interactions. + Mechoid: + - rscadd: 'Energy Daggerpens (20): Disguised energy-knives, which do 15 searing + on melee, or 30 when thrown.' + - rscadd: 'Thieves gloves (30): Special gloves that allow you to peep in others'' + backpacks and belts, and plant items in their bags / pockets.' + - rscadd: 'Buzzer Ring (30): Makes your first two punches electrically charged, + first with 25 damage in a shock, then approximately 12.5 damage in the second. + If the charge is over 90%, you can force-defib a corpse, even if it''s a mindless + one. Damage rules still apply, however time-of-death does not.' + - rscadd: 'Resource Crate (60): A crate of uranium, phoron, gold, silver, osmium, + and plasteel.' + - rscadd: 'Exotic Plantlife Crate (20): A crate of numerous random seeds.' + - rscadd: 'Spare Organ Crate (20): A crate of bioprinted organs.' + - rscadd: 'Graviton goggles (15): A pair of combined meson/material goggles.' + - rscadd: 'Integrated Circuit Printer (10): An upgraded circuit printer used to + make integrated machine.' + - rscadd: 'Flamethrower (60): A large, flame-based weapon.' + - rscadd: '8 Concussion Grenades (30): A box of eight concussion grenades.' + - rscadd: '4 Hunting Traps (30): A box of four hunting-traps, similar to those found + in the explorer vendor.' + - rscadd: '3 Virus Samples (40): A box of three unique virus samples.' + - rscadd: 'Quickdraw Syringe Case (20): A case that can hold six syringes, and rapidly + deploy them. Fits in your pocket.' + - rscadd: 'Clotting Injector Case (20): A case that starts with 3 clotting med injectors + instead.' + - rscadd: 'Bonemed Injector Case (20): A case that starts with bonemeds.' + - tweak: Announcement costs lowered to be more equivalent. + - tweak: Egun changed from 60 to 30 TC. It is nowhere near as powerful as a lascannon. + - tweak: Exosuit rigged laser from 60 to 30 TC. + - tweak: Xray gun from 85 to 60 TC. + - tweak: Augments can now be used by everyone, as robot-specific ones will require + FBP organ revamp. + - tweak: Augment guns use slightly less blood / system instability to charge, so + it doesn't kill you dead in moments. + - bugfix: Anti-Materiel Rifle can once again be used with thermals. + - bugfix: Energy Shields work again, and can be colored. + Meghan-Rossi: + - tweak: Language keys are now case-sensitive. + - tweak: The language key for Chimpanzee has changed from 6 to C to resolve a conflict + with EAL. + - tweak: The language key for Bird has changed from m to B to resolve a conflict + with Mouse. + - tweak: All other language keys are now lowercase-only. + Neerti: + - tweak: Holsters can now be worn alongside webbing vests. + - soundadd: Receiving an antag role will now play a sound to the new antagonist. + - soundadd: Having laws changed as a silicon (AI or Borg) will now play a sound + and show the changed law in the chat. + - soundadd: Being offered a ghost role while a ghost will now play a sound. + - soundadd: Someone attempting to revive someone else will play a sound to the player + being revived, if they are not in their body. + - rscadd: Most Non-hitscan projectiles now have a pixel-perfect visual effect when + they impact something, or when they expire from moving too far without hitting + anything. + - soundadd: Projectiles can now have sounds for when they hit someone. They can + also have a different sound when they hit something solid like a wall. + - soundadd: A sound is now played when a projectile 'narrowly misses' someone. + - rsctweak: Getting hit with a projectile is now more noticeable in the chat log, + with bigger text. Only the person who got hit will see the bigger text. + PrismaticGynoid: + - bugfix: Fixes xenoarch artifacts breaking when performing excavation correctly. + TheFurryFeline: + - bugfix: Fixes lack of easily accessible Response Team shortcut to type in. Type + .k or :k to speak on the channel. + schnayy: + - rscadd: Adds Sabitsuki and Bedhead Longest hairstyles. + - tweak: Adjusts pixels on the Jessica, Celeb Curls, and Beach Waves hairstyles. +2020-03-27: + Arokha: + - rscadd: Ported VChat. If you find any messages that are not sorted by any filters, + or that you feel are sorted incorrectly, please submit a bug report on our issue + tracker on github. + Atermonera: + - rscadd: Basic distillery (not the industrial-) will ping when it reaches its target + temperature. + - tweak: Basic distillery uses logistic curve to determine temperature change, and + should be much faster. + - tweak: Industrial distillery respects gas laws, particularly as pertains to low + temperatures. + - bugfix: Prometheans can be slipped by disarm intent again + Leshana: + - rscadd: Added skybox parallax background for space. + - rscadd: Baystation12 style Overmap + - tweak: Make transit turfs (shuttle transit) actually look like they move in the + right direction. + Mechoid: + - bugfix: Artifact shields now work again. + - bugfix: Anomaly batteries work again. + - rscadd: Archaeology sites can have unique batteries, syringes, rings, and 'clubs'. + - rscadd: Multiple artifact effects added, in order to provide more spice, from + naughty to nice. + - tweak: Tweaks to normal artifact finds to be more unique. + Shadow-Quill: + - rscadd: Adds emergency backup cells to most light fixtures + - tweak: AIs can turn emergency lighting on and off by clicking light fixtures. + Flickering the lights has been moved to alt-click. +2020-04-05: + Atermonera: + - bugfix: Headphones (and other two-ear clothing items) don't break the off-ear + slot when click-dragged to unequip. + Neerti: + - tweak: The eject button on both the Chemical Dispenser and Chem Master will place + the ejected beaker into your hands, instead of on top of the machine, if possible. + (Requested by Nalarac.) + - tweak: Suit sensor consoles now display a friendly textual indicator of what z-level + someone is on, instead of a number. They will also now avoid spoiling the names + of Points of Interest. + - tweak: The beakers containing Cryoxadone near cryogenics are now labeled. (Requested + by Nalarac.) + - bugfix: The sleeper consoles now finally face towards the sleepers, at last. It + only took a year for someone to fix it. + novacat: + - rscadd: Adds action buttons for scoping all sniper weapons. +2020-04-20: + Atermonera: + - bugfix: Circuit clothes can have accessories attached. + - tweak: Control-shift-click on circuit clothes to use items on the circuit. + - tweak: Employment records can have comments similar to medical records. + - rscadd: Added a preference to switch between a few extra modes of examining things. + Verb in the preferences tab. + - rscadd: Added Combat Logs filter category, to filter messages from things hitting + you. This category will also eat up most other messages that are red and bold, + please report any such messages that aren't specifically related to punching + things. + - rscadd: Added categories for sorting various types of admin logs. + - rscadd: Adds a preference to forcibly disable (or enable) VChat. Useful mostly + for people on linux, to skip the 60s waiting period where it tries to work and + keeps you from seeing chat. Reloading VChat or reconnecting to the server are + required for any changes to the preference to take effect. Support for issues + that arise as a result of this preference is not guaranteed. + Leshana: + - rscadd: Glass Emergency Shutters are now constructable and deconstructing them + will give you the glass back. + Neerti: + - rscadd: All sources of stasis (sleepers, stasis bags) will prolong the amount + of time that lets someone be revived by a defib, proportional to how powerful + the stasis effect is. + - tweak: Opening a stasis bag that's being used now gives a prompt to confirm if + you want to open it and make the bag expire. No more misclicks making doctors + want to murder you. +2020-04-29: + Leshana: + - rscadd: Ship Helm, Sensors, Navigation, and Engine Control consoles are now de-/constructable. + - rscadd: Exploration (Overmap) Shuttle Console is now de-/constructable. + - tweak: Mappers no longer need to varedit shuttle_tag on shuttle consoles. + - rscadd: Admin Start Now verb can be used at any time during startup and it won't + actually start the game until initialization is completed. + - rscadd: Lobby stat panel shows time remaining on lobby votes and if the server + is done initializing. + Neerti: + - rscadd: You can now eat as much food as you want, even while 'full'. + Novacat: + - tweak: Re-enabled dual wielding penalties for most weapons that had them. + - rscadd: New dual-wielding sprites for weapons that needed them and did not have + them. + Shadow Quill: + - bugfix: Fixes the 'broken/damaged' message when an airlock is just broken. + - tweak: Heavy duty cell chargers now have flashing lights as they charge! When + all the lights are flashing, that means the cell is done. + atlantiscze: + - rscadd: Shutoff valve monitoring is now also available as a modular computer program. + Its UI has also been cleaned up a little. + - rscadd: Research robot module now has basic exploration and xenoarchaeology tools. +2020-05-13: + Atermonera: + - rscadd: Added a preference to control multilingual parsing behaviour, with a few + different modes. Should hopefully be less punishing to people who stutter and + use hyphens as a language key. + - tweak: The examine mode preference should now persist across reconnections during + a single round, but if the server is fully restarted it still appears to reset. + This issue is also present for the multilingual preference, and I'm still looking + into it. Savefiles are cryptic. + Layne: + - rscadd: Added Promethean language. + Mechoid: + - rscadd: Adds more interactions with animals, like shearing and taming. + - rscadd: New PoIs + - rscadd: Thermal poncho attachment, has minor slowdown, but gives thermal protection + to the armor it is attached to. + - rscadd: Mercenaries now drop their guns again. Most likely to be broken, however + they can be repaired. Examining when adjacent will allow you to inspect the + gun for what is needed. + - rscadd: Mercenary Snipers now exist. They will telegraph their shots approximately + 2 seconds in advance, and can fire at 14 tiles away. Will occasionally drop + pieces of their PTRs that survive combat. + - tweak: Clothing can now check attachments for temperature resistance. + - bugfix: MHD Howitzer beam effect actually exists again. + - bugfix: Xenoresin ground cover is properly colored again. + atlantiscze: + - rscadd: Robots can now search loot piles. + - rscadd: Hardsuits now allow backpacks to be carried in storage slot. This is limited + to hardsuits which are worn on the back slot. + - rscadd: SMES units now have automatic load balancing both on inputs and outputs + - rscadd: SMES units (and derived objects, such as PSUs) can now have more than + one input terminal. This allows for input from more otherwise isolated power + networks. + - tweak: Completely redesigned cell rack PSUs, removed ghetto variant. Cell rack + PSUs now support multiple power cells and hot-swapping of cells during operation. + This allows for either charging multiple cells at once in one device (directly + from power cable) or for powering up various machinery with only a power cell. + They are still inferior to SMESes in pretty much all aspects. + - tweak: Multitool on a cable now shows nicer results with large currents (uses + kW or MW accordingly) + - tweak: Multitool may be now used to change colour of cable coils. + - tweak: Supermatter delamination effects have been tweaked. Delamination is considerably + less laggy, and less directly destructive. Instead, it causes larger health + hazard and secondary engineering problems such as power outage or partial damage + of solar arrays. +2020-06-21: + Arokha: + - rscadd: New sprites for janicart + - tweak: Alt-click helpers for stowing mop, chemicals on janicart + Atermonera: + - rscadd: Added verb to export vchat logs, found in OOC tab when vchat has successfully + loaded. + - tweak: Vchat only sends you enough messages to fill your buffer on reconnect, + instead of all of them. + Billy Bangles: + - rscadd: Light and dark marble floor tiles can now be crafted with marble sheets. + Greenjoe: + - rscadd: Added a wrist-bound PDA, selectable from the PDA selection menu in char + setup. it can go in the glove slot along with the ID and belt slots, and shows + on your character's wrist no matter which of those 3 slots you put it in! + KasparoVv: + - rscadd: You can now quickly cycle hrough previous or next hair/facial styles at + character creation. + - rscadd: Use the -mv- button to pick a marking and place it above of another on + your character. Saves you from pressing up or down a bunch. + - tweak: Ports color_square() from Paradise for colour previews, cleaning up pref. + code & correct alignment issue w/ nested tables. + - tweak: Markings are now properly aligned within a table. +2020-08-03: + Cerebulon: + - imageadd: Added new book sprites, replaced old book sprites. + - rscadd: Added sticky notes, orderable from cargo + - rscadd: You can now carve graffiti into suitable walls/floors with sharp objects. + - rscadd: Trash, graffiti, dirt (Not blood), noticeboards and stickynotes are now + persistent across rounds. This is admin-toggleable. + Mechoid: + - rscadd: Adds a glass jar subtype, the glass tank, that can be used to hold live + fish. Remember to add water! + Rykka Stormheart: + - rscadd: Ported over Aurora Cooking from AuroraStation and Citadel-RP! + - rscadd: Recipes are separate per appliance, and all appliances have a use! + - rscadd: Please take note, Chefs, to pre-heat you appliances at the start of your + shift. + - rscadd: Fryer Recipes require batter before they can be made! + - rscadd: Fire alarms will go off if you burn food! + - rscadd: The largest change - Cooking takes TIME. Around 6 minutes for the largest + recipes in the game. + - rscadd: 'Too many other changes to list - refer to PR #7344 https://github.com/PolarisSS13/Polaris/pull/7344' +2020-08-06: + Cerebulon: + - rscadd: Added new mobs Fire Bugs, Ice Hares, Tymisian Moths and Siffets to surface + spawnlists. Also added a new dog breed, woof. + ForFoxSake: + - rscadd: Ported tgstation styled magazine restocking. Hit a bullet on a table or + floor with a partially empty magazine to start restocking. + Mechoid: + - rscadd: Exosuits now have internal components, mostly like borgs, but larger. + - rscadd: Autolathes can use plastic and plasteel. + - rscadd: Autolathes can have tiered recipes, based on their manipulator rating. + - tweak: Exosuit base health has been lowered due to the changes to damage processing. + Rykka Stormheart: + - rscadd: Blast Doors will now crush people, if they are on the same turf when it + closes, and throw them to an adjacent open turf. + - rscadd: The damage should be delayed enough that you can walk out of the door + before the sprite animation finishes and you will be safe. The delay is being + reviewed, and will likely be adjusted after sufficient feedback is gathered. + - rscadd: Blast doors and shutters (the types that go on bar/kitchen/etc) will also + throw items on their tiles. +2020-08-20: + Atermonera: + - maptweak: Mapped Overmap sensors onto the Southern Cross. Deck 2, central ring, + starboard side. Departmental sensor installations and dedicated rooms may be + added in the future. + - wip: To use the new sensors, you first have to click on them, hit 'Reconnect' + on the window, close the window, then reopen it to get the console to link up + with the sensors properly. + - wip: Enabled overmap event generation. This doesn't really do anything yet because + the shuttles haven't been upgraded, but it's very pretty! + BlinsKot: + - rscadd: You can now alt-click to turn on the washing machine. + - rscadd: You can now alt-click on a mech while piloting it to toggle strafing. + Blinskot: + - rscadd: You can now alt-click on a mech while piloting it to toggle strafing. + - rscadd: You can now alt-click to turn on the washing machine. + Cerebulon: + - rscadd: Added extended flavour text to most things related to commercial vending + machines and their contents. + - rscadd: Added chewing gum, lollipops and chewing tobacco. Unwrap it and place + it in your mask slot like a cigarette. + - rscadd: Added snack food, vending drink and beer brand variety. + - imageadd: New booze bottle, coffee, juice, snack and cigarette packet sprites. + Lorilili: + - tweak: Skrellian blood is now hemocyanin-based and regenerates with copper, not + iron. + - rscadd: You can now wear caution signs and warning cones. + - rscadd: You can now point using shift and middle mouse button. + Mechoid: + - rscadd: Mortiferin added in place of old Necroxadone as a normal chem recipe. + - tweak: Necroxadone changed to a more powerful alternative to Mortiferin which + works even on corpses without bloodflow. + - rscadd: Added reagent pumps. You can refill water tanks planetside! + - rscadd: Added reagent hoses. Only used player-side by tanks, pumps, and spray + nozzles to move reagents from one container to another. + Meghan Rossi: + - bugfix: Cyborgs can now put things into oven dishes with their grippers + - bugfix: Cyborgs can now put oven dishes in the oven with their grippers + - tweak: Bots that are idle in doorways (including firedoors and blastdoors) will + move out of the way. + - rscadd: Multiple cleanbots will no longer attempt to clean the same tile at the + same time. + - rscadd: Cleanbots will now clean tiles closer to them first. + - bugfix: You can now use duct tape on yourself. + - rscadd: Ghosts now have a toggleable security HUD. Use the 'Toggle Security HUD' + verb in the ghost tab to enable it + - rscadd: Ghosts can now shift-click things to examine them. + - rscadd: Ghosts can now alt-click adjacent things to open the turf tab. + - bugfix: You can now build plating on grass with floor tiles. + - rscadd: Improved descriptions for some floors. + - rscadd: The rapid service fabricator (found on service borgs) can now produce + metamorphic pint glasses. + - rscadd: The party supplies and bar supplies crates orderable from cargo now contain + metamorphic pint glasses. + - rscadd: The autolathe can now produce metamorphic pint and half-pint glasses. + - rscadd: The autolathe can now produce all drinking glasses in batches of 5 or + 10. + Nyria: + - rscadd: Added volume settings, available in character setup or from the Preferences + tab. + - rscadd: More settings and affected sounds may be added at a later date. + - rscadd: Added a TGui window to control the new settings with shiny sliders. + Rykka Stormheart: + - rscadd: Adds a mech vs mech combat system for the toy mechs earned from arcades + and found around the station. + - rscadd: You can initiate combat with yourself by hitting a toy mech with another + toy mech, or fight another player if you attack a player holding a mech toy + with your own mech toy while not on harm intent. + - rscadd: Each mech has its own health stat and special ability that they'll use + in combat against each other. + SplinterGP: + - rscadd: Added verb for FBP's to change their monitor display. + - rscdel: Removed monitor mask item(replaced by verb). + Subber: + - rscadd: 'Added a new prosthetic sprite set: Cyber Solutions - Outdated.' +2020-09-06: + Atermonera: + - tweak: You can use Move Up/Down to traverse ladders. No popup 'Which way do you + want to go?' windows required for bidirectional ladders!. + Killian: + - tweak: Added a bunch more random spawners for mapping use. + - tweak: You can now inject reagents directly into a synth's 'blood' stream using + syringes and hypos (inc. borg hypos). Taking oil/coolant samples is still impossible. + Kot: + - tweak: Mecha drills can now butcher dead mobs better. Like gibs and gore and guts + stuff. + Lorilili: + - rscadd: You can now pet borgs on help intent and punch on hurt intent. Old behavior + is now grab intent. + Lorilili (Port from Aurora): + - rscadd: Added knee-high and thigh-high jackboots. + - imageadd: Replaced laceup and leather shoes with oxford shoes. + - imageadd: Replaced standard shoe and high-top sprites with newer ones. + Mechoid: + - maptweak: Mapped distillery into Chemistry, beside the Grinder. + - maptweak: Moves wrapper, spacecleaner, and labeller from the grinder table to + the Chem locker. + - rscadd: Added distilling recipe for Synthetic Plasma, which acts as a blood-restoration + of 1.2 units per synthplas. Also orderable in cargo. + Rykka Stormheart: + - rscadd: Adds Ambience Chance and Repeating Ambience Preferences into Globals, + underneath Client FPS + - rscadd: Random-Ambience-Frequency controls how long before it checks if it can + play ambience to you again. Setting it to 0 disables the random re-play of ambience. + - rscadd: Ambience Chance affects the % chance to play ambience to your client. + It defaults to 35%, but can be set from 0 to 100 to disable it or always play + every time you move into an area or have the Random Ambience check called. + Shadow Larkens: + - rscadd: Added the ability to right click and lower preferences for jobs in the + Occupation Menu. + SplinterGP: + - rscadd: Adds new hailer masks with quotes with sound, allowing you to use a hailer + on a face mask to combine them. + - soundadd: Adds new sound effects for hailer face masks. +2021-01-19: + Cerebulon: + - soundadd: Added button sounds to various machines. + KasparoVy: + - imageadd: Adds orange Teshari goggles, selectable in the loadout. + - imageadd: Adds blindfold & new white (recolorable) blindfold to loadout. + - imageadd: Adds species-fitted Teshari ring sprites. + - imageadd: Adds species-fitted Teshari hudpatches & white blindfold. + - imageadd: Adds full selection of Teshari belted cloaks. + - imageadd: Adds full selection of non-job Teshari hooded cloaks. + - rscadd: Adds a bunch of Teshari worksuits (sprites already existed). + - imageadd: Adds some species-fitted Teshari jacket accessories (tan, charcoal, + navy, burgundy, checkered). + - tweak: Updates all Teshari undercoats and cloaks with new sprites from downstreams. + - bugfix: Fixes Teshari captain glove sprites. + Mechoid: + - rscadd: Adds Wurmwoad, a suspiciously worm-like plant that produces pods of spice. + - rscadd: Adds Wurmwoad to the service borg synthesizer. + - bugfix: Service borgs can work with kitchenware again. + - rscadd: Added system for exosuit over-encumbrance. Combat mechs and Ripleys have + higher than default. + - tweak: Move Rig modules to more granular files + - rscadd: Add RIG components to robotics mechfab, plus incredibly basic belt-voidsuit + RIG. + - rscadd: Add Graphite, made by compressing coal, presently only used heavily in + RIG components. + - rscadd: Hardpoint Actuator equipment for Exosuits, allowing them (And most effectively, + Ripleys) to swap components on the fly, after a short delay. + - rscadd: Exo Inflatables Deployer, allowing exosuits to pick up and deploy inflatables. + - rscadd: Exo screwdriver, wirecutters, and welding laser, to help round-out the + tool-based equipment types. + - rscadd: Fire modifiers based on stacks added, to be used by the damage system + tweaked above. + - tweak: Incendiary exo weapons tweaked to conform with fire change. + - tweak: Ignition effects from weapons changed from the old fire-system to the modifier + fire system. + - bugfix: Shocker now retaliates properly against melee. + - rscadd: Animals can be butchered for organs and hide. Requires scraping (sharp), + washing (water or washing machine), and then drying (bonfire or drying rack). + - rscadd: Organs can be butchered for meat, named "[organ] meat". Heart meat, liver + meat, etc. Brains from player mobs cannot be butchered. + Meghan-Rossi: + - bugfix: Fixed omni filters reacting incorrectly to configuration changes that + swap ports. + - bugfix: Fixed borosilicate glass not producing shards in most situations. + - bugfix: Fat (triglyceride) now tastes greasy instead of bitter. + - bugfix: Blood from artifacts will no longer break the pathogenic isolator. + - rscadd: The Tesla Generator is now available from cargo. Coils and grounding rods + for it may be printed on the protolathe and autolathe, respectively. + - bugfix: Cooking a mouse into a mouseburger now uses up the mouse. + - tweak: If you try to put someone in one of their own slots using the stripping + menu, now you will instead try to strip that slot. + - tweak: The tesla energy ball will now eventually disappear if not kept charged + with the particle accelerator + - bugfix: Fixed some objects giving duplicate results when an analyzer was used + on them + - bugfix: Fixed some mountain POIs sometimes overlapping in odd ways + - bugfix: If you place wall-mounted machines such as status displays on a window, + they will no longer be hidden underneath the window. + Neerti: + - tweak: The 'cut' and 'pulse' buttons in the hacking interface now check all available + hands for tools, instead of only the active hand. + - tweak: The textual indicators at the bottom of the hacking window will now go + bold when they change, until the next window refresh. + - tweak: Hacking an Autolathe no longer requires you to hack it using the Autolathe's + main window, but instead opens the hacking window like everything else. + Poojawa: + - soundadd: Added my fancy vore sounds. + - rscadd: Porting of a few QoL Citadel changes to vore menu related to sounds. + - rscadd: Applies Feeding and Devourable prefs. + - bugfix: Made VoreUI toggles a lot more clear of what mode they're in. + RunaDacino: + - rscadd: Enabled research borgs equipped with 'exosuit gripper' to be able to replace + internal exosuit parts like actuators, to upgrade or to repair + Subber: + - rscadd: 'Added two new antag augments to traitor uplink: armblade and handblade.' + Woodrat: + - tweak: Changes vote notification sound to that of World Server in order to help + people realize there is a vote occurring. + schnayy: + - rscadd: Adds the reagent yeast. It can be found in the kitchen vendor and in cargo + kitchen supply crates. + - tweak: Bread now calls for 5 units yeast instead of an egg, and baguettes and + croissants call for 5 units yeast in addition to former ingredients. + - rscadd: Corn oil added to the Dinnerware vendor and the Booze-o-Mat. + - imageadd: Sprites for peanut butter, mayo, and yeast condiments. + - bugfix: Boiled slime core now links to the proper sprite. +2021-02-02: + null: + - bugfix: Appended /centcom to the escape shuttle again to fix transfer message. + Added some escape pods to the list. + - rscadd: "/\U0001F191" diff --git a/html/changelogs/Cerebulon - machinesounds.yml b/html/changelogs/Cerebulon - machinesounds.yml deleted file mode 100644 index c6bfbfeaa3..0000000000 --- a/html/changelogs/Cerebulon - machinesounds.yml +++ /dev/null @@ -1,36 +0,0 @@ -################################ -# Example Changelog File -# -# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. -# -# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) -# When it is, any changes listed below will disappear. -# -# Valid Prefixes: -# bugfix -# wip (For works in progress) -# tweak -# soundadd -# sounddel -# rscadd (general adding of nice things) -# rscdel (general deleting of nice things) -# imageadd -# imagedel -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: Cerebulon - -# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. -delete-after: True - -# Any changes you've made. See valid prefix list above. -# INDENT WITH TWO SPACES. NOT TABS. SPACES. -# SCREW THIS UP AND IT WON'T WORK. -# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - soundadd: "Added button sounds to various machines." diff --git a/html/changelogs/KasparoVy - PR - 7760.yml b/html/changelogs/KasparoVy - PR - 7760.yml deleted file mode 100644 index c4569eead3..0000000000 --- a/html/changelogs/KasparoVy - PR - 7760.yml +++ /dev/null @@ -1,45 +0,0 @@ -################################ -# Example Changelog File -# -# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. -# -# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) -# When it is, any changes listed below will disappear. -# -# Valid Prefixes: -# bugfix -# wip (For works in progress) -# tweak -# soundadd -# sounddel -# rscadd (general adding of nice things) -# rscdel (general deleting of nice things) -# imageadd -# imagedel -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: KasparoVy - -# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. -delete-after: True - -# Any changes you've made. See valid prefix list above. -# INDENT WITH TWO SPACES. NOT TABS. SPACES. -# SCREW THIS UP AND IT WON'T WORK. -# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - imageadd: Adds orange Teshari goggles, selectable in the loadout. - - imageadd: Adds blindfold & new white (recolorable) blindfold to loadout. - - imageadd: Adds species-fitted Teshari ring sprites. - - imageadd: Adds species-fitted Teshari hudpatches & white blindfold. - - imageadd: Adds full selection of Teshari belted cloaks. - - imageadd: Adds full selection of non-job Teshari hooded cloaks. - - rscadd: Adds a bunch of Teshari worksuits (sprites already existed). - - imageadd: Adds some species-fitted Teshari jacket accessories (tan, charcoal, navy, burgundy, checkered). - - tweak: Updates all Teshari undercoats and cloaks with new sprites from downstreams. - - fix: Fixes Teshari captain glove sprites. diff --git a/html/changelogs/Mechoid - Encumbrance.yml b/html/changelogs/Mechoid - Encumbrance.yml deleted file mode 100644 index f013a3bcad..0000000000 --- a/html/changelogs/Mechoid - Encumbrance.yml +++ /dev/null @@ -1,36 +0,0 @@ -################################ -# Example Changelog File -# -# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. -# -# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) -# When it is, any changes listed below will disappear. -# -# Valid Prefixes: -# bugfix -# wip (For works in progress) -# tweak -# soundadd -# sounddel -# rscadd (general adding of nice things) -# rscdel (general deleting of nice things) -# imageadd -# imagedel -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: Mechoid - -# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. -delete-after: True - -# Any changes you've made. See valid prefix list above. -# INDENT WITH TWO SPACES. NOT TABS. SPACES. -# SCREW THIS UP AND IT WON'T WORK. -# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - rscadd: "Added system for exosuit over-encumbrance. Combat mechs and Ripleys have higher than default." diff --git a/html/changelogs/Meghan Rossi - atmosanalyzer.yml b/html/changelogs/Meghan Rossi - atmosanalyzer.yml deleted file mode 100644 index 336b875578..0000000000 --- a/html/changelogs/Meghan Rossi - atmosanalyzer.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Meghan-Rossi -delete-after: True -changes: - - bugfix: "Fixed some objects giving duplicate results when an analyzer was used on them" \ No newline at end of file diff --git a/html/changelogs/Meghan Rossi - borosilicate shard fix.yml b/html/changelogs/Meghan Rossi - borosilicate shard fix.yml deleted file mode 100644 index 491d3380aa..0000000000 --- a/html/changelogs/Meghan Rossi - borosilicate shard fix.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Meghan-Rossi -delete-after: True -changes: - - bugfix: "Fixed borosilicate glass not producing shards in most situations." \ No newline at end of file diff --git a/html/changelogs/Meghan Rossi - fix infinite ratburgers.yml b/html/changelogs/Meghan Rossi - fix infinite ratburgers.yml deleted file mode 100644 index 5932db7e4c..0000000000 --- a/html/changelogs/Meghan Rossi - fix infinite ratburgers.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Meghan-Rossi -delete-after: True -changes: - - bugfix: "Cooking a mouse into a mouseburger now uses up the mouse." \ No newline at end of file diff --git a/html/changelogs/Meghan Rossi - fix omni filters.yml b/html/changelogs/Meghan Rossi - fix omni filters.yml deleted file mode 100644 index 595dd331e7..0000000000 --- a/html/changelogs/Meghan Rossi - fix omni filters.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Meghan-Rossi -delete-after: True -changes: - - bugfix: "Fixed omni filters reacting incorrectly to configuration changes that swap ports." \ No newline at end of file diff --git a/html/changelogs/Meghan Rossi - isolator fix.yml b/html/changelogs/Meghan Rossi - isolator fix.yml deleted file mode 100644 index 4801a45890..0000000000 --- a/html/changelogs/Meghan Rossi - isolator fix.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Meghan-Rossi -delete-after: True -changes: - - bugfix: "Blood from artifacts will no longer break the pathogenic isolator." \ No newline at end of file diff --git a/html/changelogs/Meghan Rossi - poiareas.yml b/html/changelogs/Meghan Rossi - poiareas.yml deleted file mode 100644 index 2b845c8d26..0000000000 --- a/html/changelogs/Meghan Rossi - poiareas.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Meghan-Rossi -delete-after: True -changes: - - bugfix: "Fixed some mountain POIs sometimes overlapping in odd ways" \ No newline at end of file diff --git a/html/changelogs/Meghan Rossi - stripping.yml b/html/changelogs/Meghan Rossi - stripping.yml deleted file mode 100644 index 25a4e95bec..0000000000 --- a/html/changelogs/Meghan Rossi - stripping.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Meghan-Rossi -delete-after: True -changes: - - tweak: "If you try to put someone in one of their own slots using the stripping menu, now you will instead try to strip that slot." \ No newline at end of file diff --git a/html/changelogs/Meghan Rossi - tesla dissipation.yml b/html/changelogs/Meghan Rossi - tesla dissipation.yml deleted file mode 100644 index 2ee721ad9a..0000000000 --- a/html/changelogs/Meghan Rossi - tesla dissipation.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Meghan-Rossi -delete-after: True -changes: - - tweak: "The tesla energy ball will now eventually disappear if not kept charged with the particle accelerator" \ No newline at end of file diff --git a/html/changelogs/Meghan Rossi - the_teslagen.yml b/html/changelogs/Meghan Rossi - the_teslagen.yml deleted file mode 100644 index ee59d5663e..0000000000 --- a/html/changelogs/Meghan Rossi - the_teslagen.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Meghan-Rossi -delete-after: True -changes: - - rscadd: "The Tesla Generator is now available from cargo. Coils and grounding rods for it may be printed on the protolathe and autolathe, respectively." \ No newline at end of file diff --git a/html/changelogs/Meghan Rossi - triglyceride taste.yml b/html/changelogs/Meghan Rossi - triglyceride taste.yml deleted file mode 100644 index c18e6ff8e9..0000000000 --- a/html/changelogs/Meghan Rossi - triglyceride taste.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Meghan-Rossi -delete-after: True -changes: - - bugfix: "Fat (triglyceride) now tastes greasy instead of bitter." \ No newline at end of file diff --git a/html/changelogs/Meghan Rossi - wall machine layering.yml b/html/changelogs/Meghan Rossi - wall machine layering.yml deleted file mode 100644 index 1e3f903681..0000000000 --- a/html/changelogs/Meghan Rossi - wall machine layering.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Meghan-Rossi -delete-after: True -changes: - - bugfix: "If you place wall-mounted machines such as status displays on a window, they will no longer be hidden underneath the window." \ No newline at end of file diff --git a/html/changelogs/Poojawa - Sunesoundsntoggles.yml b/html/changelogs/Poojawa - Sunesoundsntoggles.yml deleted file mode 100644 index ed329d766e..0000000000 --- a/html/changelogs/Poojawa - Sunesoundsntoggles.yml +++ /dev/null @@ -1,37 +0,0 @@ -################################ -# Example Changelog File -# -# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. -# -# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) -# When it is, any changes listed below will disappear. -# -# Valid Prefixes: -# bugfix -# wip (For works in progress) -# tweak -# soundadd -# sounddel -# rscadd (general adding of nice things) -# rscdel (general deleting of nice things) -# imageadd -# imagedel -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: Poojawa - -# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. -delete-after: True - -# Any changes you've made. See valid prefix list above. -# INDENT WITH TWO SPACES. NOT TABS. SPACES. -# SCREW THIS UP AND IT WON'T WORK. -# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - soundadd: "Added my fancy vore sounds." - - rscadd: "Porting of a few QoL Citadel changes to vore menu related to sounds." \ No newline at end of file diff --git a/html/changelogs/Poojawa - devourfeedprefs.yml b/html/changelogs/Poojawa - devourfeedprefs.yml deleted file mode 100644 index 5fe418cc80..0000000000 --- a/html/changelogs/Poojawa - devourfeedprefs.yml +++ /dev/null @@ -1,37 +0,0 @@ -################################ -# Example Changelog File -# -# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. -# -# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) -# When it is, any changes listed below will disappear. -# -# Valid Prefixes: -# bugfix -# wip (For works in progress) -# tweak -# soundadd -# sounddel -# rscadd (general adding of nice things) -# rscdel (general deleting of nice things) -# imageadd -# imagedel -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: Poojawa - -# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. -delete-after: True - -# Any changes you've made. See valid prefix list above. -# INDENT WITH TWO SPACES. NOT TABS. SPACES. -# SCREW THIS UP AND IT WON'T WORK. -# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - rscadd: "Applies Feeding and Devourable prefs." - - bugfix: "Made VoreUI toggles a lot more clear of what mode they're in." \ No newline at end of file diff --git a/html/changelogs/Runa Dacino - Exosuit gripper tweak.yml b/html/changelogs/Runa Dacino - Exosuit gripper tweak.yml deleted file mode 100644 index fc17d241d0..0000000000 --- a/html/changelogs/Runa Dacino - Exosuit gripper tweak.yml +++ /dev/null @@ -1,37 +0,0 @@ -################################ -# Example Changelog File -# -# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. -# -# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) -# When it is, any changes listed below will disappear. -# -# Valid Prefixes: -# bugfix -# wip (For works in progress) -# tweak -# soundadd -# sounddel -# rscadd (general adding of nice things) -# rscdel (general deleting of nice things) -# imageadd -# imagedel -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: N3X15 - -# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. -delete-after: True - -# Any changes you've made. See valid prefix list above. -# INDENT WITH TWO SPACES. NOT TABS. SPACES. -# SCREW THIS UP AND IT WON'T WORK. -# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - rscadd: "Enabled research borgs equipped with 'exosuit gripper' to be able to replace internal exosuit parts like actuators, to upgrade or to repair" - diff --git a/html/changelogs/SubberTheFabulous-PR-7642.yml b/html/changelogs/SubberTheFabulous-PR-7642.yml deleted file mode 100644 index 23864c64b0..0000000000 --- a/html/changelogs/SubberTheFabulous-PR-7642.yml +++ /dev/null @@ -1,36 +0,0 @@ -################################ -# Example Changelog File -# -# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. -# -# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) -# When it is, any changes listed below will disappear. -# -# Valid Prefixes: -# bugfix -# wip (For works in progress) -# tweak -# soundadd -# sounddel -# rscadd (general adding of nice things) -# rscdel (general deleting of nice things) -# imageadd -# imagedel -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: Subber - -# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. -delete-after: True - -# Any changes you've made. See valid prefix list above. -# INDENT WITH TWO SPACES. NOT TABS. SPACES. -# SCREW THIS UP AND IT WON'T WORK. -# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - rscadd: "Added two new antag augments to traitor uplink: armblade and handblade." diff --git a/html/changelogs/mechoid - RoboticsRigs.yml b/html/changelogs/mechoid - RoboticsRigs.yml deleted file mode 100644 index f7023732ea..0000000000 --- a/html/changelogs/mechoid - RoboticsRigs.yml +++ /dev/null @@ -1,38 +0,0 @@ -################################ -# Example Changelog File -# -# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. -# -# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) -# When it is, any changes listed below will disappear. -# -# Valid Prefixes: -# bugfix -# wip (For works in progress) -# tweak -# soundadd -# sounddel -# rscadd (general adding of nice things) -# rscdel (general deleting of nice things) -# imageadd -# imagedel -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: Mechoid - -# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. -delete-after: True - -# Any changes you've made. See valid prefix list above. -# INDENT WITH TWO SPACES. NOT TABS. SPACES. -# SCREW THIS UP AND IT WON'T WORK. -# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - tweak: "Move Rig modules to more granular files" - - rscadd: "Add RIG components to robotics mechfab, plus incredibly basic belt-voidsuit RIG." - - rscadd: "Add Graphite, made by compressing coal, presently only used heavily in RIG components." diff --git a/html/changelogs/mechoid - butchery.yml b/html/changelogs/mechoid - butchery.yml deleted file mode 100644 index 433bf787e7..0000000000 --- a/html/changelogs/mechoid - butchery.yml +++ /dev/null @@ -1,37 +0,0 @@ -################################ -# Example Changelog File -# -# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. -# -# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) -# When it is, any changes listed below will disappear. -# -# Valid Prefixes: -# bugfix -# wip (For works in progress) -# tweak -# soundadd -# sounddel -# rscadd (general adding of nice things) -# rscdel (general deleting of nice things) -# imageadd -# imagedel -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: Mechoid - -# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. -delete-after: True - -# Any changes you've made. See valid prefix list above. -# INDENT WITH TWO SPACES. NOT TABS. SPACES. -# SCREW THIS UP AND IT WON'T WORK. -# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - rscadd: "Animals can be butchered for organs and hide. Requires scraping (sharp), washing (water or washing machine), and then drying (bonfire or drying rack)." - - rscadd: "Organs can be butchered for meat, named "[organ] meat". Heart meat, liver meat, etc. Brains from player mobs cannot be butchered." diff --git a/html/changelogs/mechoid - exoexpansion.yml b/html/changelogs/mechoid - exoexpansion.yml deleted file mode 100644 index c8a399fe79..0000000000 --- a/html/changelogs/mechoid - exoexpansion.yml +++ /dev/null @@ -1,42 +0,0 @@ -################################ -# Example Changelog File -# -# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. -# -# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) -# When it is, any changes listed below will disappear. -# -# Valid Prefixes: -# bugfix -# wip (For works in progress) -# tweak -# soundadd -# sounddel -# rscadd (general adding of nice things) -# rscdel (general deleting of nice things) -# imageadd -# imagedel -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: Mechoid - -# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. -delete-after: True - -# Any changes you've made. See valid prefix list above. -# INDENT WITH TWO SPACES. NOT TABS. SPACES. -# SCREW THIS UP AND IT WON'T WORK. -# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - rscadd: "Hardpoint Actuator equipment for Exosuits, allowing them (And most effectively, Ripleys) to swap components on the fly, after a short delay." - - rscadd: "Exo Inflatables Deployer, allowing exosuits to pick up and deploy inflatables." - - rscadd: "Exo screwdriver, wirecutters, and welding laser, to help round-out the tool-based equipment types." - - rscadd: "Fire modifiers based on stacks added, to be used by the damage system tweaked above." - - tweak: "Incendiary exo weapons tweaked to conform with fire change." - - tweak: "Ignition effects from weapons changed from the old fire-system to the modifier fire system." - - bugfix: "Shocker now retaliates properly against melee." diff --git a/html/changelogs/mechoid - hydroupkeep.yml b/html/changelogs/mechoid - hydroupkeep.yml deleted file mode 100644 index 66b4cea214..0000000000 --- a/html/changelogs/mechoid - hydroupkeep.yml +++ /dev/null @@ -1,38 +0,0 @@ -################################ -# Example Changelog File -# -# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. -# -# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) -# When it is, any changes listed below will disappear. -# -# Valid Prefixes: -# bugfix -# wip (For works in progress) -# tweak -# soundadd -# sounddel -# rscadd (general adding of nice things) -# rscdel (general deleting of nice things) -# imageadd -# imagedel -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: Mechoid - -# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. -delete-after: True - -# Any changes you've made. See valid prefix list above. -# INDENT WITH TWO SPACES. NOT TABS. SPACES. -# SCREW THIS UP AND IT WON'T WORK. -# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - rscadd: "Adds Wurmwoad, a suspiciously worm-like plant that produces pods of spice." - - rscadd: "Adds Wurmwoad to the service borg synthesizer." - - bugfix: "Service borgs can work with kitchenware again." diff --git a/html/changelogs/neerti-hacking_QoL.yml b/html/changelogs/neerti-hacking_QoL.yml deleted file mode 100644 index 3aa3bd9e2e..0000000000 --- a/html/changelogs/neerti-hacking_QoL.yml +++ /dev/null @@ -1,38 +0,0 @@ -################################ -# Example Changelog File -# -# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. -# -# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) -# When it is, any changes listed below will disappear. -# -# Valid Prefixes: -# bugfix -# wip (For works in progress) -# tweak -# soundadd -# sounddel -# rscadd (general adding of nice things) -# rscdel (general deleting of nice things) -# imageadd -# imagedel -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: Neerti - -# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. -delete-after: True - -# Any changes you've made. See valid prefix list above. -# INDENT WITH TWO SPACES. NOT TABS. SPACES. -# SCREW THIS UP AND IT WON'T WORK. -# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - tweak: "The 'cut' and 'pulse' buttons in the hacking interface now check all available hands for tools, instead of only the active hand." - - tweak: "The textual indicators at the bottom of the hacking window will now go bold when they change, until the next window refresh." - - tweak: "Hacking an Autolathe no longer requires you to hack it using the Autolathe's main window, but instead opens the hacking window like everything else." diff --git a/html/changelogs/schnayy - cooking adjustments.yml b/html/changelogs/schnayy - cooking adjustments.yml deleted file mode 100644 index b45ba131d7..0000000000 --- a/html/changelogs/schnayy - cooking adjustments.yml +++ /dev/null @@ -1,10 +0,0 @@ -author: schnayy - -delete-after: True - -changes: - - rscadd: "Adds the reagent yeast. It can be found in the kitchen vendor and in cargo kitchen supply crates." - - tweak: "Bread now calls for 5 units yeast instead of an egg, and baguettes and croissants call for 5 units yeast in addition to former ingredients." - - rscadd: "Corn oil added to the Dinnerware vendor and the Booze-o-Mat." - - imageadd: "Sprites for peanut butter, mayo, and yeast condiments." - - bugfix: "Boiled slime core now links to the proper sprite." \ No newline at end of file diff --git a/icons/_nanomaps/tether_nanomap_z7.png b/icons/_nanomaps/tether_nanomap_z7.png index 0f5d0d3a8e..c404e1da35 100644 Binary files a/icons/_nanomaps/tether_nanomap_z7.png and b/icons/_nanomaps/tether_nanomap_z7.png differ diff --git a/icons/effects/effects.dmi b/icons/effects/effects.dmi index e8905467f6..f578e1f9ac 100644 Binary files a/icons/effects/effects.dmi and b/icons/effects/effects.dmi differ diff --git a/icons/effects/effects_ch.dmi b/icons/effects/effects_ch.dmi index f01cd218f3..1b7c81dc81 100644 Binary files a/icons/effects/effects_ch.dmi and b/icons/effects/effects_ch.dmi differ diff --git a/icons/mecha/mecha.dmi b/icons/mecha/mecha.dmi index 65dfa98237..44f6047eeb 100644 Binary files a/icons/mecha/mecha.dmi and b/icons/mecha/mecha.dmi differ diff --git a/icons/mob/drakeborg/Drakeborg-Licensing.txt b/icons/mob/drakeborg/Drakeborg-Licensing.txt new file mode 100644 index 0000000000..f2d3ca925c --- /dev/null +++ b/icons/mob/drakeborg/Drakeborg-Licensing.txt @@ -0,0 +1,69 @@ +Drakeborg & drakeplushies are created by deviantart.com/mizartz + +https://creativecommons.org/licenses/by-nc-sa/3.0/ +Attribution-NonCommercial-ShareAlike 3.0 Unported + +CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS LICENSE DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE INFORMATION PROVIDED, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM ITS USE. +License +THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED. + +BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND CONDITIONS. + +1. Definitions + +"Adaptation" means a work based upon the Work, or upon the Work and other pre-existing works, such as a translation, adaptation, derivative work, arrangement of music or other alterations of a literary or artistic work, or phonogram or performance and includes cinematographic adaptations or any other form in which the Work may be recast, transformed, or adapted including in any form recognizably derived from the original, except that a work that constitutes a Collection will not be considered an Adaptation for the purpose of this License. For the avoidance of doubt, where the Work is a musical work, performance or phonogram, the synchronization of the Work in timed-relation with a moving image ("synching") will be considered an Adaptation for the purpose of this License. +"Collection" means a collection of literary or artistic works, such as encyclopedias and anthologies, or performances, phonograms or broadcasts, or other works or subject matter other than works listed in Section 1(g) below, which, by reason of the selection and arrangement of their contents, constitute intellectual creations, in which the Work is included in its entirety in unmodified form along with one or more other contributions, each constituting separate and independent works in themselves, which together are assembled into a collective whole. A work that constitutes a Collection will not be considered an Adaptation (as defined above) for the purposes of this License. +"Distribute" means to make available to the public the original and copies of the Work or Adaptation, as appropriate, through sale or other transfer of ownership. +"License Elements" means the following high-level license attributes as selected by Licensor and indicated in the title of this License: Attribution, Noncommercial, ShareAlike. +"Licensor" means the individual, individuals, entity or entities that offer(s) the Work under the terms of this License. +"Original Author" means, in the case of a literary or artistic work, the individual, individuals, entity or entities who created the Work or if no individual or entity can be identified, the publisher; and in addition (i) in the case of a performance the actors, singers, musicians, dancers, and other persons who act, sing, deliver, declaim, play in, interpret or otherwise perform literary or artistic works or expressions of folklore; (ii) in the case of a phonogram the producer being the person or legal entity who first fixes the sounds of a performance or other sounds; and, (iii) in the case of broadcasts, the organization that transmits the broadcast. +"Work" means the literary and/or artistic work offered under the terms of this License including without limitation any production in the literary, scientific and artistic domain, whatever may be the mode or form of its expression including digital form, such as a book, pamphlet and other writing; a lecture, address, sermon or other work of the same nature; a dramatic or dramatico-musical work; a choreographic work or entertainment in dumb show; a musical composition with or without words; a cinematographic work to which are assimilated works expressed by a process analogous to cinematography; a work of drawing, painting, architecture, sculpture, engraving or lithography; a photographic work to which are assimilated works expressed by a process analogous to photography; a work of applied art; an illustration, map, plan, sketch or three-dimensional work relative to geography, topography, architecture or science; a performance; a broadcast; a phonogram; a compilation of data to the extent it is protected as a copyrightable work; or a work performed by a variety or circus performer to the extent it is not otherwise considered a literary or artistic work. +"You" means an individual or entity exercising rights under this License who has not previously violated the terms of this License with respect to the Work, or who has received express permission from the Licensor to exercise rights under this License despite a previous violation. +"Publicly Perform" means to perform public recitations of the Work and to communicate to the public those public recitations, by any means or process, including by wire or wireless means or public digital performances; to make available to the public Works in such a way that members of the public may access these Works from a place and at a place individually chosen by them; to perform the Work to the public by any means or process and the communication to the public of the performances of the Work, including by public digital performance; to broadcast and rebroadcast the Work by any means including signs, sounds or images. +"Reproduce" means to make copies of the Work by any means including without limitation by sound or visual recordings and the right of fixation and reproducing fixations of the Work, including storage of a protected performance or phonogram in digital form or other electronic medium. +2. Fair Dealing Rights. Nothing in this License is intended to reduce, limit, or restrict any uses free from copyright or rights arising from limitations or exceptions that are provided for in connection with the copyright protection under copyright law or other applicable laws. + +3. License Grant. Subject to the terms and conditions of this License, Licensor hereby grants You a worldwide, royalty-free, non-exclusive, perpetual (for the duration of the applicable copyright) license to exercise the rights in the Work as stated below: + +to Reproduce the Work, to incorporate the Work into one or more Collections, and to Reproduce the Work as incorporated in the Collections; +to create and Reproduce Adaptations provided that any such Adaptation, including any translation in any medium, takes reasonable steps to clearly label, demarcate or otherwise identify that changes were made to the original Work. For example, a translation could be marked "The original work was translated from English to Spanish," or a modification could indicate "The original work has been modified."; +to Distribute and Publicly Perform the Work including as incorporated in Collections; and, +to Distribute and Publicly Perform Adaptations. +The above rights may be exercised in all media and formats whether now known or hereafter devised. The above rights include the right to make such modifications as are technically necessary to exercise the rights in other media and formats. Subject to Section 8(f), all rights not expressly granted by Licensor are hereby reserved, including but not limited to the rights described in Section 4(e). + +4. Restrictions. The license granted in Section 3 above is expressly made subject to and limited by the following restrictions: + +You may Distribute or Publicly Perform the Work only under the terms of this License. You must include a copy of, or the Uniform Resource Identifier (URI) for, this License with every copy of the Work You Distribute or Publicly Perform. You may not offer or impose any terms on the Work that restrict the terms of this License or the ability of the recipient of the Work to exercise the rights granted to that recipient under the terms of the License. You may not sublicense the Work. You must keep intact all notices that refer to this License and to the disclaimer of warranties with every copy of the Work You Distribute or Publicly Perform. When You Distribute or Publicly Perform the Work, You may not impose any effective technological measures on the Work that restrict the ability of a recipient of the Work from You to exercise the rights granted to that recipient under the terms of the License. This Section 4(a) applies to the Work as incorporated in a Collection, but this does not require the Collection apart from the Work itself to be made subject to the terms of this License. If You create a Collection, upon notice from any Licensor You must, to the extent practicable, remove from the Collection any credit as required by Section 4(d), as requested. If You create an Adaptation, upon notice from any Licensor You must, to the extent practicable, remove from the Adaptation any credit as required by Section 4(d), as requested. +You may Distribute or Publicly Perform an Adaptation only under: (i) the terms of this License; (ii) a later version of this License with the same License Elements as this License; (iii) a Creative Commons jurisdiction license (either this or a later license version) that contains the same License Elements as this License (e.g., Attribution-NonCommercial-ShareAlike 3.0 US) ("Applicable License"). You must include a copy of, or the URI, for Applicable License with every copy of each Adaptation You Distribute or Publicly Perform. You may not offer or impose any terms on the Adaptation that restrict the terms of the Applicable License or the ability of the recipient of the Adaptation to exercise the rights granted to that recipient under the terms of the Applicable License. You must keep intact all notices that refer to the Applicable License and to the disclaimer of warranties with every copy of the Work as included in the Adaptation You Distribute or Publicly Perform. When You Distribute or Publicly Perform the Adaptation, You may not impose any effective technological measures on the Adaptation that restrict the ability of a recipient of the Adaptation from You to exercise the rights granted to that recipient under the terms of the Applicable License. This Section 4(b) applies to the Adaptation as incorporated in a Collection, but this does not require the Collection apart from the Adaptation itself to be made subject to the terms of the Applicable License. +You may not exercise any of the rights granted to You in Section 3 above in any manner that is primarily intended for or directed toward commercial advantage or private monetary compensation. The exchange of the Work for other copyrighted works by means of digital file-sharing or otherwise shall not be considered to be intended for or directed toward commercial advantage or private monetary compensation, provided there is no payment of any monetary compensation in con-nection with the exchange of copyrighted works. +If You Distribute, or Publicly Perform the Work or any Adaptations or Collections, You must, unless a request has been made pursuant to Section 4(a), keep intact all copyright notices for the Work and provide, reasonable to the medium or means You are utilizing: (i) the name of the Original Author (or pseudonym, if applicable) if supplied, and/or if the Original Author and/or Licensor designate another party or parties (e.g., a sponsor institute, publishing entity, journal) for attribution ("Attribution Parties") in Licensor's copyright notice, terms of service or by other reasonable means, the name of such party or parties; (ii) the title of the Work if supplied; (iii) to the extent reasonably practicable, the URI, if any, that Licensor specifies to be associated with the Work, unless such URI does not refer to the copyright notice or licensing information for the Work; and, (iv) consistent with Section 3(b), in the case of an Adaptation, a credit identifying the use of the Work in the Adaptation (e.g., "French translation of the Work by Original Author," or "Screenplay based on original Work by Original Author"). The credit required by this Section 4(d) may be implemented in any reasonable manner; provided, however, that in the case of a Adaptation or Collection, at a minimum such credit will appear, if a credit for all contributing authors of the Adaptation or Collection appears, then as part of these credits and in a manner at least as prominent as the credits for the other contributing authors. For the avoidance of doubt, You may only use the credit required by this Section for the purpose of attribution in the manner set out above and, by exercising Your rights under this License, You may not implicitly or explicitly assert or imply any connection with, sponsorship or endorsement by the Original Author, Licensor and/or Attribution Parties, as appropriate, of You or Your use of the Work, without the separate, express prior written permission of the Original Author, Licensor and/or Attribution Parties. +For the avoidance of doubt: + +Non-waivable Compulsory License Schemes. In those jurisdictions in which the right to collect royalties through any statutory or compulsory licensing scheme cannot be waived, the Licensor reserves the exclusive right to collect such royalties for any exercise by You of the rights granted under this License; +Waivable Compulsory License Schemes. In those jurisdictions in which the right to collect royalties through any statutory or compulsory licensing scheme can be waived, the Licensor reserves the exclusive right to collect such royalties for any exercise by You of the rights granted under this License if Your exercise of such rights is for a purpose or use which is otherwise than noncommercial as permitted under Section 4(c) and otherwise waives the right to collect royalties through any statutory or compulsory licensing scheme; and, +Voluntary License Schemes. The Licensor reserves the right to collect royalties, whether individually or, in the event that the Licensor is a member of a collecting society that administers voluntary licensing schemes, via that society, from any exercise by You of the rights granted under this License that is for a purpose or use which is otherwise than noncommercial as permitted under Section 4(c). +Except as otherwise agreed in writing by the Licensor or as may be otherwise permitted by applicable law, if You Reproduce, Distribute or Publicly Perform the Work either by itself or as part of any Adaptations or Collections, You must not distort, mutilate, modify or take other derogatory action in relation to the Work which would be prejudicial to the Original Author's honor or reputation. Licensor agrees that in those jurisdictions (e.g. Japan), in which any exercise of the right granted in Section 3(b) of this License (the right to make Adaptations) would be deemed to be a distortion, mutilation, modification or other derogatory action prejudicial to the Original Author's honor and reputation, the Licensor will waive or not assert, as appropriate, this Section, to the fullest extent permitted by the applicable national law, to enable You to reasonably exercise Your right under Section 3(b) of this License (right to make Adaptations) but not otherwise. +5. Representations, Warranties and Disclaimer + +UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING AND TO THE FULLEST EXTENT PERMITTED BY APPLICABLE LAW, LICENSOR OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS, WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO THIS EXCLUSION MAY NOT APPLY TO YOU. + +6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +7. Termination + +This License and the rights granted hereunder will terminate automatically upon any breach by You of the terms of this License. Individuals or entities who have received Adaptations or Collections from You under this License, however, will not have their licenses terminated provided such individuals or entities remain in full compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will survive any termination of this License. +Subject to the above terms and conditions, the license granted here is perpetual (for the duration of the applicable copyright in the Work). Notwithstanding the above, Licensor reserves the right to release the Work under different license terms or to stop distributing the Work at any time; provided, however that any such election will not serve to withdraw this License (or any other license that has been, or is required to be, granted under the terms of this License), and this License will continue in full force and effect unless terminated as stated above. +8. Miscellaneous + +Each time You Distribute or Publicly Perform the Work or a Collection, the Licensor offers to the recipient a license to the Work on the same terms and conditions as the license granted to You under this License. +Each time You Distribute or Publicly Perform an Adaptation, Licensor offers to the recipient a license to the original Work on the same terms and conditions as the license granted to You under this License. +If any provision of this License is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this License, and without further action by the parties to this agreement, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable. +No term or provision of this License shall be deemed waived and no breach consented to unless such waiver or consent shall be in writing and signed by the party to be charged with such waiver or consent. +This License constitutes the entire agreement between the parties with respect to the Work licensed here. There are no understandings, agreements or representations with respect to the Work not specified here. Licensor shall not be bound by any additional provisions that may appear in any communication from You. This License may not be modified without the mutual written agreement of the Licensor and You. +The rights granted under, and the subject matter referenced, in this License were drafted utilizing the terminology of the Berne Convention for the Protection of Literary and Artistic Works (as amended on September 28, 1979), the Rome Convention of 1961, the WIPO Copyright Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996 and the Universal Copyright Convention (as revised on July 24, 1971). These rights and subject matter take effect in the relevant jurisdiction in which the License terms are sought to be enforced according to the corresponding provisions of the implementation of those treaty provisions in the applicable national law. If the standard suite of rights granted under applicable copyright law includes additional rights not granted under this License, such additional rights are deemed to be included in the License; this License is not intended to restrict the license of any rights under applicable law. +Creative Commons Notice +Creative Commons is not a party to this License, and makes no warranty whatsoever in connection with the Work. Creative Commons will not be liable to You or any party on any legal theory for any damages whatsoever, including without limitation any general, special, incidental or consequential damages arising in connection to this license. Notwithstanding the foregoing two (2) sentences, if Creative Commons has expressly identified itself as the Licensor hereunder, it shall have all rights and obligations of Licensor. + +Except for the limited purpose of indicating to the public that the Work is licensed under the CCPL, Creative Commons does not authorize the use by either party of the trademark "Creative Commons" or any related trademark or logo of Creative Commons without the prior written consent of Creative Commons. Any permitted use will be in compliance with Creative Commons' then-current trademark usage guidelines, as may be published on its website or otherwise made available upon request from time to time. For the avoidance of doubt, this trademark restriction does not form part of this License. + +Creative Commons may be contacted at https://creativecommons.org/. \ No newline at end of file diff --git a/icons/mob/drakeborg/drakeborg_vr.dmi b/icons/mob/drakeborg/drakeborg_vr.dmi new file mode 100644 index 0000000000..c1ec3f92b0 Binary files /dev/null and b/icons/mob/drakeborg/drakeborg_vr.dmi differ diff --git a/icons/mob/head_ch.dmi b/icons/mob/head_ch.dmi index 349ad43760..fa54729c83 100644 Binary files a/icons/mob/head_ch.dmi and b/icons/mob/head_ch.dmi differ diff --git a/icons/mob/screen_gen.dmi b/icons/mob/screen_gen.dmi index 2071c634d1..75ba00f026 100644 Binary files a/icons/mob/screen_gen.dmi and b/icons/mob/screen_gen.dmi differ diff --git a/icons/mob/species/seromi/eyes.dmi b/icons/mob/species/seromi/eyes.dmi index e50b97c956..250a56d4f9 100644 Binary files a/icons/mob/species/seromi/eyes.dmi and b/icons/mob/species/seromi/eyes.dmi differ diff --git a/icons/mob/species/seromi/uniform.dmi b/icons/mob/species/seromi/uniform.dmi index aab4dcfe06..cd853f3e15 100644 Binary files a/icons/mob/species/seromi/uniform.dmi and b/icons/mob/species/seromi/uniform.dmi differ diff --git a/icons/mob/species/werebeast/back.dmi b/icons/mob/species/werebeast/back.dmi index 14cd04dbdd..f04103f7a7 100644 Binary files a/icons/mob/species/werebeast/back.dmi and b/icons/mob/species/werebeast/back.dmi differ diff --git a/icons/mob/species/werebeast/uniform.dmi b/icons/mob/species/werebeast/uniform.dmi index e441c4af6d..267847085f 100644 Binary files a/icons/mob/species/werebeast/uniform.dmi and b/icons/mob/species/werebeast/uniform.dmi differ diff --git a/icons/mob/synxmanyvoices.dmi b/icons/mob/synxmanyvoices.dmi new file mode 100644 index 0000000000..8c55fec429 Binary files /dev/null and b/icons/mob/synxmanyvoices.dmi differ diff --git a/icons/mob/vore/ears_ch.dmi b/icons/mob/vore/ears_ch.dmi index 7dc601d85a..ea822a9e4b 100644 Binary files a/icons/mob/vore/ears_ch.dmi and b/icons/mob/vore/ears_ch.dmi differ diff --git a/icons/mob/vore/taurs_vr.dmi b/icons/mob/vore/taurs_vr.dmi index 7bc343655a..a724ddd57d 100644 Binary files a/icons/mob/vore/taurs_vr.dmi and b/icons/mob/vore/taurs_vr.dmi differ diff --git a/icons/mob/vore64x32.dmi b/icons/mob/vore64x32.dmi index 2dde6000ff..62fe533917 100644 Binary files a/icons/mob/vore64x32.dmi and b/icons/mob/vore64x32.dmi differ diff --git a/icons/mob/vore_ch.dmi b/icons/mob/vore_ch.dmi index 6f12d18848..aae5553e32 100644 Binary files a/icons/mob/vore_ch.dmi and b/icons/mob/vore_ch.dmi differ diff --git a/icons/mob/vore_shadekin.dmi b/icons/mob/vore_shadekin.dmi index fb35b1b764..98af062701 100644 Binary files a/icons/mob/vore_shadekin.dmi and b/icons/mob/vore_shadekin.dmi differ diff --git a/icons/mob/vore_shadekin64.dmi b/icons/mob/vore_shadekin64.dmi index b6b0339266..35e0769837 100644 Binary files a/icons/mob/vore_shadekin64.dmi and b/icons/mob/vore_shadekin64.dmi differ diff --git a/icons/mob/widerobot_colors_vr.dmi b/icons/mob/widerobot_colors_ch.dmi similarity index 100% rename from icons/mob/widerobot_colors_vr.dmi rename to icons/mob/widerobot_colors_ch.dmi diff --git a/icons/mob/widerobot_vr.dmi b/icons/mob/widerobot_vr.dmi index 620a150254..a43324bf80 100644 Binary files a/icons/mob/widerobot_vr.dmi and b/icons/mob/widerobot_vr.dmi differ diff --git a/icons/mob/wolfpelt_ch.dmi b/icons/mob/wolfpelt_ch.dmi new file mode 100644 index 0000000000..263c7ec018 Binary files /dev/null and b/icons/mob/wolfpelt_ch.dmi differ diff --git a/icons/obj/64x32guns_ch.dmi b/icons/obj/64x32guns_ch.dmi new file mode 100644 index 0000000000..9f5057370a Binary files /dev/null and b/icons/obj/64x32guns_ch.dmi differ diff --git a/icons/obj/ammo_ch.dmi b/icons/obj/ammo_ch.dmi new file mode 100644 index 0000000000..86114de902 Binary files /dev/null and b/icons/obj/ammo_ch.dmi differ diff --git a/icons/obj/clothing/glasses.dmi b/icons/obj/clothing/glasses.dmi index e410088a23..93d368d42c 100644 Binary files a/icons/obj/clothing/glasses.dmi and b/icons/obj/clothing/glasses.dmi differ diff --git a/icons/obj/clothing/hats_ch.dmi b/icons/obj/clothing/hats_ch.dmi index 6fa68d8291..c79fdb08b3 100644 Binary files a/icons/obj/clothing/hats_ch.dmi and b/icons/obj/clothing/hats_ch.dmi differ diff --git a/icons/obj/clothing/uniforms.dmi b/icons/obj/clothing/uniforms.dmi index 473b6614e6..3c252b8d35 100644 Binary files a/icons/obj/clothing/uniforms.dmi and b/icons/obj/clothing/uniforms.dmi differ diff --git a/icons/obj/clothing/uniforms_1.dmi b/icons/obj/clothing/uniforms_1.dmi index eba7fa299f..9478ef888d 100644 Binary files a/icons/obj/clothing/uniforms_1.dmi and b/icons/obj/clothing/uniforms_1.dmi differ diff --git a/icons/obj/drakietoy_vr.dmi b/icons/obj/drakietoy_vr.dmi new file mode 100644 index 0000000000..34a4932513 Binary files /dev/null and b/icons/obj/drakietoy_vr.dmi differ diff --git a/icons/obj/egg_new_vr.dmi b/icons/obj/egg_new_vr.dmi new file mode 100644 index 0000000000..b9804d69ba Binary files /dev/null and b/icons/obj/egg_new_vr.dmi differ diff --git a/icons/obj/egg_open_vr.dmi b/icons/obj/egg_open_vr.dmi new file mode 100644 index 0000000000..e3faabb4dc Binary files /dev/null and b/icons/obj/egg_open_vr.dmi differ diff --git a/icons/obj/egg_vr.dmi b/icons/obj/egg_vr.dmi index c54ac62b10..14c17920f8 100644 Binary files a/icons/obj/egg_vr.dmi and b/icons/obj/egg_vr.dmi differ diff --git a/icons/obj/food.dmi b/icons/obj/food.dmi index 56d13d9fc6..af15334c11 100644 Binary files a/icons/obj/food.dmi and b/icons/obj/food.dmi differ diff --git a/icons/obj/food_custom.dmi b/icons/obj/food_custom.dmi index ee26eb7777..e8be40f76d 100644 Binary files a/icons/obj/food_custom.dmi and b/icons/obj/food_custom.dmi differ diff --git a/icons/obj/grenade_ch.dmi b/icons/obj/grenade_ch.dmi index 2de0d1f328..8cfa18fb96 100644 Binary files a/icons/obj/grenade_ch.dmi and b/icons/obj/grenade_ch.dmi differ diff --git a/icons/obj/gun_ch.dmi b/icons/obj/gun_ch.dmi index cd1aea82ba..c511b9b210 100644 Binary files a/icons/obj/gun_ch.dmi and b/icons/obj/gun_ch.dmi differ diff --git a/icons/obj/machines/shielding_vr.dmi b/icons/obj/machines/shielding_vr.dmi new file mode 100644 index 0000000000..195192b1c8 Binary files /dev/null and b/icons/obj/machines/shielding_vr.dmi differ diff --git a/icons/obj/power.dmi b/icons/obj/power.dmi index 732bb44e00..c806ec99be 100644 Binary files a/icons/obj/power.dmi and b/icons/obj/power.dmi differ diff --git a/icons/obj/sandbags.dmi b/icons/obj/sandbags.dmi new file mode 100644 index 0000000000..0a5c24598a Binary files /dev/null and b/icons/obj/sandbags.dmi differ diff --git a/icons/obj/toy_vr.dmi b/icons/obj/toy_vr.dmi index 9333c6b938..2e6c3af857 100644 Binary files a/icons/obj/toy_vr.dmi and b/icons/obj/toy_vr.dmi differ diff --git a/icons/obj/trap.dmi b/icons/obj/trap.dmi new file mode 100644 index 0000000000..108bc46726 Binary files /dev/null and b/icons/obj/trap.dmi differ diff --git a/icons/obj/weapons_ch.dmi b/icons/obj/weapons_ch.dmi index 6d14949cb4..472237fd68 100644 Binary files a/icons/obj/weapons_ch.dmi and b/icons/obj/weapons_ch.dmi differ diff --git a/icons/obj/xenoegun/xeno-eguns_ch.dmi b/icons/obj/xenoegun/xeno-eguns_ch.dmi new file mode 100644 index 0000000000..79b1c89bf8 Binary files /dev/null and b/icons/obj/xenoegun/xeno-eguns_ch.dmi differ diff --git a/icons/turf/flooring/decals.dmi b/icons/turf/flooring/decals.dmi index 66e365251a..acd81e57f1 100644 Binary files a/icons/turf/flooring/decals.dmi and b/icons/turf/flooring/decals.dmi differ diff --git a/icons/vore/custom_clothes_vr.dmi b/icons/vore/custom_clothes_vr.dmi index 3e3d53b3db..d9b172cd5a 100644 Binary files a/icons/vore/custom_clothes_vr.dmi and b/icons/vore/custom_clothes_vr.dmi differ diff --git a/maps/southern_cross/southern_cross-1.dmm b/maps/southern_cross/southern_cross-1.dmm index 1fd55bc528..1a16018b1c 100644 --- a/maps/southern_cross/southern_cross-1.dmm +++ b/maps/southern_cross/southern_cross-1.dmm @@ -1,20 +1,24 @@ "aaa" = (/turf/space,/area/space) -"aab" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/space,/turf/simulated/floor/tiled,/area/construction/firstdeck/construction5) +"aab" = (/obj/structure/lattice,/obj/machinery/shield_diffuser,/turf/space,/area/space) +"aac" = (/obj/structure/lattice,/obj/item/stack/rods,/obj/item/stack/rods,/obj/machinery/shield_diffuser,/turf/space,/area/space) "aad" = (/obj/structure/lattice,/obj/structure/grille,/turf/space,/area/space) -"aae" = (/obj/effect/decal/cleanable/blood/oil/streak{amount = 0},/obj/item/weapon/tool/wirecutters,/turf/space,/turf/simulated/floor/tiled,/area/construction/firstdeck/construction5) +"aae" = (/obj/structure/lattice,/obj/structure/grille/broken,/obj/machinery/shield_diffuser,/turf/space,/area/space) "aaf" = (/obj/structure/lattice,/turf/space,/area/space) -"aag" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/space,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet/firstdeck) -"aai" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/space,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet/firstdeck) +"aag" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/construction/firstdeck/construction5) +"aah" = (/turf/space,/obj/effect/decal/cleanable/blood/oil/streak{amount = 0},/obj/item/weapon/tool/wirecutters,/turf/simulated/floor/tiled,/area/construction/firstdeck/construction5) +"aai" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet/firstdeck) "aaj" = (/obj/effect/landmark{name = "bluespacerift"},/turf/space,/area/space) +"aak" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet/firstdeck) "aal" = (/obj/machinery/shield_diffuser,/turf/simulated/floor/airless,/area/hallway/primary/firstdeck/auxdockfore) "aam" = (/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/firstdeck/auxdockfore) -"aan" = (/obj/structure/table/glass,/obj/item/clothing/glasses/science,/obj/item/clothing/glasses/science,/obj/item/weapon/weldingtool,/obj/item/clothing/head/welding,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/space,/turf/simulated/floor/tiled/techfloor,/area/rnd/xenobiology) +"aan" = (/turf/space,/obj/structure/table/glass,/obj/item/clothing/glasses/science,/obj/item/clothing/glasses/science,/obj/item/weapon/weldingtool,/obj/item/clothing/head/welding,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/tiled/techfloor,/area/rnd/xenobiology) "aao" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "d1fore_port2_outer"; locked = 1; name = "Dock External Airlock"; req_access = list(13)},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "d1fore_port2_airlock"; name = "exterior access button"; pixel_x = 26; req_access = list(13)},/turf/simulated/floor/tiled/dark,/area/hallway/primary/firstdeck/auxdockfore) -"aaq" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular,/obj/machinery/ai_status_display{pixel_y = 32},/turf/simulated/floor/holofloor/wood,/area/crew_quarters/firstdeck/gym) -"aar" = (/turf/simulated/floor/holofloor/wood,/area/crew_quarters/firstdeck/gym) -"aas" = (/obj/structure/fitness/punchingbag,/turf/simulated/floor/holofloor/wood,/area/crew_quarters/firstdeck/gym) -"aat" = (/obj/machinery/camera/network/civilian{c_tag = "CIV - Station Gym"},/turf/simulated/floor/holofloor/wood,/area/crew_quarters/firstdeck/gym) -"aau" = (/obj/structure/reagent_dispensers/water_cooler/full,/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/holofloor/wood,/area/crew_quarters/firstdeck/gym) +"aap" = (/turf/space,/obj/structure/table/glass,/obj/item/weapon/surgical/scalpel{pixel_y = 12},/obj/item/weapon/surgical/circular_saw,/obj/machinery/camera/network/research{c_tag = "SCI - Xenobiology Fore Starboard"; dir = 4},/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/simulated/floor/tiled,/area/rnd/xenobiology) +"aaq" = (/obj/machinery/ai_status_display{pixel_y = 32},/obj/structure/table,/turf/simulated/floor/holofloor/wood,/area/construction/firstdeck) +"aar" = (/turf/simulated/floor/holofloor/wood,/area/construction/firstdeck) +"aas" = (/turf/space,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/purple/border{dir = 8},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/white,/area/rnd/research/firstdeck/hallway) +"aat" = (/obj/machinery/camera/network/civilian{c_tag = "CIV - Station Gym"},/turf/simulated/floor/plating,/area/construction/firstdeck) +"aau" = (/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/plating,/area/construction/firstdeck) "aav" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1379; id_tag = "d1fore_port2_pump"},/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/steel_dirty,/area/hallway/primary/firstdeck/auxdockfore) "aaw" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1379; id_tag = "d1fore_port2_pump"},/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/steel_dirty,/area/hallway/primary/firstdeck/auxdockfore) "aax" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/auxdockfore) @@ -22,8 +26,8 @@ "aaz" = (/obj/machinery/firealarm{pixel_y = 24},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/auxdockfore) "aaA" = (/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/auxdockfore) "aaB" = (/obj/structure/closet/emcloset,/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/auxdockfore) -"aaC" = (/obj/structure/table/standard,/obj/machinery/recharger,/obj/item/weapon/tool/wrench,/obj/machinery/light{dir = 8},/turf/simulated/floor/holofloor/wood,/area/crew_quarters/firstdeck/gym) -"aaD" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/cups,/turf/simulated/floor/holofloor/wood,/area/crew_quarters/firstdeck/gym) +"aaC" = (/obj/structure/table/standard,/obj/machinery/recharger,/obj/item/weapon/tool/wrench,/obj/machinery/light_construct{dir = 8},/turf/simulated/floor/holofloor/wood,/area/construction/firstdeck) +"aaD" = (/obj/random/toolbox,/turf/simulated/floor/plating,/area/construction/firstdeck) "aaE" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/effect/floor_decal/rust,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/tiled/steel_dirty,/area/hallway/primary/firstdeck/auxdockfore) "aaF" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/firstdeck/auxdockfore) "aaG" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/auxdockfore) @@ -32,9 +36,9 @@ "aaJ" = (/obj/structure/bed/chair{dir = 1},/obj/machinery/status_display{layer = 4; pixel_x = 32},/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod{frequency = 1380; id_tag = "escape_pod_2"; pixel_x = -25; tag_door = "escape_pod_2_hatch"},/obj/machinery/light{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod2/station) "aaK" = (/obj/effect/floor_decal/industrial/warning,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "d1fore_port_airlock"; name = "exterior access button"; pixel_x = -26; req_access = null},/obj/machinery/light/small{dir = 8},/obj/machinery/shield_diffuser,/turf/simulated/floor/airless,/area/maintenance/firstdeck/foreport) "aaL" = (/obj/effect/floor_decal/industrial/warning,/obj/machinery/shield_diffuser,/turf/simulated/floor/airless,/area/maintenance/firstdeck/foreport) -"aaM" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/machinery/scale,/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) -"aaN" = (/obj/structure/table/glass,/obj/item/weapon/surgical/scalpel{pixel_y = 12},/obj/item/weapon/surgical/circular_saw,/obj/machinery/camera/network/research{c_tag = "SCI - Xenobiology Fore Starboard"; dir = 4},/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/space,/turf/simulated/floor/tiled,/area/rnd/xenobiology) -"aaO" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/structure/extinguisher_cabinet{pixel_x = 28},/obj/machinery/scale,/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) +"aaM" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor/tiled,/area/construction/firstdeck) +"aaN" = (/turf/space,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/industrial/warning,/obj/machinery/door/window/brigdoor/southright{name = "Containment Pen"; req_access = list(47)},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled/techmaint,/area/rnd/xenobiology) +"aaO" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/structure/extinguisher_cabinet{pixel_x = 28},/turf/simulated/floor/tiled,/area/construction/firstdeck) "aaP" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{id_tag = "d1fore_port2_airlock"; pixel_y = -26; req_access = list(13); tag_airpump = "d1fore_port2_pump"; tag_chamber_sensor = "d1fore_port2_sensor"; tag_exterior_door = "d1fore_port2_outer"; tag_interior_door = "d1fore_port2_inner"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "d1fore_port2_pump"},/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/steel_dirty,/area/hallway/primary/firstdeck/auxdockfore) "aaQ" = (/obj/machinery/airlock_sensor{id_tag = "d1fore_port2_sensor"; pixel_y = -25},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "d1fore_port2_pump"},/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/steel_dirty,/area/hallway/primary/firstdeck/auxdockfore) "aaR" = (/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/effect/floor_decal/rust,/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/auxdockfore) @@ -44,9 +48,9 @@ "aaV" = (/obj/structure/closet/emcloset,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/auxdockfore) "aaW" = (/obj/structure/bed/chair{dir = 1},/obj/machinery/vending/wallmed1{layer = 3.3; name = "Emergency NanoMed"; pixel_x = -28},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod1/station) "aaX" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "d1fore_port_outer"; locked = 1; name = "External Airlock Access"; req_access = list(13)},/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) -"aaY" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) -"aaZ" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) -"aba" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) +"aaY" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/plating,/area/construction/firstdeck) +"aaZ" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled,/area/construction/firstdeck) +"aba" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/plating,/area/construction/firstdeck) "abb" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/auxdockfore) "abc" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/auxdockfore) "abd" = (/obj/structure/sign/deck/first,/turf/simulated/wall/r_wall,/area/hallway/primary/firstdeck/auxdockfore) @@ -55,21 +59,21 @@ "abg" = (/obj/machinery/airlock_sensor{id_tag = "d1fore_port_sensor"; pixel_x = -25},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1379; id_tag = "d1fore_port_pump"},/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) "abh" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{id_tag = "d1fore_port_airlock"; pixel_x = 26; req_access = null; tag_airpump = "d1fore_port_pump"; tag_chamber_sensor = "d1fore_port_sensor"; tag_exterior_door = "d1fore_port_outer"; tag_interior_door = "d1fore_port_inner"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "d1fore_port_pump"},/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) "abi" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/turf/simulated/wall/r_wall,/area/maintenance/firstdeck/foreport) -"abj" = (/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) -"abk" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) -"abl" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) -"abm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) -"abn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) -"abo" = (/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) +"abj" = (/turf/simulated/floor/plating,/area/construction/firstdeck) +"abk" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled,/area/construction/firstdeck) +"abl" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/item/weapon/stool/padded,/turf/simulated/floor/plating,/area/construction/firstdeck) +"abm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled,/area/construction/firstdeck) +"abn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/construction/firstdeck) +"abo" = (/obj/machinery/light_construct{dir = 4},/turf/simulated/floor/plating,/area/construction/firstdeck) "abp" = (/obj/structure/table/standard,/obj/item/device/t_scanner,/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/plating,/area/storage/emergency_storage/firstdeck/fore_emergency) "abq" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/door/airlock/glass{name = "Auxiliary Dock"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/firstdeck/auxdockfore) "abr" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/hallway/primary/firstdeck/auxdockfore) "abs" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/light{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/fore) "abt" = (/obj/effect/shuttle_landmark{base_area = /area/space; base_turf = /turf/space; landmark_tag = "d1_near_nw"; name = "Near SC - Deck 1 North West"},/turf/space,/area/space) -"abu" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/purple/border{dir = 8},/obj/machinery/light{dir = 8},/turf/space,/turf/simulated/floor/tiled/white,/area/rnd/research/firstdeck/hallway) -"abv" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/industrial/warning,/obj/machinery/door/window/brigdoor/southright{name = "Containment Pen"; req_access = list(47)},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/space,/turf/simulated/floor/tiled/techmaint,/area/rnd/xenobiology) +"abu" = (/turf/space,/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/industrial/warning,/obj/machinery/button/remote/blast_door{id = "xenobio6station"; name = "Containment Blast Doors"; pixel_y = 4; req_access = list(55)},/turf/simulated/floor/tiled/dark,/area/rnd/xenobiology) +"abv" = (/turf/space,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/effect/floor_decal/spline/plain,/turf/simulated/floor/tiled,/area/rnd/xenobiology) "abw" = (/obj/structure/stairs/east,/turf/simulated/floor/tiled/dark,/area/hallway/primary/firstdeck/fore) -"abx" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/industrial/warning,/obj/machinery/button/remote/blast_door{id = "xenobio6station"; name = "Containment Blast Doors"; pixel_y = 4; req_access = list(55)},/turf/space,/turf/simulated/floor/tiled/dark,/area/rnd/xenobiology) +"abx" = (/turf/space,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/turf/simulated/floor/tiled/white,/area/rnd/xenobiology) "aby" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_1_hatch"; locked = 1; name = "Escape Pod 1 Hatch"; req_access = list(13)},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod1/station) "abz" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{id_tag = "d1fore_starboard_airlock"; pixel_x = -26; req_access = null; tag_airpump = "d1fore_starboard_pump"; tag_chamber_sensor = "d1fore_starboard_sensor"; tag_exterior_door = "d1fore_starboard_outer"; tag_interior_door = "d1fore_starboard_inner"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1379; id_tag = "d1fore_starboard_pump"},/turf/simulated/floor/plating,/area/maintenance/firstdeck/forestarboard) "abA" = (/obj/machinery/airlock_sensor{id_tag = "d1fore_starboard_sensor"; pixel_x = 25},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "d1fore_starboard_pump"},/turf/simulated/floor/plating,/area/maintenance/firstdeck/forestarboard) @@ -78,10 +82,10 @@ "abD" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1379; id_tag = "d1fore_port_pump"},/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) "abE" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "d1fore_port_pump"},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) "abF" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/wall/r_wall,/area/maintenance/firstdeck/foreport) -"abG" = (/obj/structure/closet/athletic_mixed,/obj/machinery/newscaster{layer = 3.3; pixel_y = -27},/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) -"abH" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) -"abI" = (/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/effect/floor_decal/spline/plain,/turf/space,/turf/simulated/floor/tiled,/area/rnd/xenobiology) -"abJ" = (/obj/item/weapon/stool/padded,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) +"abG" = (/obj/machinery/newscaster{layer = 3.3; pixel_y = -27},/turf/simulated/floor/tiled,/area/construction/firstdeck) +"abH" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/construction/firstdeck) +"abI" = (/turf/space,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/turf/simulated/floor/tiled/white,/area/rnd/xenobiology) +"abJ" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/construction/firstdeck) "abK" = (/obj/structure/closet/hydrant{pixel_x = -32},/obj/item/clothing/glasses/meson,/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/plating,/area/storage/emergency_storage/firstdeck/fore_emergency) "abL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/storage/emergency_storage/firstdeck/fore_emergency) "abM" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/fore) @@ -98,15 +102,13 @@ "abX" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/door/airlock/glass_external{frequency = 1379; icon_state = "door_locked"; id_tag = "d1fore_port_inner"; locked = 1; name = "Internal Airlock Access"; req_access = list(13)},/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) "abY" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/obj/machinery/door/airlock/glass_external{frequency = 1379; icon_state = "door_locked"; id_tag = "d1fore_port_inner"; locked = 1; name = "Internal Airlock Access"; req_access = list(13)},/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) "abZ" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/wall/r_wall,/area/maintenance/firstdeck/foreport) -"aca" = (/obj/machinery/door/airlock/glass{name = "Gym"},/obj/machinery/door/firedoor/glass,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/firstdeck/gym) +"aca" = (/obj/machinery/door/airlock/glass{name = "Gym"},/obj/machinery/door/firedoor/glass,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/tape/engineering,/obj/structure/barricade,/turf/simulated/floor/tiled/steel_grid,/area/construction/firstdeck) "acb" = (/turf/simulated/wall,/area/storage/emergency_storage/firstdeck/fore_emergency) "acc" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock{name = "Emergency Storage"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/storage/emergency_storage/firstdeck/fore_emergency) "acd" = (/obj/machinery/newscaster,/turf/simulated/wall/r_wall,/area/storage/emergency_storage/firstdeck/fore_emergency) -"ace" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/turf/space,/turf/simulated/floor/tiled/white,/area/rnd/xenobiology) +"ace" = (/turf/space,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/random/mob/mouse,/turf/simulated/floor/plating,/area/maintenance/firstdeck/aftstarboard) "acf" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/firstdeck/fore) "acg" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/fore) -"ach" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/turf/space,/turf/simulated/floor/tiled/white,/area/rnd/xenobiology) -"aci" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/random/mob/mouse,/turf/space,/turf/simulated/floor/plating,/area/maintenance/firstdeck/aftstarboard) "acj" = (/obj/effect/overmap/visitable/sector/Southern_Cross,/turf/space,/area/space) "acl" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/fore) "acm" = (/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/fore) @@ -134,7 +136,6 @@ "acN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/red/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/fore) "acO" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "d1fore_starboard_airlock"; name = "interior access button"; pixel_x = -26; req_access = null},/turf/simulated/floor/plating,/area/maintenance/firstdeck/forestarboard) "acP" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/firstdeck/forestarboard) -"acQ" = (/obj/structure/lattice,/obj/item/stack/rods,/obj/item/stack/rods,/turf/space,/area/space) "acS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) "acU" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/catwalk,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) "acV" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) @@ -187,7 +188,7 @@ "aee" = (/obj/effect/floor_decal/borderfloorblack/corner{dir = 8},/obj/effect/floor_decal/industrial/danger/corner{dir = 1},/turf/simulated/floor/tiled,/area/hangar/one) "aej" = (/obj/machinery/computer/shuttle_control/exploration{dir = 8},/obj/machinery/camera/network/carrier{c_tag = "CAR - Sling Shuttle"; dir = 9},/turf/simulated/shuttle/floor/darkred,/area/shuttle/expoutpost/station) "aek" = (/obj/effect/floor_decal/rust,/obj/random/trash_pile,/turf/simulated/floor/plating,/area/construction/firstdeck/construction5) -"ael" = (/obj/machinery/shower{dir = 4; pixel_x = 5; pixel_y = -1},/obj/structure/curtain/open/shower,/obj/effect/floor_decal/borderfloorwhite/cee{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet/firstdeck) +"ael" = (/obj/machinery/shower{dir = 4; pixel_x = 5; pixel_y = -1},/obj/structure/curtain/open/shower,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet/firstdeck) "aem" = (/obj/effect/floor_decal/industrial/warning,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "d1fore_starboard_airlock"; name = "exterior access button"; pixel_x = 26; req_access = null},/obj/machinery/light/small{dir = 4},/obj/machinery/shield_diffuser,/turf/simulated/floor/airless,/area/maintenance/firstdeck/forestarboard) "aen" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet/firstdeck) "aeo" = (/obj/structure/mirror{pixel_y = 32},/obj/structure/sink{pixel_y = 16},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet/firstdeck) @@ -205,7 +206,7 @@ "aeA" = (/obj/effect/floor_decal/borderfloorblack/corner{dir = 8},/obj/effect/floor_decal/industrial/danger/corner{dir = 1},/turf/simulated/floor/tiled/steel,/area/hangar/three) "aeB" = (/obj/machinery/door/airlock/glass_external{frequency = 1380; icon_state = "door_locked"; id_tag = "exp_sling_station_door"; locked = 1; name = "Carrier Sling Access"; req_access = list(); req_one_access = list(5,43,67)},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/expoutpost/stationshuttle) "aeC" = (/obj/machinery/door/airlock/glass_external{frequency = 1380; icon_state = "door_locked"; id_tag = "exp_sling_hatch"; locked = 1; name = "Carrier Sling Hatch"; req_access = list(); req_one_access = list(5,43,67)},/turf/simulated/shuttle/floor/darkred,/area/shuttle/expoutpost/station) -"aeF" = (/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/firstdeck/gym) +"aeF" = (/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced,/obj/item/tape/engineering,/obj/structure/barricade,/turf/simulated/floor/plating,/area/construction/firstdeck) "aeG" = (/obj/effect/shuttle_landmark/southern_cross/sling_station,/turf/simulated/shuttle/floor/darkred,/area/shuttle/expoutpost/station) "aeH" = (/turf/simulated/shuttle/floor/darkred,/area/shuttle/expoutpost/station) "aeI" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled,/area/hangar/one) @@ -222,7 +223,7 @@ "aeT" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) "aeU" = (/obj/machinery/atmospherics/binary/pump/on{dir = 4; target_pressure = 200},/obj/machinery/atmospherics/pipe/simple/hidden/universal,/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) "aeV" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/closet/crate,/obj/item/weapon/toy/xmas_cracker,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/random/maintenance/engineering,/obj/random/maintenance/clean,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) -"aeY" = (/obj/machinery/light{dir = 8},/obj/machinery/shower{dir = 4; pixel_x = 5; pixel_y = -1},/obj/structure/curtain/open/shower,/obj/effect/floor_decal/borderfloorwhite/cee{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet/firstdeck) +"aeY" = (/obj/machinery/light{dir = 8},/obj/machinery/shower{dir = 4; pixel_x = 5; pixel_y = -1},/obj/structure/curtain/open/shower,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet/firstdeck) "aeZ" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet/firstdeck) "afb" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/fore) "afd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloor/corner2{dir = 9},/obj/effect/floor_decal/borderfloor/corner2,/obj/effect/floor_decal/corner/green/bordercorner2,/obj/effect/floor_decal/corner/green/bordercorner2{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/fore) @@ -325,7 +326,7 @@ "ahw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/camera/network/first_deck{c_tag = "Hangar One - Fore Starboard"; dir = 8},/turf/simulated/floor/tiled/monotile,/area/hangar/one) "ahx" = (/obj/machinery/light/small{dir = 8},/obj/structure/catwalk,/obj/structure/loot_pile/maint/boxfort,/turf/simulated/floor/plating,/area/storage/emergency_storage/firstdeck/fp_emergency) "ahy" = (/obj/structure/ladder/up,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/plating,/area/storage/emergency_storage/firstdeck/fp_emergency) -"ahA" = (/obj/effect/floor_decal/borderfloor{dir = 1},/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) +"ahA" = (/obj/effect/floor_decal/borderfloor{dir = 1},/turf/simulated/floor/tiled,/area/construction/firstdeck) "ahC" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/auxdockfore) "ahD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/auxdockfore) "ahF" = (/turf/simulated/shuttle/wall/no_join{base_state = "orange"; icon = 'icons/turf/shuttle_orange.dmi'; icon_state = "orange"},/area/shuttle/escape_pod1/station) @@ -358,7 +359,7 @@ "aij" = (/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/firstdeck/forestarboard) "aik" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/table/bench/steel,/turf/simulated/floor/tiled/monofloor{dir = 1},/area/hangar/three) "ail" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/firstdeck/auxdockfore) -"ain" = (/obj/structure/fitness/weightlifter,/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) +"ain" = (/obj/machinery/scale,/turf/simulated/floor/tiled,/area/construction/firstdeck) "aip" = (/obj/structure/bed/chair{dir = 1},/obj/structure/closet/walllocker/emerglocker{pixel_x = -28},/obj/effect/shuttle_landmark/southern_cross/escape_pod2/station,/turf/simulated/shuttle/floor,/area/shuttle/escape_pod2/station) "ais" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "d1fore_starboard_outer"; locked = 1; name = "External Airlock Access"; req_access = list(13)},/turf/simulated/floor/plating,/area/maintenance/firstdeck/forestarboard) "aiu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/table/bench/steel,/turf/simulated/floor/tiled/monofloor{dir = 1},/area/hangar/three) @@ -368,7 +369,7 @@ "aiz" = (/obj/structure/table/glass,/obj/item/weapon/material/minihoe,/obj/item/weapon/material/minihoe,/obj/item/weapon/material/knife/machete/hatchet,/obj/item/weapon/material/knife/machete/hatchet,/turf/simulated/floor/tiled/white,/area/rnd/xenobiology/xenoflora) "aiA" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/machinery/light/spot{dir = 8},/turf/simulated/floor/tiled,/area/hangar/one) "aiB" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/table/bench/steel,/turf/simulated/floor/tiled/monofloor,/area/hangar/one) -"aiC" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) +"aiC" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/construction/firstdeck) "aiD" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/storage/emergency_storage/firstdeck/fore_emergency) "aiE" = (/obj/machinery/floodlight,/turf/simulated/floor/plating,/area/storage/emergency_storage/firstdeck/fore_emergency) "aiF" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Auxiliary Dock"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/firstdeck/auxdockfore) @@ -385,7 +386,7 @@ "aiR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/firstdeck/forestarboard) "aiS" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/machinery/light/spot{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled,/area/hangar/three) "aiT" = (/obj/structure/table/glass,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/effect/floor_decal/borderfloorwhite{dir = 9},/obj/effect/floor_decal/corner/purple/border{dir = 9},/turf/simulated/floor/tiled/white,/area/rnd/research/firstdeck/hallway) -"aiU" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/tiled,/area/crew_quarters/firstdeck/gym) +"aiU" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/tiled,/area/construction/firstdeck) "aiV" = (/obj/machinery/portable_atmospherics/powered/pump/filled,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/storage/emergency_storage/firstdeck/fore_emergency) "aiW" = (/turf/simulated/wall/r_wall,/area/storage/emergency_storage/firstdeck/fore_emergency) "aiX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals5,/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/fore) @@ -401,8 +402,8 @@ "aji" = (/turf/simulated/wall/r_wall,/area/hallway/primary/firstdeck/auxdockfore) "ajj" = (/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "shuttle1_shuttle"; pixel_y = 26; tag_airpump = "shuttle1_pump"; tag_chamber_sensor = "shuttle1_sensor"; tag_exterior_door = "shuttle1_outer"; tag_interior_door = "shuttle1_inner"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1380; id_tag = "shuttle1_pump"},/turf/simulated/shuttle/floor/black,/area/shuttle/shuttle1/start) "ajk" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/camera/network/first_deck{c_tag = "First Deck - Fore Hallway 3"; dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/fore) -"ajl" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/firstdeck/gym) -"ajm" = (/turf/simulated/wall/r_wall,/area/crew_quarters/firstdeck/gym) +"ajl" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/obj/item/tape/engineering,/obj/structure/barricade,/turf/simulated/floor/plating,/area/construction/firstdeck) +"ajm" = (/turf/simulated/wall/r_wall,/area/construction/firstdeck) "ajn" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/firstdeck/fore) "ajq" = (/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1380; id_tag = "shuttle1_pump"},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "shuttle1_sensor"; pixel_y = 28},/turf/simulated/shuttle/floor/black,/area/shuttle/shuttle1/start) "ajs" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/structure/table/rack/shelf,/obj/item/weapon/storage/backpack/parachute{pixel_x = -6; pixel_y = 6},/obj/item/weapon/storage/backpack/parachute{pixel_x = 6; pixel_y = 6},/obj/item/weapon/storage/backpack/parachute{pixel_x = -6; pixel_y = -6},/obj/item/weapon/storage/backpack/parachute{pixel_x = 6; pixel_y = -6},/turf/simulated/floor/tiled,/area/hangar/one) @@ -513,7 +514,7 @@ "alW" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/atmospherics/binary/passive_gate{dir = 1; regulate_mode = 0; unlocked = 1},/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) "alX" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/table/rack,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/firstdeck/foreport) "alZ" = (/obj/structure/closet/crate/engineering,/obj/fiftyspawner/steel,/obj/fiftyspawner/glass,/turf/simulated/floor/plating,/area/construction/firstdeck/construction5) -"amb" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/camera/network/first_deck{c_tag = "First Deck - Fore Hallway 2"},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/fore) +"amb" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/camera/network/first_deck{c_tag = "First Deck - Fore Hallway 2"},/obj/structure/sign/atmosplaque{desc = "This area is currently under construction and will soon be replaced by a new exploration department area."; name = "Underconstruction Exploration-Dep"; pixel_y = 30},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/fore) "amg" = (/turf/simulated/wall/r_wall,/area/maintenance/firstdeck/forestarboard) "amj" = (/obj/structure/closet/firecloset,/obj/machinery/camera/network/research{c_tag = "SCI - First Deck Research Hallway Port 1"},/turf/simulated/floor/tiled/dark,/area/rnd/research/firstdeck/hallway) "amk" = (/obj/structure/table/glass,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/hand_labeler,/obj/machinery/light,/turf/simulated/floor/tiled/white,/area/rnd/xenobiology/xenoflora) @@ -2227,6 +2228,7 @@ "fBA" = (/obj/machinery/portable_atmospherics/canister/empty,/turf/simulated/floor/plating,/area/maintenance/firstdeck/aftstarboard) "fBB" = (/turf/simulated/shuttle/wall/hard_corner,/area/shuttle/large_escape_pod1/station) "fCy" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/machinery/ai_status_display{pixel_x = -32},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled,/area/hangar/two) +"fDC" = (/obj/item/weapon/storage/box/cups,/turf/simulated/floor/holofloor/wood,/area/construction/firstdeck) "fEB" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/blue/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/auxdockaft) "fFB" = (/obj/structure/closet,/obj/effect/decal/cleanable/dirt,/obj/random/maintenance/engineering,/obj/random/maintenance/cargo,/obj/random/maintenance/engineering,/obj/random/maintenance/cargo,/turf/simulated/floor/plating,/area/maintenance/firstdeck/aftport) "fGi" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/auxdockaft) @@ -2234,6 +2236,7 @@ "fHV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/light{dir = 1},/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "hangar_2"; name = "shuttle bay controller"; pixel_y = 26; tag_door = "hangar_2_door"},/turf/simulated/floor/tiled/dark,/area/hangar/two) "fKK" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/aft) "fLW" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled,/area/tcomm/entrance) +"fPg" = (/obj/structure/table,/obj/item/stack/material/steel{amount = 10},/turf/simulated/floor/tiled,/area/construction/firstdeck) "fQn" = (/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "d1_aux_d_airlock"; pixel_y = 27; req_access = null; req_one_access = list(13)},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; id_tag = null},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/auxdockaft) "fVs" = (/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,/obj/machinery/door/airlock/glass_mining{id_tag = "shuttle_2_door"; name = "Hangar Bay"; req_one_access = null},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/hangar/two) "fXf" = (/obj/structure/bed/chair{dir = 1},/obj/machinery/status_display{layer = 4; pixel_y = -32},/turf/simulated/shuttle/floor/white,/area/shuttle/large_escape_pod1/station) @@ -2255,12 +2258,14 @@ "gnl" = (/obj/structure/flora/pottedplant/stoutbush,/obj/structure/extinguisher_cabinet{pixel_x = -27},/turf/simulated/floor/tiled/dark,/area/hallway/primary/firstdeck/aft) "gnU" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/maintenance/firstdeck/aftport) "goA" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/auxdockaft) +"gse" = (/turf/simulated/floor/tiled,/area/construction/firstdeck) "gux" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/auxdockaft) "gwv" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/obj/machinery/portable_atmospherics/canister/empty,/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/steel_dirty,/area/engineering/auxiliary_engineering) "gwx" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/dark,/area/hallway/primary/firstdeck/aft) "gwS" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/structure/closet/secure_closet/explorer,/obj/item/device/cataloguer,/obj/item/weapon/melee/umbrella/random,/obj/item/device/binoculars,/turf/simulated/floor/tiled,/area/hangar/lockerroomtwo) "gwU" = (/obj/machinery/atmospherics/pipe/simple/visible/red{dir = 4},/turf/simulated/floor/tiled/steel_dirty,/area/engineering/auxiliary_engineering) "gwX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/aft) +"gyr" = (/obj/structure/fitness/punchingbag,/turf/simulated/floor/plating,/area/construction/firstdeck) "gAo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/elevator) "gCn" = (/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor,/area/hallway/primary/firstdeck/auxdockaft) "gCt" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/steel_dirty,/area/engineering/auxiliary_engineering) @@ -2343,6 +2348,7 @@ "iEQ" = (/obj/machinery/sleep_console{dir = 4},/turf/simulated/shuttle/floor/black,/area/shuttle/shuttle2/start) "iFn" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/escape/firstdeck/ep_aftport) "iFo" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/effect/floor_decal/techfloor{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/hallway/primary/firstdeck/elevator) +"iIr" = (/obj/item/stack/material/steel{amount = 10},/turf/simulated/floor/plating,/area/construction/firstdeck) "iIP" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 8},/obj/machinery/ai_status_display{pixel_x = -32},/turf/simulated/floor/tiled,/area/hallway/secondary/escape/firstdeck/ep_aftstarboard) "iKg" = (/obj/effect/shuttle_landmark{base_area = /area/space; base_turf = /turf/space; landmark_tag = "d1_aux_c"; name = "Deck 1 Aux Dock C"},/turf/space,/area/space) "iLt" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/aft) @@ -2732,6 +2738,7 @@ "rRh" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/aft) "rUl" = (/turf/simulated/floor/airless,/area/hallway/secondary/escape/firstdeck/ep_aftport) "rWq" = (/obj/effect/shuttle_landmark{base_area = /area/space; base_turf = /turf/space; landmark_tag = "d1_near_se"; name = "Near SC - Deck 1 South East"},/turf/space,/area/space) +"rWH" = (/obj/structure/closet/athletic_mixed,/turf/simulated/floor/holofloor/wood,/area/construction/firstdeck) "rXy" = (/turf/simulated/wall,/area/engineering/auxiliary_engineering) "rYc" = (/obj/machinery/light{dir = 4},/obj/structure/closet/emcloset,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/storage) "rZP" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/simulated/shuttle/plating/airless/carry,/area/shuttle/escape_pod4/station) @@ -2815,6 +2822,7 @@ "tLK" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/firstdeck/aft) "tNe" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/aft) "tNm" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/engineering{name = "Cargo Substation"; req_one_access = list(11,24,50)},/turf/simulated/floor/plating,/area/maintenance/substation/firstdeck/cargo) +"tOo" = (/obj/random/toolbox,/obj/structure/table/standard,/turf/simulated/floor/tiled,/area/construction/firstdeck) "tOD" = (/obj/machinery/light,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/apcenter) "tOJ" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor,/area/hallway/primary/firstdeck/auxdockaft) "tOL" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/tiled/dark,/area/storage/tech) @@ -2874,6 +2882,7 @@ "vao" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/hallway) "vbc" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled/dark,/area/hallway/primary/firstdeck/auxdockaft) "vbj" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/closet/secure_closet/guncabinet/phase{req_one_access = null},/obj/item/clothing/accessory/permit/gun/planetside,/obj/item/clothing/accessory/permit/gun/planetside,/turf/simulated/shuttle/floor/darkred,/area/shuttle/shuttle2/start) +"vcs" = (/obj/structure/fitness/weightlifter,/turf/simulated/floor/holofloor/wood,/area/construction/firstdeck) "vdn" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/ai_status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/hallway/primary/firstdeck/aft) "vfw" = (/obj/machinery/camera/network/first_deck{c_tag = "First Deck - Central Ring 6"; dir = 1},/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/firstdeck/ascenter) "vfX" = (/turf/simulated/wall/r_wall,/area/maintenance/firstdeck/centralstarboard) @@ -3034,27 +3043,27 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasNDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasdxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaajaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsdxaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaafaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasNDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaVWaafaTEaadaaaaaaaafaaaaaaaadaadaTEaaaaaaaaaaaaaaaaaaaaaaaaaaasNDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasNDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaadaadaadaafalRaaaaaaaaaaaaaaaaaaaaaajiaalaalaalailailaamailailaaaaafaaaajiaaaaaaaaaaaaaaaaaaaaaamgaafaafaTEaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTEaafaaaaafaaaaaaalRajmajlajlaeFajlajlajmajiaaoailajiajiafIafJafIajiajiailailajiafQafQafQafNafQafQafQamgaaaaaaaafaaaaadaTEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaafaaaaaaalRaaqaaraasaataasaaraauajiaavaawagqagragsagtaaxaayaazaaAaaBailahcagvahcajiahfagyahfamgaaaaaaaafaaaaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaaaaafaaaaaaalRaaCaaraaraaraaraaraaDajiaaEagWagXagYagZaaFahaahaahaaaGaaHaamahcaaIahcajiahfaaJahfamgaaaaaaaafaaaaaaaadaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadWXaaaaaaaaaalRaaKaaLalRaaMahAahAahAahAahAaaOajiaaPaaQajiaaRahCaaSahDaaTaaAaaUaaVailahFaaWahFaEnahIahHahIamgahKaemamgaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaalRaaXaaXalRaaYainainaaZainainabaajiajiajiajiajiabbabcaaAajiabdajiajiajiahcabeahcaEnahfaipahfamgaisaisamgaaaaaaaaaaTEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasNDaaaaaaaadaafaafaafabfabgabhabiabjabkablabmabnaiCaboaiWabpaiDaiEaiWabqabraiFaEnabsaAKabwaEnaxIabyaxIaEnaiHaiIaiHaiJabzabAabBaafaafaafaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaafaafaafaadaadaafaafaafaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaaaaaaaaaabCabDabEabFaiUaiUabGabHabJaiUaiUaiWabKabLaiVaiWabMaiXaiYaEnabNabOabPaEnabQabRazGaEnabQaiZazGabSabTabUabVaaaaaaaaaaadaadsNDaaaaaaaaaaaaaaaaaaaaasdxaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaafaaaaaaaafaaaaaaaafaaaaaaaaaaaaaaaaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaafaaaaaaalRaaqaarabjaatgyraaraauajiaavaawagqagragsagtaaxaayaazaaAaaBailahcagvahcajiahfagyahfamgaaaaaaaafaaaaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaaaaafaaaaaaalRaaCiIrabjvcsfDCrWHaaDajiaaEagWagXagYagZaaFahaahaahaaaGaaHaamahcaaIahcajiahfaaJahfamgaaaaaaaafaaaaaaaadaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadWXaaaaaaaaaalRaaKaaLalRaaMabjahAahAabjgseaaOajiaaPaaQajiaaRahCaaSahDaaTaaAaaUaaVailahFaaWahFaEnahIahHahIamgahKaemamgaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaalRaaXaaXalRaaYainabjaaZfPgtOoabaajiajiajiajiajiabbabcaaAajiabdajiajiajiahcabeahcaEnahfaipahfamgaisaisamgaaaaaaaaaaTEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasNDaaaaaaaadaafaafaafabfabgabhabiabjabkablabmabnaiCaboaiWabpaiDaiEaiWabqabraiFaEnabsaAKabwaEnaxIabyaxIaEnaiHaiIaiHaiJabzabAabBaafaafaafaadaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaafaafaafaadaadaafaafaafaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaaaaaaaaaabCabDabEabFaiUgseabGabHabJabjgseaiWabKabLaiVaiWabMaiXaiYaEnabNabOabPaEnabQabRazGaEnabQaiZazGabSabTabUabVaaaaaaaaaaadaadsNDaaaaaaaaaaaaaaaaaaaabsdxaabaaaaaaaaaaaaaaaaaaaaaaadaadaadaafaaaaaaaafaaaaaaaafaaaaaaaaaaaaaaaaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaTEaadaadaadaadaafaTEaadaadaadaafaafaaaaaaaafaadaadaadaadaaaaaaaaaaaaabWabXabYabZajlajlajmacaajmajlajlaiWacbaccacbacdajkacfacgaEnaclacmacnaEnakMacoajnaEnakMacpacqacracsactacuaaaaaaaaaaaaaadaadaTEaaaaaaaaaaVWaadaadaafaadaadaadaafaafaadaadaafaafaaaaaaaaaaaaaaaaafaaaaaaaafaaaaaaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaasNDaaaaaaaaaalRacvacwpYHacxaAmacyaczambajEajFacAajFaoqaAmaAmacBacCaAmaAmacDaAmacEacKalvacLajMacMajMadlacNaFfacOacPamgaaaaaaaaasNDaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaadWXaaaaaaaaaaaaaaaaafaaaaaaaafaaaaaaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacQsdxaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaBiacSacUacVacWaKcacXacYadaadbakgaKcakhadcaKcaKcadiakiaKcaKcaklaKcaKcaKcadjadkadmakmaKcadbadnadoadpadqaBDaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaafaaaaaawalwalwalwalwalwalwalwalaafaafaafaafaafaadaaaaaaaaasNDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTEaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaBiaBiadradsaGlanHanHanHadtanHanHanHaduadvalzaEnakNadwakPakQakRaPaadxadyamqadAadBadAamqakUaEnaEnaFfadCadDaBDaBDaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaafwalwalwalansaloaloaloaloaloaloaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaaaaaxQaxQaxQaxQaxQaxQaxQaxQaxQaxQaxQaxQaxQaxQaxQaxQaxQaaaaaaaaaaBiaBiadIadJadKaGladNadOaabadPalwalxanHasqadQasqpdfpdfalCaAyadRaEnaEnaaaaaaaaaalEadSalEaaaaaaaaaaEnamgadCadTadVaBDaBDaaaaaaaaaaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtwalwalwalansadWadXadYadXadZaloaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasNDaaaaaaaaaaaaaadaafaafaafaxQaxQaeaaebaecaecaecaecaecaedaecaecaecaecaecaeeaeaaxQaxQalRaBiaBialUamsalWalXaGlalZanFapqanEanEaekanHaelaenaeoaepasqaeqaeraesaEnaaaaaaapJapJapJaetapJapJapJaaaaaaamgaeuaevakVakVaBDaBDamgaRtaRtaewaexaeyaeyaeyaeyaeyaezaeyaeyaeyaeyaeyaeAaewaRtaRtaoYalnaeBaeCaeGaeHaeHaeHaejaloaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasdxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaaxQaeIaeJaeKaeLaeLaeLaeMaeNaeOaePaeMaeLaeLaeLdZMaeJaeQaxQaCtamoaeRaeSaeTaeUaeVaGlampanEaaeanFanEaekanHaeYaagaaiaeZasqafbafdafeaffaaaaaaapJafgaqGafkamudWWapJaaaaaaamgaeuaflamvalFafmavlaTtaRtamKafnaAncpDcpDcpDckbckbckbckbckbcpDcpDcpDapDafnamKaRtafoafpaqbansafqafrafsafradZaloaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaafaadaadaafaadaaddWXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaasNDaaaaaaaaaalRacvacwpYHacxaAmacyaczambajEajFacAajFaoqaAmaAmacBacCaAmaAmacDaAmacEacKalvacLajMacMajMadlacNaFfacOacPamgaaaaaaaaasNDaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaadWXaaaaaaaaaaaaaaaaafaaaaaaaafaaaaaaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsdxaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaBiacSacUacVacWaKcacXacYadaadbakgaKcakhadcaKcaKcadiakiaKcaKcaklaKcaKcaKcadjadkadmakmaKcadbadnadoadpadqaBDaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaafaaaaaawalwalwalwalwalwalwalwalaafaafaafaafaafaadaaaaaaaaasNDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaBiaBiadradsaGlanHanHanHadtanHanHanHaduadvalzaEnakNadwakPakQakRaPaadxadyamqadAadBadAamqakUaEnaEnaFfadCadDaBDaBDaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaafwalwalwalansaloaloaloaloaloaloaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaaaaaxQaxQaxQaxQaxQaxQaxQaxQaxQaxQaxQaxQaxQaxQaxQaxQaxQaaaaaaaaaaBiaBiadIadJadKaGladNadOaagadPalwalxanHasqadQasqpdfpdfalCaAyadRaEnaEnaaaaaaaaaalEadSalEaaaaaaaaaaEnamgadCadTadVaBDaBDaaaaaaaaaaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtaRtwalwalwalansadWadXadYadXadZaloaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasNDaaaaaaaaaaaaaadaafaafaafaxQaxQaeaaebaecaecaecaecaecaedaecaecaecaecaecaeeaeaaxQaxQalRaBiaBialUamsalWalXaGlalZanFapqanEanEaekanHaelaenaeoaepasqaeqaeraesaEnaaaaaaapJapJapJaetapJapJapJaaaaaaamgaeuaevakVakVaBDaBDamgaRtaRtaewaexaeyaeyaeyaeyaeyaezaeyaeyaeyaeyaeyaeAaewaRtaRtaoYalnaeBaeCaeGaeHaeHaeHaejaloaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsdxaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaaxQaeIaeJaeKaeLaeLaeLaeMaeNaeOaePaeMaeLaeLaeLdZMaeJaeQaxQaCtamoaeRaeSaeTaeUaeVaGlampanEaahanFanEaekanHaeYaaiaakaeZasqafbafdafeaffaaaaaaapJafgaqGafkamudWWapJaaaaaaamgaeuaflamvalFafmavlaTtaRtamKafnaAncpDcpDcpDckbckbckbckbckbcpDcpDcpDapDafnamKaRtafoafpaqbansafqafrafsafradZaloaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaafaadaadaafaadaaddWXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaadaaaaaaaaaaxQaeIaeJaeKaeLaeLaeMaftafuafwafyaftaeMaeLaeLdZMaeJafzafAaCtamRamSamTaPZamUamVaGlamXanEapqanFamYamZanHanbafBafSafTasqafUafVafUaEnaaaaaaapJandaqKafWaqKlOFapJaaaaaaamgafXanganhafYalGaniafZagaamKafnaAncpDcpDckbckbckbckbckbckbckbcpDcpDaAzagbagcagdageagfaqbansaloaloaloaloaloaloaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaxQaeIaeJaeKaeLaeLaggagiagjagkagjaglaggaeLaeLdZMaeJagmaxQaplagnapnapnanDapnapnaGlagoagpatLanFanFanGanHasqanIasqagBasqanManLanMaEnaaaaaaapJanOavPagCanPagDapJaaaaaaatlatmatmanRatmatmagEaoJaRtagFafnaAncpDcpDckbckbckbckbckbckbckbcpDcpDaAzaAAaogaRtagGaohwalwalwalwalwalwalwalwalaadaadaafaafaadaadaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaadaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaplaxQagHagIaeKaeLaeLaeMagJaggagKaggagLaeMaeLaeLdZMagMatTaxQaxQagNapnagOaqHagQaoyaGlagRagSagTagUanFagVahgasqahhasqahiasqahjaujahkaEnaaaaaaapJahlaqKahmahnaoCapJaaaaaaatlahoawXardaoGatmaoIaRtaRtahpahqaAncpDcpDckbckbckbckbckbckbckbcpDcpDaAzaoVazvaRtahraoYaoZaxBaoYahsaoYahtaqbaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -3071,13 +3080,13 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalfalganeaqAaqBaqCaqLaqMaqNaqOaqPanCanTaxQaqWaqXaqZaraaraaraaraaraaraaraaraaraaraaraarbarzaBfaxQaBgaBhaBiaaaaaaaaaazWaBmarJazXalOaFTaFTaFTtcOtcOaEUaEUaEUaEUaEUarKaBtarLarLarMarNarOarPaMgaMgaMgaBwaybarQarRaBxaaaaaaaaaaBDaAqdpTaRtaBBaBGaBHaJsaJsaJsaJsaJsaJsaJsaJsaJsaJsaJsaBQaBRaBSaRtarVaBUaBWaBWaBXarWarXarYaBYarZaBYaBZaCaasaasbaFwaGQaHrashxhdasijUCasjaNkaEvaskaCgaNkaChjUCaDoaDoaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalfalfalgalgalgalhaslaslalhalgalgalgasmaxQasnaswasLasLasMasLasLasNasOasSasTasUasUasUasUasVasXaxQaCsnFXpYHpYHaaaaaaaEIateaCuatgaFTaFTathatiaFTtcOatEatMaCvaCweYAeYAatNaCzaCAaCBaCCaMgaCEaMgatOaMgaMgatQatRatSaKbaaaaaaaFfaFfaBLaRlaRtaCKaCLaCSaCSaCSaCSaCTaCUaCVanoaGpaGpaCYaGpaGpdVsaDcaRtatVaDeaDfaRUaxratXauaaxraDhaDigdraDjaDlaDlaDkaDlasvaulautxhdauujUCaNnauvaEvaskaCgaNkauwjUCjUCauxauUjUCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaakwaveaveakwakwakwakwavfavfavjavjavjavjavjaxQaxQaxQaxQaxQaxQaxQaxQavkaplavmaxQavnavnavnaxQaxQaxQaxQaCtaDpaDqpYHaaaaaaaEIaDvaDwaDxaKDaDyaDzaDAaFTtcOaEUayjaESaDGaDHeYAaEWaDEaDLaDMavoavpaDNavraDOaDPaMgavsavtavuaKbaaaaaaaFfaCNavIavJaRtaRtaRtaNGaDXaDXaDXaNGaJUaNGaEbaNGaRtaRtaRtaRtaRtaRtaRtaEkaEkaEkaEkaEkavKavKvfXvfXvfXvfXvfXvfXaEoaEpvfXvfXaulaEqaEraEyjUCaMIaNkaEvaskaCgaNkaMIjUCaanaEzawsjUCjUCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaafaafaafakwakwawtawuawvawwawxakwawzawzawBawLawUawZaxaaxbaxcaxKaxLaxMaxNaxOaxbaxPaxPaxRaxSayfaygayhaxSayGaCtpYHayHaEEaEFpYHaaaaaaaEIaEJayIaEKaFTaEMaENayJaFTtcOaEUaEUaEUaEUaEUaEVaEYaEYaEYaEZayKayLaFaaFbayMayNaMgaziazjazkaKbaaaaaaaFfaFgafZazlaFhazoaDTaHHaFjazpazwaHHaKMaLQaLQaUcaFnaHPaHPazSaHeazTaUcaFqaFraFsaFtazUaAfaAfvfXaFuaAgaFvaAhaKjaFxaFyaFzvfXaAiaAkjUCjUCjUCaApaAraAtaAVaFAaFBaFCjUCaaNaFEaFFaFGaFHaFIaSjaSjaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaaaaaaakwakwaAWaAXawuaAYaAZaBaaBbaBcaBdaBeaBjaBkaBlaByaxbaxcaBzaBAaxMaxMaxMaxbaBMaBMaCdaCiaCjaCkaClaxSaCmaCoxfyaCpaCqaFOpYHaaaaaaazWaCraCIaCMaFTaGGaDmaDsaFTtcOaDtaFUaFVaGaaFXaFYaFZaGaaDKaGbaGcaGdaGeaDQaEcaEBaMgaEDazjaEHaBxaaaaaaaFfaFdaTtafZafZaFeafZaGhaGiaGjaGkaFkaMlaGnaGnaUcaHdaHcaHPaGqaFDaHeaUcaGtaFLaGuaFMaFNaFQaGfaGgaSxaSxaGvaSxaSxaGwaSxvfXaKEabuaGsjUCaGzaGAaGCabvabxaHtaGBaHuaKFaHIabIaHKaGDjUCjUCjUCjUCjUCaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaakwaIzawuakwakwakwakwakwakwaJapBrpBrpBraJkaJtaJPaxbaJSaxMaBAaKmaLBaMvaxbaMFaMGaMLaxSaMMaNhaNlaxSaNqaNraNIaNJaOjaOlpYHaOmaOmaOpaOraPdaugapcaGGaDmaPeaFTtcOtcOtcOtcOtcOtcOtcOtcOtcOtcOtcOaMgaMgaMgaqeaPjaGSaMgaPraPJaPKaPLaPMaPMaFfaPNaOdaGTaGTaGTaGTaHHaQpaQzaGWaHHaQCaKTaJZaUcaHSaHRaHTaGqaQMaHeaUcaHgaHhaQVaQWaQWaQWaEkvfXvfXvfXvfXvfXvfXaHNaRavfXaHkaRcxhdaRuaRXaScaSdaSeaShaSzaSBaSCaHmaSDaceaSNaHnaHoaHpaHqaTnjUCaaaaaaaaaaadaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaakwaTjawuakwaTkaTkaTkaTkaTkaJaaTFaUbaUdaUeaUfaUAaUEaUKaxbaVbaxbaxbaxbaxbaVcaVdaVeaVfaxSaxSaxSaxSaVlpYHpBrpBrpYHagNpBraVmaVnaVoaVpaVqaVraKoaKoaVsaVuaKoaIMaIMaIMaIMaKYaKYaKYaKYaKYaNjaHCaVvaVxaJMaVyaHDaVzaNjaVAaVBaVCaVDaVEaVFaHFaVGaFfaHFaHFaHFaHFaHHaHHaHHaHHaJXaOJaKCaHLaUcaUcaUcaUcaVHaUcaVIaVKaVLaVOaVPaHFaVQaVVaVXiCiiCiiCiiCiiCivfXaHNaVYvfXaHOaHVaHQbqBaMzbskaWabsmaWdaWdaWdaHWaHXaWhachaWjaWkaWlaNkaWmaNkjUCaafaafaafaafsdxaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaveaWnaXTakwaTkaTkaTkaTkaTkaZjaZYbabbaXbcWbekbfFbhgbhjbcWbhqbhgbijaZYbmqbmGbntbnwbnybnVbnybotboCbplbpybpRbrxbrQbwTbxGbyQbnybyRbySbznbzXaHZbCNbEiaIabEmbFFbFRaIbaIMaKYaKYaKYaKYaKYaNjaIgbFSbHuaJMaIibHvbsSaNjbHwbHzbHAaIsaIpbHBbIYbJabJbbJcbJHaIkaBKaImaIsaDnaIpaIpaRCaKTaIsaNRaIuaIvaBKaIxaIsbMcaBKbMNbOSaIsbWvcbvaIpcbPiCiiCiiCiiCiiCivfXaLjaHNvfXaIAaIBaICaIDaIEaKidbxbwscceaLvaSdaLvccfcdzalrcdBcdCcfnaNkaNkaNkjUCaaaaaaaaaaadaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasdxaafaafaafaafavecfocfpakwaTkaTkaTkaTkaTkcjEclTcnNcnZcnZcpEcpFcpFcpGcpHcuncpFcvHcpFcpFcyYcAKcAMcpFcpFcpHcpFcpFcvHcpFcBZaCOcCncCpcpFcItcpFcpFcJxcLTcpFaIHaIIaIJcLUaIKcOQcPZaILaIMaKYaKYaKYaKYaKYaNjaISaITcSccTFcXDcYaaJNaNjdbidbjddbddhddhddjddhdebdeIaIWapFasRaDZaJiaJiaJjaJiaJiaStaJgaJiaJiaJjaIwaJiaIYaJiaJoaJiaJidfZdjydjydkodoxdoAiCiiCiiCiiCiiCivfXdoDdoJvfXjUCaTTaKhjUCaJwaKidbxdGcblpdGydHDdOZbradRFdVDdVFdVGaAVaAVaAVaAVjUCaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaveawudVHakwaTkaTkaTkaTkaTkdVIdVJdVKdVLdVMdVNdVOdVPdVQdVTdVUdVVdVWdVJdVXdVYaVddVZdVJdVJdWadVJdWbdVJdWcdWdaDRaJzdWedWfdWgdWhdWjdWkaTJbzXdWlbCNdWmaJAdWnaJBaJCaJDaIMaKYaKYaKYaKYaKYaNjaJLdWodWpaJMaJNpvidWqaNjdWrdWsdWtaJZaJTdWudWvdWwdWxbJcaJlaJnaWbaJQdWyaJTdWzaJTaSHaKTaJZaRwaJTaJRaWeaJYaJZdWAaWbdWBdWCaJZdWDdWEaJTdWFiCiiCiiCiiCiiCivfXdWGaHNvfXdWHaKfaKgaKhdWIaKidbxdccaLbdWJaLcdWJdWKdWLalrdWMdWNdWOaNkaNkaEvdWPaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaafaafaafakwakwawtawuawvawwawxakwawzawzawBawLawUawZaxaaxbaxcaxKaxLaxMaxNaxOaxbaxPaxPaxRaxSayfaygayhaxSayGaCtpYHayHaEEaEFpYHaaaaaaaEIaEJayIaEKaFTaEMaENayJaFTtcOaEUaEUaEUaEUaEUaEVaEYaEYaEYaEZayKayLaFaaFbayMayNaMgaziazjazkaKbaaaaaaaFfaFgafZazlaFhazoaDTaHHaFjazpazwaHHaKMaLQaLQaUcaFnaHPaHPazSaHeazTaUcaFqaFraFsaFtazUaAfaAfvfXaFuaAgaFvaAhaKjaFxaFyaFzvfXaAiaAkjUCjUCjUCaApaAraAtaAVaFAaFBaFCjUCaapaFEaFFaFGaFHaFIaSjaSjaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaaaaaaakwakwaAWaAXawuaAYaAZaBaaBbaBcaBdaBeaBjaBkaBlaByaxbaxcaBzaBAaxMaxMaxMaxbaBMaBMaCdaCiaCjaCkaClaxSaCmaCoxfyaCpaCqaFOpYHaaaaaaazWaCraCIaCMaFTaGGaDmaDsaFTtcOaDtaFUaFVaGaaFXaFYaFZaGaaDKaGbaGcaGdaGeaDQaEcaEBaMgaEDazjaEHaBxaaaaaaaFfaFdaTtafZafZaFeafZaGhaGiaGjaGkaFkaMlaGnaGnaUcaHdaHcaHPaGqaFDaHeaUcaGtaFLaGuaFMaFNaFQaGfaGgaSxaSxaGvaSxaSxaGwaSxvfXaKEaasaGsjUCaGzaGAaGCaaNabuaHtaGBaHuaKFaHIabvaHKaGDjUCjUCjUCjUCjUCaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaakwaIzawuakwakwakwakwakwakwaJapBrpBrpBraJkaJtaJPaxbaJSaxMaBAaKmaLBaMvaxbaMFaMGaMLaxSaMMaNhaNlaxSaNqaNraNIaNJaOjaOlpYHaOmaOmaOpaOraPdaugapcaGGaDmaPeaFTtcOtcOtcOtcOtcOtcOtcOtcOtcOtcOtcOaMgaMgaMgaqeaPjaGSaMgaPraPJaPKaPLaPMaPMaFfaPNaOdaGTaGTaGTaGTaHHaQpaQzaGWaHHaQCaKTaJZaUcaHSaHRaHTaGqaQMaHeaUcaHgaHhaQVaQWaQWaQWaEkvfXvfXvfXvfXvfXvfXaHNaRavfXaHkaRcxhdaRuaRXaScaSdaSeaShaSzaSBaSCaHmaSDabxaSNaHnaHoaHpaHqaTnjUCaaaaaaaaaaadaabaabaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaakwaTjawuakwaTkaTkaTkaTkaTkaJaaTFaUbaUdaUeaUfaUAaUEaUKaxbaVbaxbaxbaxbaxbaVcaVdaVeaVfaxSaxSaxSaxSaVlpYHpBrpBrpYHagNpBraVmaVnaVoaVpaVqaVraKoaKoaVsaVuaKoaIMaIMaIMaIMaKYaKYaKYaKYaKYaNjaHCaVvaVxaJMaVyaHDaVzaNjaVAaVBaVCaVDaVEaVFaHFaVGaFfaHFaHFaHFaHFaHHaHHaHHaHHaJXaOJaKCaHLaUcaUcaUcaUcaVHaUcaVIaVKaVLaVOaVPaHFaVQaVVaVXiCiiCiiCiiCiiCivfXaHNaVYvfXaHOaHVaHQbqBaMzbskaWabsmaWdaWdaWdaHWaHXaWhabIaWjaWkaWlaNkaWmaNkjUCaafaafaafaafsdxaabaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaafaaaaaaaaaaveaWnaXTakwaTkaTkaTkaTkaTkaZjaZYbabbaXbcWbekbfFbhgbhjbcWbhqbhgbijaZYbmqbmGbntbnwbnybnVbnybotboCbplbpybpRbrxbrQbwTbxGbyQbnybyRbySbznbzXaHZbCNbEiaIabEmbFFbFRaIbaIMaKYaKYaKYaKYaKYaNjaIgbFSbHuaJMaIibHvbsSaNjbHwbHzbHAaIsaIpbHBbIYbJabJbbJcbJHaIkaBKaImaIsaDnaIpaIpaRCaKTaIsaNRaIuaIvaBKaIxaIsbMcaBKbMNbOSaIsbWvcbvaIpcbPiCiiCiiCiiCiiCivfXaLjaHNvfXaIAaIBaICaIDaIEaKidbxbwscceaLvaSdaLvccfcdzalrcdBcdCcfnaNkaNkaNkjUCaaaaaaaaaaadaabaabaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsdxaafaafaafaafavecfocfpakwaTkaTkaTkaTkaTkcjEclTcnNcnZcnZcpEcpFcpFcpGcpHcuncpFcvHcpFcpFcyYcAKcAMcpFcpFcpHcpFcpFcvHcpFcBZaCOcCncCpcpFcItcpFcpFcJxcLTcpFaIHaIIaIJcLUaIKcOQcPZaILaIMaKYaKYaKYaKYaKYaNjaISaITcSccTFcXDcYaaJNaNjdbidbjddbddhddhddjddhdebdeIaIWapFasRaDZaJiaJiaJjaJiaJiaStaJgaJiaJiaJjaIwaJiaIYaJiaJoaJiaJidfZdjydjydkodoxdoAiCiiCiiCiiCiiCivfXdoDdoJvfXjUCaTTaKhjUCaJwaKidbxdGcblpdGydHDdOZbradRFdVDdVFdVGaAVaAVaAVaAVjUCaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaafaaaaaaaaaaveawudVHakwaTkaTkaTkaTkaTkdVIdVJdVKdVLdVMdVNdVOdVPdVQdVTdVUdVVdVWdVJdVXdVYaVddVZdVJdVJdWadVJdWbdVJdWcdWdaDRaJzdWedWfdWgdWhdWjdWkaTJbzXdWlbCNdWmaJAdWnaJBaJCaJDaIMaKYaKYaKYaKYaKYaNjaJLdWodWpaJMaJNpvidWqaNjdWrdWsdWtaJZaJTdWudWvdWwdWxbJcaJlaJnaWbaJQdWyaJTdWzaJTaSHaKTaJZaRwaJTaJRaWeaJYaJZdWAaWbdWBdWCaJZdWDdWEaJTdWFiCiiCiiCiiCiiCivfXdWGaHNvfXdWHaKfaKgaKhdWIaKidbxdccaLbdWJaLcdWJdWKdWLalrdWMdWNdWOaNkaNkaEvdWPaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTEaaaaaaaaaakwawuawuakwdWQaTkaTkaTkaTkaJaaVndWRpBrdWSdWTdWUdWVdWYdWUdWZdWUdWUdWUdWUdXaaVddXbpBrpBrpBrpBrpBrpBrpBrpBrpBrdXddXepBrdXfdXgdXhdXidXjdXkdXlaKoaKnaKoaKoaKoaKoaKoaIMdXmaKYaKYaKYaKYaNjdXndXodXpaJMaVydXqaVyaNjaKtdXraJYdXsaVVdXtaHFdXuaRbaHFaHFaHFaHFaYFaYFaYFaYFaKvdXvaKwaKxdXwdXwdXwdXwdXxdXwdXydXzdXAdXBdXCdXDaVVaKyaVXdXEiCiiCiiCiiCivfXaLhdXFvfXdXGdXHdXIdXJaTDdXKdXLdXMdXNdXNdXNaQIaLYdXOdXPdXQdXRdXUaNkaNkaEvdWPaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaakwdXVawuakwakwakwakwakwakwaJapBrpBrpBrdXWawudWUdXXdXYdXZdYadYbdYcdYddWUdYedYfdYjdXddYkdYldYmdYndYndYodYpdYsdYtdYudXdaOmaOmdYvdYwdYxdYybLFdYzdYAaKHdcdbLFaKJdYCaOvaOvdYDdYEaKKaOvaNjaNjaNjaNjaNjaNjdYFaNjaNjaKOaKPdYGdYJaPMaPMaRbdYKaLKdYLdYMdYOdYQaYFdYSaKQaKRaYFdYTaKTaKUdXwdYUdYVdXwdYWdYXdYYdXwdYZdZadZbdZcdZcdZcbCFvfXvfXvfXvfXvfXvfXaSxaHNvfXdZddZeaKZaLadZfaLbaLcdZgdZhaSzdZidZjaJydZkaJydZldZmdZnaHpdZodZpdZqaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaaaaaaakwakwawuawuawuawuaAXaAXaAXaAWaAXdZrdZsdZsdZtdWUdXXdYcdYcdZudZvdYcdYddWUdZwdZxdZxdZydZzdZzdZAdZAdZBdZAdZAdZAdZCdZDdXdaaaaaaaVSdZEdZFdZGaLddZHdZIdZJdZJaLddZKdZLdZNdZOdZPdZQaLeaLfaOxdZRaQwdZSaOydZTaLidZUaOyaLkaLlaLmaQmaaaaaaaRbdZVaLKdZWaUgdZYaUgdZZeaaeabaLnaLoaSIaLraLrdXweacaLSeaddYWeaeeafdXweageaheajeakealaLsaLtaLuaQBeamaLwaGweanaSxvfXvfXjUCjUCjUCjUCeaoeapaLzeaqeareaseateaqeaueaveaweaweaxjUCjUCjUCjUCjUCaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -3093,20 +3102,20 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTEaaaaaaaaaoatqAXxvaknLknLknLknLknLjuSknLrnAvtfvtfbXobFykZCvgSwytrLdiDIpOIkTulhUjznhVlnEErLdhqpcDjsIMsAodYuycDdXdaaaaaaaaasNDaaaaaaeaTeaTaVSwMAqflicjvjakzNdYysfMePUqvRneYomobkkqOBmddvfwojAxyoaQmbqybqyaaaaaasNDaaaaaaaaaaRbrmjaWqaRdebhaRfaRraTPebkaUmaRjaRkaZiaZbwrvkoKvbjaRoebkaTAaRraRsebhaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaacALaaaaaaaaaaaaaaaaaaaaaaaasNDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasNDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaadgHlcixvaknLknLknLknLknLknLknLhRQgIxxTkgIxwjZwouwouwouxaixaixaipmGmYXmptmYXmYXrLddXddXddXddXddYuaSfxCgxCgxCgaaaaaaaaaaaaaaaaaaaVSaVSeaTeaTeaTaVSaVSbMwoGTqvRoAwcuSaQmaQmbqybqybqyaQmaQmaaaaaaaaaaaaaaaaaaaSgaSgaSgaTlaRvaRFebhaRyaRzaTPebkaUmaUmaTdaSubfVaZiaTdaUmaUmebkaTAaTBaUwebhaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaafaafaafwoulcixvaknLknLknLknLknLknLknLpvHpvHpvHtezpcAwouuKAuKAuKAuKAuKApmGflNcofdplmYXtrgtrgtrgtrgdXddYuaSfjGukCmxCgxCgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaavjPmZfszeqvRduNmhNvjPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSgaSgaRKxesaWwaWqaRNebhqyiaRYaTPebkebkaUmaRTtGZaZbiEQjwpaUmebkebkaTAaRYaUtebhaaaaaaaaaaaaaaaaadaadaadaafaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaawoulcixvaknLknLknLknLknLknLknLihkrgVrgVrgVbFymnRuKAuKAuKAuKAuKApmGpeongZqCcmYXtQFdZAdZAdZAnQIdYuqGgmyrnZofyfxCgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaavjPpsuhZIqsNqTitCOvjPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSgbEoaSiaVUaSkaWqaSmebhqyiaSwaTPebkebkaSuaSsaZbaZbaZbkgsaSuebkebkaTAaSwaUtebhaToaaaaaaaaaaadaadaaaaaasdxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaawouvicxvaknLknLknLknLknLknLknLrnAvtfvtfvtfwFwtijuKAuKAuKAuKAuKApmGcrGunMtmAmYXdZAdZAdZApVEdXdqVIaSfgRHnZocjGxCgaaaaaaaaaaaaulGoWjktwoWjukkaaaaaatlHtlHvwjqvRmgaaVgaVgaVgaVgaVgaVglXHlXHlXHaVgaVgaVgaVgaSgqfvaSipPPaWwaWqaToebhebhtHcaSVebkebkaZibhkbhkaZbbhkbhkaZiebkebkaTAaSPebhebhiLMaafaafaafaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaawoulcixvaknLknLknLknLknLknLknLihkrgVrgVrgVbFymnRuKAuKAuKAuKAuKApmGpeongZqCcmYXtQFdZAdZAdZAnQIdYuqGgmyrnZofyfxCgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaavjPpsuhZIqsNqTitCOvjPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSgbEoaSiaVUaSkaWqaSmebhqyiaSwaTPebkebkaSuaSsaZbaZbaZbkgsaSuebkebkaTAaSwaUtebhaToaaaaaaaaaaadaadaaaaabsdxaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaawouvicxvaknLknLknLknLknLknLknLrnAvtfvtfvtfwFwtijuKAuKAuKAuKAuKApmGcrGunMtmAmYXdZAdZAdZApVEdXdqVIaSfgRHnZocjGxCgaaaaaaaaaaaaulGoWjktwoWjukkaaaaaatlHtlHvwjqvRmgaaVgaVgaVgaVgaVgaVglXHlXHlXHaVgaVgaVgaVgaSgqfvaSipPPaWwaWqaToebhebhtHcaSVebkebkaZibhkbhkaZbbhkbhkaZiebkebkaTAaSPebhebhiLMaafaafaafaadaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaawoulcixvaknLknLknLknLknLknLknLrnAbSHvtfvtfbFyisruKAuKAuKAuKAuKApmGmYXtNmmYXmYXqNBkehdUNlXblXbdXeaSfcxznZosNExCgaaaaaaaaaaaanPXrxyhfalhCnPXaaaaaaaaatlHdUuqvReVukrvefNvVVbegtEPlXHbfSuWEqhHpmKlFkkExaVgrKOkEKaSinSkaTloxqebhebhfCyaSUaSVebkebkaUmaSZaZiaTbaZiaTdaUmebkebkaTAaThaTiebhaToaaaaaaaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaawoulcixvaknLknLknLknLknLknLknLrnAodGviYjSxoKewounEcuKAuKAuKAuKAlXbhqphqphqpdXddXddXddXdlXbcFhqVIaSfaSfylDaSfxCgubvubvubvszanPXdBEecVtOLnPXoYRubvubvubvqHGgeKqHGaVgefNpznuKFesepVKsbEtaJgwUmxnuBzkExaVgaTlaTlaTmaTlaWwinCaToebhjMhdnCaSVebkebkaZilDGbhiaZbbhiaTwaZiebkebkaTAdnCaUtebhaaaaaaaaaaaaaTEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTEaaaaaaaaawoueXRflYvSRhCIhCIbQpcZtcZtnhkeEXfaXrsYrsYrsYwoulXblXblXblXblXblXbmQhmQhmQhxYRoJwdXdeZVrmMdZAtUzowXvPIeWcvpcwgBubvvysfazwqRcIrhOgfdzhOgcIrqGNpQFifeubvuXadetuXaaVgmoqcfUteKewWhLrfsKkcrgXOcVAwTOkExaVgaTGaTHaTIaWfaTKaTLaTMaTNxeOdnCaTPebkebkaUmaTSbhlaTUnWOaTSaUmebkebkaTAdnCaTZebhaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaafaafaafwouwoubqbncnqGBqGBuBFqGBqGBhkNtocoETwTJhqpgnUdZBdZAdZAjWCdZAdZAdZCdZBdZAdkjdZAdZAksNdZAdZAdZAdZAdZBdZAdZAuoHsXzubvwLFwLFsbUpKGhzvjnwkSYxUJqiRwLFmXWubvlsJokXchyaVgshNsltdvDmGFcYgqSbsqXqOAofLmJGbBQaVgukxtxfdKjroUacitsaaUgebhuapdnCaTPebkebkebkaUmbhmxGsaUoaUmebkebkebkaTAdnCaUtebhaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaafaafaafwouwoubqbncnqGBqGBuBFqGBqGBhkNtocoETwTJhqpgnUdZBdZAdZAjWCdZAdZAdZCdZBdZAdkjdZAdZAksNdZAdZAdZAdZAdZBdZAdZAuoHsXzubvwLFwLFsbUpKGhzvjnwkSYxUJqiRwLFmXWubvlsJokXchyaVgshNsltdvDmGFcYgqSbsqXqOAofLmJGbBQaVgukxtxfdKjroUacetsaaUgebhuapdnCaTPebkebkebkaUmbhmxGsaUoaUmebkebkebkaTAdnCaUtebhaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaaaawouwoudgHoatdgHwoudgHoatdgHwouwouwouhqpmWhlXbaOoaOoaOoaOoaOolXbxVwfFBlXblXblXblXblXblXblXbaOoaOoiUgdZAnqOvIMubvqUqwLFvpFdwhdwhcsUexsexslCZwLFqlQubvjUmreMgcqaVguRVxFopdrxHwbJWfcNbLdkdeyiPlNTgwvaVgaUvmUsdRvmORaVkaVkaWuebhebhdnCjAHbhnbhnbhnbhnbhnbhnbhnbhnbhnbhnbhnubbaWvebhebhaafaafaafaTEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaawoulXblXblXbaaaaaaaaaaaaaaalXblXblXblXbaaaaaaaaaaafaaaaaaaaaaOoaOosAodtemBtubvpLmgDzkRHlcfjXQuaSwApyfyrhBlunhOguKWuSywRNduNaVgaVgkDNxcseVQlXHpyJuWAhlSbJlgCtvgnaVgaUGaUHqHBaVkaVkaaaaaaaaaebhebhebhebhebhebhebhebhebhebhebhebhebhebhebhebhebhaaaaaaaaaaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaOoaOolMzjptubvhOghOghOghOghOgbHOhOghOghOghOghOgeFTljUwRNfKKtCHrXyrXyxkhrXyrXyrXyrXyrXyrXyrXyrXyaVgaVhaViaVkaVkaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaOoerIjGgfYhtyFmQrtRRmVlhpVgNJoGWmQrnZZmQrjFAoGljlxtLKqACoGlpItgwXrzNsbZjxioGliUTmkdvdnjKonRihjjjVNeohaVkaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaasNDaaaaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaTEaadaaddWXaTEaafaadaadaafaTEaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaasNDaaaaaaaaalXbitVdYtdXdoFFtPrtPrqOvhmamZXhgalxMwbMtPriLttSIvXngwxhkPtSImNntSIslpvQilkwsEoswTgIWtSItSIcEgaRbvtGvQUaWuaaaaaaaaasNDaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasdxaaaaaaaaaaadaadaadaafaadaadaadaafaVWaTEaadaadaadaafaaaaafaTEaadaadaadaadaafaVWaaalXblXblXblXbtlHtlHtlHjdYenSoBKtZrlsendYlselsedRDoGTwRNoAwcuShFIhFIhFIhFIjJeeewxwIpwHtlHtlHtlHaWuaWuaWuaWuaafaafaadaadaadaadcALaaaaadaafaadaadaadaafaadaadaadaaaaVWcALaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasNDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUlbONbONkWYbONeqxchCvpqiCqchChennrbgITlseeubmBswRNxdSeubhFIoaIrIPrIPjJersehqBocKbwfrbfgTWrbfrbfpmqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasdxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUljSgoNNeCbuZMwrxvGtmSDfHQchCcZVgkboDZeyDeubrRhjLlduNmZfhFIaWgoaIkVXjJeiIPgYFehpffOwgSoxnygYbUUpmqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsdxaabaaaaaaaadaadaadaafaadaadaadaafaVWaTEaadaadaadaafaaaaafaTEaadaadaadaadaafaVWaaalXblXblXblXbtlHtlHtlHjdYenSoBKtZrlsendYlselsedRDoGTwRNoAwcuShFIhFIhFIhFIjJeeewxwIpwHtlHtlHtlHaWuaWuaWuaWuaafaafaadaadaadaadcALaaaaadaafaadaadaadaafaadaadaadaaaaVWcALaadaadaadaadaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaasNDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUlbONbONkWYbONeqxchCvpqiCqchChennrbgITlseeubmBswRNxdSeubhFIoaIrIPrIPjJersehqBocKbwfrbfgTWrbfrbfpmqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsdxaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUljSgoNNeCbuZMwrxvGtmSDfHQchCcZVgkboDZeyDeubrRhjLlduNmZfhFIaWgoaIkVXjJeiIPgYFehpffOwgSoxnygYbUUpmqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUlbONbONkWYbONeqxchClaViFntZrlselselselseeubxyCcoqnHQfmuqrmsmHsSPhsIjJexBjopHocKbwfrbfgTWrbfrbfpmqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamsetZrtZrtZrtZrtZrtZrjYAxcTtZrgnlvnibPdqlfgXHnjZppygGZrfSwsfpAYohKuiDjJenNZrffjJejJejJejJejJejJegfVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarUluIauIanbxuIarZPchCjKHrcatZriuIgGZgGZgGZpETgGZucdsfLiRgsbPhhisLOiPijbnmntmvNocKvBielZtoDelZelZpmqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -3117,9 +3126,9 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakxnaaacqNsIEgJsdSHbdGuqMiovhzuqFnvUHmPumwpmwpmwpmwplrZvbccdamwpmwpmwpmwprilvUHgoArvkiovuqMjFkjDeqDnlTDuqGaaapzHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasNDaaaaaaaaapLGtOJtOJpLGtOJgCntOJfgrciysZTfgrtOJgCntOJsbbbjkjXVwSjmNjtOJgCntOJfgrvoHciyfgrtOJgCntOJpLGtOJtOJpLGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaoTtemjjkCgRTaaaaaatOJtOJrhuwCCtsUtOJtOJaaaaaaoTtvwOfawgRTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaobirDamhurfAaaaaaaaaavMcvMcvMcvMcvMcaaaaaaaaaobidzBtrwrfAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasdxotUwjRrDzpLGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapLGuAJwjRotUsdxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasNDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafobirDamhurfAaaaaaaaaavMcvMcvMcvMcvMcaaaaaaaaaobidzBtrwrfAaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsdxotUwjRrDzpLGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapLGuAJwjRotUsdxaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaasNDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapvAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiKgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasNDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/maps/southern_cross/southern_cross-10.dmm b/maps/southern_cross/southern_cross-10.dmm index 7a71a1f71b..fc43c2f2f0 100644 --- a/maps/southern_cross/southern_cross-10.dmm +++ b/maps/southern_cross/southern_cross-10.dmm @@ -17,7 +17,7 @@ "oO" = (/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/wilderness/normal) "pC" = (/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/wilderness/deep) "pD" = (/obj/effect/step_trigger/teleporter/bridge/west_to_east/small,/turf/simulated/floor/water/deep,/area/surface/outside/river/svartan) -"pL" = (/turf/simulated/floor/wood,/area/surface/outside/path/wilderness) +"pL" = (/turf/simulated/floor/wood/broken{outdoors = 1},/area/surface/outside/path/wilderness) "pS" = (/obj/effect/shuttle_landmark{docking_controller = "mining_dock_2"; landmark_tag = "shuttle2_mining"; name = "Wilderness Landing Site"},/turf/simulated/floor/outdoors/grass/sif/planetuse{tree_chance = 0},/area/shuttle/shuttle2/mining) "ro" = (/obj/effect/zone_divider,/turf/simulated/floor/outdoors/grass/sif/forest/planetuse,/area/surface/outside/wilderness/deep) "rW" = (/obj/effect/map_effect/portal/master/side_b/wilderness_to_caves{dir = 1},/turf/simulated/wall/solidrock,/area/surface/outside/wilderness/mountains) @@ -36,7 +36,7 @@ "yf" = (/obj/effect/zone_divider,/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/wilderness/deep) "yg" = (/obj/effect/map_effect/portal/line/side_b{dir = 1},/obj/effect/map_effect/perma_light/concentrated/incandescent,/turf/simulated/shuttle/floor/voidcraft/external,/area/surface/outpost/wall/checkpoint) "yC" = (/turf/simulated/wall/solidrock,/area/surface/outside/wilderness/mountains) -"zc" = (/obj/effect/zone_divider,/turf/simulated/floor/outdoors/dirt,/area/surface/outside/path/wilderness) +"zc" = (/obj/structure/railing,/turf/simulated/floor/water,/area/surface/outside/ocean) "ze" = (/obj/structure/simple_door/sifwood,/turf/simulated/floor/plating/external,/area/surface/outpost/shelter) "zi" = (/obj/random/junk,/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "mining_dock_1"; name = "shuttle bay controller"; pixel_y = -26; tag_door = "mining_dock_1_door"},/turf/simulated/floor/plating/external,/area/surface/outpost/shelter) "Az" = (/turf/simulated/floor/outdoors/grass/sif/planetuse{tree_chance = 0},/area/shuttle/shuttle3/mining) @@ -52,7 +52,7 @@ "Fj" = (/obj/structure/table/steel,/obj/machinery/power/apc{dir = 8; locked = 0; name = "west bump"; operating = 0; pixel_x = -24},/obj/structure/cable,/obj/item/stack/material/phoron,/turf/simulated/floor/plating/external,/area/surface/outpost/shelter) "GK" = (/obj/effect/step_trigger/teleporter/bridge/west_to_east,/obj/structure/railing{dir = 4},/turf/simulated/floor/water/deep,/area/surface/outside/river/svartan) "GL" = (/turf/simulated/shuttle/wall/voidcraft/hard_corner,/area/surface/outpost/wall/checkpoint) -"Hf" = (/obj/effect/zone_divider,/obj/effect/zone_divider,/turf/simulated/floor/outdoors/grass/sif/forest/planetuse,/area/surface/outside/wilderness/deep) +"Hf" = (/obj/structure/railing{dir = 1},/turf/simulated/floor/water,/area/surface/outside/ocean) "Hv" = (/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/shuttle/shuttle1/mining) "Hx" = (/obj/effect/step_trigger/teleporter/bridge/east_to_west/small,/obj/effect/zone_divider,/turf/simulated/floor/water,/area/surface/outside/river/svartan) "IJ" = (/turf/unsimulated/wall/planetary/sif,/area/surface/outside/ocean) @@ -73,7 +73,7 @@ "PG" = (/obj/machinery/light{dir = 8},/turf/simulated/shuttle/floor/voidcraft/external,/area/surface/outpost/wall/checkpoint) "Si" = (/turf/simulated/floor/outdoors/grass/sif/planetuse,/area/surface/outside/wilderness/normal) "Sr" = (/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/path/wilderness) -"Ti" = (/obj/effect/zone_divider,/turf/simulated/floor/wood,/area/surface/outside/path/wilderness) +"Ti" = (/obj/effect/zone_divider,/turf/simulated/floor/wood{outdoors = 1},/area/surface/outside/path/wilderness) "Tj" = (/turf/simulated/wall/solidrock,/area/surface/outpost/wall/checkpoint) "Tr" = (/obj/machinery/space_heater,/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "mining_dock_2"; name = "shuttle bay controller"; pixel_y = -26; tag_door = "mining_dock_2_door"},/turf/simulated/floor/plating/external,/area/surface/outpost/shelter) "Tx" = (/turf/simulated/floor/water,/area/surface/outside/river/svartan) @@ -179,22 +179,22 @@ YgTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwR YgTxTxTxTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRhCwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaxG YgDyDyDyDyDyDyDyTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRjsjswRjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaxG YgDyDyDyDyDyDyDyDyDyTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRhChChCwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaxG -YgTxTxTxTxTxTxTxTxTxDyDyTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRhCMmpLpLawwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRjswRjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaxG -xGOaOaoOTxTxTxTxTxTxTxDyDyDyTxTxTxTxTxTxTxTxTxwRwRwRwRwRwRwRwRwRTxTxnvpLpLXGTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaxG -ajgmgmgmYROdOdBYBYBYBYBYCMCMCMCMCMCMCMCMCMCMBYBYBYBYBYBYBYBYBYBYBYBYdlTiHxBYBYBYBYBYBYBYBYrororororororororororororororororororororororororororororororororororororororororororororororororororororororoHfrorororororororororororororororocscscszczccscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscsgmgmgmgmaj -xGOaOaOaoOoOKiKiKiKiTxTxTxTxTxTxTxTxTxDyDyDyDyDyDyDyDyDyDyDyTxTxTxDyUoTDTDvKTxDyDyDyDyDyTxTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRwRwRjswRjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaOaxG -xGOaOaOaoOoOKiKiKiKiKiKiTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxDyDypDTDvKTxTxTxTxTxDyDyDyDyDyDyDyTxTxTxTxTxTxTxTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRwRwRjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaOaxG -xGOaOaOaoOoOKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxTxTxTxTxTxTxTxTxnvpLpLXGTxTxTxTxTxTxTxTxTxTxTxDyDyDyDyDyDyDyDyDyDyTxTxTxTxTxTxTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRwRjsjsjsjsjshChCjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaOaxG -xGOaOaOaoOoOKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxnvpLpLXGTxTxTxTxTxTxKiKiKiKiTxTxTxTxTxTxTxTxTxTxDyDyDyDyDyDyDyDyDyDyTxTxTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRjsjsjsjsjsjshChCjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaOaOaxG -xGOaOaOaoOKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiawpLpLlYKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxTxTxTxDyTxTxTxTxDyDyDyDyDyDyDyTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRjsjsjsjsjsawpLpLawjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaOaOaxG -xGOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKihCKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxTxTxTxTxTxTxTxTxDyDyDyDyDyDyTxTxTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRjsjsjsjsjsTxnvpLpLXGTxTxTxTxjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaOaOaxG -xGOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKihChCKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxTxTxTxDyDyDyDyDyDyDyTxTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRjsjsjsjsjsTxTxGKpLpLXGDyTxTxTxTxTxTxTxTxTxTxTxTxjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaOaOaxG -xGOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKihCKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxTxDyDyDyDyDyDyDyDyDyDyDyTxTxTxwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRjsjsjsjsjsTxTxTxGKpLpLCpDyDyDyDyDyDyDyDyDyDyDyDyTxTxTxTxTxTxjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaOaOaxG -xGOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKihCKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxDyDyDyDyDyDyDyDyDyTxTxwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRTxTxTxTxTxTxTxTxGKpLpLCpDyDyTxTxDyTxTxTxTxTxTxDyDyDyDyDyTxTxTxTxTxTxjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjswRjsjsjsjsjsjsOaOaOaOaOaOaxG -xGOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxTxTxTxDyDyDyDyDyDyTxTxTxTxwRwRrowRwRwRwRwRwRwRwRTxTxTxTxTxTxTxTxTxDyGKpLpLCpDyDyTxTxTxTxTxTxTxTxTxTxTxTxTxDyDyDyDyDyTxTxTxTxjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjswRwRjsjsjswRwROaOaOaOaOaOaxG -xGOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxTxTxTxDyDyDyDyDyTxTxTxBYwRwRwRwRwRwRwRwRTxTxTxTxDyDyDyDyDyDynvpLpLXGTxTxTxTxTxSiSiSiSiSiSiTxTxTxTxTxTxTxTxDyDyDyDyDyTxTxTxTxTxTxjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjswRwRwRjswRjsOaOaOaOaOaOaxG -xGOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxTxDyDyDyDyDyBYTxTxTxTxTxTxTxTxTxDyDyDyDyDyDyDyDyTxnvpLpLXGTxTxTxTxSiSiSiSiSiSiSiSiSiTxTxTxTxTxTxTxTxTxTxDyDyDyTxTxTxTxTxjsjsjsjsjsjsjsjsjsjsjsjsjsjswRjswRwRwRwRwRwRwRwROaOaOaOaOaOaxG -xGOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxDyDyDyDyDyCMDyDyDyDyDyDyDyDyDyDyDyTxTxTxTxTxTxTxlYpLpLawSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiTxTxTxTxTxTxTxDyDyDyDyTxTxTxTxTxTxjsjsjsjsjsjsjsjsjsjsjsjsjswRwRwRwRwRwROaOaOaOaOaOaOaxG +YgTxTxTxTxTxTxTxTxTxDyDyTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRhCMmTDTDawwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRjswRjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaxG +xGOaOaoOTxTxTxTxTxTxTxDyDyDyTxTxTxTxTxTxTxTxTxwRwRwRwRwRwRwRwRwRTxTxnvpLTDXGTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaxG +ajgmgmgmYROdOdBYBYBYBYBYCMCMCMCMCMCMCMCMCMCMBYBYBYBYBYBYBYBYBYBYBYBYdlTiHxBYBYBYBYBYBYBYBYrorororororororororororororororororororororororororororororororororororororororororororororororororororororororororororororororororororororororocscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscscsgmgmgmgmaj +xGOaOaOaoOoOKiKiKiKiTxTxTxTxTxTxTxTxTxDyDyDyDyDyDyDyDyDyDyDyTxTxTxDyUopLTDvKTxDyDyDyDyDyTxTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRwRwRjswRjsjshCjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaOaxG +xGOaOaOaoOoOKiKiKiKiKiKiTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxTxDyDypDpLvKTxTxTxTxTxDyDyDyDyDyDyDyTxTxTxTxTxTxTxTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRwRwRjsjsjsjsjshCjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaOaxG +xGOaOaOaoOoOKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxTxTxTxTxTxTxTxTxnvTDTDXGTxTxTxTxTxTxTxTxTxTxTxDyDyDyDyDyDyDyDyDyDyTxTxTxTxTxTxTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRwRjsjsjsjsjshChCjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaOaxG +xGOaOaOaoOoOKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxnvpLTDXGTxTxTxTxTxTxKiKiKiKiTxTxTxTxTxTxTxTxTxTxDyDyDyDyDyDyDyDyDyDyTxTxTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRjsjsjsjsjsjshChCjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaOaOaxG +xGOaOaOaoOKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiawTDTDlYKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxTxTxTxDyTxTxTxTxDyDyDyDyDyDyDyTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRwRjsjsjsjsjsawTDpLawjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaOaOaxG +xGOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKihCKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxTxTxTxTxTxTxTxTxDyDyDyDyDyDyTxTxTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRwRjsjsjsjsjsTxnvTDTDXGTxTxTxTxjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaOaOaxG +xGOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKihChCKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxTxTxTxDyDyDyDyDyDyDyTxTxTxTxTxTxwRwRwRwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRwRjsjsjsjsjsTxTxGKTDTDXGDyTxTxTxTxTxTxTxTxTxTxTxTxjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaOaOaxG +xGOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKihCKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxTxDyDyDyDyDyDyDyDyDyDyDyTxTxTxwRwRwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRjsjsjsjsjsTxTxTxGKTDTDCpDyDyDyDyDyDyDyDyDyDyDyDyTxTxTxTxTxTxjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsOaOaOaOaOaxG +xGOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKihCKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxDyDyDyDyDyDyDyDyDyTxTxwRwRwRwRwRrowRwRwRwRwRwRwRwRwRwRTxTxTxTxTxTxTxTxGKTDTDCpDyDyTxTxDyTxTxTxTxTxTxDyDyDyDyDyTxTxTxTxTxTxjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjswRjsjsjsjsjsjsOaOaOaOaOaOaxG +xGOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxTxTxTxDyDyDyDyDyDyTxTxTxTxwRwRrowRwRwRwRwRwRwRwRTxTxTxTxTxTxTxTxTxDyGKpLTDCpDyDyTxTxTxTxTxTxTxTxTxTxTxTxTxDyDyDyDyDyTxTxTxTxjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjswRwRjsjsjswRwROaOaOaOaOaOaxG +xGOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxTxTxTxDyDyDyDyDyTxTxTxBYwRwRwRwRwRwRwRwRTxTxTxTxDyDyDyDyDyDynvTDTDXGTxTxTxTxTxSiSiSiSiSiSiTxTxTxTxTxTxTxTxDyDyDyDyDyTxTxTxTxTxTxjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjsjswRwRwRjswRjsOaOaOaOaOaOaxG +xGOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxTxDyDyDyDyDyBYTxTxTxTxTxTxTxTxTxDyDyDyDyDyDyDyDyTxnvTDpLXGTxTxTxTxSiSiSiSiSiSiSiSiSiTxTxTxTxTxTxTxTxTxTxDyDyDyTxTxTxTxTxjsjsjsjsjsjsjsjsjsjsjsjsjsjswRjswRwRwRwRwRwRwRwROaOaOaOaOaOaxG +xGOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxDyDyDyDyDyCMDyDyDyDyDyDyDyDyDyDyDyTxTxTxTxTxTxTxlYpLTDawSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiTxTxTxTxTxTxTxDyDyDyDyTxTxTxTxTxTxjsjsjsjsjsjsjsjsjsjsjsjsjswRwRwRwRwRwROaOaOaOaOaOaOaxG xGOaOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxTxTxBYTxDyDyDyDyDyDyDyDyTxTxTxTxTxTxTxTxTxSihChCSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiTxTxTxTxTxDyDyDyDyDyTxTxTxTxjsjsjsjsjsjsjsjsjswRwRwRwRwRwRwRwROaOaOaOaOaOaOaxG xGOaOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxTxTxBYTxTxTxTxTxTxTxTxTxTxTxSiSiSiSiSiSiSiSihChCSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiTxTxTxTxTxTxDyDyTxTxTxTxTxjsjsjsjsjsjswRjswRwRwRwRwRwRwROaOaOaOaOaOaOaxG xGOaOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiTxTxBYTxTxTxTxKiKiKiKiKiSiSiSiSiSiSiSiSiSiSiSihChCSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiTxTxTxTxTxDyDyDyDyTxTxTxTxjsjsjswRwRwRwRwRwRwRwRwRwROaOaOaOaOaOaOaxG @@ -265,10 +265,10 @@ xGOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKi xGOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiNLNLNLybybybAzAzAzSrSrybybybvXvXvXvXvXybybybybybNKHvHvybybybHvHvHvybmkybybybSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSioOoOoOxixixixixiOYOYOYOYOYOYOYOYhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWIJ xGOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiSioOSiSiSiSiSiSiSiSiSiSiSiSiSiybNLAzybyboOoOybAzAzSrSrybybSrSrSrybybybybybybybybNKHvybSrybybybHvHvybmkybyboOoOSioOSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSioOoOoOxixixixixiOYOYOYOYOYOYOYOYhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWIJ xGOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiSiKiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSioOSiSiSiybSrSrybybSrybybybybybybybybybybybybybybSrSrybybybybmkybybybybybSioOSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSioOoOoOxixixixiOYOYOYOYOYOYOYOYOYhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWIJ -xGOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiSiSiSiSioOSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSrSrSiSrSrybybybybybybybybybybybybybybSrSrSrybybybmkybyboOoOoOSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSioOoOoOoOxixixiOYOYOYOYOYOYOYOYhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWIJ -xGOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiSiSiKioOSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSrSrSrSrSrSrSrSrSrSrSrSrybSrybSrSrSrSrSrSrSrSrybybybmkybybSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSrSrSrSrSrSrSrSrSrSroOxixiSrSrpLpLpLOYOYOYOYOYhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWIJ -xGOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrUNSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSiSrSrSrSrSrSrpLpLpLOYOYOYOYOYhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWIJ -xGOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiSiKiSiSiSiSioOoOSiSiSiSiSiSrSrSrSrSrSrSrSrSrSiSiSiSrSrSrSrSiSiSiSiSiSiSiSiSiSiAQmUAQzeAQmUAQSiSrSrSrSiSrSrSrYwSrSrSrSiSrSrSrSrSrSrSrSiSiSrSrSrSrSrSrSrSrSiSiSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSiSiSiSiSiSiSiSiSiSiSiSiSiSixixixiOYOYOYOYOYOYOYOYOYhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWIJ +xGOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiSiSiSiSioOSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSrSrSiSrSrybybybybybybybybybybybybybybSrSrSrybybybmkybyboOoOoOSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSioOoOoOoOxixixiOYzczcOYOYOYOYOYhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWIJ +xGOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiSiSiKioOSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSrSrSrSrSrSrSrSrSrSrSrSrybSrybSrSrSrSrSrSrSrSrybybybmkybybSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSrSrSrSrSrSrSrSrSrSroOxixiSrSrTDTDpLOYOYOYOYOYhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWIJ +xGOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrUNSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSiSrSrSrSrSrSrpLpLTDOYOYOYOYOYhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWIJ +xGOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiSiKiSiSiSiSioOoOSiSiSiSiSiSrSrSrSrSrSrSrSrSrSiSiSiSrSrSrSrSiSiSiSiSiSiSiSiSiSiAQmUAQzeAQmUAQSiSrSrSrSiSrSrSrYwSrSrSrSiSrSrSrSrSrSrSrSiSiSrSrSrSrSrSrSrSrSiSiSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSiSiSiSiSiSiSiSiSiSiSiSiSiSixixixiOYHfHfOYOYOYOYOYOYhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWIJ xGOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiSiKiKiSiSiSiSiSiSiSiSiSiSrSrSrSrSrSrSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiAQIZJyxOxOxOAQSiSiSiSiSiSiSiSrYwSrSrSiSiSiSiSiSiSiSiSiSiSiSiSiSiSrSiSrSrSrSrSiSrSiSiSrSrSrSrSrSrSrSrSrSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSixixixixiOYOYOYOYOYOYOYOYOYhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWhWIJ xGOaOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiSiSiKiSiSiSiSiSiSiSrSrSrSrSrSrSrSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiAQFjDgxOxOKGAQSiSiSiSiSiSiSiSiUNSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSixixixiOYOYOYOYOYOYOYOYOYOYOYhWhWhWhWhWhWhWhWhWhWOYOYOYOYOYOYIJ xGOaOaOaOaKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiKiSiSiKiSiSiSiSiSiSiSiSrSrSrSrSrSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiAQZwxOxOxOURAQSiSiSiSiSiSiSiSiUNSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSiSixixixiOYOYOYOYOYOYOYOYOYOYOYOYOYhWhWhWhWhWhWhWOYOYOYOYOYOYOYIJ diff --git a/maps/southern_cross/southern_cross-2.dmm b/maps/southern_cross/southern_cross-2.dmm index fd057d6c29..be1d1c8dc2 100644 --- a/maps/southern_cross/southern_cross-2.dmm +++ b/maps/southern_cross/southern_cross-2.dmm @@ -5,7 +5,7 @@ "aae" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/effect/floor_decal/borderfloorwhite{dir = 10},/obj/effect/floor_decal/corner/purple/border{dir = 10},/obj/effect/floor_decal/borderfloorwhite/corner2{dir = 9},/obj/effect/floor_decal/corner/purple/bordercorner2{dir = 9},/turf/simulated/floor/tiled/white,/area/rnd/research_foyer) "aaf" = (/obj/structure/lattice,/turf/space,/area/space) "aag" = (/obj/structure/lattice,/obj/structure/grille,/turf/space,/area/space) -"aah" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/highsecurity{name = "Armoury Tactical Equipment"; req_access = list(3); req_one_access = list(3)},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/security/tactical) +"aah" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/highsecurity{name = "Armoury Tactical Equipment"; req_access = list(3); req_one_access = list(3)},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/techfloor/grid,/area/security/tactical) "aai" = (/obj/structure/lattice,/obj/machinery/shield_diffuser,/turf/space,/area/space) "aaj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled/dark,/area/security/armoury) "aak" = (/obj/random/junk,/obj/structure/lattice,/obj/machinery/shield_diffuser,/turf/space,/area/space) @@ -28,11 +28,11 @@ "aaB" = (/obj/structure/table/steel,/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/storage/box/donkpockets{pixel_x = -3; pixel_y = -3},/obj/item/weapon/storage/box/cups,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/security/prison) "aaC" = (/obj/structure/table/steel,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/material/minihoe,/obj/item/device/analyzer/plant_analyzer,/obj/item/clothing/head/greenbandana,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/security/prison) "aaD" = (/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/reagent_containers/glass/bucket,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/security/prison) -"aaE" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/flora/pottedplant/xmas,/turf/simulated/floor/tiled,/area/security/prison) +"aaE" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/security/prison) "aaF" = (/obj/machinery/vending/hydronutrients,/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/security/prison) "aaG" = (/obj/structure/table/rack{dir = 8; layer = 2.6},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/blue/full{dir = 8},/obj/item/clothing/gloves/arm_guard/laserproof,/obj/item/clothing/shoes/leg_guard/laserproof,/obj/item/clothing/suit/armor/laserproof,/obj/item/clothing/head/helmet/laserproof,/obj/machinery/door/window/brigdoor/eastleft{name = "Laser Armor"},/turf/simulated/floor/tiled/dark,/area/security/armoury) "aaH" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/dark,/area/security/armoury) -"aaI" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/dark,/area/security/armoury) +"aaI" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/techmaint,/area/security/armoury) "aaJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/item/weapon/stool,/turf/simulated/floor/tiled/dark,/area/security/armoury) "aaK" = (/obj/machinery/hologram/holopad,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/item/weapon/stool,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/security/armoury) "aaL" = (/obj/item/weapon/stool,/turf/simulated/floor/tiled/dark,/area/security/armoury) @@ -48,7 +48,7 @@ "aaV" = (/obj/machinery/door/airlock{name = "Toilet"},/turf/simulated/floor/tiled/freezer,/area/security/prison) "aaW" = (/obj/structure/lattice,/obj/structure/lattice,/obj/machinery/shield_diffuser,/turf/space,/area/space) "aaX" = (/obj/structure/table/rack{dir = 8; layer = 2.6},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/blue{dir = 9},/obj/item/clothing/gloves/arm_guard/laserproof,/obj/item/clothing/shoes/leg_guard/laserproof,/obj/item/clothing/suit/armor/laserproof,/obj/item/clothing/head/helmet/laserproof,/obj/machinery/door/window/brigdoor/eastright{name = "Laser Armor"},/turf/simulated/floor/tiled/dark,/area/security/armoury) -"aaY" = (/obj/machinery/camera/network/security{c_tag = "SEC - Armory"; dir = 1},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/dark,/area/security/armoury) +"aaY" = (/obj/machinery/camera/network/security{c_tag = "SEC - Armory"; dir = 1},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/techmaint,/area/security/armoury) "aaZ" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/empslite{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/flashbangs{pixel_x = -2; pixel_y = -2},/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/security/armoury) "aba" = (/obj/structure/table/standard,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/item/clothing/glasses/sunglasses/sechud/tactical,/obj/item/clothing/glasses/sunglasses/sechud/tactical,/obj/item/clothing/glasses/sunglasses/sechud/tactical,/obj/item/clothing/glasses/sunglasses/sechud/tactical,/obj/item/clothing/glasses/sunglasses/sechud/tactical,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/industrial/outline/grey,/obj/item/device/binoculars{pixel_y = 5},/turf/simulated/floor/tiled/dark,/area/security/armoury) "abb" = (/obj/structure/table/standard,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/weapon/storage/box/handcuffs{pixel_x = 8; pixel_y = 6},/obj/item/weapon/storage/box/chemimp{pixel_x = 4; pixel_y = 3},/obj/item/weapon/storage/box/trackimp,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/security/armoury) @@ -57,7 +57,7 @@ "abe" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled/dark,/area/security/tactical) "abf" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/structure/table/steel,/obj/item/weapon/storage/firstaid/combat,/turf/simulated/floor/tiled/dark,/area/security/tactical) "abg" = (/obj/effect/landmark{name = "carpspawn"},/obj/structure/lattice,/obj/machinery/shield_diffuser,/turf/space,/area/space) -"abh" = (/obj/machinery/door/window/westleft{name = "Shower"},/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/obj/structure/curtain/open/shower/security,/obj/structure/window/basic,/obj/effect/floor_decal/borderfloorwhite/cee{dir = 8},/turf/simulated/floor/tiled/freezer,/area/security/security_restroom) +"abh" = (/obj/machinery/door/window/westleft{name = "Shower"},/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/obj/structure/curtain/open/shower/security,/obj/structure/window/basic,/turf/simulated/floor/tiled/freezer,/area/security/security_restroom) "abi" = (/obj/structure/table/standard,/obj/item/device/taperecorder,/obj/item/device/tape,/obj/item/device/megaphone,/obj/item/weapon/packageWrap,/obj/item/weapon/storage/box,/obj/machinery/recharger/wallcharger{pixel_x = -24; pixel_y = -4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/turf/simulated/floor/tiled,/area/security/security_lockerroom) "abj" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/security/security_lockerroom) "abk" = (/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/tiled/airless,/area/rnd/test_area) @@ -80,6 +80,7 @@ "abB" = (/obj/machinery/hologram/holopad,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/security/security_lockerroom) "abC" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/button/remote/blast_door{id = "Armoury"; name = "Emergency Access"; pixel_y = -24; req_access = list(3)},/obj/machinery/recharger/wallcharger{pixel_x = -24; pixel_y = -4},/turf/simulated/floor/tiled/dark,/area/security/armoury) "abD" = (/obj/effect/floor_decal/industrial/warning/cee{dir = 8},/turf/simulated/floor/tiled/techmaint,/area/security/armoury) +"abE" = (/obj/structure/reagent_dispensers/water_cooler/full,/obj/machinery/alarm{pixel_y = 22},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "abF" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/effect/floor_decal/industrial/warning,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/techmaint,/area/security/armoury) "abG" = (/obj/effect/floor_decal/industrial/warning/cee{dir = 4},/turf/simulated/floor/tiled/techmaint,/area/security/armoury) "abH" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/recharger/wallcharger{pixel_x = 34; pixel_y = -4},/turf/simulated/floor/tiled/dark,/area/security/armoury) @@ -90,8 +91,8 @@ "abM" = (/obj/structure/cable/green{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/security/security_lockerroom) "abN" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/turf/simulated/floor/tiled,/area/security/prison) "abO" = (/obj/machinery/portable_atmospherics/hydroponics,/obj/machinery/status_display{layer = 4; pixel_x = 32},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 5},/turf/simulated/floor/tiled,/area/security/prison) -"abP" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{id = "Armoury"; name = "Emergency Access"},/turf/simulated/floor/tiled/dark,/area/security/armoury) -"abQ" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/blast/regular{id = "Armoury"; name = "Emergency Access"},/turf/simulated/floor/tiled/dark,/area/security/armoury) +"abP" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{id = "Armoury"; name = "Emergency Access"},/turf/simulated/floor/tiled/techfloor/grid,/area/security/armoury) +"abQ" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/blast/regular{id = "Armoury"; name = "Emergency Access"},/turf/simulated/floor/tiled/techfloor/grid,/area/security/armoury) "abR" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/simulated/floor/tiled/freezer,/area/security/security_restroom) "abS" = (/obj/structure/table/standard,/obj/item/weapon/towel{color = "#ff0000"; name = "red towel"},/obj/item/weapon/towel{color = "#ff0000"; name = "red towel"},/obj/item/weapon/towel{color = "#ff0000"; name = "red towel"},/obj/item/weapon/towel{color = "#ff0000"; name = "red towel"},/obj/item/weapon/towel{color = "#ff0000"; name = "red towel"},/obj/item/weapon/soap/nanotrasen,/obj/item/weapon/soap/nanotrasen,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/structure/extinguisher_cabinet{pixel_x = 28},/turf/simulated/floor/tiled/freezer,/area/security/security_restroom) "abT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/security/security_lockerroom) @@ -129,7 +130,7 @@ "acz" = (/obj/machinery/deployable/barrier,/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled,/area/security/security_equiptment_storage) "acA" = (/obj/machinery/deployable/barrier,/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/tiled,/area/security/security_equiptment_storage) "acB" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled,/area/security/security_equiptment_storage) -"acC" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/airlock/security{name = "Equipment Storage"; req_access = list(2)},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled,/area/security/security_equiptment_storage) +"acC" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/airlock/security{name = "Equipment Storage"; req_access = list(2)},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/techmaint,/area/security/security_equiptment_storage) "acD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/security/security_hallway) "acE" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/turf/simulated/floor/tiled,/area/security/security_hallway) "acF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/security/security_hallway) @@ -160,6 +161,7 @@ "ade" = (/obj/machinery/newscaster{pixel_x = -30},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/turf/simulated/floor/tiled,/area/security/main) "adf" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/tiled/airless,/area/rnd/test_area) "adg" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled/airless,/area/rnd/test_area) +"adh" = (/obj/structure/table/standard,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/item/weapon/storage/firstaid/regular{pixel_x = 5; pixel_y = 5},/obj/item/weapon/storage/box/cups,/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "adi" = (/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Prison Gate"; name = "Communal Brig Blast Door"; opacity = 0},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/security/prison) "adj" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/door/blast/regular{id = "Cell 2"; name = "Cell 2 Door"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/steel_grid,/area/security/prison) "adk" = (/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Prison Gate"; name = "Communal Brig Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/prison) @@ -176,7 +178,7 @@ "adw" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/security/brig) "adx" = (/obj/structure/closet/secure_closet/brig{id = "Cell 2"; name = "Cell 2 Locker"},/obj/machinery/camera/network/prison{c_tag = "SEC - Brig Cell 2"; dir = 8},/obj/item/device/radio/headset,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/security/brig) "ady" = (/obj/structure/bed/padded,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/obj/machinery/flasher{id = "Cell 1"; pixel_x = -28},/turf/simulated/floor/tiled,/area/security/brig) -"adz" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/table/steel_reinforced,/obj/item/weapon/stamp/denied{pixel_x = 5},/obj/item/weapon/stamp/ward,/obj/item/weapon/tool/crowbar,/obj/item/device/radio/off,/obj/item/weapon/tool/wrench,/obj/item/device/retail_scanner/security,/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/dark,/area/security/warden) +"adz" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/table/steel_reinforced,/obj/item/weapon/stamp/denied{pixel_x = 5},/obj/item/weapon/stamp/ward,/obj/item/weapon/tool/crowbar,/obj/item/device/radio/off,/obj/item/weapon/tool/wrench,/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/dark,/area/security/warden) "adA" = (/obj/structure/closet/secure_closet/warden,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/light_switch{pixel_x = 36},/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/security/warden) "adB" = (/obj/machinery/camera/network/security{c_tag = "SEC - Brig Hallway Fore"; dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/turf/simulated/floor/tiled,/area/security/security_hallway) "adC" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/security/security_hallway) @@ -286,6 +288,7 @@ "afC" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/light,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/red/bordercorner,/turf/simulated/floor/tiled,/area/security/brig) "afD" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/security/brig) "afE" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/security/brig) +"afF" = (/obj/effect/floor_decal/spline/plain{dir = 5},/turf/simulated/floor/boxing{name = "yoga mat"},/area/crew_quarters/seconddeck/gym) "afG" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/computer/cryopod{layer = 3.3; pixel_y = -32},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/security/brig) "afH" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/security/brig) "afI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/red/bordercorner,/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled,/area/security/brig) @@ -348,6 +351,7 @@ "agO" = (/obj/machinery/atmospherics/pipe/simple/visible/red,/obj/machinery/computer/general_air_control/large_tank_control{input_tag = "o2_in"; name = "Oxygen Supply Control"; output_tag = "o2_out"; sensors = list("o2_sensor" = "Tank")},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner2{dir = 1},/turf/simulated/floor/tiled,/area/engineering/atmos) "agP" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/engineering/atmos) "agQ" = (/obj/machinery/camera/network/engineering{c_tag = "ENG - Atmospherics Fore"},/turf/simulated/floor/tiled,/area/engineering/atmos) +"agR" = (/obj/effect/floor_decal/spline/plain{dir = 4},/turf/simulated/floor/boxing{name = "yoga mat"},/area/crew_quarters/seconddeck/gym) "agS" = (/obj/machinery/computer/general_air_control/large_tank_control{frequency = 1443; input_tag = "air_in"; name = "Mixed Air Supply Control"; output_tag = "air_out"; pressure_setting = 2000; sensors = list("air_sensor" = "Tank")},/turf/simulated/floor/tiled,/area/engineering/atmos) "agT" = (/obj/machinery/atmospherics/valve/digital/open{name = "Mixed Air Inlet Valve"},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner2{dir = 4},/turf/simulated/floor/tiled,/area/engineering/atmos) "agU" = (/obj/machinery/atmospherics/valve/digital/open{name = "Mixed Air Outlet Valve"},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 1},/turf/simulated/floor/tiled,/area/engineering/atmos) @@ -498,10 +502,10 @@ "ako" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/dark,/area/security/armoury) "akr" = (/obj/structure/undies_wardrobe,/turf/simulated/floor/tiled/freezer,/area/security/security_restroom) "akt" = (/obj/structure/sink{pixel_y = 16},/obj/structure/mirror{pixel_y = 32},/turf/simulated/floor/tiled/freezer,/area/security/security_restroom) -"aku" = (/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/obj/machinery/door/window/westright{name = "Shower"},/obj/structure/curtain/open/shower/security,/obj/effect/floor_decal/borderfloorwhite/cee{dir = 8},/turf/simulated/floor/tiled/freezer,/area/security/security_restroom) +"aku" = (/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/obj/machinery/door/window/westright{name = "Shower"},/obj/structure/curtain/open/shower/security,/turf/simulated/floor/tiled/freezer,/area/security/security_restroom) "akw" = (/obj/structure/table/standard,/obj/item/device/radio,/obj/item/device/radio,/obj/item/device/radio,/obj/item/device/radio,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/weapon/tool/crowbar,/obj/item/weapon/tool/crowbar,/obj/item/weapon/tool/crowbar,/obj/item/weapon/tool/crowbar,/obj/machinery/recharger/wallcharger{pixel_x = -24; pixel_y = -4},/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/red/border{dir = 9},/obj/item/weapon/hand_labeler,/turf/simulated/floor/tiled,/area/security/security_lockerroom) "akx" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/red/border{dir = 1},/turf/simulated/floor/tiled,/area/security/security_lockerroom) -"aky" = (/obj/structure/closet/secure_closet/security,/obj/item/clothing/glasses/hud/security,/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/red/border{dir = 5},/obj/item/device/holowarrant,/turf/simulated/floor/tiled,/area/security/security_lockerroom) +"aky" = (/obj/structure/closet/secure_closet/security,/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/red/border{dir = 5},/turf/simulated/floor/tiled,/area/security/security_lockerroom) "akA" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/engineering/atmos) "akE" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/engineering/atmos) "akF" = (/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/engineering/atmos) @@ -530,7 +534,7 @@ "alg" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/security/armoury) "alh" = (/obj/structure/table/rack{dir = 8; layer = 2.6},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/structure/window/reinforced,/obj/effect/floor_decal/corner/yellow{dir = 6},/obj/item/clothing/gloves/arm_guard/combat,/obj/item/clothing/shoes/leg_guard/combat,/obj/item/clothing/suit/armor/combat,/obj/item/clothing/head/helmet/combat,/obj/machinery/door/window/brigdoor/westleft{name = "Combat Armor"},/turf/simulated/floor/tiled/dark,/area/security/tactical) "alj" = (/turf/simulated/wall/r_wall,/area/security/security_restroom) -"all" = (/obj/structure/closet/secure_closet/security,/obj/item/clothing/glasses/hud/security,/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/item/device/holowarrant,/turf/simulated/floor/tiled,/area/security/security_lockerroom) +"all" = (/obj/structure/closet/secure_closet/security,/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/security/security_lockerroom) "alo" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/target_stake,/turf/simulated/floor/tiled,/area/security/range) "alp" = (/obj/machinery/magnetic_module,/turf/simulated/floor/tiled,/area/security/range) "alq" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 9},/turf/simulated/floor/tiled,/area/engineering/atmos) @@ -539,7 +543,7 @@ "alv" = (/obj/machinery/dnaforensics,/turf/simulated/floor/tiled/freezer,/area/security/detectives_office) "alw" = (/obj/structure/table/wooden_reinforced,/turf/simulated/floor/carpet,/area/security/detectives_office) "alx" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/security/lobby) -"aly" = (/obj/machinery/camera/network/security{c_tag = "SEC - Lobby"; dir = 1},/obj/structure/sign/christmas/wreath{dir = 1},/turf/simulated/floor/tiled,/area/security/lobby) +"aly" = (/obj/machinery/camera/network/security{c_tag = "SEC - Lobby"; dir = 1},/turf/simulated/floor/tiled,/area/security/lobby) "alz" = (/obj/structure/bed/chair{dir = 1},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/computer/guestpass{pixel_y = -30},/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/red/border{dir = 6},/turf/simulated/floor/tiled,/area/security/lobby) "alA" = (/obj/effect/floor_decal/borderfloorblack{dir = 8},/obj/effect/floor_decal/corner/blue/border{dir = 8},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/sc/hos) "alB" = (/obj/structure/bed/chair/comfy/black{dir = 1},/obj/machinery/button/remote/airlock{id = "HoSdoor"; name = "Office Door"; pixel_x = -36; pixel_y = 29},/obj/machinery/button/windowtint{id = "hosoffice"; pixel_x = -26; pixel_y = 30; req_access = list(58)},/obj/machinery/button/remote/blast_door{id = "security_lockdown"; name = "Brig Lockdown"; pixel_x = -36; pixel_y = 39; req_access = list(2)},/obj/effect/landmark/start{name = "Head of Security"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hos) @@ -562,7 +566,6 @@ "alU" = (/obj/structure/closet{name = "Prisoner's Locker"},/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/random/cigarettes,/obj/item/weapon/flame/lighter/zippo,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/turf/simulated/floor/tiled,/area/security/prison) "alV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled,/area/security/prison) "alW" = (/obj/structure/closet{name = "Prisoner's Locker"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe,/obj/item/clothing/suit/storage/apron/overalls,/obj/machinery/camera/network/prison{c_tag = "SEC - Brig Dormitories"; dir = 8},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/security/prison) -"amb" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/shower{dir = 4; pixel_x = 5; pixel_y = -1},/obj/structure/curtain/open/shower/security,/obj/effect/floor_decal/borderfloorwhite/cee{dir = 4},/turf/simulated/floor/tiled/freezer,/area/security/prison) "amd" = (/obj/structure/mopbucket,/obj/item/weapon/mop,/obj/item/weapon/soap/nanotrasen,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/tiled/freezer,/area/security/prison) "ame" = (/obj/structure/table/rack{dir = 8; layer = 2.6},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/item/clothing/gloves/arm_guard/bulletproof,/obj/item/clothing/shoes/leg_guard/bulletproof,/obj/item/clothing/suit/armor/bulletproof/alt,/obj/item/clothing/head/helmet/bulletproof,/obj/machinery/door/window/brigdoor/eastleft{name = "Ballistic Armor"},/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/simulated/floor/tiled/dark,/area/security/armoury) "amf" = (/turf/simulated/floor/tiled/dark,/area/security/armoury) @@ -570,7 +573,7 @@ "ami" = (/obj/machinery/recharge_station,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/tiled/freezer,/area/security/security_restroom) "amj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled/freezer,/area/security/security_restroom) "aml" = (/obj/structure/closet/wardrobe/red,/obj/item/clothing/accessory/badge/holo,/obj/item/clothing/accessory/badge/holo,/obj/item/clothing/accessory/badge/holo/cord,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/machinery/camera/network/security{c_tag = "SEC - Locker Room"; dir = 4},/obj/item/clothing/suit/storage/hazardvest/green,/obj/item/clothing/suit/storage/hazardvest/green,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/red/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/security/security_lockerroom) -"amm" = (/obj/structure/closet/secure_closet/security,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/item/clothing/glasses/hud/security,/obj/structure/extinguisher_cabinet{pixel_x = 28},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/item/device/holowarrant,/turf/simulated/floor/tiled,/area/security/security_lockerroom) +"amm" = (/obj/structure/closet/secure_closet/security,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/extinguisher_cabinet{pixel_x = 28},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/security/security_lockerroom) "amu" = (/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/tiled,/area/engineering/atmos) "amv" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/plating,/area/maintenance/security_port) "amw" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/security/lobby) @@ -603,7 +606,7 @@ "ana" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled,/area/security/prison) "anb" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/security/prison) "anc" = (/obj/machinery/portable_atmospherics/hydroponics,/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/security/prison) -"ane" = (/obj/machinery/shower{dir = 4; pixel_x = 5; pixel_y = -1},/obj/structure/curtain/open/shower/security,/obj/effect/floor_decal/borderfloorwhite/cee{dir = 4},/turf/simulated/floor/tiled/freezer,/area/security/prison) +"ane" = (/obj/machinery/shower{dir = 4; pixel_x = 5; pixel_y = -1},/obj/structure/curtain/open/shower/security,/turf/simulated/floor/tiled/freezer,/area/security/prison) "anf" = (/turf/simulated/floor/tiled/freezer,/area/security/prison) "ang" = (/obj/structure/sink{dir = 4; pixel_x = 11},/obj/structure/mirror{pixel_x = 28},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/security/prison) "ani" = (/obj/structure/table/rack{dir = 8; layer = 2.6},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/item/clothing/gloves/arm_guard/bulletproof,/obj/item/clothing/shoes/leg_guard/bulletproof,/obj/item/clothing/suit/armor/bulletproof/alt,/obj/item/clothing/head/helmet/bulletproof,/obj/machinery/door/window/brigdoor/eastright{name = "Security Checkpoint"},/obj/effect/floor_decal/corner/green/full,/turf/simulated/floor/tiled/dark,/area/security/armoury) @@ -613,7 +616,7 @@ "anp" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/freezer,/area/security/security_restroom) "anq" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock{name = "Security Restroom"; req_access = list(1)},/turf/simulated/floor/tiled/steel_grid,/area/security/security_restroom) "anr" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/security/security_lockerroom) -"ans" = (/obj/structure/closet/secure_closet/security,/obj/item/clothing/glasses/hud/security,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/item/device/holowarrant,/turf/simulated/floor/tiled,/area/security/security_lockerroom) +"ans" = (/obj/structure/closet/secure_closet/security,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/security/security_lockerroom) "ant" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/turf/simulated/floor/tiled/white,/area/security/aid_station) "anu" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/turf/simulated/floor/tiled,/area/security/range) "anv" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled,/area/security/range) @@ -621,7 +624,7 @@ "anx" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled,/area/security/range) "any" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/security/range) "anA" = (/obj/machinery/computer/security/wooden_tv,/turf/simulated/floor/lino,/area/security/detectives_office) -"anB" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "security_lockdown"; name = "Security Blast Door"; opacity = 0},/obj/structure/sign/christmas/wreath,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fore) +"anB" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "security_lockdown"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fore) "anC" = (/obj/structure/sign/deck/second,/turf/simulated/wall,/area/security/lobby) "anE" = (/turf/simulated/wall,/area/crew_quarters/heads/sc/hos) "anF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled/dark,/area/lawoffice) @@ -658,7 +661,7 @@ "aow" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled/freezer,/area/security/security_restroom) "aoy" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/security/security_lockerroom) "aoz" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) -"aoA" = (/obj/structure/closet/secure_closet/security,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = 12; pixel_y = -24},/obj/item/clothing/glasses/hud/security,/obj/item/device/radio/intercom/department/security{dir = 4; icon_override = "secintercom"; pixel_x = 21},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/item/device/holowarrant,/turf/simulated/floor/tiled,/area/security/security_lockerroom) +"aoA" = (/obj/structure/closet/secure_closet/security,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = 12; pixel_y = -24},/obj/item/device/radio/intercom/department/security{dir = 4; icon_override = "secintercom"; pixel_x = 21},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/security/security_lockerroom) "aoB" = (/obj/structure/railing,/turf/simulated/open,/area/hallway/secondary/eva_hallway) "aoC" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/security/range) "aoE" = (/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/security/range) @@ -703,7 +706,7 @@ "apw" = (/obj/machinery/ai_status_display{pixel_x = 32},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/security/range) "apy" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) "apz" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) -"apB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) +"apB" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "apC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/junction{dir = 4; icon_state = "pipe-j2"},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) "apD" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) "apE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) @@ -752,7 +755,7 @@ "aqF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/ai_monitored/storage/eva) "aqG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) "aqH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) -"aqI" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) +"aqI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/eva_hallway) "aqJ" = (/obj/machinery/firealarm{dir = 1; pixel_y = -26},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) "aqK" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) "aqL" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/light,/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) @@ -815,10 +818,10 @@ "arX" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 4},/obj/machinery/computer/general_air_control{frequency = 1441; name = "Tank Monitor"; sensors = list("n2_sensor" = "Nitrogen", "o2_sensor" = "Oxygen", "co2_sensor" = "Carbon Dioxide", "tox_sensor" = "Toxins", "n2o_sensor" = "Nitrous Oxide", "waste_sensor" = "Gas Mix Tank")},/turf/simulated/floor/tiled,/area/engineering/atmos/monitoring) "arY" = (/obj/machinery/power/smes/buildable{RCon_tag = "Substation - Engineering"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/maintenance/substation/engineering) "arZ" = (/obj/structure/table/rack{dir = 8; layer = 2.6},/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/structure/window/reinforced{dir = 1; health = 1e+006},/obj/item/clothing/mask/breath,/obj/item/weapon/rig/breacher,/obj/machinery/door/window/eastleft{name = "E.V.A."; req_one_access = list(18)},/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva) -"asa" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_engineeringatmos{name = "Engineering Hardsuits"; req_one_access = list(11,24)},/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva) +"asa" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_engineeringatmos{name = "Engineering Hardsuits"; req_one_access = list(11,24)},/turf/simulated/floor/tiled/techmaint,/area/ai_monitored/storage/eva) "asb" = (/turf/simulated/wall/r_wall,/area/rnd/test_area) -"asc" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_medical{name = "Medical Hardsuits"},/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva) -"asd" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) +"asc" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_medical{name = "Medical Hardsuits"},/turf/simulated/floor/tiled/techmaint,/area/ai_monitored/storage/eva) +"asd" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "asf" = (/turf/simulated/wall/r_wall,/area/security/prison) "asg" = (/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Prison Gate"; name = "Communal Brig Blast Door"; opacity = 0},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/security/prison) "ash" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/door/blast/regular{id = "Cell 1"; name = "Cell 1 Door"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/steel_grid,/area/security/prison) @@ -837,7 +840,7 @@ "asA" = (/obj/structure/table/steel_reinforced,/obj/structure/window/reinforced{dir = 1},/obj/item/weapon/gun/energy/laser/practice,/turf/simulated/floor/tiled,/area/security/range) "asC" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "asD" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fore) -"asE" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Fore Hallway 2"; dir = 8},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/red/bordercorner,/obj/machinery/computer/timeclock/premade/east,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) +"asE" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Fore Hallway 2"; dir = 8},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/red/bordercorner,/obj/machinery/computer/timeclock/premade/east,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "asF" = (/obj/machinery/door/firedoor/glass,/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,/obj/machinery/door/airlock/glass_medical{name = "First-Aid Station"; req_access = newlist(); req_one_access = newlist()},/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/seconddeck/fore) "asG" = (/obj/structure/lattice,/obj/structure/grille/broken,/obj/effect/landmark{name = "carpspawn"},/turf/space,/area/space) "asH" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/janitor) @@ -888,7 +891,7 @@ "atI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "englockdown"; name = "Engineering Lockdown"; opacity = 0},/turf/simulated/floor/plating,/area/maintenance/engineering) "atJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/light/small{dir = 1},/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/engineering) "atK" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/engineering) -"atL" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/machinery/light{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) +"atL" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "atM" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/seconddeck/fore) "atN" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/janitor) "atO" = (/obj/item/weapon/stool/padded,/obj/effect/landmark/start{name = "Janitor"},/turf/simulated/floor/tiled,/area/janitor) @@ -980,16 +983,16 @@ "avP" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/security/main) "avR" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/research) "avS" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plating,/area/maintenance/research) -"avT" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "toxins_outer"; locked = 1; name = "Toxins External Access"; req_access = list(8,10,13)},/turf/simulated/floor/tiled,/area/rnd/toxins_launch) +"avT" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "toxins_outer"; locked = 1; name = "Toxins External Access"; req_access = list(8,10,13)},/turf/simulated/floor/tiled/dark,/area/rnd/toxins_launch) "avU" = (/obj/machinery/status_display{pixel_y = -32},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/dispenser,/turf/simulated/floor/tiled,/area/engineering/atmos) "avV" = (/obj/structure/table/standard,/obj/machinery/newscaster{pixel_y = -30},/obj/item/clothing/glasses/welding,/obj/item/clothing/head/welding{pixel_x = -5; pixel_y = 3},/obj/item/clothing/head/welding{pixel_x = -5; pixel_y = 3},/turf/simulated/floor/tiled,/area/engineering/atmos) "awe" = (/obj/structure/table/standard,/obj/machinery/requests_console{department = "Atmospherics"; departmentType = 3; name = "Atmos RC"; pixel_y = -32},/obj/item/device/t_scanner,/obj/item/device/radio/headset/headset_eng,/obj/item/weapon/cartridge/atmos,/obj/item/weapon/cartridge/atmos,/obj/item/clothing/ears/earmuffs,/obj/item/clothing/ears/earmuffs,/obj/item/device/pipe_painter,/obj/machinery/light/spot,/turf/simulated/floor/tiled,/area/engineering/atmos) "awf" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_atmos{name = "Atmospherics Monitoring Room"; req_access = list(24)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/yellow,/turf/simulated/floor/tiled/steel_grid,/area/engineering/atmos) -"awg" = (/obj/machinery/atmospherics/pipe/simple/hidden/red,/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/engineering/atmos) +"awg" = (/obj/machinery/atmospherics/pipe/simple/hidden/red,/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/glass,/turf/simulated/floor,/area/engineering/atmos) "awh" = (/obj/structure/sign/warning/nosmoking_2,/turf/simulated/wall/r_wall,/area/engineering/atmos/monitoring) "awi" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_atmos{name = "Atmospherics Monitoring Room"; req_access = list(24)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/steel_grid,/area/engineering/atmos/monitoring) "awj" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_atmos{name = "Atmospherics Monitoring Room"; req_access = list(24)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/cyan,/turf/simulated/floor/tiled/steel_grid,/area/engineering/atmos) -"awl" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/red,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/engineering/atmos) +"awl" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/red,/obj/machinery/door/firedoor/glass,/turf/simulated/floor,/area/engineering/atmos) "awm" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/security/security_processing) "awn" = (/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green,/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/security/brig) "awo" = (/obj/machinery/door/airlock{id_tag = "visitdoor"; name = "Visitation Area"; req_access = list(63)},/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled/steel_grid,/area/security/prison) @@ -1017,7 +1020,7 @@ "awQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/security/security_ses) "awR" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/security/security_ses) "awS" = (/turf/simulated/floor/tiled,/area/security/security_ses) -"awU" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/red/bordercorner{dir = 4},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) +"awU" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/red/bordercorner{dir = 4},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "awV" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/floor_decal/borderfloorwhite{dir = 6},/obj/effect/floor_decal/corner/paleblue/border{dir = 6},/obj/structure/closet/secure_closet/medical_wall{name = "defibrillator closet"; pixel_y = -31},/obj/item/device/defib_kit/loaded,/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/seconddeck/fore) "awW" = (/obj/structure/closet/jcloset,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/soap/nanotrasen,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/purple/border{dir = 8},/turf/simulated/floor/tiled,/area/janitor) "awX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/janitor) @@ -1072,7 +1075,7 @@ "ayn" = (/obj/machinery/portable_atmospherics/powered/scrubber,/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/plating,/area/maintenance/engineering) "ayo" = (/obj/structure/table/steel,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/obj/random/tool/powermaint,/turf/simulated/floor/plating,/area/maintenance/engineering) "ayp" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/engineering) -"ayq" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/machinery/status_display/shuttle_display{pixel_x = -32},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) +"ayq" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/machinery/status_display/shuttle_display{pixel_x = -32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "ayA" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/window/eastright{name = "Janitorial Delivery"; req_one_access = list(26)},/obj/structure/window/reinforced{dir = 1; health = 1e+006},/turf/simulated/floor/tiled,/area/janitor) "ayB" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/purple/bordercorner,/obj/structure/janitorialcart,/turf/simulated/floor/tiled,/area/janitor) "ayC" = (/obj/structure/mopbucket,/obj/item/weapon/mop,/obj/item/weapon/reagent_containers/glass/bucket,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/purple/border,/turf/simulated/floor/tiled,/area/janitor) @@ -1218,8 +1221,8 @@ "aCg" = (/obj/structure/closet,/obj/item/clothing/glasses/welding,/obj/item/weapon/weldingtool,/obj/effect/decal/cleanable/dirt,/obj/item/clothing/shoes/boots/workboots,/obj/random/maintenance/engineering,/obj/random/maintenance/cargo,/obj/random/maintenance/engineering,/obj/item/clothing/glasses/sunglasses,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/engineering) "aCh" = (/obj/structure/closet/wardrobe/grey,/obj/item/weapon/storage/backpack,/obj/item/weapon/storage/backpack,/obj/random/maintenance/security,/obj/random/maintenance/security,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/engineering) "aCi" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/engineering) -"aCj" = (/obj/structure/disposalpipe/segment,/obj/machinery/firealarm{dir = 8; pixel_x = -26},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) -"aCk" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"aCj" = (/obj/structure/disposalpipe/segment,/obj/machinery/firealarm{dir = 8; pixel_x = -26},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"aCk" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "aCl" = (/obj/structure/loot_pile/maint/junk,/turf/simulated/floor/plating,/area/maintenance/research) "aCm" = (/obj/structure/closet/crate,/obj/random/maintenance/research,/obj/random/maintenance/research,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor/plating,/area/maintenance/research) "aCo" = (/obj/structure/grille/broken,/obj/item/stack/rods,/obj/structure/window/reinforced{dir = 1; health = 1e+006},/obj/structure/window/reinforced{dir = 8},/obj/random/trash_pile,/turf/simulated/floor/plating,/area/maintenance/research) @@ -1276,7 +1279,7 @@ "aDH" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/plating,/area/maintenance/research) "aDI" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/meter,/obj/structure/closet/toolcloset,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor/plating,/area/maintenance/research) "aDJ" = (/obj/structure/table/reinforced,/obj/machinery/computer/skills,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/sc/hor) -"aDK" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/rnd/research) +"aDK" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/wood,/area/rnd/research) "aDL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled/freezer,/area/rnd/research_restroom_sc) "aDN" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/atmos{name = "Riot Control Maintenance"; req_access = newlist(); req_one_access = list(2,12,24)},/turf/simulated/floor/plating,/area/security/riot_control) "aDO" = (/turf/simulated/wall/r_wall,/area/security/riot_control) @@ -1319,7 +1322,7 @@ "aEK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/maintenance/engineering) "aEL" = (/obj/structure/ladder/updown,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/fp_emergency) "aEM" = (/turf/simulated/wall,/area/hallway/primary/seconddeck/fscenter) -"aEN" = (/obj/structure/disposalpipe/segment,/obj/machinery/ai_status_display{pixel_x = -32},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"aEN" = (/obj/structure/disposalpipe/segment,/obj/machinery/ai_status_display{pixel_x = -32},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "aEO" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/research) "aEP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area/maintenance/research) "aEQ" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/engineering{name = "Science Substation"; req_one_access = list(11,24,47)},/turf/simulated/floor/plating,/area/maintenance/substation/research) @@ -1362,7 +1365,7 @@ "aFN" = (/obj/structure/sink{dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/turf/simulated/floor/tiled/freezer,/area/rnd/research_restroom_sc) "aFO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/freezer,/area/rnd/research_restroom_sc) "aFP" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled/freezer,/area/rnd/research_restroom_sc) -"aFQ" = (/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/obj/machinery/door/window/westright{name = "Shower"},/obj/structure/curtain/open/shower,/obj/effect/floor_decal/borderfloorwhite/cee{dir = 8},/turf/simulated/floor/tiled/freezer,/area/rnd/research_restroom_sc) +"aFQ" = (/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/obj/machinery/door/window/westright{name = "Shower"},/obj/structure/curtain/open/shower,/turf/simulated/floor/tiled/freezer,/area/rnd/research_restroom_sc) "aFR" = (/obj/structure/cable/green,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -36},/obj/effect/floor_decal/industrial/warning/corner,/obj/structure/extinguisher_cabinet{pixel_y = -30},/turf/simulated/floor/tiled,/area/rnd/storage) "aFS" = (/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/rnd/storage) "aFT" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/rnd/storage) @@ -1435,7 +1438,7 @@ "aHx" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/structure/sink{dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/tiled/freezer,/area/rnd/research_restroom_sc) "aHy" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled/freezer,/area/rnd/research_restroom_sc) "aHz" = (/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = 12; pixel_y = -24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/tiled/freezer,/area/rnd/research_restroom_sc) -"aHA" = (/obj/machinery/door/window/westleft{name = "Shower"},/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/obj/structure/curtain/open/shower,/obj/effect/floor_decal/borderfloorwhite/cee{dir = 8},/turf/simulated/floor/tiled/freezer,/area/rnd/research_restroom_sc) +"aHA" = (/obj/machinery/door/window/westleft{name = "Shower"},/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/obj/structure/curtain/open/shower,/turf/simulated/floor/tiled/freezer,/area/rnd/research_restroom_sc) "aHB" = (/obj/machinery/camera/network/research{c_tag = "SCI - Toxins Gas Storage"; dir = 1},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/tiled/dark,/area/rnd/storage) "aHD" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/dark,/area/rnd/storage) "aHE" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/white,/area/rnd/mixing) @@ -1475,7 +1478,7 @@ "aIq" = (/obj/structure/table/wooden_reinforced,/obj/item/device/flashlight/lamp/green,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/lino,/area/security/detectives_office) "aIr" = (/obj/structure/bed/chair{dir = 1},/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/red/border{dir = 10},/turf/simulated/floor/tiled,/area/security/lobby) "aIs" = (/obj/structure/bed/chair{dir = 1},/obj/machinery/ai_status_display{pixel_y = -32},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/red/border,/turf/simulated/floor/tiled,/area/security/lobby) -"aIt" = (/obj/machinery/atm{pixel_y = -30},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner{dir = 8},/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/tiled,/area/security/lobby) +"aIt" = (/obj/machinery/atm{pixel_y = -30},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/security/lobby) "aIu" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/security/lobby) "aIv" = (/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/structure/flora/pottedplant/fern,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/red/bordercorner,/turf/simulated/floor/tiled,/area/security/lobby) "aIw" = (/obj/structure/bed/chair{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/red/border,/obj/machinery/status_display{pixel_y = -32},/turf/simulated/floor/tiled,/area/security/lobby) @@ -1553,8 +1556,8 @@ "aKf" = (/obj/structure/table/reinforced,/obj/item/weapon/folder{pixel_x = -4},/obj/item/weapon/folder/red{pixel_y = 3},/obj/item/weapon/folder/blue{pixel_x = 5},/obj/item/weapon/folder/yellow,/obj/item/weapon/stamp/internalaffairs,/obj/item/weapon/stamp/denied{pixel_x = 4; pixel_y = -2},/turf/simulated/floor/tiled/dark,/area/lawoffice) "aKg" = (/obj/structure/bed/chair/office/dark{dir = 8},/obj/machinery/button/windowtint{id = "lawyer_tint"; pixel_x = -26; pixel_y = 30; req_access = list(58)},/obj/machinery/newscaster{pixel_x = 30},/obj/effect/landmark/start{name = "Internal Affairs Agent"},/obj/effect/floor_decal/borderfloorblack{dir = 4},/obj/effect/floor_decal/corner/blue/border{dir = 4},/turf/simulated/floor/tiled/dark,/area/lawoffice) "aKh" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 6},/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/plating,/area/maintenance/security_starboard) -"aKi" = (/obj/structure/disposalpipe/segment,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Fore Hallway 1"; dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/red/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) -"aKj" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/red/bordercorner{dir = 4},/obj/machinery/light{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"aKi" = (/obj/structure/disposalpipe/segment,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Fore Hallway 1"; dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/red/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"aKj" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/red/bordercorner{dir = 4},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "aKm" = (/obj/structure/sign/directions/evac{pixel_y = -10},/turf/simulated/wall/r_wall,/area/hallway/primary/seconddeck/fscenter) "aKn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/research) "aKo" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled/white,/area/rnd/research) @@ -1600,7 +1603,7 @@ "aLg" = (/turf/simulated/wall/r_wall,/area/engineering/hallway/engineer_hallway) "aLh" = (/obj/machinery/firealarm{pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) "aLi" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) -"aLj" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) +"aLj" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/engineering/hallway/engineer_hallway) "aLk" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) "aLl" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) "aLm" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) @@ -1625,8 +1628,8 @@ "aLH" = (/obj/structure/closet/secure_closet/detective,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/device/flash,/turf/simulated/floor/lino,/area/security/detectives_office) "aLI" = (/turf/simulated/wall/r_wall,/area/security/detectives_office) "aLJ" = (/obj/item/weapon/bedsheet/ian,/obj/item/clothing/suit/ianshirt,/turf/simulated/floor/plating,/area/security/lobby) -"aLM" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "security_lockdown"; name = "Security Blast Door"; opacity = 0},/obj/structure/sign/warning/secure_area{pixel_x = -32},/obj/structure/disposalpipe/segment,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fore) -"aLN" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "security_lockdown"; name = "Security Blast Door"; opacity = 0},/obj/structure/sign/warning/secure_area{pixel_x = 32},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fore) +"aLM" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "security_lockdown"; name = "Security Blast Door"; opacity = 0},/obj/structure/sign/warning/secure_area{pixel_x = -32},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fore) +"aLN" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "security_lockdown"; name = "Security Blast Door"; opacity = 0},/obj/structure/sign/warning/secure_area{pixel_x = 32},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fore) "aLO" = (/turf/simulated/wall,/area/hallway/primary/seconddeck/fore) "aLP" = (/turf/simulated/wall,/area/security/lobby) "aLQ" = (/turf/simulated/wall/r_wall,/area/crew_quarters/heads/sc/hos) @@ -1637,9 +1640,9 @@ "aLV" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) "aLW" = (/obj/item/stack/tile/floor/steel,/turf/simulated/floor/tiled/steel,/area/maintenance/engineering) "aLX" = (/obj/item/stack/tile/floor/yellow,/obj/item/frame/light,/turf/simulated/floor/plating,/area/maintenance/engineering) -"aLY" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) -"aLZ" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fscenter) -"aMa" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 1"},/obj/structure/table/woodentable,/obj/item/device/paicard,/obj/effect/floor_decal/spline/plain,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fscenter) +"aLY" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) +"aLZ" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 10},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fscenter) +"aMa" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 1"},/obj/structure/table/woodentable,/obj/item/device/paicard,/obj/effect/floor_decal/spline/plain,/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fscenter) "aMb" = (/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled/white,/area/rnd/research) "aMc" = (/obj/machinery/light,/obj/machinery/status_display{pixel_y = -32},/turf/simulated/floor/tiled/white,/area/rnd/research) "aMd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/effect/floor_decal/borderfloorwhite/corner,/obj/effect/floor_decal/corner/purple/bordercorner,/obj/machinery/camera/network/research{c_tag = "SCI - Research Hallway Port 2"; dir = 1},/turf/simulated/floor/tiled/white,/area/rnd/research) @@ -1653,7 +1656,7 @@ "aMm" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/rnd/research) "aMn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled/white,/area/rnd/research) "aMo" = (/obj/machinery/atmospherics/binary/dp_vent_pump/high_volume{frequency = 1379; id = "tox_airlock_pump"},/obj/machinery/air_sensor{frequency = 1430; id_tag = "toxins_mixing_interior"; output = 63; pixel_x = -8; pixel_y = -18},/turf/simulated/floor/reinforced/airless,/area/rnd/mixing) -"aMp" = (/obj/machinery/door/blast/regular{id = "mixvent"; name = "Mixer Room Vent"},/obj/machinery/shield_diffuser,/turf/simulated/floor/reinforced/airless,/area/rnd/mixing) +"aMp" = (/obj/machinery/door/blast/regular{id = "mixvent"; name = "Mixer Room Vent"},/obj/machinery/shield_diffuser,/turf/simulated/floor/tiled/techfloor/grid,/area/rnd/mixing) "aMr" = (/obj/machinery/atmospherics/pipe/manifold4w/visible/black,/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor,/area/engineering/engine_waste) "aMs" = (/obj/machinery/atmospherics/unary/heat_exchanger{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/simulated/floor,/area/engineering/engine_waste) "aMt" = (/obj/machinery/atmospherics/unary/heat_exchanger{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/simulated/floor,/area/engineering/engine_waste) @@ -1667,7 +1670,7 @@ "aMB" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) "aMC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/engineering/hallway/engineer_hallway) "aMD" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) -"aME" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) +"aME" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/turf/simulated/floor/tiled/steel_grid,/area/engineering/hallway/engineer_hallway) "aMF" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) "aMG" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) "aMH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) @@ -1689,7 +1692,7 @@ "aMZ" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/turf/simulated/wall/r_wall,/area/maintenance/security_port) "aNa" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/turf/simulated/wall/r_wall,/area/maintenance/security_port) "aNb" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/maintenance/security_port) -"aNq" = (/obj/structure/sign/warning/high_voltage{pixel_x = -32},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/machinery/light{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fore) +"aNq" = (/obj/structure/sign/warning/high_voltage{pixel_x = -32},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fore) "aNr" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "aNs" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "aNt" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/hallway/secondary/eva_hallway) @@ -1699,7 +1702,7 @@ "aNx" = (/obj/effect/wingrille_spawn/reinforced/polarized{id = "lawyer_tint"},/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/lawoffice) "aNz" = (/obj/effect/landmark{name = "lightsout"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/rnd/research) "aNA" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall/r_wall,/area/rnd/misc_lab) -"aNB" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/command{name = "Server Room"; req_access = list(30)},/turf/simulated/floor/tiled/steel_grid,/area/server) +"aNB" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/command{name = "Server Room"; req_access = list(30)},/turf/simulated/floor/tiled/techmaint,/area/server) "aNC" = (/obj/structure/sign/warning/server_room,/turf/simulated/wall/r_wall,/area/server) "aND" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloorwhite/corner{dir = 8},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 8},/turf/simulated/floor/tiled/white,/area/rnd/research) "aNE" = (/obj/effect/floor_decal/borderfloorwhite/corner,/obj/effect/floor_decal/corner/purple/bordercorner,/turf/simulated/floor/tiled/white,/area/rnd/research) @@ -1763,10 +1766,10 @@ "aOP" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/light{dir = 1},/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva) "aOQ" = (/obj/structure/table/reinforced,/obj/machinery/requests_console{department = "EVA"; pixel_y = 26},/obj/fiftyspawner/glass,/obj/fiftyspawner/glass,/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva) "aOR" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/ai_monitored/storage/eva) -"aOS" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) -"aOU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) -"aOV" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/eva_hallway) -"aOW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) +"aOS" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) +"aOU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) +"aOV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/eva_hallway) +"aOW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) "aOX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) "aOY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) "aOZ" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) @@ -1816,7 +1819,7 @@ "aPU" = (/turf/simulated/wall,/area/maintenance/substation/atmospherics) "aPV" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "atmoslockdown"; name = "Atmospherics Lockdown"; opacity = 0},/turf/simulated/floor,/area/maintenance/engineering) "aPW" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled,/area/maintenance/security_port) -"aPX" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/command{name = "E.V.A."; req_access = list(18); req_one_access = list(18)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/ai_monitored/storage/eva) +"aPX" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/command{name = "E.V.A."; req_access = list(18); req_one_access = list(18)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/ai_monitored/storage/eva) "aPY" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/tiled,/area/ai_monitored/storage/eva) "aQa" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/ai_monitored/storage/eva) "aQc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/ai_monitored/storage/eva) @@ -1830,9 +1833,9 @@ "aQk" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "aQl" = (/obj/structure/disposalpipe/sortjunction{dir = 1; name = "Janitor Closet"; sortType = "Janitor Closet"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "aQm" = (/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/hologram/holopad,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fore) -"aQn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) -"aQo" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/eva_hallway) -"aQp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) +"aQn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) +"aQo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/obj/machinery/door/airlock/multi_tile/glass{dir = 2; name = "Central Access"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/eva_hallway) +"aQp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 6},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) "aQq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) "aQr" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) "aQs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) @@ -1851,10 +1854,10 @@ "aQH" = (/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor,/area/engineering/break_room) "aQI" = (/obj/structure/closet/toolcloset,/turf/simulated/floor/plating,/area/maintenance/engineering) "aQJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fpcenter) -"aQK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/sign/christmas/wreath{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"aQK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "aQL" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/fscenter) -"aQM" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/sign/christmas/wreath{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) -"aQN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/sign/christmas/wreath{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"aQM" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"aQN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "aQO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fscenter) "aQP" = (/obj/structure/table/standard,/obj/random/toolbox,/obj/random/cigarettes,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tool,/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/plating,/area/maintenance/research) "aQQ" = (/obj/structure/table/standard,/obj/random/tool,/obj/random/tool,/obj/item/frame,/turf/simulated/floor/plating,/area/maintenance/research) @@ -1889,7 +1892,7 @@ "aRu" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/computer/cryopod/robot{pixel_x = 30},/turf/simulated/floor/plating,/area/engineering/drone_fabrication) "aRv" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow,/obj/machinery/meter,/turf/simulated/floor/tiled,/area/engineering/atmos) "aRw" = (/obj/machinery/atmospherics/pipe/simple/visible/red,/obj/structure/extinguisher_cabinet{pixel_x = 28},/obj/machinery/meter,/turf/simulated/floor/tiled,/area/engineering/atmos) -"aRz" = (/obj/structure/sign/atmosplaque{dir = 1; pixel_x = 32},/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/engineering/atmos/monitoring) +"aRz" = (/obj/structure/sign/atmosplaque{dir = 1; pixel_x = 32},/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor,/area/engineering/atmos/monitoring) "aRC" = (/obj/machinery/atmospherics/pipe/simple/visible/red,/turf/simulated/floor/tiled,/area/engineering/atmos) "aRE" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/cyan,/obj/machinery/light_switch{name = "light switch "; pixel_x = 36},/turf/simulated/floor/tiled,/area/engineering/atmos) "aRK" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/meter,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/structure/sign/warning/high_voltage{pixel_x = -32},/obj/random/junk,/turf/simulated/floor,/area/maintenance/engineering) @@ -1907,9 +1910,9 @@ "aSd" = (/obj/effect/floor_decal/industrial/warning,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/ai_monitored/storage/eva) "aSe" = (/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/ai_monitored/storage/eva) "aSf" = (/obj/structure/cable,/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/ai_monitored/storage/eva) -"aSg" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) +"aSg" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "aSh" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) -"aSi" = (/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) +"aSi" = (/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "aSj" = (/obj/structure/sign/greencross{desc = "White cross in a green field, you can get medical aid here."; name = "First-Aid"},/turf/simulated/wall/r_wall,/area/hallway/secondary/eva_hallway) "aSk" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner2{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) "aSl" = (/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/eva_hallway) @@ -1940,10 +1943,10 @@ "aSP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/white,/area/hallway/secondary/seconddeck/research_medical) "aSQ" = (/obj/structure/closet/crate,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/obj/item/weapon/tool/crowbar,/obj/item/weapon/tool/wirecutters,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/obj/random/maintenance/security,/obj/random/maintenance/security,/turf/simulated/floor,/area/maintenance/engineering) "aSR" = (/obj/machinery/portable_atmospherics/canister/empty,/turf/simulated/floor/plating,/area/maintenance/engineering) -"aSS" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner{dir = 8},/obj/effect/floor_decal/industrial/warning/corner,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"aSS" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner{dir = 8},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "aST" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) -"aSU" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/purple/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) -"aSV" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/structure/flora/ausbushes/brflowers,/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) +"aSU" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/purple/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"aSV" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/structure/flora/ausbushes/brflowers,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) "aSW" = (/obj/structure/closet/crate,/obj/item/clothing/mask/gas,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/effect/decal/cleanable/dirt,/obj/random/maintenance/research,/obj/random/maintenance/research,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/turf/simulated/floor/plating,/area/maintenance/research) "aSX" = (/obj/machinery/r_n_d/destructive_analyzer,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/rnd/lab) "aSY" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/purple/border,/turf/simulated/floor/tiled/white,/area/rnd/lab) @@ -1966,7 +1969,7 @@ "aTp" = (/obj/machinery/atmospherics/pipe/simple/visible/green{dir = 10},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor,/area/engineering/engine_room) "aTq" = (/obj/machinery/atmospherics/pipe/manifold/visible/black{dir = 8},/obj/machinery/meter,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor,/area/engineering/engine_room) "aTr" = (/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/yellow/border{dir = 5},/obj/machinery/computer/general_air_control{frequency = 1443; level = 3; name = "Distribution and Waste Monitor"; sensors = list("mair_in_meter" = "Mixed Air In", "air_sensor" = "Mixed Air Supply Tank", "mair_out_meter" = "Mixed Air Out", "dloop_atm_meter" = "Distribution Loop", "wloop_atm_meter" = "Engine Waste")},/turf/simulated/floor/tiled,/area/engineering/atmos/monitoring) -"aTs" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/engineering/atmos/monitoring) +"aTs" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor,/area/engineering/atmos/monitoring) "aTt" = (/obj/machinery/atmospherics/binary/pump/on{name = "Air to Ports"},/turf/simulated/floor/tiled,/area/engineering/atmos) "aTu" = (/obj/machinery/atmospherics/binary/pump/on{dir = 1; name = "Ports to Waste"},/turf/simulated/floor/tiled,/area/engineering/atmos) "aTv" = (/turf/simulated/floor/tiled,/area/engineering/atmos) @@ -1982,10 +1985,10 @@ "aTK" = (/turf/simulated/wall/r_wall,/area/maintenance/security_port) "aTL" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/maintenance/security_port) "aTO" = (/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 6},/obj/item/weapon/storage/briefcase/inflatable{pixel_y = 3},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = -3},/obj/structure/table/reinforced,/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva) -"aTR" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_security{name = "Security Hardsuits"; req_access = list(1)},/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva) +"aTR" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_security{name = "Security Hardsuits"; req_access = list(1)},/turf/simulated/floor/tiled/techmaint,/area/ai_monitored/storage/eva) "aTS" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/ai_monitored/storage/eva) "aTT" = (/obj/structure/sign/warning/secure_area,/turf/simulated/wall/r_wall,/area/ai_monitored/storage/eva) -"aTV" = (/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"aTV" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/medbay) "aTW" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/medical/first_aid_station/seconddeck/fore) "aTX" = (/obj/item/weapon/stool/padded,/obj/effect/landmark/start{name = "Janitor"},/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/purple/border{dir = 9},/turf/simulated/floor/tiled,/area/janitor) "aTY" = (/obj/machinery/button/remote/blast_door{id = "janitor_blast"; name = "Privacy Shutters"; pixel_y = 26},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/janitor) @@ -2017,12 +2020,12 @@ "aUJ" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/crew_quarters/heads/sc/chief) "aUK" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled,/area/engineering/break_room) "aUL" = (/turf/simulated/floor/tiled/freezer,/area/engineering/engi_restroom) -"aUM" = (/obj/structure/flora/ausbushes/fullgrass,/obj/structure/flora/ausbushes/brflowers,/obj/machinery/light{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) +"aUM" = (/obj/structure/flora/ausbushes/fullgrass,/obj/structure/flora/ausbushes/brflowers,/obj/machinery/light{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) "aUN" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/red/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) -"aUO" = (/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/red/border{dir = 6},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 11"; dir = 1},/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"aUO" = (/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/red/border{dir = 6},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 11"; dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "aUP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/engineering{name = "Central Substation"; req_one_access = list(11,19,24)},/turf/simulated/floor/plating,/area/maintenance/substation/central) "aUQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/yellow/border{dir = 4},/obj/effect/landmark/start{name = "Atmospheric Technician"},/obj/structure/bed/chair/office/dark{dir = 1},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/camera/network/engineering{c_tag = "ENG - Atmospherics Monitoring Room"; dir = 8},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/tiled,/area/engineering/atmos/monitoring) -"aUR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/engineering/atmos/monitoring) +"aUR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor,/area/engineering/atmos/monitoring) "aUS" = (/obj/machinery/atmospherics/pipe/simple/visible/red,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/meter,/turf/simulated/floor/tiled,/area/engineering/atmos) "aUT" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/engineering/atmos) "aUU" = (/obj/structure/table/standard,/obj/structure/fireaxecabinet{pixel_x = 32},/obj/machinery/cell_charger,/obj/item/device/multitool{pixel_x = 5},/obj/item/weapon/tool/wrench,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/engineering/atmos) @@ -2038,7 +2041,7 @@ "aVn" = (/obj/structure/window/reinforced{dir = 1; health = 1e+006},/obj/structure/window/reinforced{dir = 4},/obj/item/clothing/mask/breath,/obj/structure/table/rack{dir = 8; layer = 2.6},/obj/item/weapon/rig/eva/equipped,/obj/machinery/door/window/westright{name = "Engineering Hardsuits"; req_one_access = list(11,24)},/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva) "aVp" = (/obj/structure/window/reinforced{dir = 1; health = 1e+006},/obj/structure/window/reinforced{dir = 4},/obj/item/clothing/mask/breath,/obj/structure/table/rack{dir = 8; layer = 2.6},/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/void/security,/obj/machinery/door/window/westright{name = "Security Hardsuits"; req_one_access = list(1)},/obj/item/clothing/head/helmet/space/void/security,/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva) "aVs" = (/obj/structure/window/reinforced{dir = 1; health = 1e+006},/obj/structure/window/reinforced{dir = 4},/obj/item/clothing/mask/breath,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/void/medical,/obj/structure/table/rack{dir = 8; layer = 2.6},/obj/machinery/door/window/westright{name = "Medical Hardsuits"; req_one_access = list(5)},/obj/item/clothing/head/helmet/space/void/medical,/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva) -"aVu" = (/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fore) +"aVu" = (/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fore) "aVv" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/blue/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "aVx" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/research{name = "Research Locker Room"; req_access = list(47)},/turf/simulated/floor/tiled/steel_grid,/area/rnd/research_lockerroom) "aVy" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fscenter) @@ -2050,11 +2053,11 @@ "aVG" = (/obj/structure/table/steel,/obj/random/powercell,/obj/random/maintenance/research,/obj/random/tool,/obj/random/tech_supply,/turf/simulated/floor/plating,/area/maintenance/research) "aVI" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/plating,/area/maintenance/research) "aVJ" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/command{name = "Teleport Access"; req_access = list(17); req_one_access = list(17)},/turf/simulated/floor/tiled/steel_grid,/area/teleporter) -"aVL" = (/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/purple/border{dir = 10},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 2"; dir = 1},/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"aVL" = (/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/purple/border{dir = 10},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 2"; dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "aVQ" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/turf/simulated/wall/r_wall,/area/maintenance/research) "aVR" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1379; id_tag = "fore_starboard_pump"},/turf/simulated/floor/plating,/area/maintenance/research) "aVS" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 5},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/research) -"aVU" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/machinery/light{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) +"aVU" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/machinery/light{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) "aVV" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/monotile,/area/rnd/lab) "aVW" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/research{id_tag = "researchdoor"; name = "Research Division Access"; req_access = list(47)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/steel_grid,/area/rnd/research) "aVX" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/techfloor,/area/assembly/robotics) @@ -2085,7 +2088,7 @@ "aWx" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) "aWy" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/camera/network/engineering{c_tag = "ENG - Engineering Hallway 2"; dir = 8},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) "aWz" = (/obj/structure/closet/secure_closet/engineering_electrical,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled/dark,/area/engineering/workshop) -"aWA" = (/obj/machinery/vending/tool,/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/engineering/workshop) +"aWA" = (/obj/machinery/vending/tool{dir = 4},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/engineering/workshop) "aWB" = (/obj/structure/closet/toolcloset,/obj/item/device/flashlight,/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/engineering/workshop) "aWC" = (/obj/structure/table/steel_reinforced,/obj/item/clothing/gloves/black,/obj/item/clothing/gloves/black,/obj/item/weapon/tool/crowbar,/obj/item/weapon/tool/crowbar/red,/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/tiled/dark,/area/engineering/workshop) "aWD" = (/obj/machinery/computer/station_alert/all{dir = 4},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/blue/border{dir = 8},/turf/simulated/floor/tiled,/area/crew_quarters/heads/sc/chief) @@ -2110,10 +2113,10 @@ "aXi" = (/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/monotile,/area/hallway/primary/seconddeck/fscenter) "aXj" = (/obj/machinery/light/small,/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva) "aXk" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/item/clothing/mask/breath,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/void/medical,/obj/machinery/door/window/westleft{name = "Medical Staff Only"; req_one_access = list(5)},/obj/structure/table/rack{dir = 8; layer = 2.6},/obj/item/clothing/head/helmet/space/void/medical,/turf/simulated/floor/tiled/dark,/area/ai_monitored/storage/eva) -"aXm" = (/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fore) +"aXm" = (/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fore) "aXn" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/blue/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "aXo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fore) -"aXp" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) +"aXp" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "aXq" = (/obj/machinery/newscaster{pixel_x = -28; pixel_y = 1},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/structure/bed/roller,/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/seconddeck/fore) "aXr" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/purple/border{dir = 4},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/janitor) "aXs" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/portable_atmospherics/canister/air/airlock,/turf/simulated/floor/plating,/area/maintenance/research) @@ -2129,7 +2132,7 @@ "aXM" = (/obj/structure/bed/chair/office/light{dir = 1},/obj/effect/landmark/start{name = "Chief Engineer"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/tiled,/area/crew_quarters/heads/sc/chief) "aXN" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/machinery/vending/wallmed1{name = "NanoMed Wall"; pixel_x = 25},/turf/simulated/floor/tiled,/area/engineering/break_room) "aXP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/freezer,/area/engineering/engi_restroom) -"aXQ" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/structure/sink/kitchen{pixel_y = 28},/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) +"aXQ" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/structure/sink/kitchen{pixel_y = 28},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) "aXR" = (/obj/structure/flora/ausbushes/fullgrass,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) "aXS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fpcenter) "aXU" = (/obj/machinery/door/blast/regular{id = "toxinsdriver"; name = "Toxins Launcher Bay Door"},/turf/simulated/floor/airless,/area/rnd/toxins_launch) @@ -2144,7 +2147,7 @@ "aYf" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fscenter) "aYg" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "aYh" = (/obj/structure/flora/ausbushes/sparsegrass,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) -"aYi" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/structure/sink/kitchen{pixel_y = 28},/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) +"aYi" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/structure/sink/kitchen{pixel_y = 28},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) "aYj" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plating,/area/maintenance/research) "aYk" = (/obj/structure/table/rack{dir = 8; layer = 2.6},/obj/random/maintenance/research,/obj/random/maintenance/research,/obj/random/maintenance/clean,/obj/random/tool/powermaint,/turf/simulated/floor/plating,/area/maintenance/research) "aYl" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/rnd/research_foyer) @@ -2162,8 +2165,8 @@ "aYx" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan{dir = 8},/turf/simulated/floor,/area/engineering/engine_room) "aYy" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "atmoslockdown"; name = "Atmospherics Lockdown"; opacity = 0},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/engineering/atmos) "aYz" = (/turf/simulated/wall/r_wall,/area/engineering/atmos/monitoring) -"aYA" = (/obj/structure/disposalpipe/segment,/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/engineering/atmos/monitoring) -"aYB" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/engineering/atmos) +"aYA" = (/obj/structure/disposalpipe/segment,/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor,/area/engineering/atmos/monitoring) +"aYB" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor,/area/engineering/atmos) "aYC" = (/turf/simulated/wall,/area/engineering/atmos) "aYD" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/engineering{name = "Engineering Substation"; req_one_access = list(11,24)},/turf/simulated/floor/plating,/area/maintenance/substation/engineering) "aYE" = (/turf/simulated/wall,/area/maintenance/substation/engineering) @@ -2174,7 +2177,7 @@ "aYL" = (/obj/structure/closet/toolcloset,/obj/item/device/flashlight/maglight,/turf/simulated/floor/plating,/area/maintenance/engineering) "aYO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/engineering) "aZc" = (/turf/simulated/wall/r_wall,/area/hallway/primary/seconddeck/fore) -"aZd" = (/obj/structure/disposalpipe/segment,/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) +"aZd" = (/obj/structure/disposalpipe/segment,/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "aZe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fore) "aZg" = (/obj/structure/table/rack,/obj/item/weapon/storage/toolbox/emergency,/obj/random/medical/lite,/obj/machinery/camera/network/medbay{c_tag = "MED - FA Station Fore"; dir = 1},/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/effect/floor_decal/borderfloorwhite{dir = 10},/obj/effect/floor_decal/corner/paleblue/border{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/seconddeck/fore) "aZh" = (/obj/machinery/light,/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/obj/structure/closet/medical_wall{pixel_y = -31},/obj/item/roller,/obj/item/bodybag/cryobag,/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/pill_bottle/spaceacillin,/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/seconddeck/fore) @@ -2214,7 +2217,7 @@ "aZZ" = (/obj/structure/closet/secure_closet/engineering_electrical,/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/tiled/dark,/area/engineering/workshop) "baa" = (/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/yellow/border{dir = 10},/turf/simulated/floor/tiled,/area/engineering/workshop) "bab" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/yellow/border,/turf/simulated/floor/tiled,/area/engineering/workshop) -"bac" = (/obj/machinery/vending/engivend,/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/engineering/workshop) +"bac" = (/obj/machinery/vending/engivend{dir = 4},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/engineering/workshop) "bad" = (/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/yellow/border{dir = 6},/turf/simulated/floor/tiled,/area/engineering/workshop) "bae" = (/obj/structure/table/steel_reinforced,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/tool/wrench,/obj/machinery/status_display{pixel_y = -32},/turf/simulated/floor/tiled/dark,/area/engineering/workshop) "baf" = (/obj/machinery/computer/security/telescreen{desc = "Used to monitor the engine room."; layer = 3.3; name = "Engine Monitor"; network = list("Engine"); pixel_y = -34},/obj/machinery/computer/atmos_alert{dir = 4},/obj/machinery/newscaster{pixel_x = -30},/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 10},/turf/simulated/floor/tiled,/area/crew_quarters/heads/sc/chief) @@ -2222,8 +2225,8 @@ "bah" = (/obj/machinery/camera/network/engineering{c_tag = "ENG - Chief Engineer's Office"; dir = 1},/obj/machinery/button/remote/airlock{desc = "A remote control-switch for the engine core airlock hatch bolts."; id = "engine_access_hatch"; name = "Engine Hatch Bolt Control"; pixel_x = -6; pixel_y = -44; specialfunctions = 4},/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for engine core."; id = "EngineVent"; name = "Engine Ventillatory Control"; pixel_x = 6; pixel_y = -44},/obj/machinery/keycard_auth{pixel_y = -24},/obj/machinery/button/remote/blast_door{id = "englockdown"; name = "Engineering Lockdown"; pixel_x = -6; pixel_y = -34; req_access = list(10)},/obj/machinery/button/remote/blast_door{id = "atmoslockdown"; name = "Atmospherics Lockdown"; pixel_x = 6; pixel_y = -34; req_access = list(10)},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/crew_quarters/heads/sc/chief) "bai" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/crew_quarters/heads/sc/chief) "baj" = (/obj/structure/bed/chair/office/dark,/obj/effect/floor_decal/corner/white/diagonal,/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/engineering/break_room) -"bak" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 2},/obj/item/weapon/storage/box/glasses/square,/obj/machinery/newscaster{pixel_x = 30},/obj/machinery/light{dir = 4},/obj/structure/table/woodentable,/turf/simulated/floor/tiled,/area/engineering/break_room) -"bal" = (/obj/structure/flora/ausbushes/sunnybush,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) +"bak" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/machinery/newscaster{pixel_x = 30},/obj/machinery/light{dir = 4},/obj/structure/table/woodentable,/obj/machinery/chemical_dispenser/bar_soft/full{dir = 8},/turf/simulated/floor/tiled,/area/engineering/break_room) +"bal" = (/obj/structure/flora/ausbushes/sunnybush,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) "bam" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/structure/flora/ausbushes/ywflowers,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) "ban" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 32; d2 = 4; icon_state = "32-4"},/obj/machinery/atmospherics/pipe/zpipe/down/supply{dir = 4},/obj/structure/railing{dir = 4},/obj/machinery/atmospherics/pipe/zpipe/down/scrubbers{dir = 4},/turf/simulated/open,/area/maintenance/substation/central) "bao" = (/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/central) @@ -2236,7 +2239,7 @@ "bax" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/engineering/hallway/atmos_hallway) "bay" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/engineering/hallway/atmos_hallway) "baz" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/engineering/hallway/atmos_hallway) -"baA" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/engineering/hallway/atmos_hallway) +"baA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/engineering/hallway/atmos_hallway) "baB" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/tiled,/area/engineering/hallway/atmos_hallway) "baC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/red,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/engineering/hallway/atmos_hallway) "baD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/engineering/hallway/atmos_hallway) @@ -2263,8 +2266,8 @@ "bbc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/alarm{pixel_y = 22},/turf/simulated/floor/plating,/area/maintenance/engineering) "bbd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/engineering) "bbe" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/portable_atmospherics/powered/scrubber,/turf/simulated/floor/plating,/area/maintenance/engineering) -"bbh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/sign/christmas/wreath{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) -"bbi" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/machinery/status_display/shuttle_display{message1 = "SHUT2"; pixel_x = 32; shuttle_tag = "Shuttle 2"},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) +"bbh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) +"bbi" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/machinery/status_display/shuttle_display{message1 = "SHUT2"; pixel_x = 32; shuttle_tag = "Shuttle 2"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) "bbm" = (/turf/simulated/wall,/area/medical/first_aid_station/seconddeck/fore) "bbo" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/janitor) "bbp" = (/obj/structure/mopbucket,/obj/item/weapon/mop,/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/purple/border{dir = 6},/turf/simulated/floor/tiled,/area/janitor) @@ -2278,8 +2281,8 @@ "bbF" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock{name = "Research Restroom"; req_access = list(47)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_grid,/area/rnd/research_restroom_sc) "bbM" = (/obj/effect/floor_decal/industrial/warning,/obj/machinery/airlock_sensor{pixel_x = -25},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/airless,/area/rnd/toxins_launch) "bbN" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/light_switch{pixel_x = 36},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/tiled,/area/rnd/toxins_launch) -"bbP" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "toxins_inner"; locked = 1; name = "Toxins External Access"},/turf/simulated/floor/tiled,/area/rnd/toxins_launch) -"bbR" = (/obj/structure/flora/ausbushes/leafybush,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) +"bbP" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "toxins_inner"; locked = 1; name = "Toxins External Access"},/turf/simulated/floor/tiled/dark,/area/rnd/toxins_launch) +"bbR" = (/obj/structure/flora/ausbushes/leafybush,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) "bbS" = (/obj/structure/bed/chair/office/light,/obj/effect/floor_decal/borderfloorwhite/corner{dir = 8},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 8},/turf/simulated/floor/tiled/white,/area/rnd/lab) "bbT" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/effect/floor_decal/industrial/outline/grey,/obj/item/device/radio/beacon,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/rnd/research_foyer) "bbU" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled/white,/area/assembly/robotics) @@ -2301,7 +2304,7 @@ "bck" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/steel_reinforced,/obj/item/weapon/storage/toolbox/mechanical{pixel_y = 5},/obj/item/weapon/storage/toolbox/mechanical{pixel_y = 5},/obj/item/weapon/storage/toolbox/electrical,/obj/structure/extinguisher_cabinet{pixel_y = -30},/turf/simulated/floor/tiled/dark,/area/engineering/workshop) "bcl" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/engineering/hallway/atmos_hallway) "bcn" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/sortjunction/flipped{dir = 4; name = "Atmospherics"; sortType = "Atmospherics"},/turf/simulated/floor/tiled,/area/engineering/hallway/atmos_hallway) -"bcp" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/engineering/hallway/atmos_hallway) +"bcp" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/turf/simulated/floor/tiled/steel_grid,/area/engineering/hallway/atmos_hallway) "bcq" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/engineering/hallway/atmos_hallway) "bcr" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/red,/turf/simulated/floor/tiled,/area/engineering/hallway/atmos_hallway) "bcs" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light,/turf/simulated/floor/tiled,/area/engineering/hallway/atmos_hallway) @@ -2355,11 +2358,11 @@ "bdJ" = (/obj/machinery/computer/security/engineering{dir = 1},/obj/effect/floor_decal/corner/white/diagonal,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = -32},/turf/simulated/floor/tiled,/area/engineering/break_room) "bdK" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/bookcase/manuals/engineering,/turf/simulated/floor/tiled,/area/engineering/break_room) "bdL" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/woodentable,/obj/item/weapon/book/manual/engineering_construction,/obj/item/weapon/book/manual/atmospipes,/obj/item/weapon/book/manual/engineering_guide{pixel_x = 3; pixel_y = 2},/obj/item/weapon/book/manual/evaguide{pixel_x = -2; pixel_y = 7},/turf/simulated/floor/tiled,/area/engineering/break_room) -"bdM" = (/obj/machinery/chemical_dispenser/bar_soft/full,/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/structure/table/woodentable,/turf/simulated/floor/tiled,/area/engineering/break_room) +"bdM" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/structure/table/woodentable,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 2},/obj/item/weapon/storage/box/glasses/square,/turf/simulated/floor/tiled,/area/engineering/break_room) "bdN" = (/obj/machinery/alarm{pixel_y = 22},/obj/effect/floor_decal/industrial/warning,/obj/structure/railing,/turf/simulated/floor/plating,/area/maintenance/engineering) "bdO" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/engineering{name = "Utility Down"; req_one_access = list(11,24)},/turf/simulated/floor/plating,/area/maintenance/engineering) "bdP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/engineering) -"bdQ" = (/obj/machinery/status_display{pixel_x = 32},/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-j2"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bdQ" = (/obj/machinery/status_display{pixel_x = 32},/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-j2"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bdR" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/carpet,/area/engineering/break_room) "bdS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/wall,/area/maintenance/substation/central) "bdT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/dark,/area/engineering/hallway/atmos_hallway) @@ -2376,7 +2379,7 @@ "beo" = (/obj/structure/table/rack{dir = 1},/obj/item/clothing/suit/fire/firefighter,/obj/item/weapon/tank/oxygen,/obj/item/clothing/mask/gas,/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/clothing/glasses/meson,/obj/random/maintenance/engineering,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/engineering) "beq" = (/obj/item/device/t_scanner,/obj/structure/table/steel,/obj/machinery/alarm{dir = 8; pixel_x = 24},/obj/random/cash,/turf/simulated/floor/plating,/area/maintenance/engineering) "ber" = (/turf/simulated/wall/r_wall,/area/ai_monitored/storage/eva) -"bet" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light{dir = 1},/obj/structure/sign/christmas/wreath,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"bet" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bey" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/research) "bez" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/maintenance/research) "beA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/research) @@ -2406,11 +2409,11 @@ "bfq" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/teleporter) "bfr" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/teleporter) "bfs" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/ai_status_display{pixel_x = 32},/turf/simulated/floor/tiled/techfloor,/area/teleporter) -"bft" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/purple/border{dir = 8},/obj/machinery/ai_status_display{pixel_x = -32},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"bft" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/purple/border{dir = 8},/obj/machinery/ai_status_display{pixel_x = -32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bfu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fscenter) "bfv" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bfw" = (/obj/structure/flora/ausbushes/fullgrass,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) -"bfx" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 3"; dir = 8},/obj/structure/flora/tree/pine/xmas{desc = "A perfectly decorative fake christmas plant."},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) +"bfx" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 3"; dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) "bfy" = (/obj/structure/closet/crate,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/powercell,/obj/random/powercell,/obj/random/powercell,/turf/simulated/floor/plating,/area/maintenance/research) "bfz" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/clipboard,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/obj/machinery/newscaster{pixel_x = -30},/obj/structure/table/glass,/obj/effect/floor_decal/borderfloorwhite{dir = 10},/obj/effect/floor_decal/corner/purple/border{dir = 10},/turf/simulated/floor/tiled/white,/area/rnd/lab) "bfA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled/white,/area/rnd/research_foyer) @@ -2495,11 +2498,11 @@ "bhr" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/engineering/foyer) "bhs" = (/obj/structure/lattice,/obj/machinery/door/firedoor/border_only,/turf/simulated/open,/area/maintenance/engineering) "bht" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fpcenter) -"bhu" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 5},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bhu" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bhv" = (/obj/machinery/atmospherics/pipe/simple/visible/universal,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/central) "bhw" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{name = "Teleport Access"; req_access = list(17)},/turf/simulated/floor/plating,/area/teleporter) -"bhx" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/purple/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/corner/purple/bordercorner2{dir = 10},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) -"bhy" = (/obj/structure/flora/ausbushes/palebush,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) +"bhx" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/purple/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/corner/purple/bordercorner2{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"bhy" = (/obj/structure/flora/ausbushes/palebush,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) "bhz" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/research) "bhA" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/item/weapon/material/shard,/turf/simulated/floor/plating,/area/maintenance/research) "bhB" = (/turf/simulated/wall/r_wall,/area/rnd/research_foyer) @@ -2515,7 +2518,7 @@ "bhN" = (/obj/item/weapon/tank/jetpack/carbondioxide,/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/structure/window/reinforced,/obj/structure/table/rack{dir = 8; layer = 2.6},/obj/machinery/door/window/westleft{name = "Jetpack Storage"; req_one_access = list(11,24)},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled/dark,/area/engineering/engineer_eva) "bhO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "englockdown"; name = "Engineering Lockdown"; opacity = 0},/turf/simulated/floor/plating,/area/maintenance/engineering) "bhP" = (/obj/machinery/light/small{dir = 8},/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/fp_emergency) -"bhV" = (/obj/machinery/status_display{layer = 4; pixel_x = 32},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/red/bordercorner,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"bhV" = (/obj/machinery/status_display{layer = 4; pixel_x = 32},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/red/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bib" = (/obj/structure/closet/emcloset,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/fs_emergency) "bic" = (/obj/structure/reagent_dispensers/watertank,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/fs_emergency) "bid" = (/obj/item/weapon/storage/box/lights/mixed,/obj/structure/table/steel,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/machinery/light/small{dir = 1},/obj/random/maintenance/research,/obj/random/maintenance/research,/obj/random/technology_scanner,/obj/structure/catwalk,/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/fs_emergency) @@ -2547,10 +2550,10 @@ "biM" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/maintenance_hatch{frequency = 1379; id_tag = "engine_airlock_interior"; name = "Engine Airlock Interior"; req_access = list(11)},/turf/simulated/floor,/area/engineering/engine_airlock) "biN" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5},/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled,/area/engineering/engine_airlock) "biO" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/simulated/floor/tiled,/area/engineering/engine_airlock) -"biP" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 4},/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/maintenance_hatch{frequency = 1379; id_tag = "engine_airlock_exterior"; name = "Engine Airlock Exterior"; req_access = list(11)},/turf/simulated/floor/tiled,/area/engineering/engine_airlock) +"biP" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 4},/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/maintenance_hatch{frequency = 1379; id_tag = "engine_airlock_exterior"; name = "Engine Airlock Exterior"; req_access = list(11)},/turf/simulated/floor/tiled/steel_grid,/area/engineering/engine_airlock) "biQ" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/cyan{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/engineering/engine_airlock) "biT" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/airlock_sensor/airlock_exterior{id_tag = "eng_al_ext_snsr"; layer = 3.3; master_tag = "engine_room_airlock"; pixel_y = -22; req_access = list(10)},/obj/machinery/light,/turf/simulated/floor/tiled,/area/engineering/engine_airlock) -"biU" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance_hatch{name = "Engine Access"; req_one_access = list(11)},/turf/simulated/floor/tiled,/area/engineering/engine_airlock) +"biU" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance_hatch{name = "Engine Access"; req_one_access = list(11)},/turf/simulated/floor/tiled/steel_grid,/area/engineering/engine_airlock) "biV" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) "biW" = (/obj/machinery/door/window/westleft{name = "Engineering Delivery"; req_access = list(10)},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "englockdown"; name = "Engineering Lockdown"; opacity = 0},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) "biX" = (/turf/simulated/wall/r_wall,/area/engineering/storage) @@ -2575,7 +2578,7 @@ "bjz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light/small{dir = 1},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/apmaint) "bjA" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "englockdown"; name = "Engineering Lockdown"; opacity = 0},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) "bjC" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) -"bjD" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "englockdown"; name = "Engineering Lockdown"; opacity = 0},/obj/structure/sign/warning/secure_area{pixel_x = 32},/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) +"bjD" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "englockdown"; name = "Engineering Lockdown"; opacity = 0},/obj/structure/sign/warning/secure_area{pixel_x = 32},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) "bjE" = (/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/engineering) "bjF" = (/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/structure/cable{d1 = 16; d2 = 0; icon_state = "16-0"},/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/fs_emergency) "bjG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/fs_emergency) @@ -2614,12 +2617,12 @@ "bkt" = (/obj/item/weapon/material/shard{icon_state = "medium"},/obj/item/stack/rods,/turf/simulated/floor/plating,/area/maintenance/research) "bku" = (/obj/structure/table/rack{dir = 1},/obj/random/maintenance/research,/obj/random/maintenance/research,/obj/random/maintenance/research,/turf/simulated/floor/plating,/area/maintenance/research) "bkv" = (/obj/structure/closet,/obj/item/clothing/glasses/welding,/obj/item/weapon/weldingtool,/obj/effect/decal/cleanable/dirt,/obj/random/maintenance/research,/obj/random/maintenance/research,/turf/simulated/floor/plating,/area/maintenance/research) -"bkw" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/disposalpipe/segment,/obj/structure/sign/christmas/wreath,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) -"bkx" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/sign/science{pixel_x = 32},/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) +"bkw" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) +"bkx" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/sign/science{pixel_x = 32},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "bky" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/robotics) "bkz" = (/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/plating,/area/maintenance/robotics) "bkA" = (/obj/machinery/portable_atmospherics/powered/scrubber,/turf/simulated/floor/plating,/area/maintenance/robotics) -"bkB" = (/obj/machinery/door/blast/shutters{dir = 2; id = "Skynet_launch"; name = "Mech Bay"},/obj/machinery/door/firedoor/multi_tile,/turf/simulated/floor/tiled/techfloor,/area/assembly/chargebay) +"bkB" = (/obj/machinery/door/blast/shutters{dir = 2; id = "Skynet_launch"; name = "Mech Bay"},/obj/machinery/door/firedoor/multi_tile,/turf/simulated/floor/tiled/techmaint,/area/assembly/chargebay) "bkC" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/light/small{dir = 8},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/research_medical) "bkD" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/research_medical) "bkE" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/research_medical) @@ -2647,7 +2650,7 @@ "bld" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4},/obj/machinery/atmospherics/pipe/simple/visible/cyan,/turf/simulated/floor,/area/engineering/engine_room) "ble" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 9},/turf/simulated/floor,/area/engineering/engine_room) "blf" = (/obj/machinery/atmospherics/binary/pump{dir = 1},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/machinery/airlock_sensor/airlock_interior{id_tag = "eng_al_int_snsr"; master_tag = "engine_room_airlock"; pixel_x = 22; req_access = list(10)},/obj/effect/engine_setup/pump_max,/turf/simulated/floor,/area/engineering/engine_room) -"blg" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance_hatch{name = "Engine Access"; req_one_access = list(11)},/turf/simulated/floor/tiled,/area/engineering/engine_airlock) +"blg" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance_hatch{name = "Engine Access"; req_one_access = list(11)},/turf/simulated/floor/tiled/steel_grid,/area/engineering/engine_airlock) "blh" = (/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fscenter) "bli" = (/obj/structure/sign/warning/radioactive,/turf/simulated/wall/r_wall,/area/engineering/engine_airlock) "blj" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fscenter) @@ -2686,9 +2689,9 @@ "bmh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light/small,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/engineering) "bmi" = (/obj/machinery/teleport/station{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/teleporter) "bmj" = (/obj/machinery/computer/teleporter{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/teleporter) -"bmk" = (/obj/machinery/light{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"bmk" = (/obj/machinery/light{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bml" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) -"bmm" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 1},/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/tiled,/area/engineering/foyer) +"bmm" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/engineering/foyer) "bmr" = (/obj/structure/dispenser{phorontanks = 0},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/dark,/area/engineering/engineer_eva) "bms" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/yellow/border{dir = 8},/turf/simulated/floor/tiled,/area/engineering/engineer_eva) "bmt" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/engineering/engineer_eva) @@ -2701,10 +2704,10 @@ "bmB" = (/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/light_switch{name = "light switch "; pixel_x = 36},/obj/effect/floor_decal/spline/plain{dir = 8},/turf/simulated/floor/tiled/yellow,/area/engineering/locker_room) "bmD" = (/turf/simulated/floor/tiled/yellow,/area/maintenance/engineering) "bmF" = (/turf/simulated/wall,/area/storage/emergency_storage/seconddeck/fp_emergency) -"bmG" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/borderfloor/corner2,/obj/effect/floor_decal/borderfloor/corner2{dir = 9},/obj/effect/floor_decal/corner/green/bordercorner2,/obj/effect/floor_decal/corner/green/bordercorner2{dir = 9},/obj/structure/sign/christmas/wreath{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"bmG" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/borderfloor/corner2,/obj/effect/floor_decal/borderfloor/corner2{dir = 9},/obj/effect/floor_decal/corner/green/bordercorner2,/obj/effect/floor_decal/corner/green/bordercorner2{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bmH" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) -"bmI" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/structure/flora/ausbushes/ywflowers,/obj/structure/sign/christmas/lights,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) -"bmJ" = (/obj/structure/flora/ausbushes/stalkybush,/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) +"bmI" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/structure/flora/ausbushes/ywflowers,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) +"bmJ" = (/obj/structure/flora/ausbushes/stalkybush,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) "bmK" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating,/area/maintenance/research) "bmN" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bmP" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/purple/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) @@ -2759,21 +2762,20 @@ "bnZ" = (/obj/structure/closet/secure_closet/atmos_personal,/obj/machinery/camera/network/engineering{c_tag = "ENG - Locker Room"; dir = 8},/obj/effect/floor_decal/spline/plain{dir = 8},/turf/simulated/floor/tiled/yellow,/area/engineering/locker_room) "bob" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/machinery/light{dir = 1},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/structure/cable/cyan{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/cyan{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled,/area/engineering/engine_monitoring) "boc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/cyan{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled,/area/engineering/engine_monitoring) -"bod" = (/obj/structure/closet/radiation,/obj/item/clothing/glasses/meson,/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/engineering/engine_monitoring) +"bod" = (/obj/structure/closet/radiation,/obj/item/clothing/glasses/meson,/obj/item/clothing/glasses/meson,/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/engineering/engine_monitoring) "bof" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/engineering/engine_monitoring) "bog" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) -"bol" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) -"bom" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 12"},/obj/structure/table/woodentable,/obj/item/device/communicator,/obj/effect/floor_decal/spline/plain,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) -"bon" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 6},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) -"boo" = (/obj/structure/flora/ausbushes/brflowers,/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) +"bol" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 10},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) +"bom" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 12"},/obj/structure/table/woodentable,/obj/item/device/communicator,/obj/effect/floor_decal/spline/plain,/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) +"bon" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 6},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) +"boo" = (/obj/structure/flora/ausbushes/brflowers,/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) "bop" = (/obj/structure/sign/directions/bridge{pixel_y = 10},/obj/structure/sign/directions/science{dir = 4},/obj/structure/sign/directions/medical{dir = 4; pixel_y = -10},/turf/simulated/wall,/area/hallway/primary/seconddeck/fscenter) -"bou" = (/obj/structure/flora/ausbushes/ywflowers,/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) +"bou" = (/obj/structure/flora/ausbushes/ywflowers,/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) "bov" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) -"bow" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 6},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fscenter) -"box" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) +"bow" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 6},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fscenter) "boy" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/obj/effect/floor_decal/borderfloorwhite/corner2{dir = 4},/obj/effect/floor_decal/corner/purple/bordercorner2{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/research) "boB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "englockdown"; name = "Engineering Lockdown"; opacity = 0},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) -"boC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{name = "Engineering Maintenance Access"; req_one_access = list(11,24)},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/catwalk,/turf/simulated/floor/tiled,/area/engineering/hallway/engineer_hallway) +"boC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{name = "Engineering Maintenance Access"; req_one_access = list(11,24)},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/engineering/hallway/engineer_hallway) "boE" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/apmaint) "boF" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/apmaint) "boH" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/research) @@ -2799,12 +2801,12 @@ "bph" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/hologram/holopad,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/white,/area/rnd/mixing) "bpi" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/mixing) "bpj" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/plating,/area/maintenance/robotics) -"bpk" = (/obj/machinery/door/airlock/glass_research{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "tox_airlock_interior"; locked = 1; name = "Mixing Room Interior Airlock"; req_access = list(7)},/turf/simulated/floor/reinforced/airless,/area/rnd/mixing) -"bpl" = (/obj/machinery/door/airlock/glass_research{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "tox_airlock_exterior"; locked = 1; name = "Mixing Room Exterior Airlock"; req_access = list(7)},/turf/simulated/floor/reinforced/airless,/area/rnd/mixing) +"bpk" = (/obj/machinery/door/airlock/glass_research{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "tox_airlock_interior"; locked = 1; name = "Mixing Room Interior Airlock"; req_access = list(7)},/turf/simulated/floor/tiled/techfloor/grid,/area/rnd/mixing) +"bpl" = (/obj/machinery/door/airlock/glass_research{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "tox_airlock_exterior"; locked = 1; name = "Mixing Room Exterior Airlock"; req_access = list(7)},/turf/simulated/floor/tiled/techfloor/grid,/area/rnd/mixing) "bpm" = (/obj/machinery/air_sensor{frequency = 1430; id_tag = "toxins_mixing_exterior"; output = 63},/turf/simulated/floor/reinforced/airless,/area/rnd/mixing) "bpn" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging,/turf/simulated/floor/reinforced/airless,/area/rnd/mixing) "bpo" = (/turf/simulated/wall/r_wall,/area/hallway/primary/seconddeck/port) -"bpp" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/vending/cigarette,/obj/machinery/light{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) +"bpp" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/vending/cigarette,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) "bpq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/light,/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/purple/border,/turf/simulated/floor/tiled/white,/area/rnd/research) "bpr" = (/obj/structure/sign/directions/medical{dir = 4},/obj/structure/sign/directions/security{dir = 4; pixel_y = 10},/turf/simulated/wall,/area/maintenance/apmaint) "bps" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/maintenance/engineering) @@ -2819,7 +2821,7 @@ "bpC" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/ascenter) "bpD" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/research) "bpE" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/purple/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bpF" = (/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bpF" = (/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bpG" = (/obj/machinery/alarm{pixel_y = 23},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "bpH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/deck/second{pixel_x = 32},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "bpI" = (/turf/simulated/wall/r_wall,/area/hallway/primary/seconddeck/starboard) @@ -2843,14 +2845,14 @@ "bqh" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 4},/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = "engine_access_hatch"; locked = 1; req_access = list(11)},/turf/simulated/floor,/area/engineering/engine_room) "bqi" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow,/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor,/area/engineering/engine_room) "bql" = (/obj/structure/flora/ausbushes/ppflowers,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) -"bqm" = (/obj/structure/flora/ausbushes/ywflowers,/obj/machinery/light{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) +"bqm" = (/obj/structure/flora/ausbushes/ywflowers,/obj/machinery/light{dir = 1},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) "bqn" = (/obj/structure/flora/ausbushes/brflowers,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) "bqo" = (/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) -"bqq" = (/obj/structure/disposalpipe/segment,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"bqq" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bqr" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/fscenter) "bqu" = (/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) "bqw" = (/obj/structure/flora/ausbushes/ywflowers,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) -"bqy" = (/obj/structure/flora/ausbushes/ywflowers,/obj/machinery/light{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) +"bqy" = (/obj/structure/flora/ausbushes/ywflowers,/obj/machinery/light{dir = 1},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) "bqz" = (/obj/structure/flora/ausbushes/ppflowers,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) "bqC" = (/obj/machinery/atmospherics/pipe/manifold4w/visible/cyan,/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor,/area/engineering/engine_room) "bqD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/industrial/warning,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/research) @@ -2865,7 +2867,7 @@ "brd" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/wall/r_wall,/area/rnd/mixing) "bre" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; external_pressure_bound = 0; external_pressure_bound_default = 0; icon_state = "map_vent_in"; initialize_directions = 1; internal_pressure_bound = 4000; internal_pressure_bound_default = 4000; pressure_checks = 2; pressure_checks_default = 2; pump_direction = 0; use_power = 1},/obj/machinery/sparker{id = "mixingsparker"; pixel_x = -22},/turf/simulated/floor/reinforced/airless,/area/rnd/mixing) "brf" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging{dir = 5},/turf/simulated/floor/reinforced/airless,/area/rnd/mixing) -"brg" = (/obj/machinery/door/blast/regular{id = "mixvent"; name = "Mixer Room Vent"},/turf/simulated/floor/reinforced/airless,/area/rnd/mixing) +"brg" = (/obj/machinery/door/blast/regular{id = "mixvent"; name = "Mixer Room Vent"},/turf/simulated/floor/tiled/techfloor/grid,/area/rnd/mixing) "brh" = (/obj/machinery/atmospherics/valve/digital{dir = 4; name = "Emergency Cooling Valve 1"},/obj/effect/floor_decal/industrial/warning,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/industrial/outline,/turf/simulated/floor,/area/engineering/engine_room) "bri" = (/obj/machinery/atmospherics/pipe/manifold/visible/green{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor,/area/engineering/engine_room) "brj" = (/obj/structure/cable/cyan{d2 = 2; icon_state = "0-2"},/obj/machinery/power/sensor{name = "Powernet Sensor - Engine Power"; name_tag = "Engine Power"},/turf/simulated/floor,/area/engineering/engine_room) @@ -2884,17 +2886,17 @@ "brw" = (/obj/effect/floor_decal/borderfloorblack{dir = 9},/obj/effect/floor_decal/industrial/danger{dir = 9},/obj/machinery/computer/timeclock/premade/north,/turf/simulated/floor/tiled/techfloor/grid,/area/hallway/primary/seconddeck/port) "brx" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bry" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"brz" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"brA" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"brB" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/corner/yellow/bordercorner2{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"brz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/eva_hallway) +"brA" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"brB" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/corner/yellow/bordercorner2{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "brC" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"brD" = (/obj/machinery/alarm{pixel_y = 23},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"brE" = (/obj/machinery/door/firedoor/border_only,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 1},/obj/machinery/status_display/shuttle_display{pixel_y = 28},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"brF" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 1},/obj/machinery/status_display{pixel_y = 32},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"brG" = (/obj/machinery/light{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"brH" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Port Hallway 2"},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"brI" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"brJ" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"brD" = (/obj/machinery/alarm{pixel_y = 23},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"brE" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 1},/obj/machinery/status_display/shuttle_display{pixel_y = 28},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"brF" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 1},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"brG" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"brH" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Port Hallway 2"},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"brI" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"brJ" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "brK" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/maintenance/central) "brL" = (/obj/machinery/portable_atmospherics/powered/scrubber,/turf/simulated/floor/plating,/area/maintenance/central) "brM" = (/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/ascenter) @@ -2914,7 +2916,8 @@ "bse" = (/turf/simulated/wall,/area/engineering/locker_room) "bsf" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/machinery/navbeacon/patrol{location = "CH10"; next_patrol = "CH11"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "bsg" = (/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"bsh" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Starboard Hallway 1"},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"bsh" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Starboard Hallway 1"},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"bsj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "bsm" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bsn" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bso" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/purple/border{dir = 8},/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = -28},/turf/simulated/floor/tiled/white,/area/rnd/research) @@ -2927,9 +2930,9 @@ "bsz" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bsA" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bsB" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"bsD" = (/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/green/border{dir = 5},/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"bsD" = (/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/green/border{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bsG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"bsH" = (/obj/machinery/ai_status_display{pixel_y = 32},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"bsH" = (/obj/machinery/ai_status_display{pixel_y = 32},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "bsJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/research) "bsM" = (/obj/structure/flora/pottedplant/crystal,/obj/effect/floor_decal/borderfloorwhite{dir = 9},/obj/effect/floor_decal/corner/purple/border{dir = 9},/turf/simulated/floor/tiled/white,/area/rnd/lab) "bsN" = (/obj/machinery/autolathe,/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/turf/simulated/floor/tiled/white,/area/rnd/lab) @@ -2952,14 +2955,14 @@ "btk" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/white,/area/rnd/mixing) "btl" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "btq" = (/obj/structure/sign/warning/hot_exhaust,/turf/simulated/wall/r_wall,/area/rnd/mixing) -"btr" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/firealarm{pixel_y = 24},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"btr" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/firealarm{pixel_y = 24},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "bts" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/starboard) "btt" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"btu" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"btv" = (/obj/machinery/door/firedoor/border_only,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"btw" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"btx" = (/obj/machinery/light{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/obj/machinery/status_display{pixel_y = 32},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bty" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Starboard Hallway 3"},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"btu" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"btv" = (/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/starboard) +"btw" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"btx" = (/obj/machinery/light{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bty" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Starboard Hallway 3"},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "btz" = (/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "btA" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "btB" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) @@ -2970,7 +2973,7 @@ "btG" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/structure/extinguisher_cabinet{pixel_y = 30},/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/turf/simulated/floor/tiled/white,/area/hallway/secondary/seconddeck/research_medical) "btH" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/tiled/white,/area/hallway/secondary/seconddeck/research_medical) "btI" = (/obj/machinery/door/blast/regular{density = 0; dir = 2; icon_state = "pdoor0"; id = "virologyquar"; name = "Virology Emergency Quarantine Blast Doors"; opacity = 0},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/sign/warning/secure_area{pixel_y = 32},/obj/machinery/camera/network/medbay{c_tag = "MED - Joint Hallway"; dir = 8},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/seconddeck/research_medical) -"btJ" = (/obj/machinery/shower{dir = 8; pixel_x = -5},/obj/structure/curtain/open/shower/medical,/obj/effect/floor_decal/borderfloor/cee{dir = 8},/turf/simulated/floor/tiled/steel,/area/medical/virology) +"btJ" = (/obj/machinery/shower{dir = 8; pixel_x = -5},/obj/structure/curtain/open/shower/medical,/turf/simulated/floor/tiled/freezer,/area/medical/virology) "btK" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for shutters."; id = "virologyquar"; name = "Virology Emergency Lockdown Control"; pixel_x = -26; req_access = list(5)},/obj/effect/floor_decal/borderfloorwhite/corner{dir = 1},/obj/effect/floor_decal/corner/lime/bordercorner{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/virology) "btL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/black{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/virology) "btN" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/engineering/foyer) @@ -2984,13 +2987,13 @@ "btY" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock{name = "Engineering Washroom"; req_one_access = list(10)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/steel_grid,/area/engineering/engi_restroom) "bub" = (/obj/machinery/door/blast/regular{id = "EngineVent"; name = "Reactor Vent"},/obj/machinery/shield_diffuser,/turf/simulated/floor/reinforced/airless,/area/engineering/engine_room) "buc" = (/turf/simulated/floor/greengrid/nitrogen,/area/engineering/engine_room) -"bud" = (/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/green/border{dir = 9},/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bud" = (/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/green/border{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "buf" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fpcenter) "bug" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fpcenter) "buh" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fpcenter) "bui" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fscenter) "buj" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/fscenter) -"buk" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/sign/christmas/wreath{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"buk" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bum" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fscenter) "bun" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fscenter) "buo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fscenter) @@ -3037,31 +3040,31 @@ "bvl" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor,/area/engineering/break_room) "bvm" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/obj/effect/landmark/start{name = "Atmospheric Technician"},/turf/simulated/floor/carpet,/area/engineering/break_room) "bvn" = (/obj/structure/table/woodentable,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/simulated/floor/carpet,/area/engineering/break_room) -"bvo" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Port Hallway 4"; dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/sign/christmas/wreath{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bvo" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Port Hallway 4"; dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bvq" = (/obj/structure/undies_wardrobe,/obj/structure/window/basic,/turf/simulated/floor/tiled/freezer,/area/engineering/engi_restroom) -"bvr" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) +"bvr" = (/obj/structure/flora/ausbushes/sparsegrass,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) "bvs" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bvu" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/navbeacon/patrol{location = "CH2"; next_patrol = "CH3"},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fpcenter) "bvv" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/red/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) -"bvw" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/red/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bvw" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/red/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bvx" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) -"bvy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/sign/warning/high_voltage{pixel_y = -32},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) -"bvz" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/station_map{dir = 1; pixel_y = -32},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) -"bvA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/machinery/ai_status_display{pixel_y = -32},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bvy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/sign/warning/high_voltage{pixel_y = -32},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bvz" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/station_map{dir = 1; pixel_y = -32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bvA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/machinery/ai_status_display{pixel_y = -32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bvB" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/fscenter) "bvC" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/machinery/navbeacon/patrol{location = "CH1"; next_patrol = "CH2"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bvD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bvE" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/machinery/navbeacon/patrol{location = "CH12"; next_patrol = "SEC"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bvF" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/fscenter) -"bvG" = (/obj/machinery/light,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) -"bvH" = (/obj/machinery/turretid/stun{check_records = 0; control_area = "\improper Teleporter"; name = "Teleporter turret control"; pixel_y = -24; req_access = list(17)},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) -"bvI" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/purple/bordercorner,/obj/machinery/status_display{pixel_y = -32},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) -"bvJ" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/purple/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"bvG" = (/obj/machinery/light,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"bvH" = (/obj/machinery/turretid/stun{check_records = 0; control_area = "\improper Teleporter"; name = "Teleporter turret control"; pixel_y = -24; req_access = list(17)},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"bvI" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/purple/bordercorner,/obj/machinery/status_display{pixel_y = -32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"bvJ" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/purple/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bvL" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/navbeacon/patrol{location = "CH11"; next_patrol = "CH12"},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fscenter) "bvM" = (/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fscenter) "bvN" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/light,/obj/effect/floor_decal/borderfloorwhite/corner,/obj/effect/floor_decal/corner/purple/bordercorner,/turf/simulated/floor/tiled/white,/area/rnd/research) "bvO" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/port) -"bvP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/sign/christmas/wreath{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bvP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bvU" = (/obj/machinery/r_n_d/protolathe,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/rnd/lab) "bvV" = (/turf/simulated/floor/tiled,/area/rnd/lab) "bvW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/borderfloorwhite/corner,/obj/effect/floor_decal/corner/purple/bordercorner,/turf/simulated/floor/tiled/white,/area/rnd/lab) @@ -3086,20 +3089,20 @@ "bwz" = (/turf/simulated/floor/tiled,/area/rnd/mixing) "bwB" = (/obj/effect/wingrille_spawn/reinforced_phoron,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/rnd/mixing) "bwC" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/port) -"bwD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{dir = 4},/obj/structure/sign/christmas/wreath{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bwD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bwE" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fpcenter) "bwF" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/ascenter) "bwG" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/ascenter) "bwH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/ascenter) "bwI" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/ascenter) -"bwJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light{dir = 8},/obj/structure/sign/christmas/wreath{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bwJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bwK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/starboard) "bwL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "bwM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/item/device/radio/beacon,/obj/machinery/navbeacon/patrol{location = "MED"; next_patrol = "CH10"},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "bwN" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/starboard) -"bwO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/christmas/wreath{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bwO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bwP" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/starboard) -"bwQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Starboard Hallway 4"; dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/sign/christmas/wreath{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bwQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Starboard Hallway 4"; dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bwR" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals_central5{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bwS" = (/obj/effect/floor_decal/borderfloorblack{dir = 4},/obj/effect/floor_decal/industrial/danger{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/hallway/primary/seconddeck/starboard) "bwT" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/white,/area/hallway/secondary/seconddeck/research_medical) @@ -3122,7 +3125,7 @@ "bxl" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled/freezer,/area/engineering/engi_restroom) "bxm" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/freezer,/area/engineering/engi_restroom) "bxn" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/tiled/freezer,/area/engineering/engi_restroom) -"bxo" = (/obj/structure/curtain/open/shower/engineering,/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/obj/machinery/door/window/westright{name = "Shower"},/obj/effect/floor_decal/borderfloorwhite/cee{dir = 8},/turf/simulated/floor/tiled/freezer,/area/engineering/engi_restroom) +"bxo" = (/obj/structure/curtain/open/shower/engineering,/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/obj/machinery/door/window/westright{name = "Shower"},/turf/simulated/floor/tiled/freezer,/area/engineering/engi_restroom) "bxq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/engineering) "bxr" = (/obj/structure/dispenser/oxygen,/turf/simulated/floor/plating,/area/maintenance/engineering) "bxt" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4},/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = "engine_access_hatch"; locked = 1; req_access = list(11)},/turf/simulated/floor,/area/engineering/engine_room) @@ -3193,20 +3196,20 @@ "bzd" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/freezer,/area/engineering/engi_restroom) "bze" = (/obj/effect/landmark{name = "blobstart"},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/light,/turf/simulated/floor/tiled/freezer,/area/engineering/engi_restroom) "bzf" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled/freezer,/area/engineering/engi_restroom) -"bzg" = (/obj/structure/curtain/open/shower/engineering,/obj/machinery/door/window/westleft{name = "Shower"},/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/obj/effect/floor_decal/borderfloorwhite/cee{dir = 8},/turf/simulated/floor/tiled/freezer,/area/engineering/engi_restroom) +"bzg" = (/obj/structure/curtain/open/shower/engineering,/obj/machinery/door/window/westleft{name = "Shower"},/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/turf/simulated/floor/tiled/freezer,/area/engineering/engi_restroom) "bzh" = (/obj/structure/table/rack{dir = 1},/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/engineering) "bzj" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/engineering) "bzk" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bzm" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) -"bzn" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bzn" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bzp" = (/obj/machinery/power/breakerbox/activated{RCon_tag = "Central Substation Bypass"},/turf/simulated/floor,/area/maintenance/substation/central) "bzt" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/tiled,/area/teleporter) "bzu" = (/obj/effect/floor_decal/industrial/outline/grey,/obj/structure/closet/crate,/obj/item/weapon/tool/crowbar/red,/obj/machinery/camera/network/command{c_tag = "COM - Teleporter"},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/teleporter) "bzv" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/structure/table/standard,/obj/item/device/radio/beacon,/obj/item/device/radio/beacon,/obj/random_multi/single_item/hand_tele,/turf/simulated/floor/tiled,/area/teleporter) -"bzx" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/purple/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"bzx" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/purple/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bzy" = (/turf/simulated/wall/r_wall,/area/hallway/primary/seconddeck/fscenter) -"bzz" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"bzA" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/effect/floor_decal/borderfloor/corner2,/obj/effect/floor_decal/corner/brown/bordercorner2,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bzz" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bzA" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/effect/floor_decal/borderfloor/corner2,/obj/effect/floor_decal/corner/brown/bordercorner2,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bzB" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/research) "bzC" = (/obj/structure/table/rack{dir = 8; layer = 2.6},/obj/random/maintenance/research,/obj/random/maintenance/research,/obj/random/maintenance/clean,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plating,/area/maintenance/research) "bzE" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/table/standard,/obj/item/weapon/hand_labeler,/obj/item/weapon/pen,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = -30},/obj/effect/floor_decal/borderfloorwhite/corner{dir = 8},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 8},/turf/simulated/floor/tiled/white,/area/rnd/lab) @@ -3216,12 +3219,12 @@ "bzJ" = (/obj/structure/table/standard,/obj/item/device/mmi,/obj/item/device/mmi,/obj/item/device/mmi,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/white,/area/assembly/robotics) "bzL" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/effect/floor_decal/borderfloorwhite/corner{dir = 1},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 1},/turf/simulated/floor/tiled/white,/area/rnd/research_foyer) "bzM" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/alarm{pixel_y = 22},/obj/effect/floor_decal/borderfloorwhite/corner{dir = 4},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/research_foyer) -"bzN" = (/obj/machinery/firealarm{pixel_y = 24},/obj/effect/floor_decal/borderfloorwhite{dir = 5},/obj/effect/floor_decal/corner/purple/border{dir = 5},/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/tiled/white,/area/rnd/research_foyer) +"bzN" = (/obj/machinery/firealarm{pixel_y = 24},/obj/effect/floor_decal/borderfloorwhite{dir = 5},/obj/effect/floor_decal/corner/purple/border{dir = 5},/turf/simulated/floor/tiled/white,/area/rnd/research_foyer) "bzO" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/assembly/robotics) "bzP" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/white,/area/assembly/robotics) "bzS" = (/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/assembly/robotics) -"bzU" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/glass_research{name = "Mech Bay"; req_access = list(29)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/techfloor,/area/assembly/chargebay) -"bzV" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_research{name = "Mech Bay"; req_access = list(29)},/turf/simulated/floor/tiled/techfloor,/area/assembly/chargebay) +"bzU" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/glass_research{name = "Mech Bay"; req_access = list(29)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/techmaint,/area/assembly/chargebay) +"bzV" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_research{name = "Mech Bay"; req_access = list(29)},/turf/simulated/floor/tiled/techmaint,/area/assembly/chargebay) "bzW" = (/turf/simulated/wall,/area/assembly/chargebay) "bzX" = (/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/blast/regular{density = 0; dir = 2; icon_state = "pdoor0"; id = "misclab"; name = "Test Chamber Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/rnd/misc_lab) "bzY" = (/turf/simulated/floor/reinforced,/area/rnd/misc_lab) @@ -3231,10 +3234,10 @@ "bAi" = (/turf/simulated/wall/r_wall,/area/rnd/mixing) "bAj" = (/turf/simulated/floor/airless,/area/medical/virology) "bAk" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall/r_wall,/area/medical/virology) -"bAl" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bAl" = (/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bAm" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bAn" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"bAq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bAq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bAr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bAs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bAt" = (/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/blue/border{dir = 6},/turf/simulated/floor/tiled,/area/crew_quarters/heads/sc/chief) @@ -3249,7 +3252,7 @@ "bAH" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/machinery/navbeacon/patrol{location = "CH4"; next_patrol = "CH5"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bAK" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled/freezer,/area/medical/medical_restroom) "bAL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fpcenter) -"bAM" = (/obj/structure/disposalpipe/junction{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bAM" = (/obj/structure/disposalpipe/junction{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bAN" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall,/area/maintenance/substation/central) "bAO" = (/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/cable/green,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/power/sensor{name = "Powernet Sensor - Central Subgrid"; name_tag = "Central Subgrid"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/plating,/area/maintenance/substation/central) "bAP" = (/obj/machinery/power/terminal{dir = 4},/obj/structure/cable,/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor,/area/maintenance/substation/central) @@ -3263,7 +3266,7 @@ "bAZ" = (/obj/machinery/bluespace_beacon,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/teleporter) "bBa" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled,/area/teleporter) "bBb" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled/techfloor,/area/teleporter) -"bBc" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/purple/border{dir = 8},/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) +"bBc" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/purple/border{dir = 8},/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "bBd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/research) "bBe" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/machinery/navbeacon/patrol{location = "CH9"; next_patrol = "MED"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "bBg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/research) @@ -3297,17 +3300,17 @@ "bBO" = (/obj/structure/sign/poster{pixel_y = -32},/turf/simulated/wall,/area/rnd/workshop) "bBQ" = (/obj/structure/table/glass,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/simulated/floor/tiled/white,/area/hallway/secondary/seconddeck/research_medical) "bBR" = (/obj/structure/table/glass,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/turf/simulated/floor/tiled/white,/area/hallway/secondary/seconddeck/research_medical) -"bCd" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"bCe" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/paleblue/bordercorner,/obj/machinery/light,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"bCd" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"bCe" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/paleblue/bordercorner,/obj/machinery/light,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "bCf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "bCg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"bCh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/status_display{pixel_y = -32},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"bCh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/status_display{pixel_y = -32},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "bCi" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"bCj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"bCl" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Starboard Hallway 2"; dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bCm" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bCn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bCo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/obj/machinery/station_map{dir = 1; pixel_y = -32},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bCj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"bCl" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Starboard Hallway 2"; dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bCm" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bCn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bCo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/obj/machinery/station_map{dir = 1; pixel_y = -32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bCp" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bCq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/starboard) "bCr" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/paleblue/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) @@ -3327,7 +3330,7 @@ "bCI" = (/obj/effect/floor_decal/industrial/warning,/obj/machinery/light/small{dir = 1},/obj/structure/railing,/turf/simulated/floor/plating,/area/maintenance/engineering) "bCK" = (/obj/random/trash_pile,/turf/simulated/floor/plating,/area/maintenance/engineering) "bCM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled/white,/area/hallway/secondary/seconddeck/research_medical) -"bCO" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 10"; dir = 4},/obj/effect/floor_decal/spline/plain{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) +"bCO" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 10"; dir = 4},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) "bCP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 5},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) "bCQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bCR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fpcenter) @@ -3348,7 +3351,7 @@ "bDk" = (/obj/machinery/recharger,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/matter_bin,/obj/item/weapon/stock_parts/matter_bin,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/micro_laser,/obj/machinery/ai_status_display{pixel_y = -32},/obj/structure/table/glass,/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/purple/border,/turf/simulated/floor/tiled/white,/area/rnd/lab) "bDl" = (/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/capacitor,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil,/obj/item/weapon/stock_parts/scanning_module,/obj/item/weapon/stock_parts/scanning_module,/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/structure/table/glass,/obj/effect/floor_decal/borderfloorwhite{dir = 6},/obj/effect/floor_decal/corner/purple/border{dir = 6},/turf/simulated/floor/tiled/white,/area/rnd/lab) "bDn" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled/white,/area/rnd/research_foyer) -"bDo" = (/obj/machinery/camera/network/research{c_tag = "SCI - Research Foyer"; dir = 1},/obj/structure/disposalpipe/sortjunction{dir = 1; name = "Robotics"; sortType = "Robotics"},/obj/structure/sign/christmas/wreath{dir = 1},/turf/simulated/floor/tiled/white,/area/rnd/research_foyer) +"bDo" = (/obj/machinery/camera/network/research{c_tag = "SCI - Research Foyer"; dir = 1},/obj/structure/disposalpipe/sortjunction{dir = 1; name = "Robotics"; sortType = "Robotics"},/turf/simulated/floor/tiled/white,/area/rnd/research_foyer) "bDp" = (/obj/machinery/computer/guestpass{pixel_y = -30},/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloorwhite{dir = 6},/obj/effect/floor_decal/corner/purple/border{dir = 6},/obj/effect/floor_decal/borderfloorwhite/corner2,/obj/effect/floor_decal/corner/purple/bordercorner2,/turf/simulated/floor/tiled/white,/area/rnd/research_foyer) "bDq" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/assembly/robotics) "bDr" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/purple/border,/turf/simulated/floor/tiled/white,/area/assembly/robotics) @@ -3391,7 +3394,7 @@ "bEy" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/engineering) "bEz" = (/turf/simulated/wall/r_wall,/area/engineering/engine_monitoring) "bEA" = (/obj/random/obstruction,/turf/simulated/floor/plating,/area/maintenance/apmaint) -"bEC" = (/obj/machinery/vending/snack,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) +"bEC" = (/obj/machinery/vending/snack,/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) "bEE" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bEJ" = (/turf/simulated/wall/r_wall,/area/maintenance/substation/central) "bEK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/central) @@ -3425,10 +3428,10 @@ "bFH" = (/turf/simulated/floor/plating,/area/maintenance/apmaint) "bFI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/junction{dir = 1},/turf/simulated/floor/plating,/area/maintenance/apmaint) "bFJ" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/apmaint) -"bFK" = (/obj/structure/sign/deck/second{pixel_x = -32},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) -"bFL" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/vending/snack,/obj/machinery/light,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) +"bFK" = (/obj/structure/sign/deck/second{pixel_x = -32},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) +"bFL" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/vending/snack,/obj/machinery/light,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) "bFM" = (/obj/structure/sign/directions/bridge{dir = 4; pixel_y = 10},/obj/structure/sign/directions/evac{dir = 4; pixel_y = -10},/obj/structure/sign/directions/cargo,/turf/simulated/wall,/area/maintenance/apmaint) -"bFN" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Emergency EVA"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/steel_grid,/area/ai_monitored/storage/emergency/eva) +"bFN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/multi_tile/glass,/obj/machinery/door/airlock/multi_tile/glass{name = "Emergency EVA"},/turf/simulated/floor/tiled/steel_grid,/area/ai_monitored/storage/emergency/eva) "bFO" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner2{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bFP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bFQ" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/paleblue/bordercorner2{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) @@ -3443,7 +3446,7 @@ "bFZ" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/maintenance/medbay) "bGa" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/apmaint) "bGb" = (/turf/simulated/wall,/area/maintenance/apmaint) -"bGc" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "englockdown"; name = "Engineering Lockdown"; opacity = 0},/obj/structure/sign/warning/secure_area{pixel_x = -32},/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) +"bGc" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "englockdown"; name = "Engineering Lockdown"; opacity = 0},/obj/structure/sign/warning/secure_area{pixel_x = -32},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) "bGd" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "englockdown"; name = "Engineering Lockdown"; opacity = 0},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) "bGe" = (/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/engineering) "bGg" = (/obj/random/obstruction,/turf/simulated/floor/plating,/area/maintenance/engineering) @@ -3454,7 +3457,7 @@ "bGn" = (/obj/structure/disposalpipe/broken{dir = 1},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/engineering) "bGo" = (/obj/structure/table/reinforced,/obj/machinery/computer/med_data/laptop{pixel_x = 3; pixel_y = 4},/obj/machinery/requests_console{announcementConsole = 1; department = "Chief Medical Officer's Desk"; departmentType = 5; name = "Chief Medical Officer RC"; pixel_y = -30},/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/sc/cmo) "bGp" = (/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/corner/paleblue/bordercorner2{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner2{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bGr" = (/obj/machinery/vending/coffee,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) +"bGr" = (/obj/machinery/vending/coffee,/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) "bGs" = (/obj/effect/floor_decal/spline/plain{dir = 4},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) "bGt" = (/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bGu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fpcenter) @@ -3468,12 +3471,12 @@ "bGK" = (/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/paleblue/bordercorner2{dir = 6},/obj/effect/floor_decal/corner/paleblue/bordercorner2{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bGL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/universal,/turf/simulated/floor/plating,/area/maintenance/research) "bGN" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/research) -"bGP" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/sign/warning/secure_area{pixel_x = -32},/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) +"bGP" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/sign/warning/secure_area{pixel_x = -32},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "bGR" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "bGS" = (/obj/structure/loot_pile/maint/technical,/turf/simulated/floor/plating,/area/maintenance/robotics) "bGT" = (/obj/machinery/atmospherics/binary/pump/on{target_pressure = 200},/turf/simulated/floor/plating,/area/maintenance/medbay) "bGW" = (/turf/simulated/wall/r_wall,/area/assembly/chargebay) -"bGX" = (/obj/machinery/door/blast/shutters{dir = 2; id = "Skynet_launch"; name = "Mech Bay"},/turf/simulated/floor/tiled/techfloor,/area/assembly/chargebay) +"bGX" = (/obj/machinery/door/blast/shutters{dir = 2; id = "Skynet_launch"; name = "Mech Bay"},/turf/simulated/floor/tiled/techmaint,/area/assembly/chargebay) "bGZ" = (/obj/structure/catwalk,/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/research_medical) "bHd" = (/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled/white,/area/rnd/research) "bHe" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/turf/simulated/floor/tiled/white,/area/rnd/research) @@ -3488,10 +3491,10 @@ "bHt" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/lime/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/virology) "bHu" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/disposaloutlet{dir = 4},/obj/machinery/shield_diffuser,/turf/simulated/floor/airless,/area/medical/virology) "bHv" = (/obj/structure/sign/directions/medical,/obj/structure/sign/directions/security{dir = 8; pixel_y = 10},/obj/structure/sign/directions/cryo{dir = 8; pixel_y = -10},/turf/simulated/wall,/area/maintenance/medbay_fore) -"bHw" = (/obj/machinery/light{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) +"bHw" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "bHx" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bHy" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bHz" = (/obj/structure/closet/emcloset,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) +"bHz" = (/obj/structure/closet/emcloset,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "bHA" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/light,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "bHB" = (/obj/effect/floor_decal/industrial/loading,/obj/machinery/door/firedoor/border_only,/obj/structure/plasticflaps{opacity = 1},/obj/machinery/navbeacon/delivery/south{location = "Medbay"},/turf/simulated/floor/tiled,/area/medical/medbay2) "bHC" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/research{name = "Genetics Lab"; req_one_access = list(5,47)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/seconddeck/research_medical) @@ -3506,10 +3509,10 @@ "bHP" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/engineering) "bHQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/engineering) "bHR" = (/obj/structure/table/rack{dir = 1},/obj/item/weapon/storage/toolbox/emergency,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/plating,/area/maintenance/medbay) -"bHT" = (/obj/machinery/vending/cola,/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) +"bHT" = (/obj/machinery/vending/cola,/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) "bHU" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) -"bHV" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner2,/obj/effect/floor_decal/borderfloor/corner2{dir = 9},/obj/effect/floor_decal/corner/green/bordercorner2,/obj/effect/floor_decal/corner/green/bordercorner2{dir = 9},/obj/structure/sign/christmas/wreath{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) -"bHW" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bHV" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner2,/obj/effect/floor_decal/borderfloor/corner2{dir = 9},/obj/effect/floor_decal/corner/green/bordercorner2,/obj/effect/floor_decal/corner/green/bordercorner2{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bHW" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bHY" = (/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/central_emergency) "bHZ" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/central_emergency) "bIj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/plating,/area/maintenance/research) @@ -3529,7 +3532,7 @@ "bIz" = (/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/robotics) "bIA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/robotics) "bIB" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bIC" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bIC" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bIH" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/research_medical) "bIJ" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled/white,/area/rnd/research) "bIL" = (/obj/machinery/camera/network/research{c_tag = "SCI - Workshop"; dir = 1},/obj/effect/floor_decal/borderfloorblack,/obj/effect/floor_decal/corner/green/border,/turf/simulated/floor/tiled/dark,/area/rnd/workshop) @@ -3546,7 +3549,7 @@ "bJb" = (/obj/machinery/atmospherics/binary/pump,/obj/effect/floor_decal/industrial/warning/corner,/obj/effect/engine_setup/pump_max,/turf/simulated/floor,/area/engineering/engine_room) "bJc" = (/turf/simulated/wall/r_wall,/area/engineering/engine_smes) "bJd" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/wall/r_wall,/area/engineering/engine_smes) -"bJe" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance_hatch{name = "SMES Access"; req_access = list(11)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled,/area/engineering/engine_smes) +"bJe" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance_hatch{name = "SMES Access"; req_access = list(11)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/engineering/engine_smes) "bJf" = (/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/apmaint) "bJg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/tagger/partial{dir = 1; name = "Sorting Office"; sort_tag = "Sorting Office"},/turf/simulated/floor/plating,/area/maintenance/apmaint) "bJh" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/apmaint) @@ -3555,7 +3558,7 @@ "bJk" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/maintenance/emergencyeva) "bJl" = (/turf/simulated/floor/plating,/area/maintenance/emergencyeva) "bJm" = (/obj/structure/sign/directions/engineering{dir = 1; pixel_y = 10},/obj/structure/sign/directions/science{dir = 4},/obj/structure/sign/directions/cryo{dir = 4; pixel_y = -10},/turf/simulated/wall,/area/maintenance/apmaint) -"bJn" = (/obj/machinery/light{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) +"bJn" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) "bJo" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/yellow/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bJq" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/yellow/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bJs" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/port) @@ -3569,10 +3572,10 @@ "bJR" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/central) "bJS" = (/turf/simulated/wall,/area/hallway/primary/seconddeck/ascenter) "bJY" = (/turf/simulated/wall,/area/maintenance/research) -"bJZ" = (/obj/machinery/status_display/shuttle_display{pixel_x = -32},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) +"bJZ" = (/obj/machinery/status_display/shuttle_display{pixel_x = -32},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "bKa" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/purple/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bKb" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/starboard) -"bKc" = (/obj/machinery/status_display/shuttle_display{message1 = "SHUT2"; pixel_x = 32; shuttle_tag = "Shuttle 2"},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) +"bKc" = (/obj/machinery/status_display/shuttle_display{message1 = "SHUT2"; pixel_x = 32; shuttle_tag = "Shuttle 2"},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "bKf" = (/obj/structure/sign/directions/engineering{dir = 8; pixel_y = 10},/obj/structure/sign/directions/science{dir = 1},/turf/simulated/wall,/area/maintenance/robotics) "bKg" = (/turf/simulated/wall,/area/maintenance/robotics) "bKh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) @@ -3592,7 +3595,7 @@ "bKJ" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled/techmaint,/area/ai_monitored/storage/emergency/eva) "bKK" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/glass_medical{name = "First-Aid Station"; req_access = newlist(); req_one_access = newlist()},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/medical/first_aid_station/seconddeck/port) "bKL" = (/obj/structure/flora/ausbushes/fullgrass,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) -"bKM" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"bKM" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "bKN" = (/obj/structure/closet,/obj/item/clothing/head/ushanka,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/plushie,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plating,/area/maintenance/central) "bKO" = (/turf/simulated/wall/r_wall,/area/hallway/primary/seconddeck/stairwell) "bKP" = (/obj/effect/floor_decal/borderfloorblack{dir = 9},/obj/effect/floor_decal/industrial/danger{dir = 9},/turf/simulated/floor/tiled/techfloor/grid,/area/hallway/primary/seconddeck/apcenter) @@ -3601,37 +3604,36 @@ "bKS" = (/obj/structure/filingcabinet/chestdrawer,/obj/machinery/newscaster/security_unit{pixel_y = 30},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/blue/border{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/heads/sc/hop) "bKT" = (/obj/machinery/account_database,/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hop) "bKU" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"bKY" = (/obj/machinery/station_map{pixel_y = 32},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bKY" = (/obj/machinery/station_map{pixel_y = 32},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/port) "bKZ" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"bLa" = (/obj/structure/extinguisher_cabinet{pixel_y = 30},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"bLb" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"bLc" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/obj/machinery/atmospherics/unary/vent_pump/on,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bLa" = (/obj/structure/extinguisher_cabinet{pixel_y = 30},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bLb" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bLc" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bLd" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"bLf" = (/obj/machinery/firealarm{pixel_y = 24},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bLf" = (/obj/machinery/firealarm{pixel_y = 24},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bLg" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/port) -"bLh" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bLh" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bLi" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) -"bLj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/ai_status_display{pixel_y = 32},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bLj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/ai_status_display{pixel_y = 32},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bLk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bLl" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) -"bLm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 1},/obj/machinery/light{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bLm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 1},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bLo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) -"bLp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/christmas/wreath,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bLp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bLq" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/machinery/navbeacon/patrol{location = "CH3"; next_patrol = "ENG"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bLr" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/fpcenter) "bLs" = (/turf/simulated/wall/r_wall,/area/storage/emergency_storage/seconddeck/central_emergency) "bLu" = (/turf/simulated/wall,/area/storage/emergency_storage/seconddeck/central_emergency) -"bLC" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/sign/christmas/wreath,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"bLD" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bLE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/firealarm{pixel_y = 24},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/corner/purple/bordercorner2{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bLH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bLI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bLC" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"bLE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/firealarm{pixel_y = 24},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/corner/purple/bordercorner2{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bLH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bLI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bLJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bLK" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/starboard) "bLL" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/corner/purple/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bLN" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 1},/obj/machinery/computer/timeclock/premade/north,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bLN" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 1},/obj/machinery/computer/timeclock/premade/north,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bLO" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bLP" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/obj/machinery/atm{pixel_y = 30},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bLP" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/obj/machinery/atm{pixel_y = 30},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bLU" = (/obj/structure/ladder,/turf/simulated/floor/plating,/area/maintenance/research_medical) "bLV" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/research_medical) "bLW" = (/obj/structure/sign/warning/secure_area,/turf/simulated/wall/r_wall,/area/hallway/secondary/seconddeck/research_medical) @@ -3644,8 +3646,8 @@ "bMd" = (/obj/structure/sink{dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor/tiled/steel,/area/medical/virology) "bMf" = (/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/virology) "bMh" = (/obj/machinery/disease2/isolator,/obj/effect/floor_decal/borderfloorwhite{dir = 5},/obj/effect/floor_decal/corner/lime/border{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/virology) -"bMj" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"bMk" = (/obj/machinery/vending/hydronutrients,/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/ascenter) +"bMj" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"bMk" = (/obj/machinery/vending/hydronutrients,/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/ascenter) "bMl" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/medbay) "bMm" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/medbay) "bMn" = (/obj/machinery/alarm{pixel_y = 23},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/medbay) @@ -3655,7 +3657,7 @@ "bMr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/item/device/radio/beacon,/obj/machinery/navbeacon/patrol{location = "ENG"; next_patrol = "CH4"},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) "bMs" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/port) "bMt" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/port) -"bMu" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/port) +"bMu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/port) "bMx" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/port) "bMy" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/port) "bMA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/port) @@ -3664,7 +3666,7 @@ "bMD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bME" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bMF" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/port) -"bMG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/christmas/wreath{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bMG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bMH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fpcenter) "bMJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fpcenter) "bMN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fpcenter) @@ -3682,9 +3684,9 @@ "bNf" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/ascenter) "bNg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "bNh" = (/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/ascenter) -"bNi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/sign/christmas/wreath{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"bNi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "bNj" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/starboard) -"bNn" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/starboard) +"bNn" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/starboard) "bNo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/starboard) "bNp" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/starboard) "bNq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/starboard) @@ -3729,43 +3731,42 @@ "bOk" = (/obj/effect/floor_decal/industrial/warning,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bOl" = (/obj/effect/floor_decal/industrial/warning,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bOm" = (/obj/effect/floor_decal/industrial/warning,/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bOn" = (/obj/effect/floor_decal/industrial/warning,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) +"bOn" = (/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "bOo" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/barrestroom) "bOp" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bOq" = (/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/port) "bOr" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bOs" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"bOt" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Port Hallway 3"; dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"bOu" = (/obj/machinery/door/firedoor/border_only,/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/obj/machinery/status_display/shuttle_display{message1 = "SHUT2"; pixel_y = -28; shuttle_tag = "Shuttle 2"},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"bOw" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/brown/bordercorner,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"bOx" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/ai_status_display{pixel_y = -32},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"bOy" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"bOz" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bOt" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Port Hallway 3"; dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bOu" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/obj/machinery/status_display/shuttle_display{message1 = "SHUT2"; pixel_y = -28; shuttle_tag = "Shuttle 2"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bOw" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/brown/bordercorner,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bOx" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/ai_status_display{pixel_y = -32},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bOy" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) +"bOz" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bOA" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bOB" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/port) -"bOC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bOC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bOD" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) -"bOE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/status_display{pixel_y = -32},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/brown/bordercorner,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bOE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/status_display{pixel_y = -32},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/brown/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bOF" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bOG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) -"bOH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Port Hallway 1"; dir = 1},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) -"bOJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bOH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Port Hallway 1"; dir = 1},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bOK" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) -"bOL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/sign/christmas/wreath{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) +"bOL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "bON" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light/small{dir = 8},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/central) "bOO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/meter,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/central) "bOQ" = (/turf/simulated/floor/plating,/area/maintenance/central) "bOX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/central) "bOY" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/central) "bPa" = (/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/structure/cable,/obj/machinery/computer/timeclock/premade/west,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/ascenter) -"bPb" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/sign/christmas/wreath{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"bPb" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "bPd" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bPe" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bPf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 8},/obj/machinery/ai_status_display{pixel_y = -32},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bPg" = (/obj/structure/cable,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bPh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bPi" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"bPj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/paleblue/bordercorner,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bPf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 8},/obj/machinery/ai_status_display{pixel_y = -32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bPg" = (/obj/structure/cable,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bPh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"bPi" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/starboard) +"bPj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/paleblue/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "bPl" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/central) "bPp" = (/obj/random/powercell,/obj/random/powercell,/obj/random/powercell,/obj/random/powercell,/obj/random/toolbox,/obj/structure/closet/crate,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/turf/simulated/floor,/area/maintenance/research_medical) "bPq" = (/obj/machinery/light/small{dir = 4},/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/research_medical) @@ -3787,17 +3788,16 @@ "bPN" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/maintenance/research_medical) "bPP" = (/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/research_medical) "bPS" = (/obj/effect/floor_decal/borderfloorwhite{dir = 9},/obj/effect/floor_decal/corner/lime/border{dir = 9},/obj/structure/table/standard,/turf/simulated/floor/tiled/white,/area/medical/genetics) -"bPT" = (/obj/effect/wingrille_spawn/reinforced,/obj/effect/floor_decal/corner/lime/border{dir = 1},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/dark,/area/medical/genetics) +"bPT" = (/obj/effect/wingrille_spawn/reinforced,/obj/effect/floor_decal/corner/lime/border{dir = 1},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/airless,/area/medical/genetics) "bPU" = (/obj/structure/lattice,/obj/machinery/camera/network/engine{c_tag = "ENG - Engine Cooling South"; dir = 8},/turf/space,/area/space) "bPV" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow,/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor,/area/engineering/engine_room) "bPZ" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 6},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor,/area/engineering/engine_room) "bQa" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow,/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 4},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor,/area/engineering/engine_room) "bQb" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan,/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor,/area/engineering/engine_room) -"bQc" = (/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) "bQd" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "bQe" = (/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"bQf" = (/obj/machinery/light{dir = 4},/obj/machinery/computer/timeclock/premade/east,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) -"bQl" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Emergency EVA"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/steel_grid,/area/ai_monitored/storage/emergency/eva) +"bQf" = (/obj/machinery/light{dir = 4},/obj/machinery/computer/timeclock/premade/east,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) +"bQl" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/steel_grid,/area/ai_monitored/storage/emergency/eva) "bQn" = (/obj/structure/sign/greencross{desc = "White cross in a green field, you can get medical aid here."; name = "First-Aid"},/turf/simulated/wall,/area/ai_monitored/storage/emergency/eva) "bQo" = (/turf/simulated/wall,/area/hallway/primary/seconddeck/port) "bQq" = (/turf/simulated/wall,/area/hallway/primary/seconddeck/fpcenter) @@ -3844,16 +3844,16 @@ "bRB" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/ai_monitored/storage/emergency/eva) "bRE" = (/obj/structure/closet/emcloset,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/bar) "bRG" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/fpcenter) -"bRI" = (/obj/structure/flora/ausbushes/pointybush,/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) +"bRI" = (/obj/structure/flora/ausbushes/pointybush,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) "bRJ" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) -"bRK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 1},/obj/structure/sign/christmas/wreath,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"bRK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "bRL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/central) "bRN" = (/obj/effect/floor_decal/borderfloorblack{dir = 1},/obj/effect/floor_decal/industrial/danger{dir = 1},/turf/simulated/floor/tiled/techfloor/grid,/area/hallway/primary/seconddeck/apcenter) "bRO" = (/obj/effect/floor_decal/borderfloorblack{dir = 5},/obj/effect/floor_decal/industrial/danger{dir = 5},/turf/simulated/floor/tiled/techfloor/grid,/area/hallway/primary/seconddeck/apcenter) "bRQ" = (/obj/structure/table/reinforced,/obj/machinery/photocopier/faxmachine{department = "Head of Personnel's Office"},/obj/machinery/requests_console{announcementConsole = 1; department = "Head of Personnel's Desk"; departmentType = 5; name = "Head of Personnel RC"; pixel_x = 30},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hop) -"bRR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 1},/obj/structure/sign/christmas/wreath,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"bRR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "bRS" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"bRT" = (/obj/machinery/seed_storage/garden,/obj/effect/floor_decal/spline/plain{dir = 8},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/ascenter) +"bRT" = (/obj/machinery/seed_storage/garden,/obj/effect/floor_decal/spline/plain{dir = 8},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/ascenter) "bRU" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/binary/passive_gate{dir = 4; regulate_mode = 0; unlocked = 1},/turf/simulated/floor/plating,/area/maintenance/medbay_fore) "bRV" = (/obj/machinery/atmospherics/valve/shutoff{dir = 4; name = "Medical automatic shutoff valve"},/turf/simulated/floor/plating,/area/maintenance/medbay_fore) "bRW" = (/obj/machinery/atmospherics/pipe/simple/visible/universal{dir = 4},/turf/simulated/floor/plating,/area/maintenance/medbay_fore) @@ -3896,9 +3896,9 @@ "bTd" = (/obj/structure/table/reinforced,/obj/machinery/door/blast/shutters{density = 0; dir = 8; icon_state = "shutter0"; id = "hop_office_desk"; name = "HoP Office Privacy Shutters"; opacity = 0},/obj/machinery/door/window/brigdoor/eastright{name = "Head of Personnel's Desk"; req_access = list(57)},/obj/machinery/door/window/northleft{dir = 8; name = "Reception Window"},/obj/structure/noticeboard{pixel_y = 27},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/sc/hop) "bTe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/crew_quarters/heads/sc/hop) "bTf" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/blue/border{dir = 4},/mob/living/simple_mob/animal/passive/dog/corgi/Ian,/turf/simulated/floor/tiled,/area/crew_quarters/heads/sc/hop) -"bTh" = (/obj/structure/disposalpipe/segment,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"bTh" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "bTj" = (/obj/effect/floor_decal/spline/plain{dir = 8},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/ascenter) -"bTk" = (/obj/structure/sink{dir = 4; pixel_x = 11},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/ascenter) +"bTk" = (/obj/structure/sink{dir = 4; pixel_x = 11},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/ascenter) "bTl" = (/obj/machinery/atmospherics/pipe/simple/visible/universal{dir = 4},/obj/machinery/portable_atmospherics/powered/scrubber,/turf/simulated/floor/plating,/area/maintenance/medbay_fore) "bTm" = (/obj/machinery/atmospherics/valve/digital/open{dir = 4},/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/plating,/area/maintenance/medbay_fore) "bTn" = (/obj/structure/table/rack{dir = 1},/obj/item/clothing/suit/fire/firefighter,/obj/item/weapon/tank/oxygen,/obj/item/clothing/mask/gas,/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/clothing/glasses/meson,/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/visible/universal{dir = 4},/turf/simulated/floor/plating,/area/maintenance/medbay_fore) @@ -3934,13 +3934,12 @@ "bTZ" = (/obj/structure/bed/roller,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -36},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/seconddeck/port) "bUa" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/seconddeck/port) "bUb" = (/obj/structure/table/glass,/obj/machinery/recharger,/obj/item/device/radio{frequency = 1487; icon_state = "med_walkietalkie"; name = "Medbay Emergency Radio Link"},/obj/machinery/vending/wallmed1{name = "NanoMed Wall"; pixel_x = 25},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/seconddeck/port) -"bUc" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) -"bUd" = (/obj/structure/flora/pottedplant/xmas,/turf/simulated/floor/tiled,/area/security/prison) +"bUd" = (/obj/random/contraband,/obj/random/contraband,/obj/structure/closet/crate,/turf/simulated/floor/plating,/area/maintenance/medbay) "bUe" = (/obj/machinery/atmospherics/pipe/simple/visible/universal,/obj/effect/decal/cleanable/dirt,/obj/structure/closet/crate,/obj/random/maintenance/medical,/obj/random/maintenance/research,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/cargo,/turf/simulated/floor/plating,/area/maintenance/central) "bUf" = (/obj/machinery/lapvend,/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/stairwell) "bUg" = (/obj/structure/table/glass,/obj/machinery/firealarm{pixel_y = 24},/obj/machinery/recharger,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Center Stair Access"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/stairwell) "bUj" = (/obj/structure/table/rack{dir = 8; layer = 2.6},/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/structure/window/reinforced,/obj/machinery/door/window/eastright,/obj/item/clothing/suit/space,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space,/turf/simulated/floor/tiled/techmaint,/area/ai_monitored/storage/emergency/eva) -"bUl" = (/obj/structure/flora/ausbushes/grassybush,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) +"bUl" = (/obj/structure/flora/ausbushes/grassybush,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) "bUm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/apcenter) "bUn" = (/obj/machinery/atmospherics/valve/digital/open,/obj/effect/decal/cleanable/dirt,/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/central) "bUo" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{name = "Central Maintenance Access"; req_one_access = list(12,19)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/stairwell) @@ -3952,7 +3951,7 @@ "bUw" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/ascenter) "bUx" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "bUy" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/glass/bucket,/obj/effect/floor_decal/spline/plain{dir = 10},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/ascenter) -"bUz" = (/obj/machinery/smartfridge/drying_rack,/obj/effect/floor_decal/spline/plain,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/ascenter) +"bUz" = (/obj/machinery/smartfridge/drying_rack,/obj/effect/floor_decal/spline/plain,/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/ascenter) "bUB" = (/turf/simulated/wall/r_wall,/area/medical/exam_room) "bUI" = (/turf/simulated/wall/r_wall,/area/medical/medbay_primary_storage) "bUL" = (/turf/simulated/wall/r_wall,/area/medical/biostorage) @@ -3985,9 +3984,9 @@ "bVu" = (/obj/structure/table/rack,/obj/item/device/suit_cooling_unit,/obj/item/device/suit_cooling_unit,/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/techmaint,/area/ai_monitored/storage/emergency/eva) "bVv" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/floor_decal/borderfloorwhite{dir = 10},/obj/effect/floor_decal/corner/paleblue/border{dir = 10},/obj/structure/closet/medical_wall{pixel_y = -31},/obj/item/roller,/obj/item/bodybag/cryobag,/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/pill_bottle/spaceacillin,/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/seconddeck/port) "bVw" = (/obj/machinery/floodlight,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/plating,/area/maintenance/medbay_fore) -"bVx" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 9"; dir = 4},/obj/structure/flora/tree/pine/xmas{desc = "A perfectly decorative fake christmas plant."},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) +"bVx" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 9"; dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) "bVy" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/apcenter) -"bVz" = (/obj/structure/disposalpipe/segment,/obj/machinery/ai_status_display{pixel_x = 32},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"bVz" = (/obj/structure/disposalpipe/segment,/obj/machinery/ai_status_display{pixel_x = 32},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "bVA" = (/turf/simulated/wall,/area/maintenance/central) "bVB" = (/obj/structure/table/rack,/obj/random/powercell,/obj/random/powercell,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tank,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/machinery/atmospherics/pipe/simple/visible/universal,/obj/structure/catwalk,/obj/random/cash,/turf/simulated/floor/plating,/area/maintenance/central) "bVC" = (/obj/machinery/atmospherics/pipe/simple/visible/universal,/obj/effect/decal/cleanable/dirt,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/central) @@ -4002,7 +4001,7 @@ "bVR" = (/obj/machinery/vending/snack,/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/structure/extinguisher_cabinet{pixel_y = 30},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -32},/turf/simulated/floor/tiled/white,/area/medical/reception) "bVS" = (/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/reception) "bVT" = (/obj/structure/bed/chair,/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/effect/landmark/start{name = "Medical Doctor"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/item/device/radio/intercom/department/medbay{dir = 1; pixel_y = 21},/turf/simulated/floor/tiled/white,/area/medical/reception) -"bVV" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/light{dir = 1},/obj/structure/flora/pottedplant/orientaltree,/obj/structure/sign/christmas/wreath,/turf/simulated/floor/tiled/white,/area/medical/foyer) +"bVV" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/light{dir = 1},/obj/structure/flora/pottedplant/orientaltree,/turf/simulated/floor/tiled/white,/area/medical/foyer) "bVW" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/obj/structure/table/glass,/obj/item/weapon/backup_implanter{pixel_y = 12},/obj/item/weapon/backup_implanter{pixel_y = 6},/obj/item/weapon/backup_implanter,/obj/item/weapon/backup_implanter{pixel_y = -6},/turf/simulated/floor/tiled/white,/area/medical/foyer) "bVX" = (/obj/structure/sign/chemistry{icon_state = "chemistry2"; pixel_y = 32},/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/blast/shutters{density = 0; dir = 8; icon_state = "shutter0"; id = "chemwindow"; name = "Chemistry Window Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/medical/chemistry) "bVY" = (/obj/machinery/chemical_dispenser/full,/obj/machinery/ai_status_display{pixel_y = 32},/obj/structure/table/reinforced,/obj/effect/floor_decal/borderfloorwhite{dir = 9},/obj/effect/floor_decal/corner/beige/border{dir = 9},/turf/simulated/floor/tiled/white,/area/medical/chemistry) @@ -4024,17 +4023,17 @@ "bWt" = (/obj/structure/closet/secure_closet/personal/patient,/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/lime/border{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/virology) "bWu" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/medbay_fore) "bWz" = (/obj/structure/closet,/obj/item/weapon/storage/backpack,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/random/firstaid,/turf/simulated/floor/plating,/area/maintenance/medbay_fore) -"bWA" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/sign/redcross{desc = "The Star of Life, a symbol of Medical Aid."; icon_state = "lifestar"; name = "Medbay"; pixel_x = -32},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "medbayquar"; name = "Medbay Emergency Lockdown Shutters"; opacity = 0},/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) +"bWA" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/sign/redcross{desc = "The Star of Life, a symbol of Medical Aid."; icon_state = "lifestar"; name = "Medbay"; pixel_x = -32},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "medbayquar"; name = "Medbay Emergency Lockdown Shutters"; opacity = 0},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "bWB" = (/obj/structure/table/standard,/obj/item/weapon/coin/silver{pixel_x = -3; pixel_y = 3},/obj/item/weapon/coin/silver,/obj/item/device/retail_scanner/civilian{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/item/weapon/cartridge/quartermaster,/obj/item/weapon/cartridge/quartermaster,/obj/item/weapon/cartridge/quartermaster,/obj/machinery/status_display{layer = 4; pixel_x = 32},/turf/simulated/floor/tiled,/area/quartermaster/qm) "bWC" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/apcenter) "bWD" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/central) "bWE" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "medbayquar"; name = "Medbay Emergency Lockdown Shutters"; opacity = 0},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "bWF" = (/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "bWG" = (/obj/machinery/recharger/wallcharger{pixel_x = 4; pixel_y = -30},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/light_switch{name = "light switch "; pixel_x = 36},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hop) -"bWI" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"bWI" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "bWJ" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "bWK" = (/obj/structure/flora/ausbushes/sparsegrass,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) -"bWL" = (/obj/structure/flora/ausbushes/fernybush,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) +"bWL" = (/obj/structure/flora/ausbushes/fernybush,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) "bWN" = (/obj/structure/table/steel,/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/item/device/defib_kit/compact/loaded,/turf/simulated/floor/tiled,/area/medical/medbay_emt_bay) "bWO" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/item/weapon/stool/padded,/obj/effect/landmark/start{name = "Paramedic"},/turf/simulated/floor/tiled/dark,/area/medical/medbay_emt_bay) "bWQ" = (/obj/structure/table/glass,/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/pink/border{dir = 8},/obj/structure/closet/secure_closet/medical_wall/pills{pixel_x = -32},/turf/simulated/floor/tiled/white,/area/medical/exam_room) @@ -4062,9 +4061,9 @@ "bXv" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/yellow,/turf/simulated/floor/plating,/area/medical/virology) "bXw" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/light{dir = 4},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = 32},/turf/simulated/floor/lino,/area/chapel/office) "bXA" = (/obj/structure/cable/green,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/power/smes/buildable{RCon_tag = "Substation - Civilian"},/turf/simulated/floor/plating,/area/maintenance/substation/civilian) -"bXC" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/sign/redcross{desc = "The Star of Life, a symbol of Medical Aid."; icon_state = "lifestar"; name = "Medbay"; pixel_x = 32},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "medbayquar"; name = "Medbay Emergency Lockdown Shutters"; opacity = 0},/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) +"bXC" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/sign/redcross{desc = "The Star of Life, a symbol of Medical Aid."; icon_state = "lifestar"; name = "Medbay"; pixel_x = 32},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "medbayquar"; name = "Medbay Emergency Lockdown Shutters"; opacity = 0},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "bXE" = (/obj/random/trash,/obj/structure/loot_pile/surface/medicine_cabinet{pixel_y = 25},/turf/simulated/floor/plating,/area/maintenance/research_medical) -"bXF" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/dark,/area/medical/genetics) +"bXF" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/airless,/area/medical/genetics) "bXH" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 5},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor,/area/engineering/engine_room) "bXI" = (/obj/machinery/atmospherics/binary/circulator{anchored = 1; dir = 4},/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor,/area/engineering/engine_room) "bXJ" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{dir = 9},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor,/area/engineering/engine_room) @@ -4079,7 +4078,7 @@ "bXX" = (/obj/machinery/atmospherics/pipe/simple/visible/green,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/engineering/engine_room) "bXZ" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "bYa" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/apcenter) -"bYb" = (/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"bYb" = (/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "bYc" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/crew_quarters/heads/sc/hop) "bYd" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/extinguisher_cabinet{pixel_y = -30},/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/sc/hop) "bYe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/ascenter) @@ -4088,7 +4087,7 @@ "bYk" = (/obj/machinery/vending/wallmed1{pixel_x = 25},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/pink/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/exam_room) "bYm" = (/obj/machinery/atmospherics/pipe/manifold/hidden/cyan{dir = 1},/obj/machinery/meter,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/plating,/area/maintenance/medbay) "bYo" = (/obj/effect/floor_decal/corner/paleblue{dir = 10},/obj/effect/floor_decal/corner/paleblue{dir = 5},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/medical/foyer) -"bYp" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/corner/paleblue{dir = 6},/obj/effect/floor_decal/corner/paleblue{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/industrial/outline/grey,/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/tiled/white,/area/medical/foyer) +"bYp" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/corner/paleblue{dir = 6},/obj/effect/floor_decal/corner/paleblue{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/white,/area/medical/foyer) "bYq" = (/obj/effect/floor_decal/corner/paleblue{dir = 10},/obj/effect/floor_decal/corner/paleblue{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/foyer) "bYr" = (/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/foyer) "bYs" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/glass,/obj/machinery/door/window/westright{name = "Chemistry Desk"},/obj/machinery/door/window/eastright{name = "Chemistry Desk"; req_access = list(33)},/obj/machinery/door/blast/shutters{density = 0; dir = 8; icon_state = "shutter0"; id = "chemcounter"; name = "Pharmacy Counter Shutters"; opacity = 0},/turf/simulated/floor/tiled/white,/area/medical/chemistry) @@ -4117,8 +4116,7 @@ "bYW" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall,/area/construction/seconddeck/construction1) "bYX" = (/obj/random/trash,/turf/simulated/floor,/area/maintenance/bar) "bYZ" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/bar) -"bZb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/apcenter) -"bZc" = (/obj/machinery/door/firedoor/border_only,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"bZb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/apcenter) "bZd" = (/obj/structure/sign/directions/evac{pixel_y = -10},/turf/simulated/wall/r_wall,/area/hallway/primary/seconddeck/apcenter) "bZi" = (/turf/simulated/wall/r_wall,/area/crew_quarters/heads/sc/hop) "bZj" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) @@ -4132,7 +4130,7 @@ "bZv" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/light_switch{pixel_x = 36; pixel_y = -6},/obj/machinery/button/windowtint{id = "exam_window_tint"; pixel_x = 36; pixel_y = 6},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/pink/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/exam_room) "bZx" = (/obj/machinery/atmospherics/pipe/simple/visible/universal,/turf/simulated/floor/plating,/area/maintenance/apmaint) "bZz" = (/obj/structure/bed/chair{dir = 1},/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/effect/landmark/start{name = "Medical Doctor"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/reception) -"bZA" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/corner/paleblue{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/reception) +"bZA" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/reception) "bZB" = (/obj/structure/bed/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Medical Doctor"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/reception) "bZC" = (/obj/structure/table/reinforced,/obj/item/device/radio{anchored = 1; canhear_range = 1; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; name = "Reception Emergency Phone"},/obj/machinery/door/window/eastright{name = "Medical Reception"; req_access = list(5)},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/reception) "bZD" = (/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-j2"},/turf/simulated/floor/tiled/white,/area/medical/foyer) @@ -4161,10 +4159,10 @@ "cai" = (/obj/structure/reagent_dispensers/watertank,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/bar) "caj" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/structure/flora/ausbushes/ywflowers,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) "cak" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) -"cal" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/station_map{pixel_y = 32},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) -"cam" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/paleblue/border{dir = 1},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 4},/obj/machinery/computer/id_restorer{pixel_y = 26},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"cap" = (/obj/structure/flora/ausbushes/fullgrass,/obj/structure/flora/ausbushes/ywflowers,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) -"car" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/brown/bordercorner2{dir = 6},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"cal" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/station_map{pixel_y = 32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"cam" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/paleblue/border{dir = 1},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 4},/obj/machinery/computer/id_restorer{pixel_y = 26},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"cap" = (/obj/structure/flora/ausbushes/fullgrass,/obj/structure/flora/ausbushes/ywflowers,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) +"car" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/brown/bordercorner2{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "cas" = (/obj/machinery/atmospherics/valve/digital/open,/obj/effect/decal/cleanable/dirt,/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/plating,/area/maintenance/central) "cau" = (/obj/structure/closet/crate,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/random/medical,/obj/random/medical,/obj/structure/loot_pile/surface/medicine_cabinet{pixel_y = 25},/turf/simulated/floor/plating,/area/maintenance/medbay) "caw" = (/obj/structure/closet/secure_closet/medical1,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -36},/obj/random/medical,/obj/random/medical,/obj/random/medical,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/status_display{pixel_y = -32},/turf/simulated/floor/tiled/dark,/area/medical/medbay_emt_bay) @@ -4176,7 +4174,7 @@ "caF" = (/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/reception) "caG" = (/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/reception) "caH" = (/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/reception) -"caI" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/corner/paleblue{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/reception) +"caI" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/reception) "caJ" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/simulated/floor/tiled/white,/area/medical/reception) "caK" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/obj/item/device/defib_kit/loaded,/turf/simulated/floor/tiled/white,/area/medical/reception) "caL" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/medical/foyer) @@ -4195,20 +4193,20 @@ "cba" = (/obj/machinery/recharge_station,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/tiled/freezer,/area/medical/medical_restroom) "cbc" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/stairwell) "cbd" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/stairwell) -"cbe" = (/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/stairwell) -"cbf" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"cbe" = (/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/stairwell) +"cbf" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "cbg" = (/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/apcenter) "cbi" = (/obj/machinery/vending/coffee,/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/reception) "cbj" = (/obj/machinery/computer/card{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/blue/border{dir = 8},/turf/simulated/floor/tiled,/area/crew_quarters/heads/sc/hop) -"cbk" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner2{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"cbk" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner2{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "cbl" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/apcenter) "cbn" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/apcenter) "cbo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/apcenter) -"cbp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 6},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 5},/obj/structure/sign/christmas/wreath{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"cbp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 6},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "cbq" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/apcenter) -"cbr" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/sign/christmas/wreath{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"cbr" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "cbs" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/apcenter) -"cbt" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/sign/christmas/wreath{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"cbt" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "cbu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/ascenter) "cbw" = (/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/ascenter) "cbx" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) @@ -4225,7 +4223,7 @@ "cbN" = (/obj/structure/bookcase/manuals/medical,/obj/item/weapon/book/manual/stasis,/obj/item/weapon/book/manual/medical_diagnostics_manual{pixel_y = 7},/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/machinery/status_display{pixel_y = -32},/turf/simulated/floor/tiled/white,/area/medical/reception) "cbO" = (/obj/machinery/photocopier,/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled/white,/area/medical/reception) "cbP" = (/obj/machinery/papershredder,/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/reception) -"cbQ" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/corner/paleblue{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/reception) +"cbQ" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/reception) "cbR" = (/obj/effect/floor_decal/borderfloorwhite/corner,/obj/effect/floor_decal/corner/paleblue/bordercorner,/turf/simulated/floor/tiled/white,/area/medical/reception) "cbS" = (/obj/machinery/door/window/eastright{name = "Medical Reception"; req_access = list(5)},/obj/effect/floor_decal/borderfloorwhite{dir = 6},/obj/effect/floor_decal/corner/paleblue/border{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/reception) "cbT" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/door/blast/shutters{density = 0; icon_state = "shutter0"; id = "medbayrecquar"; name = "Medbay Emergency Quarantine Shutters"; opacity = 0},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/foyer) @@ -4238,7 +4236,7 @@ "ccd" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/medbay2) "ccf" = (/obj/structure/table/glass,/obj/item/weapon/towel{color = "#FF6666"; name = "light red towel"},/obj/item/weapon/towel{color = "#FF6666"; name = "light red towel"},/obj/item/weapon/towel{color = "#FF6666"; name = "light red towel"},/obj/item/weapon/towel{color = "#3fc0ea"; name = "light blue towel"; pixel_x = 2; pixel_y = 4},/obj/item/weapon/towel{color = "#3fc0ea"; name = "light blue towel"; pixel_x = 2; pixel_y = 4},/obj/item/weapon/towel{color = "#3fc0ea"; name = "light blue towel"; pixel_x = 2; pixel_y = 4},/obj/item/weapon/soap/nanotrasen,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -36},/obj/structure/cable/green,/obj/random/soap,/turf/simulated/floor/tiled/freezer,/area/medical/medical_restroom) "ccg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/freezer,/area/medical/medical_restroom) -"cch" = (/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/obj/machinery/door/window/westright{name = "Shower"},/obj/structure/window/basic{dir = 1},/obj/structure/curtain/open/shower/medical,/obj/effect/floor_decal/borderfloorwhite/cee{dir = 8},/turf/simulated/floor/tiled/freezer,/area/medical/medical_restroom) +"cch" = (/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/obj/machinery/door/window/westright{name = "Shower"},/obj/structure/window/basic{dir = 1},/obj/structure/curtain/open/shower/medical,/turf/simulated/floor/tiled/freezer,/area/medical/medical_restroom) "cci" = (/turf/simulated/floor/tiled/steel_grid,/area/medical/medbay_emt_bay) "ccl" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{name = "Medbay Maintenance Access"; req_access = list(5)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/medical/reception) "ccn" = (/obj/structure/sign/nosmoking_1,/turf/simulated/wall/r_wall,/area/medical/reception) @@ -4257,7 +4255,7 @@ "ccB" = (/obj/random/junk,/turf/simulated/floor,/area/maintenance/apmaint) "ccC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/apmaint) "ccD" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"ccE" = (/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/green/border{dir = 6},/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"ccE" = (/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/green/border{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "ccH" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/construction/seconddeck/construction1) "ccI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/construction/seconddeck/construction1) "ccJ" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/white,/area/medical/sleeper) @@ -4282,7 +4280,7 @@ "cdm" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/newscaster{pixel_x = 30},/turf/simulated/floor/tiled/white,/area/medical/medbay2) "cdo" = (/obj/structure/undies_wardrobe,/obj/structure/extinguisher_cabinet{pixel_y = -30},/turf/simulated/floor/tiled/freezer,/area/medical/medical_restroom) "cdp" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled/freezer,/area/medical/medical_restroom) -"cdq" = (/obj/machinery/door/window/westleft{name = "Shower"},/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/obj/structure/curtain/open/shower/medical,/obj/effect/floor_decal/borderfloorwhite/cee{dir = 8},/turf/simulated/floor/tiled/freezer,/area/medical/medical_restroom) +"cdq" = (/obj/machinery/door/window/westleft{name = "Shower"},/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/obj/structure/curtain/open/shower/medical,/turf/simulated/floor/tiled/freezer,/area/medical/medical_restroom) "cdr" = (/turf/simulated/wall/r_wall,/area/medical/medical_restroom) "cds" = (/obj/random/maintenance/engineering,/obj/random/maintenance/clean,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/steel,/area/construction/seconddeck/construction1) "cdt" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 4},/turf/simulated/floor/plating,/area/maintenance/apmaint) @@ -4294,7 +4292,7 @@ "cdz" = (/obj/structure/bed/chair,/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/brown/border{dir = 9},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/machinery/status_display{layer = 4; pixel_x = -32},/turf/simulated/floor/tiled,/area/quartermaster/foyer) "cdA" = (/obj/structure/bed/chair,/obj/machinery/alarm{pixel_y = 22},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/quartermaster/foyer) "cdB" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/foyer) -"cdC" = (/obj/machinery/camera/network/cargo{c_tag = "CRG - Cargo Foyer"; name = "security camera"},/obj/structure/sign/christmas/wreath,/turf/simulated/floor/tiled,/area/quartermaster/foyer) +"cdC" = (/obj/machinery/camera/network/cargo{c_tag = "CRG - Cargo Foyer"; name = "security camera"},/turf/simulated/floor/tiled,/area/quartermaster/foyer) "cdD" = (/obj/structure/bed/chair,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/foyer) "cdE" = (/obj/structure/bed/chair,/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/brown/border{dir = 5},/obj/machinery/atm{pixel_y = 30},/turf/simulated/floor/tiled,/area/quartermaster/foyer) "cdF" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced/polarized{id = "quart_tint"},/turf/simulated/floor/plating,/area/quartermaster/qm) @@ -4309,7 +4307,7 @@ "cdO" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "cdP" = (/obj/structure/cable/green,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -36},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/stairwell) "cdQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/stairwell) -"cdR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/stairwell) +"cdR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/industrial/warning,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/stairwell) "cdS" = (/obj/machinery/door/airlock/glass_external{frequency = 1379; icon_state = "door_locked"; id_tag = "aft_starboard_inner"; locked = 1; name = "Internal Airlock Access"; req_access = list(13)},/turf/simulated/floor/plating,/area/maintenance/medbay) "cdT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/medbay) "cdU" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/medbay) @@ -4342,15 +4340,15 @@ "cex" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloorwhite/corner{dir = 4},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/medbay2) "ceA" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock{name = "Medical Restroom"; req_access = list(5)},/turf/simulated/floor/tiled/steel_grid,/area/medical/medical_restroom) "ceB" = (/turf/simulated/wall,/area/medical/medical_restroom) -"ceC" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/multi_tile/glass{dir = 2},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/stairwell) -"ceD" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"ceC" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/multi_tile/glass{dir = 2},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/stairwell) +"ceD" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "ceE" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/apcenter) "ceF" = (/obj/structure/closet/secure_closet/hop,/obj/item/device/megaphone,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/blue/border{dir = 8},/turf/simulated/floor/tiled,/area/crew_quarters/heads/sc/hop) "ceG" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hop) -"ceH" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/machinery/status_display{pixel_x = -32},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"ceH" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/machinery/status_display{pixel_x = -32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "ceI" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "ceJ" = (/obj/structure/flora/ausbushes/fullgrass,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) -"ceK" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 4"; dir = 8},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) +"ceK" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 4"; dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) "ceL" = (/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/pink/border{dir = 8},/obj/effect/floor_decal/borderfloorwhite/corner2{dir = 8},/obj/effect/floor_decal/corner/pink/bordercorner2{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/medbay_emt_bay) "ceM" = (/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/pink/border{dir = 4},/obj/effect/floor_decal/borderfloorwhite/corner2{dir = 6},/obj/effect/floor_decal/corner/pink/bordercorner2{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/medbay_emt_bay) "ceN" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/window/westright{name = "EVA Suit Storage"; req_access = list(5)},/obj/item/device/suit_cooling_unit,/obj/structure/table/rack{dir = 8; layer = 2.6},/turf/simulated/floor/tiled/dark,/area/medical/medbay_emt_bay) @@ -4399,7 +4397,7 @@ "cfL" = (/obj/item/weapon/storage/box/cdeathalarm_kit,/obj/item/bodybag/cryobag{pixel_x = -3},/obj/item/bodybag/cryobag{pixel_x = -3},/obj/structure/table/steel,/obj/machinery/alarm{pixel_y = 23},/obj/item/device/sleevemate,/turf/simulated/floor/tiled/dark,/area/medical/biostorage) "cfN" = (/obj/effect/floor_decal/borderfloorwhite{dir = 10},/obj/effect/floor_decal/corner/lime/border{dir = 10},/obj/machinery/clonepod/full,/turf/simulated/floor/tiled/white,/area/medical/genetics) "cfO" = (/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/lime/border,/obj/structure/table/glass,/obj/item/weapon/storage/box/monkeycubes,/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/status_display{pixel_y = -32},/obj/item/weapon/storage/box/monkeycubes,/turf/simulated/floor/tiled/white,/area/medical/genetics) -"cfP" = (/obj/effect/wingrille_spawn/reinforced,/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/lime/border,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/dark,/area/medical/genetics) +"cfP" = (/obj/effect/wingrille_spawn/reinforced,/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/lime/border,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/airless,/area/medical/genetics) "cfQ" = (/obj/effect/floor_decal/borderfloorwhite{dir = 6},/obj/effect/floor_decal/corner/lime/border{dir = 6},/obj/structure/bed/double,/obj/item/weapon/bedsheet/bluedouble,/turf/simulated/floor/tiled/steel,/area/medical/genetics) "cfR" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "EngineRadiatorViewport2"; name = "Engine Radiator Viewport Shutter"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/visible/green{dir = 10},/turf/simulated/floor,/area/engineering/engine_room) "cfS" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/atmospherics/pipe/simple/visible/green{dir = 6},/turf/simulated/floor,/area/engineering/engine_room) @@ -4448,10 +4446,10 @@ "chc" = (/obj/structure/bed/chair/office/dark,/obj/effect/landmark/start{name = "Quartermaster"},/obj/machinery/button/remote/blast_door{id = "crglockdown"; name = "Cargo Lockdown"; pixel_x = -24; pixel_y = -26; req_access = list()},/turf/simulated/floor/tiled,/area/quartermaster/qm) "chd" = (/obj/structure/table/reinforced,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = 3; pixel_y = 6},/obj/item/weapon/storage/briefcase/inflatable{pixel_y = 3},/obj/item/weapon/storage/briefcase/inflatable{pixel_x = -3},/turf/simulated/floor/tiled/techmaint,/area/ai_monitored/storage/emergency/eva) "che" = (/obj/structure/table/reinforced,/obj/machinery/cell_charger,/obj/item/weapon/tool/crowbar/red,/obj/item/weapon/tool/crowbar/red,/obj/item/weapon/tool/crowbar/red,/obj/item/weapon/tool/crowbar/red,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/radio/off,/obj/item/device/radio/off,/obj/item/device/radio/off,/obj/item/device/radio/off,/obj/machinery/camera/network/civilian{c_tag = "CIV - Emergency EVA"; dir = 1},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled/techmaint,/area/ai_monitored/storage/emergency/eva) -"chf" = (/obj/structure/flora/ausbushes/genericbush,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) +"chf" = (/obj/structure/flora/ausbushes/genericbush,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) "chg" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "chh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/apcenter) -"chi" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"chi" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "chj" = (/obj/structure/railing{dir = 4},/turf/simulated/open,/area/hallway/primary/seconddeck/stairwell) "chk" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/stairwell) "chl" = (/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/stairwell) @@ -4488,7 +4486,7 @@ "chW" = (/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/pink/border{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/medbay_emt_bay) "chX" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/window/westleft{name = "EVA Suit Storage"; req_access = list(5)},/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/void/medical,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/void/medical,/obj/item/weapon/tank/oxygen,/obj/structure/table/rack{dir = 8; layer = 2.6},/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/void/medical,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/void/medical,/obj/item/weapon/tank/oxygen,/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled/dark,/area/medical/medbay_emt_bay) "chY" = (/obj/structure/bed/chair/office/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/exam_room) -"chZ" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/effect/floor_decal/corner/paleblue{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/reception) +"chZ" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/reception) "cib" = (/obj/machinery/chem_master,/obj/effect/floor_decal/borderfloorwhite/corner{dir = 4},/obj/effect/floor_decal/corner/beige/bordercorner{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/chemistry) "cic" = (/turf/simulated/floor/tiled/white,/area/medical/medbay_primary_storage) "cid" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire{pixel_x = 5; pixel_y = 5},/obj/item/weapon/storage/firstaid/fire,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/medbay_primary_storage) @@ -4614,7 +4612,7 @@ "ckX" = (/obj/structure/table/standard,/obj/item/weapon/clipboard,/obj/item/weapon/pen/multi,/turf/simulated/floor/tiled,/area/quartermaster/qm) "ckZ" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled/white,/area/medical/ward) "cla" = (/obj/structure/table/steel,/obj/item/weapon/autopsy_scanner,/obj/item/weapon/surgical/scalpel,/obj/item/weapon/surgical/cautery,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/medical/morgue) -"cle" = (/obj/random/contraband,/obj/random/contraband,/obj/structure/closet/crate,/turf/simulated/floor/plating,/area/maintenance/medbay) +"cle" = (/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/holodeck_control) "clg" = (/turf/simulated/wall,/area/maintenance/medbay) "clh" = (/obj/random/trash_pile,/turf/simulated/floor/plating,/area/maintenance/medbay) "cli" = (/obj/structure/closet/crate,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/medbay) @@ -4633,13 +4631,13 @@ "clw" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/medical/ward) "clx" = (/obj/structure/table/glass,/obj/item/device/radio{anchored = 1; canhear_range = 7; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; name = "Surgery Emergency Phone"},/obj/random/medical,/obj/random/medical,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/effect/floor_decal/borderfloorwhite/corner2{dir = 10},/obj/effect/floor_decal/corner/paleblue/bordercorner2{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/ward) "cly" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/ward) -"clA" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall,/area/holodeck_control) -"clB" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/holodeck_control) +"clA" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall,/area/maintenance/medbay) +"clB" = (/obj/structure/sign/poster/nanotrasen{pixel_y = 32},/obj/machinery/vending/loadout/gadget,/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) "clJ" = (/obj/machinery/light/small,/obj/structure/loot_pile/maint/junk,/turf/simulated/floor/plating,/area/maintenance/medbay) "clK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/medbay) "clL" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/wall/r_wall,/area/maintenance/medbay) "clN" = (/turf/space,/turf/simulated/floor/carpet,/area/chapel/main) -"clO" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"clO" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "clP" = (/obj/machinery/atmospherics/valve{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/plating,/area/maintenance/medbay) "clQ" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "medbayquar"; name = "Medbay Emergency Lockdown Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/visible/universal{dir = 4},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/medbay) "clR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{name = "Medbay Maintenance Access"; req_access = list(5)},/turf/simulated/floor/plating,/area/medical/ward) @@ -4651,10 +4649,10 @@ "clX" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/white,/area/medical/ward) "clY" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/ward) "clZ" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled/white,/area/medical/ward) -"cma" = (/obj/structure/closet/emcloset,/turf/simulated/floor/tiled,/area/holodeck_control) -"cmc" = (/obj/machinery/alarm{pixel_y = 22},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/obj/structure/table/standard,/obj/item/toy/plushie/box,/turf/simulated/floor/tiled,/area/holodeck_control) -"cme" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/button/windowtint{id = "holodeck_tint"; pixel_x = -11; pixel_y = 24; range = 14},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/turf/simulated/floor/tiled,/area/holodeck_control) -"cmf" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/turf/simulated/floor/tiled,/area/holodeck_control) +"cma" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/turf/simulated/floor/tiled,/area/holodeck_control) +"cmc" = (/obj/machinery/alarm{pixel_y = 22},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/holodeck_control) +"cme" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/button/windowtint{id = "holodeck_tint"; pixel_x = -11; pixel_y = 24; range = 14},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/holodeck_control) +"cmf" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/holodeck_control) "cmg" = (/obj/structure/closet/lasertag/red,/obj/item/stack/flag/red,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/turf/simulated/floor/tiled,/area/holodeck_control) "cmh" = (/obj/structure/closet/lasertag/blue,/obj/item/stack/flag/blue,/obj/machinery/firealarm{pixel_y = 24},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/turf/simulated/floor/tiled,/area/holodeck_control) "cmj" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/central) @@ -4666,7 +4664,7 @@ "cms" = (/obj/item/weapon/stool/padded,/obj/machinery/camera/network/medbay{c_tag = "MED - Patient Ward Port"; dir = 1},/obj/effect/floor_decal/borderfloorwhite/corner{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/ward) "cmt" = (/obj/machinery/door/firedoor/glass,/obj/machinery/vending/wallmed1{pixel_y = -30},/obj/effect/floor_decal/borderfloorwhite/corner,/obj/effect/floor_decal/corner/paleblue/bordercorner,/turf/simulated/floor/tiled/white,/area/medical/ward) "cmu" = (/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled/white,/area/medical/ward) -"cmv" = (/obj/structure/disposalpipe/junction,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/holodeck_control) +"cmv" = (/obj/structure/disposalpipe/junction,/obj/effect/floor_decal/corner/yellow/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "cmx" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled,/area/holodeck_control) "cmz" = (/obj/item/weapon/stool/padded,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/holodeck_control) "cmA" = (/obj/structure/firedoor_assembly,/obj/item/tape/engineering,/turf/simulated/floor/plating,/area/maintenance/medbay) @@ -4678,8 +4676,8 @@ "cmH" = (/turf/simulated/wall/r_wall,/area/medical/ward) "cmL" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/medical{name = "Operating Theatre Storage"; req_access = list(45)},/turf/simulated/floor/tiled/steel_grid,/area/medical/surgery_storage) "cmN" = (/turf/simulated/floor/tiled/airless,/area/rnd/test_area) -"cmO" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Holodeck Control"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/coffee_shop) -"cmP" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/turf/simulated/floor/tiled,/area/holodeck_control) +"cmO" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"cmP" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 6},/turf/simulated/floor/tiled,/area/holodeck_control) "cmQ" = (/obj/item/weapon/stool/padded,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/tiled,/area/holodeck_control) "cmR" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/holodeck_control) "cmS" = (/obj/structure/table/standard,/obj/item/weapon/soap/nanotrasen,/obj/item/weapon/paper{desc = ""; info = "Brusies sustained in the holodeck can be healed simply by sleeping."; name = "Holodeck Disclaimer"},/obj/machinery/camera/network/civilian{c_tag = "CIV - Holodeck Control"; dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/holodeck_control) @@ -4690,7 +4688,7 @@ "cmZ" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "aft_starboard_outer"; locked = 1; name = "External Airlock Access"; req_access = list(13)},/turf/simulated/floor/plating,/area/maintenance/medbay) "cna" = (/turf/simulated/wall/r_wall,/area/maintenance/medbay) "cnb" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera/network/command{c_tag = "COM - HoP's Office"; dir = 1},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/machinery/ai_status_display{pixel_y = -32},/obj/effect/floor_decal/corner/blue/border{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/heads/sc/hop) -"cnc" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"cnc" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "cnd" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/structure/flora/ausbushes/brflowers,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) "cnf" = (/obj/machinery/status_display{layer = 4; pixel_x = -32},/obj/effect/floor_decal/borderfloorwhite{dir = 9},/obj/effect/floor_decal/corner/pink/border{dir = 9},/obj/structure/closet/secure_closet/medical2,/turf/simulated/floor/tiled/white,/area/medical/surgery) "cnh" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/machinery/button/windowtint{id = "st1_tint"; pixel_x = -11; pixel_y = 22},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/button/holosign{pixel_x = -11; pixel_y = 30},/obj/effect/floor_decal/borderfloorwhite/corner{dir = 1},/obj/effect/floor_decal/corner/pink/bordercorner{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/surgery) @@ -4728,7 +4726,7 @@ "coe" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/white,/area/medical/exam_room) "cof" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/food/drinks/britcup,/obj/random/medical,/obj/item/weapon/reagent_containers/spray/cleaner{pixel_x = -5},/obj/item/weapon/reagent_containers/spray/cleaner,/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/reception) "cog" = (/obj/structure/table/glass,/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/item/device/sleevemate,/turf/simulated/floor/tiled/white,/area/medical/reception) -"coh" = (/obj/machinery/hologram/holopad,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/stool/padded,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/corner/paleblue{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/reception) +"coh" = (/obj/machinery/hologram/holopad,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/stool/padded,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/medical/reception) "coi" = (/obj/item/modular_computer/console/preset/medical{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/reception) "cok" = (/obj/machinery/oxygen_pump/anesthetic,/turf/simulated/wall,/area/medical/surgery) "col" = (/obj/machinery/optable,/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/surgery) @@ -4743,10 +4741,10 @@ "cow" = (/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/structure/table/reinforced,/obj/machinery/button/remote/airlock{desc = "A remote control switch for the medbay foyer."; id = "MedbayFoyer"; name = "Medbay Doors Control"; pixel_x = -4; pixel_y = 6},/obj/machinery/button/remote/blast_door{id = "medbayrecquar"; name = "Medbay Entrance Quarantine Shutters Control"; pixel_x = -4; pixel_y = -4; req_access = list(5)},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/reception) "cox" = (/obj/structure/closet/crate/freezer,/obj/machinery/light,/turf/simulated/floor/tiled/freezer,/area/medical/surgery_storage) "coy" = (/obj/structure/closet/secure_closet/medical2,/turf/simulated/floor/tiled/freezer,/area/medical/surgery_storage) -"coA" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/turf/simulated/floor/carpet,/area/crew_quarters/coffee_shop) +"coA" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/obj/structure/bed/chair/comfy/brown{dir = 1},/obj/structure/window/reinforced/tinted/frosted,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/coffee_shop) "coJ" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced/polarized{id = "holodeck_tint"},/obj/machinery/light{dir = 4},/turf/simulated/floor/plating,/area/holodeck_control) "coL" = (/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/machinery/computer/transhuman/designer,/turf/simulated/floor/tiled/white,/area/medical/foyer) -"coM" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_medical{name = "Chemistry Laboratory"; req_access = list(33)},/turf/simulated/floor/tiled/white,/area/medical/chemistry) +"coM" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_medical{name = "Chemistry Laboratory"; req_access = list(33)},/turf/simulated/floor/tiled/steel_grid,/area/medical/chemistry) "coN" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/structure/table/standard,/obj/item/weapon/surgical/scalpel,/obj/item/weapon/surgical/circular_saw{pixel_y = 8},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/pink/border{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/surgery) "coO" = (/obj/effect/floor_decal/industrial/loading{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/surgery) "coP" = (/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/pink/border{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/surgery) @@ -4763,8 +4761,8 @@ "cph" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/camera/network/medbay{c_tag = "MED - Surgery Observation"; dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled,/area/medical/surgeryobs) "cpi" = (/obj/machinery/ai_status_display{pixel_y = -32},/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/pink/border,/obj/structure/table/standard,/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/item/weapon/autopsy_scanner,/obj/item/weapon/surgical/FixOVein,/obj/item/weapon/surgical/surgicaldrill,/turf/simulated/floor/tiled/white,/area/medical/surgery2) "cpj" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/medbay2) -"cpl" = (/obj/item/weapon/stool/padded,/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"cpm" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced/polarized{id = "holodeck_tint"},/obj/machinery/camera/network/civilian{c_tag = "CIV - Holodeck Port"; dir = 4},/turf/simulated/floor/plating,/area/holodeck_control) +"cpl" = (/obj/structure/table/standard,/obj/item/toy/plushie/box,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/turf/simulated/floor/tiled,/area/holodeck_control) +"cpm" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/holodeck_control) "cpw" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/medbay2) "cpx" = (/turf/simulated/wall,/area/medical/medbay2) "cpy" = (/obj/machinery/vending/fitness,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/dark,/area/medical/medbay2) @@ -4811,13 +4809,13 @@ "cqX" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/bar) "cqY" = (/turf/simulated/floor/plating,/area/maintenance/bar) "cqZ" = (/obj/machinery/alarm{pixel_y = 22},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/bar) -"cra" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/machinery/light{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) +"cra" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/machinery/light{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) "crk" = (/turf/simulated/wall/r_wall,/area/holodeck_control) -"crl" = (/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/brown/border{dir = 5},/obj/machinery/alarm{pixel_y = 23},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 8"},/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"crl" = (/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/brown/border{dir = 5},/obj/machinery/alarm{pixel_y = 23},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 8"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "crm" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{name = "Central Maintenance Access"; req_one_access = list(12,19)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/central) "crn" = (/obj/structure/sign/deck/second,/turf/simulated/wall/r_wall,/area/hallway/primary/seconddeck/stairwell) -"cro" = (/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/paleblue/border{dir = 9},/obj/machinery/alarm{pixel_y = 23},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 5"},/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"crp" = (/obj/structure/flora/ausbushes/fullgrass,/obj/machinery/light{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) +"cro" = (/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/paleblue/border{dir = 9},/obj/machinery/alarm{pixel_y = 23},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 5"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"crp" = (/obj/structure/flora/ausbushes/fullgrass,/obj/machinery/light{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) "crq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/exam_room) "crr" = (/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/reception) "crs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/item/weapon/stool/padded,/turf/simulated/floor/tiled/white,/area/medical/foyer) @@ -4852,8 +4850,8 @@ "csh" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/brown/bordercorner,/obj/machinery/mineral/equipment_vendor{dir = 4; pixel_x = 4},/turf/simulated/floor/tiled,/area/quartermaster/foyer) "csj" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/quartermaster/qm) "csk" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/quartermaster/qm) -"csm" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/navbeacon/patrol{location = "CIV"; next_patrol = "CH7"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) -"csn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) +"csm" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/navbeacon/patrol{location = "CIV"; next_patrol = "CH7"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) +"csn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) "cso" = (/mob/living/simple_mob/animal/sif/fluffy,/turf/simulated/floor/tiled,/area/quartermaster/qm) "csp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/barrestroom) "csq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/barrestroom) @@ -4864,14 +4862,14 @@ "csz" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/bar) "csA" = (/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/bar) "csB" = (/obj/random/trash_pile,/turf/simulated/floor,/area/maintenance/bar) -"csC" = (/obj/structure/flora/ausbushes/lavendergrass,/obj/structure/flora/ausbushes/brflowers,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) +"csC" = (/obj/structure/flora/ausbushes/lavendergrass,/obj/structure/flora/ausbushes/brflowers,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) "csD" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "csE" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/navbeacon/patrol{location = "CH5"; next_patrol = "CH6"},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/apcenter) "csF" = (/turf/simulated/wall/r_wall,/area/security/tactical) "csG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "csH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) -"csI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/status_display{pixel_y = 32},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) -"csJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"csI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"csJ" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "csK" = (/turf/simulated/wall,/area/quartermaster/delivery) "csL" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "csM" = (/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) @@ -4882,14 +4880,14 @@ "csZ" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced/polarized{id = "holodeck_tint"},/turf/simulated/floor/plating,/area/holodeck_control) "cta" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/chapel) "ctb" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/chapel) -"ctc" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/machinery/status_display/shuttle_display{pixel_y = 28},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"ctc" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/machinery/status_display/shuttle_display{pixel_y = 28},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "ctd" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/machinery/navbeacon/patrol{location = "CH6"; next_patrol = "CIV"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "cte" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/machinery/navbeacon/patrol{location = "CH7"; next_patrol = "CH8"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) -"ctf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/machinery/status_display/shuttle_display{message1 = "SHUT2"; pixel_y = 28; shuttle_tag = "Shuttle 2"},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"ctg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/computer/timeclock/premade/north,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"ctf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/machinery/status_display/shuttle_display{message1 = "SHUT2"; pixel_y = 28; shuttle_tag = "Shuttle 2"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"ctg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/computer/timeclock/premade/north,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "cth" = (/obj/structure/disposalpipe/sortjunction{dir = 8; name = "HoP Office"; sortType = "HoP Office"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"cti" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 4},/obj/machinery/ai_status_display{pixel_y = 32},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"ctj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/paleblue/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"cti" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 4},/obj/machinery/ai_status_display{pixel_y = 32},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"ctj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/paleblue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "ctk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "ctl" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/navbeacon/patrol{location = "CH8"; next_patrol = "CH9"},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/ascenter) "ctm" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/medical{name = "Examination Room"; req_access = list(5)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/steel_grid,/area/medical/exam_room) @@ -4956,9 +4954,9 @@ "cuL" = (/obj/structure/closet,/obj/item/weapon/storage/backpack/dufflebag,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/brown/border{dir = 6},/turf/simulated/floor/tiled,/area/quartermaster/qm) "cuM" = (/turf/simulated/wall,/area/quartermaster/lockerroom) "cuN" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall,/area/quartermaster/lockerroom) -"cuO" = (/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/green/border{dir = 10},/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"cuO" = (/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/green/border{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "cuP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/apcenter) -"cuQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 10},/obj/structure/sign/christmas/wreath{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) +"cuQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) "cuR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/ascenter) "cuS" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/ascenter) "cuT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/ascenter) @@ -4967,7 +4965,6 @@ "cuW" = (/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/machinery/door/blast/shutters{density = 0; icon_state = "shutter0"; id = "medbayrecquar"; name = "Medbay Emergency Quarantine Shutters"; opacity = 0},/obj/effect/floor_decal/corner_steel_grid,/turf/simulated/floor/tiled/white,/area/medical/foyer) "cuX" = (/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/door/blast/shutters{density = 0; icon_state = "shutter0"; id = "medbayrecquar"; name = "Medbay Emergency Quarantine Shutters"; opacity = 0},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/floor_decal/corner_steel_grid{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/foyer) "cuY" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced/polarized{id = "chapel"},/turf/simulated/floor/plating,/area/chapel/main) -"cuZ" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "cvb" = (/obj/machinery/newscaster{pixel_x = -30},/turf/simulated/floor/lino,/area/chapel/office) "cvc" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/lino,/area/chapel/office) "cvd" = (/obj/structure/table/wooden_reinforced,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen/blue{pixel_x = 5; pixel_y = 5},/turf/simulated/floor/lino,/area/chapel/office) @@ -4986,7 +4983,7 @@ "cvr" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled/dark,/area/medical/biostorage) "cvs" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/light_switch{name = "light switch "; pixel_x = 36},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/tiled/dark,/area/medical/biostorage) "cvt" = (/obj/machinery/conveyor{dir = 1; id = "garbage"},/obj/structure/sign/warning/vacuum{pixel_x = -32},/obj/machinery/light/small{dir = 8},/turf/simulated/floor,/area/maintenance/disposal) -"cvw" = (/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 = 21},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"cvw" = (/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 = 21},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "cvy" = (/obj/structure/extinguisher_cabinet{pixel_x = -28},/turf/simulated/floor/tiled/dark,/area/chapel/main) "cvz" = (/obj/effect/floor_decal/chapel{dir = 8},/turf/simulated/floor/tiled/dark,/area/chapel/main) "cvB" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/machinery/camera/network/civilian{c_tag = "CIV - Chapel Office"; dir = 4},/turf/simulated/floor/lino,/area/chapel/office) @@ -5049,8 +5046,8 @@ "cwN" = (/turf/simulated/floor/tiled,/area/quartermaster/office) "cwO" = (/obj/effect/floor_decal/chapel{dir = 1},/turf/simulated/floor/tiled/dark,/area/chapel/main) "cwP" = (/obj/effect/floor_decal/chapel{dir = 4},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/dark,/area/chapel/main) -"cwQ" = (/obj/structure/frame{anchored = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/locker) -"cwT" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock{name = "Chapel Office"; req_access = list(27)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/steel_grid,/area/chapel/office) +"cwQ" = (/obj/structure/closet/cabinet,/obj/item/clothing/under/pants/yogapants,/obj/item/clothing/under/pants/yogapants,/obj/item/clothing/under/pants/yogapants,/obj/item/clothing/shoes/footwraps,/obj/item/clothing/shoes/footwraps,/obj/item/clothing/shoes/footwraps,/obj/item/weapon/towel/random{pixel_y = 8},/obj/item/weapon/towel/random{pixel_y = 8},/obj/item/weapon/towel/random{pixel_y = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/obj/machinery/light{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) +"cwT" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock{name = "Chapel Office"; req_access = list(27)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techmaint,/area/chapel/office) "cwV" = (/obj/machinery/door/firedoor,/obj/effect/wingrille_spawn/reinforced/polarized{id = "chapeloffice"},/turf/simulated/floor/plating,/area/chapel/office) "cwZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/maintenance/chapel) "cxb" = (/turf/simulated/wall/r_wall,/area/chapel/main) @@ -5074,12 +5071,12 @@ "cxv" = (/obj/effect/floor_decal/chapel{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/table/bench/padded,/turf/simulated/floor/tiled/dark,/area/chapel/main) "cxw" = (/obj/effect/floor_decal/chapel,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/table/bench/padded,/turf/simulated/floor/tiled/dark,/area/chapel/main) "cxy" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/dark,/area/chapel/main) -"cxz" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/dark,/area/chapel/main) +"cxz" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled/dark,/area/chapel/main) "cxA" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/tiled/dark,/area/chapel/main) "cxC" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/camera/network/civilian{c_tag = "CIV - Chapel Starboard"},/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor/tiled/dark,/area/chapel/main) "cxD" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/dark,/area/chapel/main) "cxE" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled/dark,/area/chapel/main) -"cxF" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/dark,/area/chapel/main) +"cxF" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled/dark,/area/chapel/main) "cxG" = (/obj/structure/table/glass,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/tiled/dark,/area/chapel/main) "cxI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor,/area/maintenance/cargo) "cxK" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/cargo) @@ -5126,36 +5123,36 @@ "cyA" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/random/trash_pile,/turf/simulated/floor/plating,/area/maintenance/bar) "cyB" = (/obj/structure/table/woodentable,/obj/item/weapon/dice/d20,/turf/simulated/floor/carpet,/area/library) "cyD" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment,/obj/effect/wingrille_spawn/reinforced/polarized{id = "chapel"},/turf/simulated/floor/plating,/area/chapel/main) -"cyF" = (/obj/machinery/door/morgue{dir = 2; name = "Confession Booth"},/turf/simulated/floor/tiled/dark,/area/chapel/main) +"cyF" = (/obj/machinery/door/morgue{dir = 2; name = "Confession Booth"},/turf/simulated/floor/tiled/techmaint,/area/chapel/main) "cyN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating,/area/maintenance/bar) -"cyO" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"cyO" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "cyP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/bar) "cyQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/bar) "cyS" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/bar) "cyT" = (/obj/structure/flora/ausbushes/ppflowers,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) -"cyU" = (/obj/structure/flora/ausbushes/ywflowers,/obj/machinery/light,/obj/structure/sign/christmas/lights,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) +"cyU" = (/obj/structure/flora/ausbushes/ywflowers,/obj/machinery/light,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) "cyV" = (/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) "cyW" = (/obj/structure/flora/ausbushes/ywflowers,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) "cyX" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/apcenter) "cyY" = (/obj/structure/flora/ausbushes/brflowers,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) "cyZ" = (/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) -"cza" = (/obj/structure/flora/ausbushes/ywflowers,/obj/machinery/light,/obj/structure/sign/christmas/lights,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) +"cza" = (/obj/structure/flora/ausbushes/ywflowers,/obj/machinery/light,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) "czb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/firealarm{pixel_y = 24},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloorwhite/corner{dir = 1},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled/white,/area/medical/medbay) "czc" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloorwhite/corner{dir = 4},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/medbay) "czd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/corner_steel_grid{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/medbay) -"czg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"czh" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"czi" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"czg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"czh" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"czi" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "czj" = (/obj/structure/closet/coffin,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/tiled/dark,/area/chapel/main) "czk" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/ai_status_display{pixel_y = -32},/turf/simulated/floor/tiled/dark,/area/chapel/main) "czl" = (/obj/machinery/door/window{dir = 8; name = "Mass Driver"; req_access = list(22)},/obj/machinery/mass_driver{dir = 4; id = "chapelgun"; layer = 2.8},/obj/machinery/airlock_sensor{pixel_y = 25},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/sign/warning/vacuum{pixel_y = -32},/turf/simulated/floor/airless,/area/chapel/main) "czm" = (/obj/machinery/door/blast/regular{id = "chapelgun"; name = "Chapel Launcher Door"},/obj/machinery/shield_diffuser,/turf/simulated/floor/airless,/area/chapel/main) "czn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/paleblue/border{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/medbay) "czp" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/white,/area/medical/medbay) -"czq" = (/obj/structure/table/glass,/obj/item/device/starcaster_news{pixel_x = 8},/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/aft) -"czt" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"czu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"czv" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/ai_status_display{pixel_y = -32},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"czq" = (/obj/structure/table/glass,/obj/item/device/starcaster_news{pixel_x = 8},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/aft) +"czt" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"czu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"czv" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/ai_status_display{pixel_y = -32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "czD" = (/turf/simulated/wall,/area/chapel/main) "czE" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/maintenance/locker) "czF" = (/turf/simulated/wall,/area/maintenance/locker) @@ -5164,14 +5161,13 @@ "czJ" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/effect/floor_decal/borderfloorwhite/corner{dir = 1},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/medbay2) "czK" = (/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 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/medbay2) "czO" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/ap_emergency) -"czV" = (/obj/item/clothing/gloves/rainbow,/obj/item/clothing/head/soft/rainbow,/obj/item/clothing/shoes/rainbow,/obj/item/clothing/under/color/rainbow,/obj/item/weapon/bedsheet/rainbow,/obj/item/weapon/pen/crayon/rainbow,/turf/simulated/floor,/area/crew_quarters/locker) -"czW" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/mime,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"czV" = (/obj/item/clothing/gloves/rainbow,/obj/item/clothing/head/soft/rainbow,/obj/item/clothing/shoes/rainbow,/obj/item/clothing/under/color/rainbow,/obj/item/weapon/bedsheet/rainbow,/obj/item/weapon/pen/crayon/rainbow,/obj/item/clothing/glasses/threedglasses,/turf/simulated/floor,/area/crew_quarters/seconddeck/gym) +"czW" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/mime,/turf/simulated/floor/plating,/area/crew_quarters/seconddeck/gym) "czX" = (/obj/structure/table/rack{dir = 1},/obj/item/clothing/glasses/sunglasses,/obj/item/weapon/storage/bible,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/locker) "czY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/white,/area/medical/medbay2) "czZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/white,/area/medical/medbay2) "cAb" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/camera/network/medbay{c_tag = "MED - Medical Hallway Starboard 3"; dir = 8},/turf/simulated/floor/tiled/white,/area/medical/medbay2) "cAc" = (/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/disposal/deliveryChute{dir = 1},/obj/structure/window/reinforced,/obj/structure/plasticflaps/mining,/turf/simulated/floor,/area/maintenance/disposal) -"cAi" = (/obj/structure/curtain/open/shower,/obj/effect/decal/cleanable/blood/gibs/body,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/locker) "cAq" = (/obj/structure/disposalpipe/segment,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/medbay) "cAs" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light/small{dir = 8},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/locker) "cAt" = (/obj/structure/table/rack,/obj/item/clothing/suit/storage/hazardvest,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/locker) @@ -5183,10 +5179,7 @@ "cAz" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{name = "Disposal Access"; req_access = list(12)},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/maintenance/disposal) "cAB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor,/area/maintenance/cargo) "cAC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/atmospherics/binary/pump/on{target_pressure = 200},/turf/simulated/floor,/area/maintenance/cargo) -"cAE" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/locker) -"cAF" = (/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/locker) -"cAG" = (/obj/machinery/door/firedoor/border_only,/obj/item/tape/police,/obj/machinery/door/airlock/scp{req_access = list(43)},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/locker) -"cAH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/light{dir = 1},/obj/item/weapon/camera_assembly,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"cAH" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle{pixel_x = 5; pixel_y = 6},/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle{pixel_x = -4; pixel_y = 6},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/machinery/camera/network/civilian{c_tag = "CIV - Gym Starboard"},/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) "cAJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/maintenance/cargo) "cAK" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/cargo) "cAM" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/cargo) @@ -5194,26 +5187,21 @@ "cAO" = (/turf/simulated/floor/plating,/area/maintenance/cargo) "cAP" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/closet/crate,/obj/machinery/camera/network/cargo{c_tag = "CRG - Cargo Warehouse"; dir = 4; name = "security camera"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/turf/simulated/floor/tiled,/area/quartermaster/warehouse) "cAQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/tiled,/area/quartermaster/warehouse) -"cAR" = (/obj/structure/extinguisher_cabinet{pixel_x = 28},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/locker) "cAV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/warehouse) "cAW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/tiled,/area/quartermaster/warehouse) "cAX" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/warehouse) -"cAY" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/shutters{dir = 4; id = "qm_warehouse"; name = "Warehouse Shutters"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/warehouse) +"cAY" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/shutters{dir = 4; id = "qm_warehouse"; name = "Warehouse Shutters"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/quartermaster/warehouse) "cAZ" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/office) "cBa" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/disposalpipe/sortjunction{dir = 8; name = "Sorting Office"; sortType = "Sorting Office"},/turf/simulated/floor/tiled,/area/quartermaster/office) "cBe" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/office) "cBf" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/tiled,/area/quartermaster/office) "cBg" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/office) -"cBh" = (/obj/effect/floor_decal/spline/plain{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/fpcenter) +"cBh" = (/obj/structure/curtain/black{icon_state = "open"; layer = 2; name = "privacy curtain"; opacity = 0},/turf/simulated/floor/tiled/steel_grid,/area/holodeck_control) "cBi" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/turf/simulated/floor/tiled,/area/quartermaster/office) "cBj" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled,/area/quartermaster/office) "cBk" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/sortjunction{dir = 8; name = "Cargo Bay"; sortType = "Cargo Bay"},/turf/simulated/floor/tiled,/area/quartermaster/office) "cBl" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/computer/guestpass{pixel_y = -30},/turf/simulated/floor/tiled,/area/quartermaster/office) -"cBn" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plating,/area/crew_quarters/locker) -"cBo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/firealarm{pixel_y = 24},/turf/simulated/floor/plating,/area/crew_quarters/locker) -"cBp" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/cap/hidden/supply{dir = 8},/obj/item/stack/tile/floor,/turf/simulated/floor/plating,/area/crew_quarters/locker) -"cBq" = (/obj/machinery/atmospherics/pipe/cap/hidden/scrubbers{dir = 8},/obj/item/stack/cable_coil/lime,/turf/simulated/floor/plating,/area/crew_quarters/locker) -"cBr" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/crew_quarters/locker) +"cBp" = (/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "cBs" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/office) "cBt" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled,/area/quartermaster/office) "cBu" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/sortjunction{dir = 8; name = "QM Office"; sortType = "QM Office"},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled,/area/quartermaster/office) @@ -5221,38 +5209,35 @@ "cBw" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/quartermaster/lockerroom) "cBx" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/lockerroom) "cBy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled,/area/quartermaster/lockerroom) -"cBz" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/structure/barricade,/turf/simulated/floor/plating,/area/crew_quarters/locker) -"cBA" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/taperoll/engineering,/turf/simulated/floor/plating,/area/crew_quarters/locker) -"cBD" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/monotile,/area/crew_quarters/locker) +"cBz" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) +"cBD" = (/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "cBG" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled/steel,/area/quartermaster/lockerroom) "cBH" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{name = "Cargo Maintenance"; req_access = list(50)},/turf/simulated/floor/plating,/area/quartermaster/lockerroom) "cBI" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/bar) "cBJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal,/turf/simulated/floor/plating,/area/maintenance/bar) "cBK" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/bar) "cBL" = (/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/bar) -"cBM" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 9},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/apcenter) -"cBN" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 7"; dir = 1},/obj/structure/table/woodentable,/obj/item/device/starcaster_news,/obj/item/clothing/accessory/scarf/christmas,/obj/effect/floor_decal/spline/plain{dir = 1},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/apcenter) -"cBO" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 5},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/apcenter) -"cBP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 4},/obj/item/stack/tile/floor,/turf/simulated/floor/plating,/area/crew_quarters/locker) -"cBQ" = (/obj/structure/closet/wardrobe/pjs,/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/dark,/area/crew_quarters/locker) -"cBR" = (/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/tiled/dark,/area/crew_quarters/locker) -"cBW" = (/obj/structure/flora/ausbushes/ywflowers,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/sign/christmas/lights,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) +"cBM" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 9},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/apcenter) +"cBN" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 7"; dir = 1},/obj/structure/table/woodentable,/obj/item/device/starcaster_news,/obj/item/clothing/accessory/scarf/christmas,/obj/effect/floor_decal/spline/plain{dir = 1},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/apcenter) +"cBO" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 5},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/apcenter) +"cBQ" = (/obj/structure/table/woodentable,/obj/item/weapon/deck/cards,/turf/simulated/floor/carpet,/area/crew_quarters/seconddeck/gym) +"cBR" = (/obj/structure/table/woodentable,/obj/item/device/communicator,/turf/simulated/floor/carpet,/area/crew_quarters/seconddeck/gym) +"cBW" = (/obj/structure/flora/ausbushes/ywflowers,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) "cBX" = (/obj/structure/sign/directions/engineering{dir = 8; pixel_y = 10},/obj/structure/sign/directions/cargo{dir = 8},/obj/structure/sign/directions/security{dir = 8; pixel_y = -10},/turf/simulated/wall,/area/hallway/primary/seconddeck/apcenter) "cBY" = (/obj/structure/sign/directions/bridge{dir = 1; pixel_y = 10},/obj/structure/sign/directions/science{dir = 4},/obj/structure/sign/directions/medical{dir = 4; pixel_y = -10},/turf/simulated/wall,/area/hallway/primary/seconddeck/apcenter) -"cBZ" = (/obj/structure/flora/ausbushes/brflowers,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/sign/christmas/lights,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) -"cCa" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 9},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/ascenter) -"cCb" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 6"; dir = 1},/obj/structure/table/woodentable,/obj/item/device/communicator,/obj/effect/floor_decal/spline/plain{dir = 1},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/ascenter) -"cCe" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 5},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/ascenter) +"cBZ" = (/obj/structure/flora/ausbushes/brflowers,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) +"cCa" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 9},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/ascenter) +"cCb" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Central Ring 6"; dir = 1},/obj/structure/table/woodentable,/obj/item/device/communicator,/obj/effect/floor_decal/spline/plain{dir = 1},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/ascenter) +"cCe" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 5},/turf/simulated/floor/tiled/hydro,/area/hallway/primary/seconddeck/ascenter) "cCf" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/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/plating,/area/maintenance/medbay) "cCh" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled/white,/area/medical/medbay) -"cCk" = (/turf/simulated/floor/tiled/dark,/area/crew_quarters/locker) "cCl" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/effect/floor_decal/borderfloorwhite/corner{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/medbay) "cCm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/medbay) "cCn" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloorwhite/corner,/obj/effect/floor_decal/corner/paleblue/bordercorner,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/medbay2) "cCo" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled/white,/area/medical/medbay2) "cCp" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled/white,/area/medical/medbay2) "cCs" = (/turf/simulated/wall,/area/hallway/primary/seconddeck/dockhallway) -"cCv" = (/obj/structure/girder,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"cCv" = (/obj/structure/window/reinforced/tinted/frosted{dir = 1},/obj/structure/closet/cabinet,/obj/item/clothing/under/bathrobe,/obj/item/clothing/under/bathrobe,/obj/item/clothing/under/bathrobe,/obj/item/weapon/towel/random,/obj/item/weapon/towel/random,/obj/item/weapon/towel/random,/obj/item/clothing/shoes/sandal,/obj/item/clothing/shoes/sandal,/obj/item/clothing/shoes/sandal,/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "cCw" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloorwhite/corner{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/medbay2) "cCy" = (/obj/structure/sign/warning/docking_area,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D3) "cCC" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/disposalpipe/junction/yjunction{dir = 8},/obj/effect/floor_decal/borderfloorwhite/corner,/obj/effect/floor_decal/corner/paleblue/bordercorner,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/medbay2) @@ -5263,11 +5248,11 @@ "cCJ" = (/obj/structure/disposaloutlet{dir = 8},/obj/structure/disposalpipe/trunk{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1; health = 1e+006},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/airless,/area/maintenance/disposal) "cCK" = (/obj/machinery/camera/network/civilian{c_tag = "CIV - Waste Disposal"; dir = 4},/obj/structure/catwalk,/turf/simulated/floor,/area/maintenance/disposal) "cCL" = (/obj/structure/catwalk,/turf/simulated/floor,/area/maintenance/disposal) -"cCM" = (/obj/structure/bed/chair,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"cCO" = (/obj/structure/bed/chair,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/light{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"cCP" = (/obj/structure/table/glass,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"cCQ" = (/obj/structure/table/glass,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"cCR" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/structure/bed/chair,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"cCM" = (/obj/structure/bed/chair,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"cCO" = (/obj/structure/bed/chair,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"cCP" = (/obj/structure/table/glass,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"cCQ" = (/obj/structure/table/glass,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"cCR" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/structure/bed/chair,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "cCS" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/light_switch{name = "light switch "; pixel_x = 36},/obj/structure/cable,/obj/structure/catwalk,/turf/simulated/floor,/area/maintenance/disposal) "cCT" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/portable_atmospherics/canister/air/airlock,/turf/simulated/floor,/area/maintenance/cargo) "cCU" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/floor,/area/maintenance/cargo) @@ -5282,7 +5267,7 @@ "cDd" = (/turf/simulated/floor/tiled,/area/quartermaster/warehouse) "cDe" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/quartermaster/warehouse) "cDf" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/quartermaster/warehouse) -"cDg" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/shutters{dir = 4; id = "qm_warehouse"; name = "Warehouse Shutters"},/turf/simulated/floor/tiled,/area/quartermaster/warehouse) +"cDg" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/shutters{dir = 4; id = "qm_warehouse"; name = "Warehouse Shutters"},/turf/simulated/floor/tiled/steel_grid,/area/quartermaster/warehouse) "cDh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/quartermaster/office) "cDj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "cDk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/landmark{name = "Observer-Start"},/obj/effect/landmark/start,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) @@ -5299,14 +5284,14 @@ "cDw" = (/obj/machinery/atmospherics/valve/shutoff{name = "Deck 2 Port automatic shutoff valve"},/turf/simulated/floor/plating,/area/maintenance/bar) "cDx" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/plating,/area/maintenance/bar) "cDy" = (/turf/simulated/wall,/area/storage/emergency_storage/seconddeck/ap_emergency) -"cDz" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"cDz" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "cDA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/apcenter) -"cDB" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"cDC" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"cDD" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"cDE" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"cDF" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/machinery/atm{pixel_y = -30},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"cDH" = (/obj/structure/disposalpipe/segment,/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"cDB" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"cDC" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"cDD" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"cDE" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"cDF" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/machinery/atm{pixel_y = -30},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"cDH" = (/obj/structure/disposalpipe/segment,/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "cDI" = (/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/medical/sleeper) "cDM" = (/turf/simulated/wall,/area/medical/cryo) "cDN" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced/polarized{id = "cryo_tint"},/turf/simulated/floor/plating,/area/medical/cryo) @@ -5409,57 +5394,54 @@ "cGM" = (/turf/simulated/floor/tiled/dark,/area/chapel/main) "cGO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/bar) "cGP" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock{name = "Emergency Storage"},/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/ap_emergency) -"cGQ" = (/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"cGQ" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "cGR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/ap_emergency) -"cGS" = (/obj/structure/bed/chair,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"cGS" = (/obj/structure/bed/chair,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "cGT" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/ap_emergency) -"cGU" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"cGU" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "cGW" = (/turf/space,/area/shuttle/arrival/station) "cGY" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{d1 = 16; d2 = 0; icon_state = "16-0"},/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/ap_emergency) "cHs" = (/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; locked = 1; name = "Dock One Internal Airlock"; req_access = list(13)},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/effect/map_helper/airlock/door/int_door,/obj/effect/map_helper/airlock/button/int_button,/obj/machinery/access_button{dir = 1; master_tag = null; name = "interior access button"; pixel_x = -27; pixel_y = 7},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D1) "cHR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "cIn" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/structure/flora/pottedplant/stoutbush,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/apcenter) "cJn" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) -"cJL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) -"cKu" = (/obj/machinery/door/airlock/glass{name = "Library"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/wood,/area/library) -"cMi" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/machinery/station_map{dir = 8; pixel_x = 32},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"cJL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"cKu" = (/obj/machinery/door/airlock/multi_tile/glass{name = "Library"},/obj/machinery/door/firedoor/multi_tile/glass{dir = 8},/turf/simulated/floor/tiled/steel_grid,/area/library) +"cMi" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/machinery/station_map{dir = 8; pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "cNa" = (/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/navbeacon/delivery/north{location = "QM #2"},/mob/living/bot/mulebot,/turf/simulated/floor/tiled,/area/quartermaster/office) -"cNk" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"cNk" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "cNB" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/plating,/area/maintenance/bar) -"cQJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"cQJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "cRi" = (/obj/structure/table/marble,/obj/item/weapon/reagent_containers/glass/rag,/obj/item/weapon/reagent_containers/food/drinks/flask/barflask,/obj/item/weapon/reagent_containers/food/drinks/flask/vacuumflask,/obj/item/weapon/flame/lighter/zippo,/obj/item/clothing/head/that{pixel_x = 4; pixel_y = 6},/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/lino,/area/crew_quarters/bar) "cSi" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/ai_status_display{pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) -"cSF" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/green/border,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = -24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"cSF" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/green/border,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = -24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "cSR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/apcenter) "cTj" = (/obj/effect/floor_decal/industrial/warning/cee{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; id_tag = null},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) -"cTS" = (/obj/structure/disposalpipe/segment,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "cWk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/plating,/area/maintenance/cargo) "cWI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/engineering{name = "Medbay Substation"; req_one_access = list(11,24,5)},/turf/simulated/floor/plating,/area/maintenance/substation/medical) "cXB" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/medical/surgeryobs) "cXZ" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/wall/r_wall,/area/hallway/secondary/entry/D3) -"cYf" = (/obj/structure/curtain/open/shower,/obj/item/clothing/head/syndicatefake,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/locker) -"cYl" = (/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/holodeck_control) -"dar" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/green/border,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"cYl" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/turf/simulated/floor/tiled,/area/holodeck_control) +"dar" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/green/border,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "dcS" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/carpet,/area/hallway/secondary/entry/docking_lounge) "ddH" = (/obj/structure/noticeboard/airlock,/turf/simulated/wall,/area/crew_quarters/barrestroom) "ddO" = (/obj/machinery/atmospherics/valve,/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/maintenance/bar) -"den" = (/obj/structure/flora/pottedplant/bamboo{pixel_y = 10},/obj/structure/table/bench/glass,/obj/structure/sign/christmas/lights,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"den" = (/obj/structure/flora/pottedplant/bamboo{pixel_y = 10},/obj/structure/table/bench/glass,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "dgY" = (/obj/structure/table/marble,/turf/simulated/floor/plating,/area/maintenance/medbay) -"dhQ" = (/obj/random/obstruction,/obj/item/tape/engineering,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"dip" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "djg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "dkb" = (/obj/structure/table/marble,/obj/item/toy/plushie/face_hugger,/turf/simulated/floor/plating,/area/maintenance/medbay) -"dlx" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"dlx" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "dlP" = (/obj/structure/table/woodentable,/turf/simulated/floor/carpet,/area/chapel/main) -"dlR" = (/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) -"dmm" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"dmq" = (/obj/machinery/newscaster{pixel_y = -30},/turf/simulated/floor/plating,/area/crew_quarters/locker) +"dlR" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"dmm" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "doj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Dock"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/D2) "dpO" = (/obj/machinery/vending/dinnerware{dir = 8; pixel_x = 4},/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) "dpQ" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "dsj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "crglockdown"; name = "Cargo Lockdown"; opacity = 0},/turf/simulated/floor/plating,/area/maintenance/cargo) "dso" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D1) "dtI" = (/obj/machinery/smartfridge,/turf/simulated/wall/r_wall,/area/hydroponics) -"dtN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"dtN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "dtR" = (/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/locker) "duc" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/patient_wing) "dux" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/canister/air/airlock,/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/plating,/area/maintenance/locker) @@ -5469,39 +5451,39 @@ "dvf" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/dockhallway) "dvz" = (/obj/machinery/portable_atmospherics/hydroponics,/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/lime/border{dir = 1},/turf/simulated/floor/tiled/hydro,/area/hydroponics) "dvB" = (/obj/item/device/radio/intercom/locked/confessional{pixel_y = -21},/obj/structure/bed/chair{dir = 4},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/tiled/dark,/area/chapel/main) +"dwP" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/turf/simulated/floor/wood,/area/library) "dwV" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "dxa" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/plating,/area/maintenance/bar) -"dyy" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Aft Hallway 3"; dir = 4},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"dyw" = (/turf/simulated/floor/tiled/steel_grid,/area/library) +"dyy" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Aft Hallway 3"; dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "dyN" = (/obj/effect/shuttle_landmark{base_area = /area/space; base_turf = /turf/space; landmark_tag = "d2_near_se"; name = "Near SC - Deck 2 South East"},/turf/space,/area/space) "dzb" = (/obj/structure/table/marble,/obj/structure/disposalpipe/segment,/obj/machinery/door/blast/shutters{dir = 2; id = "bar"; layer = 3.1; name = "Bar Shutters"},/turf/simulated/floor/lino,/area/crew_quarters/bar) "dzi" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/random/trash_pile,/turf/simulated/floor/plating,/area/maintenance/cargo) "dzN" = (/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "dBh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/maintenance/locker) -"dCb" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"dCb" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "dCH" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/cargo) "dDw" = (/obj/effect/floor_decal/borderfloorwhite/corner{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 8},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/patient_wing) "dEc" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/obj/structure/curtain/open/privacy,/obj/effect/floor_decal/borderfloorwhite{dir = 9},/obj/effect/floor_decal/corner/paleblue/border{dir = 9},/obj/machinery/ai_status_display{pixel_y = 32},/turf/simulated/floor/tiled/white,/area/medical/ward) "dEo" = (/obj/machinery/status_display,/turf/simulated/wall,/area/hydroponics) "dFH" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/locker) -"dGb" = (/obj/item/weapon/stool/padded,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/clownstears{pixel_y = 6},/turf/simulated/floor/plating,/area/crew_quarters/locker) "dGs" = (/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"dGC" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) +"dGC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/machinery/door/firedoor/multi_tile/glass,/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/D3) "dGE" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/glass{name = "Library"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/steel_grid,/area/library) -"dHR" = (/obj/structure/flora/pottedplant,/obj/machinery/computer/guestpass{pixel_y = -30},/obj/machinery/light,/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"dHR" = (/obj/structure/flora/pottedplant,/obj/machinery/light,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "dIq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/bar) -"dIx" = (/obj/structure/flora/ausbushes/ppflowers,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) +"dIx" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) "dJN" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/command{name = "Head of Personnel"; req_access = list(57)},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/heads/sc/hop) "dLg" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D3) -"dMl" = (/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"dMl" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) "dMp" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/item/device/radio/intercom/department/medbay{dir = 8; pixel_x = -21},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/machinery/iv_drip,/turf/simulated/floor/tiled/white,/area/medical/ward) -"dNL" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"dOk" = (/obj/effect/floor_decal/corner/yellow/diagonal,/obj/machinery/light{dir = 8},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -32},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"dOk" = (/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -32},/obj/effect/floor_decal/corner/yellow/diagonal,/obj/machinery/camera/network/civilian{c_tag = "CIV - Coffee Shop"; dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "dOB" = (/turf/simulated/wall/r_wall,/area/medical/chemistry) "dOF" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/medbay2) "dQc" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -36},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/turf/simulated/floor/tiled,/area/security/checkpoint2) "dQt" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/medbay) "dSt" = (/obj/machinery/door/airlock/glass{name = "Cryogenic Storage"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/techfloor,/area/hallway/secondary/docking_hallway2) -"dTp" = (/obj/item/weapon/stool/padded,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"dTp" = (/obj/structure/bed/chair/oldsofa/left{dir = 4},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/coffee_shop) "dUe" = (/obj/structure/table/standard,/obj/item/weapon/material/knife/machete/hatchet,/obj/item/weapon/material/knife/machete/hatchet,/obj/item/weapon/material/knife/machete/hatchet,/obj/item/weapon/material/minihoe,/obj/item/weapon/material/minihoe,/obj/item/weapon/material/minihoe,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor/tiled/hydro,/area/hydroponics) "dUz" = (/obj/effect/shuttle_landmark{base_area = /area/space; base_turf = /turf/space; docking_controller = "d2_w1_a_airlock"; landmark_tag = "d2_w1_a"; name = "Deck 2, Dock 1-A"},/turf/space,/area/space) "dVl" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) @@ -5523,7 +5505,7 @@ "egG" = (/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/medbay) "egH" = (/obj/random/obstruction,/turf/simulated/floor,/area/maintenance/cargo) "ehE" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "crg_aft_airlock"; name = "exterior access button"; pixel_y = 25; req_one_access = null},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/shield_diffuser,/turf/simulated/floor/airless,/area/maintenance/cargo) -"eiA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/item/weapon/circuitboard/airalarm,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"eiA" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) "eiB" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D1) "eiI" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/structure/closet/emcloset,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/apcenter) "ejD" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = -28},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) @@ -5532,7 +5514,7 @@ "ekF" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/paleblue/border{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/patient_wing) "emk" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) "emn" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{name = "Hydroponics Maintenance"; req_access = list(35)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/hydroponics) -"emv" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/light{dir = 1},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"emv" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/light{dir = 1},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "emX" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/white,/area/medical/cryo) "end" = (/obj/structure/table/marble,/obj/item/weapon/material/ashtray/glass,/obj/machinery/door/blast/shutters{dir = 2; id = "bar"; layer = 3.1; name = "Bar Shutters"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/lino,/area/crew_quarters/bar) "enG" = (/obj/structure/plasticflaps{opacity = 1},/obj/machinery/door/firedoor/border_only,/obj/effect/floor_decal/industrial/loading,/obj/machinery/navbeacon/delivery/south{location = "Bar"},/turf/simulated/floor/tiled,/area/crew_quarters/bar) @@ -5543,27 +5525,27 @@ "eup" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "euB" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/hydro,/area/hydroponics) "euY" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/turf/simulated/floor/tiled/monotile,/area/hallway/secondary/entry/D2) -"evb" = (/obj/machinery/camera/network/civilian{c_tag = "CIV - Cafeteria Starboard"; dir = 8},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"evb" = (/obj/machinery/camera/network/civilian{c_tag = "CIV - Cafeteria Starboard"; dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "ewQ" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/medbay) -"ewV" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/alarm{pixel_y = 22},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"ewV" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/alarm{pixel_y = 22},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "exb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) -"exc" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"exm" = (/obj/structure/table/standard,/obj/effect/floor_decal/corner/yellow/diagonal,/obj/item/device/starcaster_news,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"exS" = (/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/item/clothing/suit/storage/hazardvest,/obj/random/crate,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"exc" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"exS" = (/obj/effect/floor_decal/spline/plain{dir = 1},/obj/structure/extinguisher_cabinet{pixel_x = 28},/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) "eBm" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/sleeper) "eCo" = (/obj/effect/floor_decal/borderfloorblack{dir = 6},/obj/effect/floor_decal/industrial/danger{dir = 6},/turf/simulated/floor/tiled/techfloor/grid,/area/quartermaster/office) -"eDi" = (/obj/structure/flora/ausbushes/brflowers,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) +"eDi" = (/obj/machinery/camera/network/civilian{c_tag = "CIV - Holodeck Starboard"; dir = 8},/turf/simulated/floor/reinforced{name = "Holodeck Projector Floor"},/area/holodeck/alphadeck) "eDx" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock 1 Fore"; dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "eEy" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/ward) "eEW" = (/obj/machinery/camera/network/medbay{c_tag = "MED - Operating Theatre 2"; dir = 1},/obj/machinery/vending/wallmed1{pixel_y = -30},/obj/structure/table/standard,/obj/item/weapon/surgical/bonesetter,/obj/item/weapon/surgical/bonegel,/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/pink/border,/obj/item/weapon/surgical/bioregen,/turf/simulated/floor/tiled/white,/area/medical/surgery2) "eEX" = (/obj/machinery/door/airlock/external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Two External Airlock"; req_access = list(13)},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/shield_diffuser,/obj/structure/fans/tiny,/obj/effect/map_helper/airlock/door/ext_door,/obj/effect/map_helper/airlock/button/ext_button,/obj/machinery/access_button{dir = 4; name = "exterior access button"; pixel_x = 7; pixel_y = 27; req_one_access = null},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2/arrivals) "eFx" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/bar) "eFQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"eFW" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"eFW" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "eGp" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor,/area/maintenance/cargo) "eGr" = (/obj/machinery/camera/network/medbay{c_tag = "MED - Patient Ward Starboard"; dir = 1},/obj/effect/floor_decal/borderfloorwhite/corner,/obj/effect/floor_decal/corner/paleblue/bordercorner,/turf/simulated/floor/tiled/white,/area/medical/ward) "eGF" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/hydro,/area/hydroponics) -"eHo" = (/obj/machinery/light{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/window/reinforced{dir = 4},/obj/structure/closet/emcloset,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/obj/machinery/ai_status_display{pixel_y = 32},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"eHl" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) +"eHo" = (/obj/machinery/light{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/window/reinforced{dir = 4},/obj/structure/closet/emcloset,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/obj/machinery/ai_status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "eHw" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/white,/area/medical/medbay2) "eHG" = (/obj/structure/table/standard,/obj/structure/flora/pottedplant/small{pixel_y = 10},/obj/machinery/status_display{pixel_y = -32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "eHU" = (/obj/structure/filingcabinet/chestdrawer{desc = "A large drawer filled with autopsy reports."; name = "Autopsy Reports"},/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/turf/simulated/floor/tiled,/area/medical/morgue) @@ -5571,20 +5553,21 @@ "eHX" = (/obj/structure/filingcabinet,/obj/machinery/ai_status_display{pixel_x = 32},/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) "eIu" = (/obj/structure/closet/emcloset,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/dockhallway) "eIM" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced/polarized{id = "st1_tint"},/turf/simulated/floor/plating,/area/medical/surgery) -"eIX" = (/obj/structure/table/marble,/obj/machinery/cash_register/civilian{dir = 8},/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/structure/disposalpipe/segment,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/white,/area/crew_quarters/cafeteria) +"eIX" = (/obj/structure/table/marble,/obj/machinery/cash_register/civilian{dir = 8},/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/crew_quarters/cafeteria) "eIY" = (/obj/item/glass_jar,/obj/random/mob/mouse,/turf/simulated/floor/plating,/area/maintenance/cargo) "eIZ" = (/obj/machinery/portable_atmospherics/powered/pump/filled,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/structure/cable,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/bar) -"eJf" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/dockhallway) -"eKp" = (/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"eJf" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) +"eKp" = (/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "eKs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/random/trash,/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/plating,/area/maintenance/cargo) "eLa" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/medical/morgue) "eLe" = (/obj/structure/table/rack{dir = 1},/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/turf/simulated/floor/plating,/area/maintenance/cargo) -"eLk" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"eLk" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "eLI" = (/obj/structure/table/rack{dir = 1},/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/medbay) "eMv" = (/obj/structure/bed/chair/comfy/purp,/turf/simulated/floor/plating,/area/maintenance/cargo) "eNb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/valve/shutoff{dir = 4; name = "Deck 2 Aft automatic shutoff valve"},/turf/simulated/floor/plating,/area/maintenance/medbay) -"eNJ" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 5},/obj/structure/extinguisher_cabinet{pixel_x = 28},/obj/machinery/light{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"eOJ" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"eNj" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/wood,/area/crew_quarters/bar) +"eNJ" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 5},/obj/structure/extinguisher_cabinet{pixel_x = 28},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"eOJ" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "ePp" = (/obj/structure/table/marble,/obj/machinery/door/firedoor/glass,/obj/machinery/door/window/southright{name = "Hydroponics"},/obj/machinery/door/window/northleft{name = "Hydroponics"; req_one_access = list(35,28)},/turf/simulated/floor/tiled/dark,/area/hydroponics) "eQy" = (/obj/machinery/computer/cryopod{pixel_x = -32},/obj/effect/landmark{name = "JoinLateCryo"},/turf/simulated/shuttle/floor,/area/shuttle/cryo/station) "eQK" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D2) @@ -5594,7 +5577,7 @@ "eSF" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) "eTf" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "eUR" = (/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D1) -"eWt" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"eWt" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "eXP" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/carpet,/area/chapel/main) "eYn" = (/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "d2_w3_b_airlock"; pixel_y = 27; req_one_access = list(13)},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; id_tag = null},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "eYu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/maintenance/cargo) @@ -5602,22 +5585,23 @@ "fbP" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/lino,/area/crew_quarters/bar) "fbZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/white,/area/medical/ward) "fce" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"fcq" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/computer/timeclock/premade/south,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"fcX" = (/obj/item/frame/light,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/locker) +"fcq" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/computer/timeclock/premade/south,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"fcX" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "fdh" = (/obj/structure/closet/secure_closet/medical_wall{name = "O- Blood Locker"; pixel_y = -32},/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/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/pink/border{dir = 4},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/sink{dir = 4; pixel_x = 11},/turf/simulated/floor/tiled/white,/area/medical/sleeper) -"fee" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"fee" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) "feh" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/turf/simulated/floor/tiled,/area/quartermaster/office) "ffZ" = (/obj/effect/landmark{name = "JoinLateCryo"},/turf/simulated/shuttle/floor,/area/shuttle/cryo/station) "fgb" = (/obj/structure/closet,/obj/item/weapon/lipstick/purple,/obj/random/maintenance/engineering,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/locker) "fge" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/storage/primary) -"fgN" = (/obj/structure/bed/chair,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Civilian Hallway 2"; dir = 8},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/docking_hallway2) +"fgN" = (/obj/structure/bed/chair,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Civilian Hallway 2"; dir = 8},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/docking_hallway2) "fhC" = (/obj/structure/closet/coffin,/turf/simulated/floor/tiled/dark,/area/chapel/main) "fia" = (/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D1) +"fiw" = (/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/dockhallway) "fix" = (/obj/structure/closet/secure_closet/freezer/meat,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/kitchen) "fiG" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/storage/primary) "fjp" = (/obj/structure/table/rack{dir = 1},/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/cargo) "fjy" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled,/area/storage/primary) -"fjz" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"fjz" = (/obj/machinery/camera/network/civilian{c_tag = "CIV - Holodeck Port"; dir = 4},/turf/simulated/floor/reinforced{name = "Holodeck Projector Floor"},/area/holodeck/alphadeck) "fjA" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/shield_diffuser,/obj/machinery/door/airlock/external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Two External Airlock"; req_access = list(13)},/obj/structure/fans/tiny,/obj/effect/map_helper/airlock/door/ext_door,/obj/effect/map_helper/airlock/button/ext_button,/obj/machinery/access_button{dir = 4; name = "exterior access button"; pixel_x = 7; pixel_y = -27; req_one_access = null},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2/arrivals) "fld" = (/obj/item/weapon/stool/padded,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/effect/landmark/start{name = "Chef"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "flB" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/maintenance/bar) @@ -5628,45 +5612,44 @@ "fnQ" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/white,/area/medical/sleeper) "foc" = (/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/yellow/border,/turf/simulated/floor/tiled,/area/storage/primary) "foi" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/borderfloorwhite/corner,/obj/effect/floor_decal/corner/paleblue/bordercorner,/turf/simulated/floor/tiled/white,/area/medical/patient_wing) -"foF" = (/obj/structure/closet/emcloset,/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"foF" = (/obj/structure/closet/emcloset,/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "fpA" = (/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; locked = 1; name = "Dock One Internal Airlock"; req_access = list(13)},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/access_button{dir = 8; master_tag = null; name = "interior access button"; pixel_x = -7; pixel_y = 27},/obj/effect/map_helper/airlock/door/int_door,/obj/effect/map_helper/airlock/button/int_button,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D1) "fql" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/status_display{layer = 4; pixel_x = -32},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) -"fra" = (/obj/structure/table/standard,/obj/effect/floor_decal/corner/yellow/diagonal,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"fra" = (/obj/item/weapon/stool/padded,/turf/simulated/floor/carpet,/area/crew_quarters/coffee_shop) "frT" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) -"ftv" = (/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"ftv" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "fva" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/kitchen) "fvH" = (/obj/effect/wingrille_spawn/reinforced,/obj/structure/sign/warning/evac,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D2) "fvS" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/surgery) "fwZ" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/gloves{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/masks,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/button/remote/airlock{desc = "A remote control-switch for Surgery."; id = "Surgery"; name = "Surgery"; pixel_y = 36},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/ward) "fya" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D1) "fyD" = (/obj/structure/door_assembly,/turf/simulated/floor/plating,/area/maintenance/medbay) -"fyL" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock Hallway 4"; dir = 1},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"fzR" = (/obj/structure/closet/wardrobe/black,/obj/structure/window/reinforced{dir = 4; health = 1e+006},/turf/simulated/floor/tiled/dark,/area/crew_quarters/locker) +"fyL" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock Hallway 4"; dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"fzR" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/floor/carpet,/area/crew_quarters/seconddeck/gym) "fAD" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/medical/sleeper) "fAH" = (/obj/structure/table/rack,/obj/machinery/camera/network/civilian{c_tag = "CIV - Library Office"},/obj/item/weapon/storage/briefcase{pixel_x = -2; pixel_y = -5},/obj/item/weapon/storage/briefcase{pixel_x = 3},/obj/item/clothing/under/suit_jacket/red,/obj/machinery/newscaster{pixel_x = 30},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/machinery/button/windowtint{id = "library_window_tint"; pixel_x = -14; pixel_y = 24},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/carpet,/area/library) "fAL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/ai_status_display{pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) -"fBz" = (/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"fBz" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) "fBJ" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/plating,/area/maintenance/cargo) +"fCA" = (/obj/effect/floor_decal/spline/fancy/wood,/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 4},/obj/machinery/firealarm{pixel_y = 24},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) "fDf" = (/obj/machinery/smartfridge/drying_rack,/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/lime/border{dir = 10},/turf/simulated/floor/tiled/hydro,/area/hydroponics) -"fDD" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) -"fEE" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/sign/christmas/wreath{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"fDD" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fpcenter) "fER" = (/turf/simulated/wall,/area/crew_quarters/coffee_shop) "fFD" = (/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/pink/border{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled/white,/area/medical/sleeper) "fFG" = (/obj/structure/closet/crate/hydroponics,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/turf/simulated/floor/plating,/area/maintenance/bar) "fGG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "fGW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/bar) "fHh" = (/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor/plating,/area/maintenance/cargo) -"fHC" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/plating,/area/crew_quarters/locker) -"fHP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/crew_quarters/locker) "fHQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/cargo) -"fIx" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"fIL" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"fIX" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"fIi" = (/obj/machinery/atmospherics/pipe/simple/hidden/black,/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) +"fIx" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"fIL" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"fIX" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "fJb" = (/obj/structure/filingcabinet/chestdrawer,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/security/checkpoint2) "fJl" = (/obj/structure/closet,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/bar) "fJX" = (/obj/machinery/door/window/southright{name = "Bar"; req_access = list(25)},/turf/simulated/floor/lino,/area/crew_quarters/bar) "fKl" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/sign/dock/two,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) -"fKL" = (/obj/effect/floor_decal/corner/yellow/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"fKL" = (/obj/structure/bed/chair/oldsofa/left{dir = 1},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/coffee_shop) "fLJ" = (/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/pink/border{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/surgery2) "fMG" = (/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; id_tag = null},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "fMS" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/tiled/hydro,/area/hydroponics) @@ -5677,47 +5660,45 @@ "fRj" = (/obj/machinery/door/firedoor/border_only,/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/structure/curtain/open/privacy,/turf/simulated/floor/tiled/steel_grid,/area/medical/cryo) "fRK" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/effect/floor_decal/industrial/warning/cee,/turf/simulated/floor/tiled/white,/area/rnd/mixing) "fRL" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/library) -"fRZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/effect/floor_decal/corner/yellow/diagonal,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"fRZ" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "fSY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) "fTt" = (/obj/structure/bed/chair/wood{dir = 1},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"fUE" = (/obj/effect/floor_decal/spline/fancy/wood,/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 4},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) "fVu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "fVv" = (/obj/structure/bed/chair/wood,/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "fVA" = (/obj/machinery/biogenerator,/turf/simulated/floor/tiled/hydro,/area/hydroponics) "fVP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/medbay) "fWd" = (/turf/simulated/wall,/area/hallway/secondary/entry/docking_lounge) "fWj" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/cafeteria) -"fWQ" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "fYH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2) "fYN" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) -"fZs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "gaA" = (/obj/machinery/alarm{dir = 1; pixel_y = -25},/obj/effect/floor_decal/borderfloorwhite/corner{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/ward) "gbd" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/borderfloorwhite/corner{dir = 1},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/medbay2) "gbs" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"gbB" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/red/bordercorner,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"gbB" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/red/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "gcd" = (/obj/effect/floor_decal/industrial/warning,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "gcB" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "gdd" = (/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{frequency = 1380; id_tag = "arrivals_dock_north_airlock"; master_tag = "arrivals_dock"; pixel_y = 27; req_one_access = list(13); tag_airlock_mech_sensor = null; tag_airpump = null; tag_chamber_sensor = null; tag_exterior_door = null; tag_interior_door = null; tag_shuttle_mech_sensor = null},/obj/effect/floor_decal/industrial/loading{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2/arrivals) "gdS" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"gdV" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"gdW" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/mob/living/simple_mob/animal/synx/scp,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/locker) +"gdV" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "gel" = (/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) -"gex" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"gex" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "geV" = (/turf/simulated/wall/r_wall,/area/maintenance/locker) "gfQ" = (/turf/simulated/wall/r_wall,/area/hallway/primary/seconddeck/apcenter) "ggi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/maintenance/cargo) -"gik" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/locker) "git" = (/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled/white,/area/medical/cryo) -"giQ" = (/obj/item/weapon/stool/padded,/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"gju" = (/obj/structure/window/reinforced,/obj/structure/table/woodentable,/obj/item/weapon/material/ashtray/glass,/obj/structure/disposalpipe/segment,/turf/simulated/floor/carpet,/area/crew_quarters/coffee_shop) +"giQ" = (/obj/item/weapon/stool/padded,/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"gju" = (/obj/item/weapon/material/ashtray/glass,/obj/structure/disposalpipe/segment,/obj/structure/closet/acloset{name = "leisure closet"},/obj/item/weapon/deck/tarot,/obj/item/weapon/deck/tarot,/obj/item/weapon/deck/cards,/obj/item/weapon/deck/cards,/obj/item/weapon/deck/holder,/obj/item/weapon/deck/holder,/obj/item/weapon/storage/pill_bottle/dice,/obj/item/weapon/storage/pill_bottle/dice_nerd,/obj/item/weapon/storage/dicecup/loaded,/obj/item/toy/eight_ball,/obj/item/toy/tennis,/obj/item/toy/tennis,/obj/item/toy/eight_ball/conch,/obj/item/weapon/deck/cah/black,/obj/item/weapon/deck/cah,/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) "gkh" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/wood,/area/library) "gkn" = (/obj/machinery/iv_drip,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -36; pixel_y = -6},/obj/machinery/button/windowtint{id = "pr1_window_tint"; pixel_x = -36; pixel_y = 6},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/pink/border{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/patient_a) "gkO" = (/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/ai_monitored/storage/emergency/eva) -"gmI" = (/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"gom" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8},/turf/simulated/floor/plating,/area/crew_quarters/locker) +"gmA" = (/obj/structure/window/reinforced/tinted/frosted{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 1},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 8},/obj/item/weapon/tape_roll{pixel_x = 4; pixel_y = 4},/obj/item/weapon/pen,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) +"gmI" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"gom" = (/obj/structure/table/bench/wooden,/obj/effect/floor_decal/spline/fancy/wood{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) "got" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/structure/table/marble,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "gpB" = (/turf/simulated/shuttle/wall,/area/shuttle/cryo/station) "gpF" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/woodentable,/obj/item/weapon/dice,/obj/item/weapon/deck/cards,/obj/machinery/status_display{pixel_y = -32},/turf/simulated/floor/tiled,/area/engineering/break_room) -"gpG" = (/obj/structure/bed/chair{dir = 1},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/docking_hallway2) +"gpG" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/docking_hallway2) "gqm" = (/obj/structure/table/steel,/obj/machinery/cell_charger,/obj/item/clothing/head/soft,/obj/item/clothing/head/soft,/obj/machinery/light,/turf/simulated/floor/tiled/dark,/area/quartermaster/office) "gqp" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D1) "gsP" = (/obj/structure/table/woodentable,/obj/item/weapon/pen/red{pixel_x = 2; pixel_y = 6},/obj/item/weapon/pen/blue{pixel_x = 5; pixel_y = 5},/obj/item/weapon/pen,/obj/item/weapon/book/codex/lore/news,/turf/simulated/floor/wood,/area/library) @@ -5729,8 +5710,7 @@ "gwp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "gyw" = (/obj/structure/bed/chair/sofa/blue/left{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/obj/machinery/vending/wallmed1{pixel_y = -30},/turf/simulated/floor/tiled,/area/medical/medbay2) "gyA" = (/obj/machinery/cryopod{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/light{dir = 8},/turf/simulated/shuttle/floor,/area/shuttle/cryo/station) -"gyT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/computer/timeclock/premade/south,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"gzu" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/medbay) +"gyT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/computer/timeclock/premade/south,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "gzN" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/extinguisher_cabinet{pixel_x = 28},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "gAX" = (/obj/structure/bed/chair/comfy/black{dir = 1},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = 32},/obj/machinery/light{dir = 4},/turf/simulated/floor/carpet,/area/hallway/secondary/entry/docking_lounge) "gBn" = (/obj/structure/bed/chair/wood{dir = 1},/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) @@ -5742,33 +5722,37 @@ "gCI" = (/obj/random/obstruction,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/medbay) "gDk" = (/obj/machinery/status_display,/turf/simulated/shuttle/wall/no_join,/area/shuttle/cryo/station) "gDr" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock 3 Aft"; dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) -"gDU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) +"gDU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "gFD" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/cryo) "gFO" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/cryo) "gGj" = (/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Two Internal Airlock"; req_access = list(13)},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/effect/map_helper/airlock/door/int_door,/obj/effect/map_helper/airlock/button/int_button,/obj/machinery/access_button{dir = 4; name = "interior access button"; pixel_x = 7; pixel_y = 27; req_one_access = null},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2) "gGE" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/machinery/airlock_sensor{dir = 4; id_tag = null; pixel_x = -27},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; id_tag = null},/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/effect/map_helper/airlock/sensor/chamber_sensor,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "gIm" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/maintenance/locker) "gIM" = (/turf/simulated/wall,/area/storage/primary) -"gJr" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"gJd" = (/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/vending/cola{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9,/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) +"gJr" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "gJP" = (/turf/simulated/wall,/area/medical/patient_b) "gKC" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/tiled/white,/area/medical/cryo) "gKJ" = (/obj/machinery/door/firedoor,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/medical/patient_b) "gKL" = (/obj/structure/reagent_dispensers/water_cooler/full,/obj/item/device/radio/intercom/department/medbay{dir = 4; pixel_x = 21},/obj/machinery/newscaster{pixel_y = -30},/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/paleblue/border{dir = 6},/turf/simulated/floor/tiled,/area/medical/surgeryobs) "gLd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled/monotile,/area/hallway/secondary/entry/D2) -"gLw" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"gLw" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "gLx" = (/obj/machinery/button/remote/driver{id = "chapelgun"; name = "Chapel Mass Driver"; pixel_x = 32; pixel_y = 4},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled/dark,/area/chapel/main) "gLD" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Hydroponics"; req_access = newlist(); req_one_access = list(35,28)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/hydroponics) -"gLO" = (/obj/structure/bed/chair/wood{dir = 1},/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"gLO" = (/obj/structure/bed/chair/oldsofa{dir = 4},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/coffee_shop) "gMa" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) "gMz" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/turf/simulated/wall/r_wall,/area/maintenance/medbay) "gNt" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/aft) "gNy" = (/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/obj/effect/floor_decal/borderfloorwhite/corner2{dir = 5},/obj/effect/floor_decal/corner/paleblue/bordercorner2{dir = 5},/obj/machinery/washing_machine,/turf/simulated/floor/tiled/white,/area/medical/ward) "gNI" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/surgery) +"gOj" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "gOu" = (/obj/structure/bed/chair/wood,/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "gPh" = (/obj/structure/table/woodentable,/obj/item/device/taperecorder,/obj/item/device/tape/random,/obj/item/device/tape/random,/obj/item/device/camera,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/item/weapon/barcodescanner,/turf/simulated/floor/carpet,/area/library) +"gPC" = (/obj/effect/floor_decal/spline/plain{dir = 8},/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) "gPG" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/high_volume,/obj/machinery/airlock_sensor{dir = 1; id_tag = null; pixel_y = -27},/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/effect/map_helper/airlock/sensor/chamber_sensor,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "gQh" = (/obj/machinery/door/firedoor,/obj/effect/wingrille_spawn/reinforced/polarized{id = "pr1_window_tint"},/turf/simulated/floor/plating,/area/medical/patient_a) "gQR" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"gSR" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "gTh" = (/obj/item/weapon/material/shard{icon_state = "medium"},/obj/item/stack/rods,/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/maintenance/cargo) "gTM" = (/obj/structure/sink{dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/sign/securearea{desc = "Under the painting a plaque reads: 'While the meat grinder may not have spared you, fear not. Not one part of you has gone to waste... You were delicious.'"; icon_state = "monkey_painting"; name = "Mr. Deempisi portrait"; pixel_x = -28; pixel_y = 4},/turf/simulated/floor/wood,/area/crew_quarters/bar) "gUj" = (/obj/effect/landmark/start{name = "Bartender"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/lino,/area/crew_quarters/bar) @@ -5776,35 +5760,35 @@ "gUV" = (/obj/structure/closet/secure_closet/security,/obj/machinery/recharger/wallcharger{pixel_x = 4; pixel_y = -30},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/red/border{dir = 10},/turf/simulated/floor/tiled,/area/security/checkpoint2) "gVl" = (/obj/structure/table/wooden_reinforced,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/item/weapon/storage/fancy/markers,/turf/simulated/floor/lino,/area/chapel/office) "gWb" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{name = "Firefighting equipment"; req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/maintenance/locker) -"gXp" = (/obj/machinery/door/firedoor/border_only,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "gYm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/medbay) -"gZm" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/glass{name = "Cafeteria"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/cafeteria) -"had" = (/obj/structure/flora/pottedplant/decorative,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/docking_hallway2) +"gZm" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/cafeteria) +"had" = (/obj/structure/flora/pottedplant/decorative,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/docking_hallway2) "hay" = (/obj/effect/shuttle_landmark/southern_cross/escape/station,/turf/space,/area/shuttle/escape/station) "hbf" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/turf/simulated/floor/tiled/monotile,/area/hallway/secondary/entry/D2) "hcA" = (/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{dir = 1; frequency = 1380; id_tag = "arrivals_dock_south_airlock"; master_tag = "arrivals_dock"; pixel_y = -27; req_one_access = list(13); tag_airlock_mech_sensor = null; tag_airpump = null; tag_chamber_sensor = null; tag_exterior_door = null; tag_interior_door = null; tag_shuttle_mech_sensor = null},/obj/effect/floor_decal/industrial/loading{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2/arrivals) "hcC" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/wall,/area/maintenance/locker) -"hdd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock Hallway 3"},/obj/structure/sign/christmas/wreath,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"hdd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock Hallway 3"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "hdV" = (/obj/machinery/vending/dinnerware{dir = 4; pixel_x = -4},/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "hem" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "hen" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled/white,/area/medical/ward) "heo" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/ward) "hex" = (/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/item/weapon/reagent_containers/food/snacks/mint,/obj/item/weapon/packageWrap,/obj/item/weapon/reagent_containers/dropper,/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) -"heB" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Library"},/obj/structure/curtain/black{icon_state = "open"; layer = 2; name = "privacy curtain"; opacity = 0},/turf/simulated/floor/tiled/steel_grid,/area/library) -"heN" = (/obj/structure/loot_pile/maint/junk,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"heB" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/curtain/black{icon_state = "open"; layer = 2; name = "privacy curtain"; opacity = 0},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/obj/machinery/door/airlock/multi_tile/glass{dir = 1; name = "Library"},/turf/simulated/floor/tiled/steel_grid,/area/library) +"heN" = (/obj/structure/loot_pile/maint/junk,/turf/simulated/floor/plating,/area/crew_quarters/seconddeck/gym) "hgn" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/beanbags,/obj/item/weapon/gun/projectile/shotgun/doublebarrel,/obj/item/weapon/tool/screwdriver,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/item/device/radio/intercom{desc = "Talk... listen through this."; name = "Station Intercom (Brig Radio)"; pixel_y = -21; wires = 7},/turf/simulated/floor/wood,/area/crew_quarters/bar) -"hgv" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Chapel"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/steel_grid,/area/chapel/main) +"hgv" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/multi_tile/glass,/obj/machinery/door/airlock/multi_tile/glass{name = "Chapel"},/turf/simulated/floor/tiled/techmaint,/area/chapel/main) "hgz" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/floor/plating,/area/hallway/secondary/entry/D3) "him" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/item/device/radio/intercom/department/medbay{dir = 4; pixel_x = 21},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/medical/medbay2) "hiK" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/cryo) -"hje" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/item/weapon/stool,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"hje" = (/obj/structure/table/standard,/obj/item/weapon/towel/random,/obj/item/weapon/towel/random{pixel_y = 4},/obj/item/weapon/towel/random{pixel_y = 8},/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) "hjA" = (/obj/effect/wingrille_spawn/reinforced,/obj/structure/sign/warning/airlock,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D1) "hkr" = (/obj/machinery/status_display{pixel_y = -32},/obj/machinery/organ_printer/flesh/full,/obj/effect/floor_decal/borderfloorwhite{dir = 6},/obj/effect/floor_decal/corner/paleblue/border{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/cryo) +"hkW" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/green/border,/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "hlb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "hlo" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/medical{name = "Operating Theatre 1"; req_access = list(45)},/obj/structure/cable/green{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/steel_grid,/area/medical/surgery) "hlX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/plating,/area/maintenance/bar) -"hny" = (/obj/machinery/media/jukebox,/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"hnS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) +"hny" = (/obj/machinery/media/jukebox,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"hnS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/hologram/holopad,/obj/effect/floor_decal/corner/brown/diagonal,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) "hpA" = (/obj/structure/flora/pottedplant/smalltree{pixel_y = 11},/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/paleblue/border{dir = 6},/obj/structure/window/reinforced/tinted/frosted{dir = 4},/obj/structure/table/glass,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled,/area/medical/medbay2) "hqq" = (/obj/structure/lattice,/obj/item/stack/rods,/turf/space,/area/space) "hqB" = (/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; locked = 1; name = "Dock One Internal Airlock"; req_access = list(13)},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/effect/map_helper/airlock/door/int_door,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D1) @@ -5814,23 +5798,23 @@ "hti" = (/obj/effect/floor_decal/spline/plain{dir = 4},/obj/structure/table/marble,/obj/item/device/retail_scanner/civilian{dir = 1},/obj/machinery/door/blast/shutters{dir = 4; id = "coffeeshop"; layer = 3.1; name = "Cafe Shutters"},/turf/simulated/floor/tiled/old_cargo/yellow,/area/library) "htm" = (/obj/structure/sign/directions/cryo,/turf/simulated/wall,/area/crew_quarters/coffee_shop) "hul" = (/obj/effect/floor_decal/industrial/warning/cee{dir = 8},/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/unary/vent_pump/high_volume,/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) -"hvb" = (/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"hvb" = (/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "hvG" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) "hwH" = (/obj/machinery/ai_status_display{pixel_y = -32},/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/pink/border,/obj/structure/table/standard,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/item/weapon/autopsy_scanner,/obj/item/weapon/surgical/FixOVein,/obj/item/weapon/surgical/surgicaldrill,/turf/simulated/floor/tiled/white,/area/medical/surgery) "hxs" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D1) "hxA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/white,/area/medical/patient_b) "hyf" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/hydro,/area/hydroponics) -"hzE" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"hzE" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "hzX" = (/obj/machinery/airlock_sensor{dir = 1; id_tag = null; pixel_y = -27},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; id_tag = null},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/effect/map_helper/airlock/sensor/chamber_sensor,/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2/arrivals) -"hBq" = (/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/machinery/light{dir = 8},/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"hBq" = (/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "hBt" = (/obj/machinery/honey_extractor,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/hydro,/area/hydroponics) "hBT" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/emergency,/obj/item/bodybag/cryobag,/obj/item/bodybag/cryobag,/obj/item/bodybag/cryobag,/obj/structure/extinguisher_cabinet{pixel_x = 25},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/medbay_primary_storage) "hDc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet,/area/hallway/secondary/entry/docking_lounge) -"hDz" = (/obj/effect/floor_decal/corner/yellow/diagonal,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"hDz" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "hEv" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "hEU" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Two Internal Airlock"; req_access = list(13)},/obj/effect/map_helper/airlock/door/int_door,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2/arrivals) "hHG" = (/turf/simulated/shuttle/wall/hard_corner,/area/shuttle/cryo/station) -"hId" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/locker) +"hId" = (/obj/effect/floor_decal/spline/plain{dir = 1},/turf/simulated/floor/boxing{name = "yoga mat"},/area/crew_quarters/seconddeck/gym) "hIh" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled/hydro,/area/hydroponics) "hIE" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/maintenance/robotics) "hJo" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/storage/primary) @@ -5851,10 +5835,10 @@ "hNJ" = (/obj/machinery/shield_diffuser,/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/airlock/external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Three External Airlock"; req_access = list(13)},/obj/effect/map_helper/airlock/door/ext_door,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D3) "hNK" = (/obj/machinery/light/small,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/bar) "hOi" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) -"hOu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"hOu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "hPy" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/plating,/area/maintenance/locker) -"hPK" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/obj/structure/barricade,/obj/item/tape/engineering,/turf/simulated/floor/plating,/area/crew_quarters/locker) -"hPQ" = (/turf/simulated/wall/r_wall,/area/crew_quarters/locker) +"hPK" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/seconddeck/gym) +"hPQ" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/stairwell) "hQg" = (/obj/machinery/access_button{master_tag = null; name = "exterior access button"; pixel_x = 27; pixel_y = -7},/obj/machinery/shield_diffuser,/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/airlock/external{icon_state = "door_locked"; locked = 1; name = "Dock One External Airlock"; req_access = list(13)},/obj/effect/map_helper/airlock/door/ext_door,/obj/effect/map_helper/airlock/button/ext_button,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D1) "hQJ" = (/obj/structure/bed/chair/sofa/blue{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/obj/machinery/alarm{dir = 1; pixel_y = -25},/turf/simulated/floor/tiled,/area/medical/medbay2) "hRv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/maintenance/cargo) @@ -5863,51 +5847,53 @@ "hTx" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; id_tag = null},/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "hUh" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "hUM" = (/obj/structure/bed/chair/sofa/brown/right{dir = 8},/turf/simulated/floor/carpet/oracarpet,/area/library) +"hUO" = (/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "hVh" = (/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/bar) "hVH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/medbay) -"hWE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"hWE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/camera/network/civilian{c_tag = "CIV - Chapel Aft"; dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "hXA" = (/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/dockhallway) -"hYp" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"hYp" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "hYq" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/glass_security{id_tag = "BrigFoyer"; layer = 2.8; name = "Security Wing"; req_access = list(63)},/turf/simulated/floor/tiled/steel_grid,/area/security/security_hallway) -"hYx" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"hYx" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "hYG" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/structure/closet/emcloset,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) -"hYM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/obj/machinery/status_display{pixel_y = 32},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) -"hZZ" = (/obj/structure/disposalpipe/segment,/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/tiled,/area/holodeck_control) +"hYM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"hZZ" = (/obj/structure/disposalpipe/segment,/obj/machinery/vending/giftvendor,/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) "iah" = (/obj/structure/table/standard,/obj/machinery/recharger,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled,/area/storage/primary) "ibt" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "ich" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "idI" = (/obj/machinery/teleport/hub{dir = 8},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/tiled/techfloor,/area/teleporter) "idM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "idP" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock{name = "Library Office"; req_access = list(37)},/turf/simulated/floor/tiled/steel_grid,/area/library) -"iej" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/machinery/computer/timeclock/premade/west,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"iej" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/machinery/computer/timeclock/premade/west,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "iep" = (/obj/structure/closet/coffin,/obj/machinery/door/window/northleft{name = "Coffin Storage"; req_access = list(27)},/turf/simulated/floor/tiled/dark,/area/chapel/main) "ieC" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/structure/bed/chair/office/light,/obj/machinery/vending/wallmed1{pixel_x = -25},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/pink/border{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/patient_b) +"ifd" = (/obj/effect/floor_decal/spline/plain{dir = 10},/turf/simulated/floor/boxing{name = "yoga mat"},/area/crew_quarters/seconddeck/gym) "ifO" = (/obj/machinery/light/small{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1380; id_tag = "dock3_south_pump"},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) -"igN" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/cafeteria) +"igN" = (/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/obj/machinery/door/airlock/multi_tile/glass{dir = 2; name = "Cafeteria"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/cafeteria) "iih" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "iio" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "iiQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/kitchen) -"ikC" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Coffee Shop"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/coffee_shop) +"ijc" = (/obj/machinery/vending/fitness{dir = 8; pixel_x = -5},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/obj/machinery/light{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) +"ikC" = (/obj/structure/curtain/black{icon_state = "open"; layer = 2; name = "privacy curtain"; opacity = 0},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/obj/machinery/door/airlock/multi_tile/glass{dir = 2; name = "Recreational Lounge"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/coffee_shop) "ily" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/shield_diffuser,/turf/simulated/floor/airless,/area/maintenance/cargo) "ini" = (/obj/structure/table/woodentable,/obj/item/device/tape/random,/obj/item/device/taperecorder,/turf/simulated/floor/wood,/area/library) -"inG" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "medbayquar"; name = "Medbay Emergency Lockdown Shutters"; opacity = 0},/obj/structure/sign/christmas/wreath{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/starboard) "ipy" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/medbay2) -"ipN" = (/obj/machinery/door/airlock{locked = 1; name = "Unit 1"},/turf/simulated/floor/plating,/area/crew_quarters/locker) -"iqf" = (/obj/structure/disposalpipe/segment,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"ipN" = (/obj/effect/floor_decal/spline/plain{dir = 8},/turf/simulated/floor/boxing{name = "yoga mat"},/area/crew_quarters/seconddeck/gym) +"iqf" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "iqT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) "irx" = (/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/bar) "irO" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/pink/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/patient_b) "isq" = (/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D2) "itj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/cargo) "itK" = (/obj/machinery/door/window/southright{name = "Library Desk Door"; req_access = list(37)},/obj/machinery/camera/network/civilian{c_tag = "CIV - Library Starboard"; dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/library) -"iuX" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"ivx" = (/obj/structure/bed/chair,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/docking_hallway2) +"iuX" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"ivx" = (/obj/structure/bed/chair,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/docking_hallway2) "ivH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) -"ixj" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/firealarm{pixel_y = 24},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"ixj" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/firealarm{pixel_y = 24},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "ixU" = (/obj/structure/table/woodentable,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen/blue{pixel_x = -5; pixel_y = -1},/obj/item/weapon/pen/red{pixel_x = -1; pixel_y = 3},/obj/item/weapon/pen,/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) "iya" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "izn" = (/obj/structure/bed/psych,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/carpet/sblucarpet,/area/medical/psych) -"izS" = (/obj/machinery/camera/network/civilian{c_tag = "CIV - Library Port"; dir = 1},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/green{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/wood,/area/library) +"izS" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/wood,/area/library) "iAq" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/medical{name = "Operating Theatre 2"; req_access = list(45)},/obj/structure/cable/green{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/steel_grid,/area/medical/surgery2) "iAw" = (/obj/structure/table/marble,/obj/machinery/camera/network/civilian{c_tag = "CIV - Cafe"; dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/item/weapon/storage/box/glasses/coffeecup,/obj/item/weapon/storage/box/glasses/coffeemug,/obj/item/weapon/storage/box/glasses/square,/obj/item/weapon/storage/box/buns,/obj/item/weapon/storage/box/donut,/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) "iAD" = (/obj/random/mob/mouse,/turf/simulated/floor/plating,/area/maintenance/cargo) @@ -5917,13 +5903,13 @@ "iEr" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/kitchen) "iEH" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/pink/border,/turf/simulated/floor/tiled/white,/area/medical/patient_b) "iES" = (/obj/structure/shuttle/engine/propulsion{dir = 4; icon_state = "burst_l"},/turf/simulated/floor/airless,/area/shuttle/cryo/station) -"iEX" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) +"iEX" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "iFy" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/lime/border{dir = 8},/turf/simulated/floor/tiled/hydro,/area/hydroponics) -"iGa" = (/turf/simulated/floor/plating,/area/crew_quarters/locker) "iGf" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) "iGB" = (/obj/machinery/alarm{dir = 8; pixel_x = 24},/obj/structure/table/standard,/obj/item/weapon/reagent_containers/spray/cleaner{desc = "Someone has crossed out the Space from Space Cleaner and written in Surgery. 'Do not remove under punishment of death!!!' is scrawled on the back."; name = "Surgery Cleaner"; pixel_x = 2; pixel_y = 2},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/pink/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/surgery2) -"iGU" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"iGU" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "iHR" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/plating,/area/maintenance/medbay) +"iIm" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 1},/turf/simulated/floor/wood,/area/library) "iJc" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/flora/pottedplant/dead,/turf/simulated/floor/plating,/area/maintenance/locker) "iJx" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/light{dir = 1},/obj/machinery/newscaster{pixel_y = 30},/obj/structure/closet/secure_closet/freezer/meat,/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "iJT" = (/turf/simulated/wall,/area/hydroponics) @@ -5935,54 +5921,54 @@ "iLb" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "iLd" = (/turf/simulated/wall,/area/medical/patient_a) "iMo" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/effect/floor_decal/borderfloorwhite/corner,/obj/effect/floor_decal/corner/paleblue/bordercorner,/turf/simulated/floor/tiled/white,/area/medical/patient_wing) -"iMY" = (/obj/structure/closet/wardrobe/suit,/obj/structure/window/reinforced{dir = 4; health = 1e+006},/turf/simulated/floor/tiled/dark,/area/crew_quarters/locker) "iNs" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) "iOI" = (/obj/effect/decal/cleanable/blood,/turf/simulated/floor,/area/maintenance/bar) -"iPq" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"iPq" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "iQe" = (/obj/structure/sign/warning/docking_area,/turf/simulated/wall/r_wall,/area/hallway/secondary/entry/D2) "iRw" = (/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D3) -"iRT" = (/obj/structure/bed/chair/wood,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"iSG" = (/obj/machinery/light,/obj/item/stack/material/plastic,/obj/item/stack/material/plastic,/obj/item/stack/material/plastic,/turf/simulated/floor/plating,/area/crew_quarters/locker) -"iSR" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled,/area/holodeck_control) +"iRT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/weapon/stool/padded,/turf/simulated/floor/carpet,/area/crew_quarters/coffee_shop) +"iSq" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"iSG" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 140; external_pressure_bound_default = 140; icon_state = "map_vent_out"; pressure_checks = 0; pressure_checks_default = 0; use_power = 1},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) +"iSR" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/curtain/black{icon_state = "open"; layer = 2; name = "privacy curtain"; opacity = 0},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/obj/machinery/door/airlock/multi_tile/glass{dir = 2; name = "Holodeck Control"},/turf/simulated/floor/tiled/steel_grid,/area/holodeck_control) "iVx" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D3) "iVF" = (/obj/machinery/cryopod{dir = 2},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/light{dir = 8},/turf/simulated/shuttle/floor,/area/shuttle/cryo/station) "iVP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) -"iXY" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"iXY" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/status_display{pixel_y = -32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "iYs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/cargo) "iYw" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/lime/bordercorner{dir = 1},/obj/item/weapon/stool/padded,/obj/effect/landmark/start{name = "Botanist"},/turf/simulated/floor/tiled/hydro,/area/hydroponics) "iYD" = (/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "iYZ" = (/obj/structure/cable,/obj/machinery/pointdefense{id_tag = "PD Main"},/turf/simulated/floor/airless,/area/space) "jaX" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D2) -"jbh" = (/obj/structure/table/standard,/obj/effect/floor_decal/corner/yellow/diagonal,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"jbT" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/machinery/status_display/shuttle_display{message1 = "SHUT2"; pixel_x = 32; shuttle_tag = "Shuttle 2"},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"jbh" = (/obj/structure/casino_table/roulette_chart,/turf/simulated/floor/carpet,/area/crew_quarters/coffee_shop) +"jbT" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/machinery/status_display/shuttle_display{message1 = "SHUT2"; pixel_x = 32; shuttle_tag = "Shuttle 2"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "jcr" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/plating,/area/maintenance/locker) "jdw" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/obj/machinery/newscaster{pixel_x = -30},/obj/structure/curtain/open/privacy,/obj/effect/floor_decal/borderfloorwhite{dir = 9},/obj/effect/floor_decal/corner/paleblue/border{dir = 9},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled/white,/area/medical/ward) "jdC" = (/obj/structure/table/rack{dir = 1},/obj/random/toy,/obj/random/tank,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/plating,/area/maintenance/cargo) -"jew" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"jew" = (/obj/machinery/computer/guestpass{dir = 4; pixel_x = -19},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "jeI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/catwalk,/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/medbay) "jfT" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/table/marble,/obj/item/weapon/material/knife/butch,/obj/item/weapon/material/kitchen/rollingpin,/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "jfW" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "jgq" = (/turf/simulated/floor/carpet/sblucarpet,/area/medical/psych) "jgy" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled/monotile,/area/hallway/secondary/entry/D2) "jgH" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) +"jhW" = (/obj/effect/floor_decal/spline/plain{dir = 1},/obj/item/weapon/material/twohanded/spear/foam,/obj/item/weapon/material/twohanded/fireaxe/foam,/obj/item/weapon/material/sword/foam,/obj/structure/table/rack/shelf,/obj/item/weapon/material/twohanded/baseballbat/foam,/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) "jiH" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/window/southright{name = "Hydroponics Delivery"; req_access = list(35)},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/tiled,/area/hydroponics) +"jiL" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "jiS" = (/turf/simulated/wall,/area/maintenance/bar) "jjL" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D2) "jjV" = (/obj/structure/table/woodentable,/obj/machinery/librarycomp,/obj/machinery/light{dir = 1},/turf/simulated/floor/wood,/area/library) "jlK" = (/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) +"jmh" = (/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals10,/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "jmu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/medical{name = "Patient Room B"},/turf/simulated/floor/tiled/steel_grid,/area/medical/patient_b) "jmx" = (/obj/structure/bed/chair/comfy/black{dir = 1},/turf/simulated/floor/carpet/oracarpet,/area/library) +"jmL" = (/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals10,/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "jmU" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "jnl" = (/obj/effect/floor_decal/chapel{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/dark,/area/chapel/main) -"jnM" = (/obj/effect/floor_decal/corner/yellow/diagonal,/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "jnX" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/structure/bed/chair/comfy/brown,/obj/effect/landmark/start{name = "Librarian"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/light{dir = 4},/turf/simulated/floor/carpet,/area/library) -"jpB" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "jpF" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) -"jqd" = (/obj/machinery/vending/fitness,/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) -"jqt" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) +"jqd" = (/obj/structure/sign/poster/nanotrasen{pixel_y = 32},/obj/machinery/lapvend,/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) "jqw" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/apcenter) -"jqG" = (/obj/structure/flora/ausbushes/ppflowers,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) -"jrS" = (/obj/machinery/light{dir = 1},/obj/machinery/vending/food,/obj/structure/sign/poster/nanotrasen{pixel_y = 32},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) +"jrS" = (/obj/machinery/light{dir = 1},/obj/machinery/vending/cart,/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) "jsG" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "jvl" = (/obj/structure/sign/directions/cryo{dir = 8},/turf/simulated/wall,/area/library) "jvu" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/white,/area/medical/cryo) @@ -5990,22 +5976,23 @@ "jwD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/firealarm{pixel_y = 24},/obj/machinery/camera/network/research{c_tag = "SCI - Research Hallway Starboard"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/turf/simulated/floor/tiled/white,/area/rnd/research) "jwT" = (/obj/structure/table/marble,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/simulated/floor/lino,/area/crew_quarters/bar) "jyC" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) +"jzf" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/structure/bed/chair,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "jzV" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/ai_status_display{pixel_x = -32},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "jAh" = (/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/requests_console{department = "Tool Storage"; pixel_y = -30},/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/yellow/border{dir = 10},/obj/machinery/ai_status_display{pixel_x = -32},/turf/simulated/floor/tiled,/area/storage/primary) -"jAR" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"jAR" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "jAY" = (/obj/machinery/libraryscanner,/obj/machinery/camera/network/civilian{c_tag = "CIV - Arrivals Lounge"; dir = 1},/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) "jBX" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "medbayquar"; name = "Medbay Emergency Lockdown Shutters"; opacity = 0},/obj/structure/loot_pile/surface/medicine_cabinet/fresh{pixel_y = 25},/turf/simulated/floor/plating,/area/maintenance/medbay) "jDg" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_medical{id_tag = "Surgery"; name = "Patient Ward"; req_access = list(5)},/turf/simulated/floor/tiled/steel_grid,/area/medical/ward) -"jDi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"jDi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "jDs" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1379; id_tag = "crg_aft_pump"},/obj/machinery/light/small{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/simulated/floor,/area/maintenance/cargo) "jEc" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) "jEm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/maintenance/cargo) "jEn" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D1) "jGd" = (/obj/structure/table/standard,/obj/item/stack/medical/advanced/bruise_pack,/obj/item/weapon/surgical/retractor,/obj/effect/floor_decal/borderfloorwhite{dir = 6},/obj/effect/floor_decal/corner/pink/border{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/surgery2) "jHa" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"jHn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/status_display{pixel_y = -32},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"jHn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "jHH" = (/obj/machinery/computer/secure_data{dir = 4},/obj/item/device/radio/intercom/department/security{dir = 8; icon_override = "secintercom"; pixel_x = -21},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/turf/simulated/floor/tiled,/area/security/checkpoint2) -"jIM" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"jIM" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "jJf" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/window/southleft{name = "Bar Delivery"; req_access = list(25)},/turf/simulated/floor/tiled,/area/crew_quarters/bar) "jJi" = (/obj/machinery/light/small,/obj/machinery/atmospherics/unary/vent_pump/high_volume,/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "jKu" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) @@ -6016,50 +6003,47 @@ "jOO" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green,/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/carpet/sblucarpet,/area/medical/psych) "jPg" = (/turf/simulated/floor/tiled,/area/engineering/locker_room) "jPi" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/apcenter) -"jPt" = (/obj/structure/bed/chair/wood,/obj/effect/floor_decal/corner/yellow/diagonal,/obj/structure/extinguisher_cabinet{pixel_x = -27},/obj/machinery/camera/network/civilian{c_tag = "CIV - Coffee Shop"; dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"jQd" = (/obj/item/frame/light,/turf/simulated/floor/plating,/area/crew_quarters/locker) -"jRr" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/docking_hallway2) +"jPt" = (/obj/structure/extinguisher_cabinet{pixel_x = -27},/obj/structure/table/bench/wooden,/obj/item/device/starcaster_news,/obj/structure/window/reinforced/tinted/frosted{dir = 1},/obj/machinery/light{dir = 8},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/coffee_shop) +"jRr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/multi_tile/glass{name = "Central Access"},/obj/machinery/door/firedoor/multi_tile/glass,/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/docking_hallway2) "jRW" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D1) "jSi" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) -"jSM" = (/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "jSR" = (/obj/structure/bed/chair/sofa/blue/corner{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/paleblue/border{dir = 10},/obj/item/device/radio/intercom/department/medbay{dir = 8; pixel_x = -21},/turf/simulated/floor/tiled,/area/medical/medbay2) "jUw" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/maintenance/cargo) "jUx" = (/obj/machinery/smartfridge/drinks,/obj/machinery/light{dir = 1},/turf/simulated/floor/lino,/area/crew_quarters/bar) "jVL" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/ai_status_display{pixel_y = 32},/turf/simulated/floor/tiled/dark,/area/medical/medbay_emt_bay) -"jXa" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/docking_hallway2) -"jXg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/sign/christmas/wreath,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"jXa" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/docking_hallway2) +"jXg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"jXU" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "jYj" = (/obj/effect/shuttle_landmark/southern_cross/cryostorage_station,/turf/simulated/shuttle/floor,/area/shuttle/cryo/station) "jYl" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced/polarized{id = "st2_tint"},/turf/simulated/floor/plating,/area/medical/surgery2) "jYE" = (/obj/machinery/photocopier,/obj/item/device/radio/intercom/department/medbay{pixel_y = -21},/obj/effect/floor_decal/borderfloorwhite{dir = 6},/obj/effect/floor_decal/corner/blue/border{dir = 6},/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/sc/cmo) "jZo" = (/obj/structure/bed/chair/comfy/brown{dir = 1},/turf/simulated/floor/carpet/sblucarpet,/area/medical/psych) -"jZp" = (/obj/structure/flora/ausbushes/fullgrass,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) "jZy" = (/obj/effect/floor_decal/industrial/warning,/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) -"kab" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "kaL" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/locker) -"kaM" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock Hallway 2"; dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"kaM" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock Hallway 2"; dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "kdq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/medbay2) -"kdL" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner2{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"kdL" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner2{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "keQ" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D1) "kfJ" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/effect/landmark/start{name = "Chef"},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "kfY" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/security{name = "Security Checkpoint"; req_access = list(1)},/turf/simulated/floor/tiled/steel_grid,/area/security/checkpoint2) -"kgi" = (/obj/machinery/newscaster{pixel_y = 30},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"kgi" = (/obj/machinery/newscaster{pixel_y = 30},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "kgm" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/structure/table/reinforced,/obj/item/weapon/storage/belt/medical,/obj/item/clothing/accessory/stethoscope,/obj/item/clothing/glasses/sunglasses/medhud,/obj/item/device/radio{frequency = 1487; name = "Medbay Emergency Radio Link"},/obj/item/device/megaphone,/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/blue/border{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/sc/cmo) "khr" = (/obj/structure/closet/crate/freezer,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/kitchen) +"kht" = (/obj/item/weapon/reagent_containers/glass/bucket/wood{pixel_y = 6},/obj/structure/table/rack/shelf,/obj/item/weapon/reagent_containers/glass/bucket/wood,/turf/simulated/floor/tiled/techmaint,/area/crew_quarters/seconddeck/gym) "khA" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/obj/effect/floor_decal/borderfloorwhite/corner2{dir = 5},/obj/effect/floor_decal/corner/paleblue/bordercorner2{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/ward) "kjb" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/medbay2) "kjR" = (/obj/structure/bed/chair/sofa/blue/left{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -32},/turf/simulated/floor/tiled,/area/medical/medbay2) -"klh" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) +"klh" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/ascenter) "klK" = (/obj/item/toy/eight_ball,/obj/structure/table/bench/glass,/turf/simulated/floor/carpet/sblucarpet,/area/medical/medbay2) -"kmj" = (/obj/structure/table/glass,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/docking_hallway2) +"kmj" = (/obj/structure/table/glass,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/docking_hallway2) "knz" = (/turf/simulated/wall,/area/engineering/engi_restroom) "knE" = (/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/cyan{dir = 4},/obj/structure/closet/crate,/obj/item/weapon/reagent_containers/food/drinks/flask/barflask,/obj/random/powercell,/obj/random/maintenance,/obj/random/maintenance/clean,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/plating,/area/maintenance/bar) -"kot" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) +"kot" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) "kow" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "koF" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/bar) "kqp" = (/obj/machinery/gibber,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/kitchen) "kqH" = (/obj/machinery/vending/loadout/uniform,/obj/effect/floor_decal/borderfloorwhite/corner,/obj/effect/floor_decal/corner/paleblue/bordercorner,/turf/simulated/floor/tiled/white,/area/medical/cryo) "krq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"krC" = (/obj/machinery/vending/fitness{dir = 4},/turf/simulated/floor/tiled/dark,/area/crew_quarters/locker) "krH" = (/obj/structure/table/glass,/turf/simulated/floor/carpet/sblucarpet,/area/medical/medbay2) "krQ" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/patient_wing) "krZ" = (/obj/structure/table/bench/glass,/obj/item/device/starcaster_news,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/carpet/sblucarpet,/area/medical/medbay2) @@ -6069,14 +6053,13 @@ "kvq" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/effect/floor_decal/borderfloorwhite/corner{dir = 4},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/patient_wing) "kwy" = (/obj/structure/kitchenspike,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/kitchen) "kwW" = (/obj/machinery/light{dir = 1},/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/beige/border{dir = 1},/obj/machinery/button/remote/blast_door{id = "chemcounter"; name = "Pharmacy Counter Lockdown Control"; pixel_x = 10; pixel_y = 30},/obj/machinery/button/remote/blast_door{id = "chemwindow"; name = "Pharmacy Window Shutter Control"; pixel_x = -10; pixel_y = 30},/obj/machinery/chemical_dispenser/biochemistry/full,/obj/structure/table/reinforced,/turf/simulated/floor/tiled/white,/area/medical/chemistry) -"kyu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "kzz" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "kzA" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/camera/network/engineering{c_tag = "SUBS - Cargo Second Deck"; dir = 1},/turf/simulated/floor/plating,/area/maintenance/substation/cargo) -"kzX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"kzX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/steeldecal/steel_decals6,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "kAh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/sblucarpet,/area/medical/medbay2) "kAo" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted{dir = 1},/obj/structure/window/reinforced/tinted,/obj/structure/window/reinforced/tinted{dir = 4},/obj/structure/window/reinforced/tinted{dir = 8},/turf/simulated/floor/plating,/area/chapel/main) "kAw" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/structure/extinguisher_cabinet{pixel_y = 30},/turf/simulated/floor/lino,/area/crew_quarters/bar) -"kAy" = (/obj/effect/floor_decal/corner/yellow/diagonal,/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"kAy" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "kBX" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/door/blast/shutters{dir = 4; id = "kitchen"; layer = 3.3; name = "Kitchen Shutters"},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "kCe" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/extinguisher_cabinet{pixel_x = -28},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "kDj" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/light_switch{pixel_x = 36; pixel_y = -6},/obj/machinery/button/windowtint{id = "pr2_window_tint"; pixel_x = 36; pixel_y = 6},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/pink/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/patient_b) @@ -6085,24 +6068,22 @@ "kFd" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/hydro,/area/hydroponics) "kFH" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/wall/r_wall,/area/maintenance/medbay) "kGf" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/wood,/area/library) -"kGp" = (/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "kHl" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/sc/cmo) "kHE" = (/obj/item/weapon/stool/padded,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"kIc" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/holodeck_control) -"kID" = (/obj/effect/floor_decal/industrial/outline/yellow,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"kIc" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/corner/yellow/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "kJg" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/cryopod{dir = 2},/turf/simulated/shuttle/floor,/area/shuttle/cryo/station) "kKp" = (/obj/item/weapon/storage/briefcase/inflatable,/turf/simulated/floor/plating,/area/maintenance/cargo) -"kKF" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) -"kLl" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"kKF" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) +"kLl" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "kLo" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/wood,/area/library) "kLB" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "kLD" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"kLG" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"kLG" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "kLO" = (/obj/structure/table/woodentable,/obj/machinery/computer/med_data/laptop{dir = 1},/turf/simulated/floor/carpet/sblucarpet,/area/medical/psych) "kLW" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/techmaint,/area/ai_monitored/storage/emergency/eva) "kMi" = (/turf/simulated/wall,/area/maintenance/engineering) "kMj" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/paleblue/bordercorner,/obj/machinery/door/firedoor/glass/hidden/steel{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled,/area/medical/medbay2) -"kMw" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"kMw" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "kNS" = (/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/obj/effect/floor_decal/borderfloorwhite/corner2{dir = 5},/obj/effect/floor_decal/corner/paleblue/bordercorner2{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/ward) "kOl" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/medbay) "kOM" = (/obj/structure/closet/crate/plastic,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/bar) @@ -6110,54 +6091,52 @@ "kPk" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/medical/morgue) "kPr" = (/obj/structure/kitchenspike,/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/kitchen) "kPK" = (/turf/simulated/wall,/area/security/checkpoint2) -"kPL" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/docking_hallway2) +"kPL" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/obj/machinery/door/airlock/multi_tile/glass{dir = 2; name = "Central Access"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/docking_hallway2) "kQG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/borderfloorwhite/corner{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/medbay2) "kQH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "kQV" = (/obj/machinery/vending/boozeomat,/turf/simulated/floor/lino,/area/crew_quarters/bar) "kRu" = (/obj/machinery/door/airlock/external{frequency = 1380; id_tag = "cryostorage_shuttle_hatch"; name = "Cryogenic Storage Hatch"},/obj/structure/fans/tiny,/turf/simulated/shuttle/floor,/area/shuttle/cryo/station) "kRJ" = (/obj/machinery/door/airlock{name = "Unit 2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/barrestroom) -"kSs" = (/obj/structure/disposalpipe/segment,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"kSs" = (/obj/structure/disposalpipe/segment,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "kSu" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock 1 Aft"; dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) -"kSM" = (/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/structure/bed/chair,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"kTh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) -"kTo" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/light{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"kSM" = (/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/structure/bed/chair,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"kTh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"kTo" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "kTt" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/structure/disposalpipe/sortjunction{dir = 4; name = "Hydroponics"; sortType = "Hydroponics"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "kTw" = (/obj/structure/closet/gmcloset,/obj/item/glass_jar,/obj/item/device/retail_scanner/civilian,/obj/item/device/retail_scanner/civilian,/obj/machinery/camera/network/civilian{c_tag = "CIV - Bar Storage"},/obj/machinery/firealarm{pixel_y = 24},/obj/item/clothing/head/that{pixel_x = 4; pixel_y = 6},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/wood,/area/crew_quarters/bar) "kTT" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "kUD" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/bar) "kVv" = (/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod{frequency = 1380; id_tag = "cryostorage_shuttle"; name = "cryostorage controller"; pixel_x = -26; req_access = list(19); tag_door = "cryostorage_shuttle_hatch"},/obj/effect/landmark{name = "JoinLateCryo"},/turf/simulated/shuttle/floor,/area/shuttle/cryo/station) -"kVy" = (/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = -32},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/turf/simulated/floor/plating,/area/crew_quarters/locker) +"kVy" = (/obj/structure/table/bench/wooden,/obj/effect/floor_decal/spline/fancy/wood{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) "kVL" = (/obj/structure/table/woodentable,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen/invisible,/obj/item/weapon/book/codex/lore/news,/obj/item/device/tvcamera,/turf/simulated/floor/carpet,/area/library) "kVT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/white,/area/medical/patient_a) "kXk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/plating,/area/maintenance/chapel) -"kXm" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Aft Hallway 5"; dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"kYA" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Library"},/obj/structure/curtain/black{icon_state = "open"; layer = 2; name = "privacy curtain"; opacity = 0},/turf/simulated/floor/tiled/steel_grid,/area/library) -"kZm" = (/obj/machinery/computer/arcade,/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"kXm" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Aft Hallway 5"; dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"kYA" = (/obj/structure/curtain/black{icon_state = "open"; layer = 2; name = "privacy curtain"; opacity = 0},/turf/simulated/floor/tiled/steel_grid,/area/library) +"kZm" = (/obj/structure/disposalpipe/segment,/obj/structure/closet/emcloset,/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) "kZv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/cargo) -"lao" = (/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fscenter) "las" = (/obj/structure/table/woodentable,/obj/item/weapon/deck/cards,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"lbd" = (/obj/effect/floor_decal/industrial/outline/yellow,/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"lbd" = (/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "lbo" = (/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "lbI" = (/obj/machinery/light{dir = 4},/obj/structure/bed/chair/sofa/brown{dir = 8},/turf/simulated/floor/carpet/oracarpet,/area/library) -"lbW" = (/obj/structure/stairs/east,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/aft) +"lbW" = (/obj/structure/stairs/east,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/aft) "lbX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/bar) "lce" = (/obj/structure/reagent_dispensers/watertank/high,/obj/item/weapon/reagent_containers/glass/bucket,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/lime/border{dir = 8},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/tiled/hydro,/area/hydroponics) "lci" = (/obj/item/weapon/stool/padded,/obj/effect/landmark/start{name = "Barista"},/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) "ldX" = (/obj/machinery/holosign/bar{id = "baropen"},/turf/simulated/wall,/area/crew_quarters/cafeteria) "lfa" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) -"lfq" = (/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"lfq" = (/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "lgj" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) -"lgm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"lgm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "lhG" = (/turf/simulated/wall/r_wall,/area/medical/patient_wing) -"lhH" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/bed/chair/comfy/brown,/turf/simulated/floor/carpet,/area/crew_quarters/coffee_shop) +"lhH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "liq" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/fancy/candle_box,/turf/simulated/floor/carpet,/area/chapel/main) -"lje" = (/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) "ljr" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 8},/obj/structure/morgue,/turf/simulated/floor/tiled,/area/medical/morgue) "lju" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "ljU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) "lks" = (/obj/structure/bookcase{name = "bookcase (Fiction)"},/turf/simulated/floor/carpet/oracarpet,/area/library) "lkA" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/southright{name = "Kitchen Delivery"; req_access = list(28)},/turf/simulated/floor/tiled,/area/crew_quarters/kitchen) -"llb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"llb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "llH" = (/obj/structure/bed/chair/comfy/black,/turf/simulated/floor/carpet/oracarpet,/area/library) "lmF" = (/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/medbay) "lnq" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Two Internal Airlock"; req_access = list(13)},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/access_button{dir = 1; master_tag = null; name = "interior access button"; pixel_x = 27; pixel_y = 7},/obj/effect/map_helper/airlock/door/int_door,/obj/effect/map_helper/airlock/button/int_button,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2) @@ -6170,40 +6149,42 @@ "lsH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/disposalpipe/junction{dir = 1},/turf/simulated/floor/plating,/area/maintenance/bar) "luv" = (/obj/machinery/door/airlock/external{icon_state = "door_locked"; locked = 1; name = "Dock One External Airlock"; req_access = list(13)},/obj/machinery/shield_diffuser,/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/access_button{dir = 4; master_tag = null; name = "exterior access button"; pixel_x = 7; pixel_y = 27},/obj/effect/map_helper/airlock/button/ext_button,/obj/effect/map_helper/airlock/door/ext_door,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D1) "luY" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) -"lvX" = (/obj/item/weapon/circuitboard/firealarm,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/locker) +"lvX" = (/obj/machinery/washing_machine,/obj/machinery/firealarm{pixel_y = 24},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "lwT" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/locker) "lxR" = (/obj/structure/bed/chair/sofa/blue{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled,/area/medical/medbay2) "lxX" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/medical_lockerroom) +"lxY" = (/obj/structure/fitness/weightlifter,/obj/effect/floor_decal/spline/plain{dir = 8},/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) "lyb" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 1; start_pressure = 4559.63},/turf/simulated/floor/plating,/area/maintenance/bar) "lyB" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{id_tag = "crg_aft_airlock"; pixel_x = -25; req_access = null; tag_airpump = "crg_aft_pump"; tag_chamber_sensor = "crg_aft_sensor"; tag_exterior_door = "crg_aft_outer"; tag_interior_door = "crg_aft_inner"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "crg_aft_pump"},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor,/area/maintenance/cargo) "lyG" = (/obj/item/device/radio/intercom/department/medbay{pixel_y = -24},/obj/structure/table/standard,/obj/item/weapon/surgical/hemostat,/obj/item/weapon/surgical/cautery,/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/pink/border,/turf/simulated/floor/tiled/white,/area/medical/surgery) "lyJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/locker) -"lyS" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = list(12,25,27,28,35)},/obj/item/tape/engineering,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"lyS" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = list(12,25,27,28,35)},/turf/simulated/floor/plating,/area/crew_quarters/seconddeck/gym) "lzd" = (/turf/simulated/floor/tiled/hydro,/area/hydroponics) -"lAh" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/light{dir = 8},/obj/machinery/door/firedoor/border_only,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"lAh" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/light{dir = 8},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/D2) "lAv" = (/obj/structure/table/woodentable,/obj/item/weapon/deck/cah{pixel_x = 2; pixel_y = 2},/obj/item/weapon/deck/cah/black{pixel_x = -2; pixel_y = -2},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "lFN" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/shield_diffuser,/obj/machinery/door/airlock/external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Three External Airlock"; req_access = list(13)},/obj/effect/map_helper/airlock/door/ext_door,/obj/effect/map_helper/airlock/button/ext_button,/obj/machinery/access_button{dir = 8; name = "exterior access button"; pixel_x = -7; pixel_y = -27; req_one_access = null},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2) "lGR" = (/turf/simulated/wall,/area/rnd/research_restroom_sc) "lIC" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/chapel) "lJs" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/yellow/border{dir = 4},/turf/simulated/floor/tiled,/area/storage/primary) -"lKa" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"lKa" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "lKy" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/as_emergency) "lKQ" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/hydro,/area/hydroponics) -"lKT" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/item/stack/tile/floor,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"lKT" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/green/border,/obj/machinery/light,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/structure/closet/emcloset,/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "lLj" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/lime/bordercorner,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/closet/secure_closet/hydroponics,/turf/simulated/floor/tiled/hydro,/area/hydroponics) "lLl" = (/obj/random/obstruction,/turf/simulated/floor/plating,/area/maintenance/research) "lLD" = (/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/obj/machinery/button/windowtint{id = "cryo_tint"; pixel_x = 36; pixel_y = 6},/obj/machinery/light_switch{name = "light switch "; pixel_x = 36; pixel_y = -6},/turf/simulated/floor/tiled/white,/area/medical/cryo) -"lMn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera/network/civilian{c_tag = "CIV - Chapel Aft"; dir = 1},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"lMn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "lMw" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) -"lNe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"lNx" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Chapel"},/turf/simulated/floor/tiled/steel_grid,/area/chapel/main) +"lNe" = (/obj/structure/casino_table/roulette_table,/turf/simulated/floor/carpet,/area/crew_quarters/coffee_shop) +"lNx" = (/turf/simulated/floor/tiled/techmaint,/area/chapel/main) "lOw" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/plating,/area/maintenance/bar) "lOW" = (/obj/structure/table/woodentable,/obj/item/weapon/material/kitchen/utensil/fork,/obj/item/weapon/material/kitchen/utensil/spoon{pixel_x = 2},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "lPq" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/library) -"lPI" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/camera/network/civilian{c_tag = "CIV - Cafeteria Port"; dir = 4},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"lPI" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/camera/network/civilian{c_tag = "CIV - Cafeteria Port"; dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"lQb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/dockhallway) "lQl" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/beakers,/obj/item/weapon/reagent_containers/dropper,/obj/item/device/mass_spectrometer/adv,/obj/item/clothing/glasses/science,/obj/item/clothing/glasses/science,/turf/simulated/floor/tiled/white,/area/medical/chemistry) "lQm" = (/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{dir = 1; frequency = 1380; id_tag = "escape_dock_south_airlock"; master_tag = "escape_dock"; pixel_y = -27; req_one_access = list(13); tag_airlock_mech_sensor = null; tag_airpump = null; tag_chamber_sensor = null; tag_exterior_door = null; tag_interior_door = null; tag_shuttle_mech_sensor = null},/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/machinery/atmospherics/unary/vent_pump/high_volume,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D1) -"lRj" = (/obj/machinery/feeder,/turf/simulated/floor/tiled/dark,/area/crew_quarters/locker) +"lRj" = (/obj/machinery/light{dir = 1},/obj/machinery/newscaster{pixel_y = 30},/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) "lRF" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/pink/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/medbay_emt_bay) "lRG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light/small,/turf/simulated/floor/plating,/area/maintenance/cargo) "lRJ" = (/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/wood,/area/library) @@ -6213,19 +6194,18 @@ "lUZ" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/light{dir = 1},/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/paleblue/border{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/patient_wing) "lWj" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/universal,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/maintenance/locker) "lXK" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/lino,/area/crew_quarters/bar) -"lYO" = (/turf/simulated/wall/r_wall,/area/security/checkpoint2) -"lZz" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) +"lYO" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "maC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"maU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"maU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "mbl" = (/obj/machinery/appliance/cooker/oven,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/light,/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "mby" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) +"mbB" = (/obj/effect/floor_decal/spline/plain{dir = 1},/obj/machinery/scale,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) "mbG" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled/monotile,/area/hallway/secondary/entry/D2) "mbH" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Three Internal Airlock"; req_access = list(13)},/obj/effect/map_helper/airlock/door/int_door,/obj/effect/map_helper/airlock/button/int_button,/obj/machinery/access_button{dir = 4; name = "interior access button"; pixel_x = 7; pixel_y = 27; req_one_access = null},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D3) -"mcs" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"mdq" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"mcs" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"mdq" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "mfz" = (/obj/machinery/door/firedoor/glass,/obj/machinery/vending/wallmed1{pixel_y = -30},/obj/effect/floor_decal/borderfloorwhite/corner{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/ward) -"mfE" = (/obj/effect/floor_decal/industrial/outline/yellow,/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/tiled,/area/quartermaster/foyer) -"mga" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"mga" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/crew_quarters/seconddeck/gym) "mgb" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "mgk" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/obj/structure/curtain/open/privacy,/obj/effect/floor_decal/borderfloorwhite{dir = 5},/obj/effect/floor_decal/corner/paleblue/border{dir = 5},/obj/machinery/ai_status_display{pixel_y = 32},/turf/simulated/floor/tiled/white,/area/medical/ward) "mgO" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/library) @@ -6238,12 +6218,13 @@ "mmq" = (/obj/structure/loot_pile/maint/junk,/turf/simulated/floor/plating,/area/maintenance/cargo) "mmE" = (/obj/machinery/airlock_sensor{id_tag = null; pixel_y = 27},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; id_tag = null},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/effect/map_helper/airlock/sensor/chamber_sensor,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2/arrivals) "mnf" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/quartermaster/office) -"mnG" = (/obj/machinery/lapvend,/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) -"mnK" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"mnG" = (/obj/machinery/vending/nifsoft_shop,/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) +"mnK" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "mou" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/obj/effect/landmark{name = "lightsout"},/obj/machinery/light{dir = 8},/turf/simulated/floor/carpet/oracarpet,/area/library) -"moG" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock 2 Fore"; dir = 4},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) -"mqa" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"mqh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/sortjunction{dir = 8; name = "Library"; sortType = "Library"},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Civilian Hallway 1"; dir = 1},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"moG" = (/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock 2 Fore"; dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"moH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"mqa" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"mqh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/sortjunction{dir = 8; name = "Library"; sortType = "Library"},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Civilian Hallway 1"; dir = 1},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "mqH" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera/network/medbay{c_tag = "MED - Patient Hallway Port"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloorwhite/corner{dir = 1},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/patient_wing) "mqZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/hologram/holopad,/turf/simulated/floor/carpet,/area/library) "mrF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = -24},/obj/structure/cable/green,/turf/simulated/floor/tiled/white,/area/medical/patient_wing) @@ -6255,7 +6236,7 @@ "muO" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "muS" = (/obj/structure/disposalpipe/segment,/obj/structure/toilet,/obj/effect/landmark{name = "blobstart"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/barrestroom) "mvf" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"mvC" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/sign/dock/one,/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock Hallway 1"; dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"mvC" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/sign/dock/one,/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock Hallway 1"; dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "myp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/random/junk,/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/research) "myq" = (/obj/item/weapon/stool,/obj/effect/landmark/start{name = "Assistant"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/storage/primary) "mza" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/floor/plating,/area/hallway/secondary/entry/D2) @@ -6266,9 +6247,9 @@ "mDM" = (/obj/effect/floor_decal/industrial/warning/cee{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1},/obj/machinery/light/small{dir = 1},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "mDZ" = (/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = -32},/obj/machinery/light{dir = 4},/obj/machinery/ai_status_display{pixel_x = 32},/obj/structure/bed/chair/comfy/brown{dir = 8},/turf/simulated/floor/carpet/sblucarpet,/area/medical/psych) "mEp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) -"mEJ" = (/obj/machinery/vending/cart,/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) +"mEJ" = (/obj/machinery/vending/fooddessert,/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) "mES" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/barrestroom) -"mFs" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/table/gamblingtable,/obj/item/weapon/deck/cards,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"mFs" = (/obj/structure/table/standard,/obj/effect/floor_decal/spline/plain,/obj/machinery/recharger,/obj/item/weapon/tool/wrench,/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) "mFY" = (/obj/machinery/computer/card{dir = 4},/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/turf/simulated/floor/tiled,/area/security/checkpoint2) "mGl" = (/obj/machinery/disposal,/obj/structure/extinguisher_cabinet{pixel_x = -28},/obj/effect/floor_decal/borderfloorwhite{dir = 10},/obj/effect/floor_decal/corner/paleblue/border{dir = 10},/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/ai_status_display{pixel_y = -32},/turf/simulated/floor/tiled/white,/area/medical/cryo) "mHY" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D3) @@ -6279,36 +6260,37 @@ "mKr" = (/obj/structure/bed/chair/wood{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "mKs" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "mKx" = (/obj/structure/table/rack{dir = 1},/obj/item/weapon/extinguisher,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/bar) -"mMf" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/dark,/area/chapel/main) -"mMD" = (/obj/machinery/photocopier,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = -32},/turf/simulated/floor/wood,/area/library) +"mMf" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled/dark,/area/chapel/main) +"mMD" = (/obj/machinery/photocopier,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = -32},/obj/machinery/camera/network/civilian{c_tag = "CIV - Library Port"; dir = 1},/turf/simulated/floor/wood,/area/library) "mNf" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "crglockdown"; name = "Cargo Lockdown"; opacity = 0},/turf/simulated/floor/plating,/area/maintenance/cargo) "mNt" = (/obj/machinery/door/firedoor/border_only,/obj/effect/floor_decal/industrial/loading{dir = 8},/obj/structure/plasticflaps{opacity = 1},/obj/machinery/navbeacon/delivery/west{location = "Hydroponics"},/turf/simulated/floor/tiled,/area/hydroponics) -"mNU" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"mNU" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"mOo" = (/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/port) "mOG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/medbay) -"mPB" = (/obj/structure/bed/chair/wood{dir = 1},/obj/effect/floor_decal/corner/yellow/diagonal,/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "mPD" = (/obj/effect/landmark/start{name = "Bartender"},/turf/simulated/floor/lino,/area/crew_quarters/bar) "mQg" = (/obj/effect/floor_decal/steeldecal/steel_decals_central5{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/office) "mQP" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/pink/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/sleeper) "mRD" = (/obj/structure/closet/secure_closet/psych,/turf/simulated/floor/carpet/sblucarpet,/area/medical/psych) "mRM" = (/obj/effect/floor_decal/borderfloorblack{dir = 4},/obj/effect/floor_decal/industrial/danger{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/quartermaster/office) -"mTb" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/computer/guestpass{pixel_y = 30},/turf/simulated/floor/plating,/area/crew_quarters/locker) +"mTb" = (/obj/effect/floor_decal/steeldecal/steel_decals_central6,/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/monotile,/area/crew_quarters/seconddeck/gym) "mUi" = (/obj/structure/sign/warning/docking_area,/turf/simulated/wall/r_wall,/area/hallway/secondary/entry/D1) "mVe" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) -"mVk" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/docking_hallway2) +"mVk" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/docking_hallway2) "mWi" = (/obj/effect/floor_decal/sign/dock/three,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "mWl" = (/obj/machinery/light,/obj/structure/closet/emcloset,/obj/machinery/button/crematorium{id = "Chapelburn"; pixel_x = -10; pixel_y = -20},/turf/simulated/floor/tiled/dark,/area/chapel/main) "mWR" = (/obj/machinery/light/small,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/medbay) "mXb" = (/obj/structure/girder,/turf/simulated/floor/plating,/area/maintenance/medbay) -"mXo" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner2{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"mXo" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner2{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "mXK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "mYK" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/security/checkpoint2) "mYL" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"mYU" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"mYU" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "mZG" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry/D3) "nak" = (/obj/machinery/power/smes/buildable{RCon_tag = "Substation - Cargo"},/obj/structure/cable/green,/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/maintenance/substation/cargo) -"naC" = (/obj/structure/closet/wardrobe/xenos,/turf/simulated/floor/tiled/dark,/area/crew_quarters/locker) +"naC" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/item/device/radio/intercom{desc = "Talk... listen through this."; name = "Station Intercom (Brig Radio)"; pixel_y = -21; wires = 7},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "naX" = (/obj/structure/bed/chair/comfy/black{dir = 1},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -32},/obj/machinery/light{dir = 8},/turf/simulated/floor/carpet,/area/hallway/secondary/entry/docking_lounge) -"nbk" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/aft) +"nbk" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/aft) +"ncm" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "ncv" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "nev" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/ai_status_display{pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "neW" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/alarm{pixel_y = 22},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/paleblue/border{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/patient_wing) @@ -6322,74 +6304,70 @@ "nkN" = (/obj/structure/table/marble,/obj/machinery/door/blast/shutters{dir = 2; id = "bar"; layer = 3.1; name = "Bar Shutters"},/turf/simulated/floor/lino,/area/crew_quarters/bar) "nmj" = (/obj/structure/disposalpipe/segment,/obj/structure/catwalk,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/medbay) "nmG" = (/obj/structure/ladder/up,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/plating,/area/maintenance/locker) -"nmN" = (/obj/effect/floor_decal/corner/yellow/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"nns" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/bed/chair/comfy/brown,/obj/structure/disposalpipe/segment,/turf/simulated/floor/carpet,/area/crew_quarters/coffee_shop) +"nmN" = (/obj/structure/table/bench/wooden,/obj/item/weapon/deck/holder,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/coffee_shop) +"nns" = (/obj/structure/disposalpipe/segment,/obj/structure/table/gamblingtable,/obj/item/weapon/deck/tarot,/obj/item/weapon/deck/tarot,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/coffee_shop) "nnG" = (/obj/item/device/radio/intercom/locked/confessional{pixel_y = -21},/obj/structure/bed/chair{dir = 8},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/tiled/dark,/area/chapel/main) -"nnN" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"nnN" = (/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "noj" = (/obj/structure/lattice,/obj/structure/cable/green{d1 = 32; icon_state = "32-1"},/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/zpipe/down/supply{dir = 1},/obj/machinery/atmospherics/pipe/zpipe/down/scrubbers{dir = 1},/turf/simulated/open,/area/maintenance/substation/cargo) "nor" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/shield_diffuser,/obj/machinery/door/airlock/external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Three External Airlock"; req_access = list(13)},/obj/effect/map_helper/airlock/door/ext_door,/obj/effect/map_helper/airlock/button/ext_button,/obj/machinery/access_button{dir = 8; name = "exterior access button"; pixel_x = -7; pixel_y = 27; req_one_access = null},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D3) "noZ" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) +"npf" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/turf/simulated/floor/wood,/area/library) "npg" = (/obj/structure/sign/directions/cryo{dir = 8},/turf/simulated/wall/r_wall,/area/hallway/secondary/docking_hallway2) -"npZ" = (/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "nqK" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/plating,/area/maintenance/cargo) "nrm" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/machinery/light/small,/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/machinery/atmospherics/unary/vent_pump/high_volume,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "nrW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/dockhallway) "ntH" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/maintenance/bar) -"nup" = (/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) "nuH" = (/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; locked = 1; name = "Dock One Internal Airlock"; req_access = list(13)},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/access_button{dir = 8; master_tag = null; name = "interior access button"; pixel_x = -7; pixel_y = -27},/obj/effect/map_helper/airlock/button/int_button,/obj/effect/map_helper/airlock/door/int_door,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D1) "nwl" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/effect/floor_decal/borderfloorwhite/corner2{dir = 10},/obj/effect/floor_decal/corner/paleblue/bordercorner2{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/ward) "nwn" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "aft_starboard_pump"},/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{id_tag = "aft_starboard_airlock"; pixel_x = 25; req_access = null; tag_airpump = "aft_starboard_pump"; tag_chamber_sensor = "aft_starboard_sensor"; tag_exterior_door = "aft_starboard_outer"; tag_interior_door = "aft_starboard_inner"},/turf/simulated/floor/plating,/area/maintenance/medbay) "nAI" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/machinery/light{dir = 1},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled/dark,/area/chapel/main) -"nDb" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/crew_quarters/locker) +"nDb" = (/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 6},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) "nDk" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D2) -"nDA" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"nDA" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "nDH" = (/obj/machinery/portable_atmospherics/hydroponics,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/lime/border,/turf/simulated/floor/tiled/hydro,/area/hydroponics) "nDS" = (/obj/structure/bed/chair/wood,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"nEh" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"nEh" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "nEo" = (/obj/structure/catwalk,/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/bar) -"nEQ" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/item/frame/light,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/locker) "nFa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/cargo) -"nFj" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/item/weapon/cell/apc,/turf/simulated/floor/plating,/area/crew_quarters/locker) "nFE" = (/obj/structure/sink/kitchen{pixel_y = 28},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/lime/bordercorner{dir = 4},/obj/item/weapon/stool/padded,/obj/effect/landmark/start{name = "Botanist"},/turf/simulated/floor/tiled/hydro,/area/hydroponics) -"nFW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/corner/yellow/diagonal,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"nFW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "nGq" = (/obj/structure/dispenser{phorontanks = 0},/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled/techfloor,/area/teleporter) "nGH" = (/obj/machinery/door/airlock/external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Two External Airlock"; req_access = list(13)},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/shield_diffuser,/obj/effect/map_helper/airlock/door/ext_door,/obj/machinery/access_button{dir = 8; name = "exterior access button"; pixel_x = -7; pixel_y = 27; req_one_access = null},/obj/effect/map_helper/airlock/button/ext_button,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2) -"nHJ" = (/obj/effect/floor_decal/industrial/outline/yellow,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"nHJ" = (/obj/effect/floor_decal/industrial/outline/yellow,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "nHY" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/holosign/surgery,/obj/machinery/door/airlock/medical{id_tag = "surgery_observation"; name = "Observation Room"; req_access = newlist()},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/steel_grid,/area/medical/surgeryobs) "nIS" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/ai_status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/holodeck_control) -"nIT" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) +"nIT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/multi_tile/glass,/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/D1) "nJh" = (/obj/effect/floor_decal/borderfloorblack{dir = 8},/obj/effect/floor_decal/corner/blue/border{dir = 8},/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/sc/hos) "nJp" = (/obj/machinery/door/firedoor,/obj/effect/wingrille_spawn/reinforced/polarized{id = "pr2_window_tint"},/turf/simulated/floor/plating,/area/medical/patient_b) -"nJW" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) "nKE" = (/obj/machinery/appliance/mixer/cereal,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/ai_status_display{pixel_x = -32},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "nKR" = (/turf/simulated/wall,/area/crew_quarters/kitchen) -"nMn" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/glass{name = "Cafeteria"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/cafeteria) +"nLo" = (/obj/structure/table/standard,/obj/structure/bedsheetbin,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) +"nMn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/obj/machinery/door/airlock/multi_tile/glass{dir = 2; name = "Cafeteria"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/cafeteria) "nNE" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "nOf" = (/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/pink/border{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/surgery) "nPc" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/ai_status_display{pixel_x = -32},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "nPX" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/ai_status_display{pixel_x = -32},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "nRd" = (/obj/machinery/light{dir = 4},/turf/simulated/floor/carpet,/area/library) -"nRL" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/crew_quarters/locker) "nSd" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/lime/border{dir = 4},/obj/machinery/light{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/closet/secure_closet/hydroponics,/turf/simulated/floor/tiled/hydro,/area/hydroponics) "nSe" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "nSw" = (/obj/machinery/light/small,/obj/effect/floor_decal/industrial/loading{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2/arrivals) "nSC" = (/obj/machinery/atmospherics/portables_connector,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/rnd/mixing) "nSJ" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) -"nSW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/purple/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "nTb" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D1) "nTF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/obj/random/junk,/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/bar) "nTM" = (/obj/structure/reagent_dispensers/watertank/high,/obj/item/weapon/reagent_containers/glass/bucket,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/hydro,/area/hydroponics) "nUb" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/pink/border,/turf/simulated/floor/tiled/white,/area/medical/patient_a) "nUh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/bar) -"nVx" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/green/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"nVx" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/green/border,/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "nVW" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -36; pixel_y = -6},/obj/machinery/button/windowtint{id = "cmooffice"; pixel_x = -36; pixel_y = 6},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/blue/border{dir = 8},/obj/structure/dogbed{name = "\improper Runtime's bed"},/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/sc/cmo) "nWF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/locker) "nWH" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/fscenter) "nWL" = (/turf/simulated/shuttle/wall/no_join,/area/shuttle/cryo/station) "nWN" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D3) "nXl" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) -"nXP" = (/obj/structure/bed/chair,/obj/item/weapon/handcuffs/fuzzy,/obj/random/contraband,/turf/simulated/floor,/area/crew_quarters/locker) -"nYu" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"nXP" = (/obj/machinery/light/small{dir = 4},/obj/machinery/button/windowtint{id = "sauna"; pixel_x = 27},/turf/simulated/floor/tiled/techmaint,/area/crew_quarters/seconddeck/gym) +"nYu" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"nYw" = (/obj/structure/window/reinforced/tinted/frosted{dir = 1},/obj/structure/closet/cabinet,/obj/item/clothing/under/bathrobe,/obj/item/clothing/under/bathrobe,/obj/item/clothing/under/bathrobe,/obj/item/weapon/towel/random,/obj/item/weapon/towel/random,/obj/item/weapon/towel/random,/obj/item/clothing/shoes/sandal,/obj/item/clothing/shoes/sandal,/obj/item/clothing/shoes/sandal,/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "nYU" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "nZq" = (/obj/structure/table/woodentable,/obj/item/weapon/dice,/turf/simulated/floor/carpet,/area/library) "nZx" = (/obj/machinery/appliance/mixer/candy,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) @@ -6398,40 +6376,40 @@ "oaL" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/holodeck_control) "obf" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "obp" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Two Internal Airlock"; req_access = list(13)},/obj/effect/map_helper/airlock/door/int_door,/obj/effect/map_helper/airlock/button/int_button,/obj/machinery/access_button{dir = 8; name = "interior access button"; pixel_x = -7; pixel_y = -27},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2/arrivals) -"obI" = (/obj/machinery/light,/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/dockhallway) +"obI" = (/obj/machinery/light,/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/dockhallway) "ocb" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/patient_wing) "ock" = (/obj/structure/table/glass,/obj/item/roller,/obj/item/roller{pixel_y = 8},/obj/machinery/light,/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/pink/border{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/sleeper) "oct" = (/obj/structure/closet/emcloset,/obj/structure/extinguisher_cabinet{pixel_x = -28},/obj/item/weapon/tool/crowbar/red,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "oev" = (/obj/structure/reagent_dispensers/fueltank,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/medbay) -"ofv" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"ofv" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "ofD" = (/obj/effect/floor_decal/borderfloorwhite/corner{dir = 8},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled/white,/area/medical/patient_wing) "ohF" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/newscaster{pixel_y = -30},/turf/simulated/floor/wood,/area/library) "oie" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/chapel) "oiA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/bar) "ojj" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) "ojk" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/wood,/area/library) -"ojN" = (/turf/simulated/wall,/area/crew_quarters/locker) +"ojN" = (/turf/simulated/wall,/area/crew_quarters/seconddeck/gym) "ojY" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D3) "okq" = (/obj/machinery/firealarm{dir = 1; pixel_y = -26},/obj/effect/floor_decal/borderfloorwhite{dir = 10},/obj/effect/floor_decal/corner/pink/border{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/surgery2) -"oku" = (/obj/structure/firedoor_assembly,/turf/simulated/floor/tiled,/area/crew_quarters/locker) +"oku" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "okZ" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light/small,/turf/simulated/floor/plating,/area/maintenance/cargo) "olj" = (/obj/machinery/door/airlock/external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Three External Airlock"; req_access = list(13)},/obj/machinery/shield_diffuser,/obj/effect/floor_decal/industrial/hatch/yellow,/obj/effect/map_helper/airlock/door/ext_door,/obj/effect/map_helper/airlock/button/ext_button,/obj/machinery/access_button{master_tag = null; name = "exterior access button"; pixel_x = -27; pixel_y = -7},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D3) "oll" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/turf/simulated/floor/plating,/area/maintenance/medbay) "omu" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment,/obj/effect/wingrille_spawn/reinforced/polarized{id = "lounge_window_tint"},/turf/simulated/floor/plating,/area/hallway/secondary/entry/docking_lounge) "ond" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume,/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/machinery/light/small,/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) -"ooa" = (/obj/effect/floor_decal/corner/yellow/diagonal,/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"ooa" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "ooQ" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{name = "Firefighting Equipment"; req_access = newlist(); req_one_access = list(12,25,27,28,35)},/turf/simulated/floor/plating,/area/maintenance/bar) "ooT" = (/obj/structure/closet/emcloset,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) -"opM" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"opM" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "oqo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/dockhallway) "oqz" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/obj/machinery/status_display{pixel_x = 32},/turf/simulated/floor/tiled/white,/area/medical/medbay2) -"oqZ" = (/obj/structure/closet/wardrobe/grey,/obj/structure/window/reinforced{dir = 4; health = 1e+006},/turf/simulated/floor/tiled/dark,/area/crew_quarters/locker) -"osg" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"oqZ" = (/obj/structure/table/woodentable,/obj/item/device/camera,/turf/simulated/floor/carpet,/area/crew_quarters/seconddeck/gym) +"osg" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "ots" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "ouo" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "ouA" = (/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4},/obj/machinery/embedded_controller/radio/airlock/docking_port{dir = 8; frequency = 1380; id_tag = "d2_w1_e_airlock"; pixel_x = 27; req_one_access = list(13)},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) -"ouT" = (/obj/machinery/door/firedoor/border_only,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) -"ovo" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; operating = 0; pixel_y = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/crew_quarters/locker) +"ouT" = (/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/apcenter) +"ovo" = (/obj/effect/floor_decal/spline/fancy/wood/corner{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) "ovw" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) "owy" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Primary Tool Storage"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/steel_grid,/area/storage/primary) "owO" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) @@ -6439,12 +6417,12 @@ "oxN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_medical{name = "Patient Ward"},/turf/simulated/floor/tiled/steel_grid,/area/medical/patient_wing) "oxO" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/door/blast/shutters{dir = 4; id = "kitchen"; layer = 3.3; name = "Kitchen Shutters"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "oyS" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) +"ozl" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "ozL" = (/obj/structure/sink{pixel_y = 16},/obj/structure/mirror{pixel_y = 32},/turf/simulated/floor/tiled/freezer,/area/engineering/engi_restroom) -"oAU" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"oBh" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/glass{name = "Cafeteria"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/cafeteria) +"oBh" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/cafeteria) "oBy" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/cargo) "oBX" = (/obj/machinery/shield_diffuser,/obj/machinery/door/airlock/external{icon_state = "door_locked"; locked = 1; name = "Dock One External Airlock"; req_access = list(13)},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/effect/map_helper/airlock/door/ext_door,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D1) -"oCh" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/glass{name = "Dock"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/D1) +"oCh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/multi_tile/glass,/obj/machinery/door/airlock/multi_tile/glass{name = "Dock"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/D1) "oCL" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "oEU" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/status_display{pixel_y = -32},/turf/simulated/floor/tiled/techmaint,/area/medical/sleeper) "oFM" = (/obj/structure/table/reinforced,/obj/machinery/computer/skills,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/security/checkpoint2) @@ -6459,46 +6437,47 @@ "oJo" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/security/checkpoint2) "oKd" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) "oLQ" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/ward) -"oOz" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"oOz" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "oOB" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "oQj" = (/obj/machinery/neonsign/cafe{id = "cafeopen"},/turf/simulated/wall,/area/library) "oQz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/wood,/area/crew_quarters/bar) "oRM" = (/obj/structure/loot_pile/maint/technical,/turf/simulated/floor/plating,/area/maintenance/cargo) "oSr" = (/obj/structure/table/woodentable,/obj/item/weapon/deck/cards,/turf/simulated/floor/carpet,/area/library) -"oTP" = (/obj/item/weapon/stool/padded,/obj/structure/disposalpipe/segment,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"oTP" = (/obj/item/weapon/stool/padded,/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "oUC" = (/turf/simulated/floor/lino,/area/crew_quarters/bar) "oVk" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/tool/crowbar,/obj/item/weapon/pen,/obj/item/device/flash,/obj/machinery/camera/network/security{c_tag = "SEC - Arrival Checkpoint"; dir = 8},/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/security/checkpoint2) "oVE" = (/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{pixel_x = -3},/obj/item/weapon/reagent_containers/food/condiment/small/peppermill{pixel_x = 3},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "oVW" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/patient_wing) -"oWH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) -"oWK" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/computer/timeclock/premade/north,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) -"oWW" = (/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{pixel_x = -3},/obj/item/weapon/reagent_containers/food/condiment/small/peppermill{pixel_x = 3},/obj/item/weapon/reagent_containers/food/condiment/small/sugar,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/white,/area/crew_quarters/cafeteria) +"oWH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) +"oWK" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/computer/timeclock/premade/north,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"oWW" = (/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{pixel_x = -3},/obj/item/weapon/reagent_containers/food/condiment/small/peppermill{pixel_x = 3},/obj/item/weapon/reagent_containers/food/condiment/small/sugar,/turf/simulated/floor/tiled/white,/area/crew_quarters/cafeteria) "oYz" = (/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/yellow/border{dir = 4},/turf/simulated/floor/tiled,/area/storage/primary) -"oZw" = (/obj/item/clothing/head/soft/mime,/obj/item/clothing/mask/gas/mime,/obj/item/clothing/shoes/mime,/obj/item/clothing/under/mime,/obj/structure/closet/crate,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"oZw" = (/obj/item/clothing/head/soft/mime,/obj/item/clothing/mask/gas/mime,/obj/item/clothing/shoes/mime,/obj/item/clothing/under/mime,/obj/structure/closet/crate,/turf/simulated/floor/plating,/area/crew_quarters/seconddeck/gym) "oZL" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Two Internal Airlock"; req_access = list(13)},/obj/effect/map_helper/airlock/door/int_door,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2/arrivals) "pbb" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) -"pbf" = (/obj/effect/floor_decal/corner/yellow/diagonal,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"pbf" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "pbF" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/cups,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/paleblue/border{dir = 10},/turf/simulated/floor/tiled,/area/medical/surgeryobs) +"pbY" = (/obj/machinery/atmospherics/pipe/simple/hidden/black,/obj/effect/floor_decal/spline/plain{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) "pcq" = (/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/obj/machinery/newscaster{pixel_x = -30},/obj/machinery/camera/network/medbay{c_tag = "MED - Patient Room A"; dir = 4},/obj/effect/floor_decal/borderfloorwhite{dir = 10},/obj/effect/floor_decal/corner/pink/border{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/patient_a) "pcD" = (/obj/machinery/door/firedoor,/obj/effect/wingrille_spawn/reinforced/polarized{id = "chapeloffice"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/chapel/office) "pcG" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/obj/structure/disposalpipe/segment,/turf/simulated/floor/carpet,/area/hallway/secondary/entry/docking_lounge) -"pdw" = (/obj/structure/table/marble,/obj/item/weapon/reagent_containers/food/drinks/teapot,/obj/item/device/flashlight/lamp,/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) +"pdw" = (/obj/structure/table/marble,/obj/item/device/flashlight/lamp,/obj/item/weapon/reagent_containers/food/drinks/teapot,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) "pes" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/obj/machinery/firealarm{dir = 1; pixel_y = -26},/turf/simulated/floor/tiled/white,/area/medical/patient_wing) -"pft" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) +"pft" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "pfJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/cargo) -"pfT" = (/obj/machinery/vending/snack{dir = 1},/obj/structure/sign/christmas/lights,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"pfY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/wood,/area/crew_quarters/bar) +"pfT" = (/obj/machinery/vending/snack{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"pfY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/wood,/area/crew_quarters/bar) "pfZ" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/ward) -"pgK" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "englockdown"; name = "Engineering Lockdown"; opacity = 0},/obj/structure/sign/christmas/wreath,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) "pgN" = (/obj/effect/floor_decal/industrial/warning,/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) -"pgP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/corner/yellow/diagonal,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"pgP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "pgW" = (/obj/machinery/door/airlock/glass_medical{name = "Patient Ward"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/medical/patient_wing) "pgX" = (/obj/effect/floor_decal/spline/plain{dir = 4},/obj/structure/table/marble,/obj/machinery/cash_register/civilian{dir = 8},/obj/machinery/door/blast/shutters{dir = 4; id = "coffeeshop"; layer = 3.1; name = "Cafe Shutters"},/turf/simulated/floor/tiled/old_cargo/yellow,/area/library) -"pho" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/dockhallway) -"phT" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"pho" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/dockhallway) +"phK" = (/obj/effect/floor_decal/spline/plain{dir = 1},/obj/machinery/scale,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) +"phT" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "piE" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume,/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "pjT" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/brown/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"pkl" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/sign/dock/three,/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock Hallway 5"; dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"pkl" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/sign/dock/three,/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock Hallway 5"; dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals6,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "plk" = (/obj/machinery/light/small{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/shield_diffuser,/turf/simulated/floor/airless,/area/maintenance/cargo) "plp" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/ward) "plL" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced/polarized{id = "tabletop_window_tint"},/turf/simulated/floor/plating,/area/library) @@ -6506,26 +6485,25 @@ "pmh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/bar) "pmo" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "pmJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/hallway/secondary/eva_hallway) -"pnz" = (/obj/item/clothing/head/soft/mime,/obj/item/clothing/mask/gas/mime,/obj/item/clothing/shoes/mime,/obj/item/clothing/under/mime,/obj/random/crate,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"pnz" = (/obj/effect/mist,/turf/simulated/floor/water/pool,/area/crew_quarters/seconddeck/gym) "pnB" = (/obj/structure/closet/crate/hydroponics{desc = "All you need to start your own honey farm."; name = "beekeeping crate"},/obj/item/beehive_assembly,/obj/item/bee_smoker,/obj/item/honey_frame,/obj/item/honey_frame,/obj/item/honey_frame,/obj/item/honey_frame,/obj/item/honey_frame,/obj/item/bee_pack,/obj/item/weapon/tool/crowbar,/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/lime/bordercorner{dir = 8},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/hydro,/area/hydroponics) -"poC" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Locker Room"},/obj/item/tape/engineering,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/locker) +"poC" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/seconddeck/gym) "ppW" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plating,/area/maintenance/bar) "pqG" = (/obj/structure/table/marble,/obj/item/weapon/hand_labeler,/obj/item/weapon/reagent_containers/food/condiment/small/sugar,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) "pru" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/secondary/entry/D2) "psn" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/structure/table/standard,/obj/item/weapon/reagent_containers/spray/cleaner{desc = "Someone has crossed out the Space from Space Cleaner and written in Surgery. 'Do not remove under punishment of death!!!' is scrawled on the back."; name = "Surgery Cleaner"; pixel_x = 2; pixel_y = 2},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/pink/border{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/surgery) -"psR" = (/obj/machinery/light{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"psR" = (/obj/machinery/light{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "puy" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/light_switch{dir = 8; name = "light switch "; pixel_x = 37; pixel_y = 5},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/flora/pottedplant/shoot,/obj/machinery/button/windowtint{id = "lounge_window_tint"; pixel_x = 37; pixel_y = -4},/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) "puY" = (/obj/random/trash_pile,/turf/simulated/floor/plating,/area/maintenance/cargo) "pvH" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/industrial/warning,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plating,/area/maintenance/bar) "pwY" = (/obj/structure/disposalpipe/sortjunction/flipped{dir = 4; name = "Bar"; sortType = "Bar"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "pxb" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/reception) "pxc" = (/obj/effect/floor_decal/industrial/warning,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) -"pxL" = (/obj/item/stack/material/plastic{amount = 4},/turf/simulated/floor/plating,/area/crew_quarters/locker) +"pxL" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/green/border,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/structure/closet/athletic_mixed,/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "pyR" = (/obj/effect/floor_decal/chapel{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/table/bench/padded,/turf/simulated/floor/tiled/dark,/area/chapel/main) -"pyT" = (/obj/effect/floor_decal/corner/yellow/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "pzW" = (/obj/item/device/t_scanner,/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/storage/box/lights/mixed,/obj/structure/table/steel,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/item/clothing/glasses/welding,/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/ap_emergency) "pAj" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/vending/wallmed1{pixel_x = 25},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/pink/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/patient_a) -"pAG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/sign/christmas/wreath,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"pAG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "pAQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/bar) "pBm" = (/obj/structure/reagent_dispensers/watertank,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/medbay) "pBr" = (/obj/effect/shuttle_landmark{base_area = /area/space; base_turf = /turf/space; docking_controller = "d2_w1_c_airlock"; landmark_tag = "d2_w1_c"; name = "Deck 2, Dock 1-C"},/turf/space,/area/space) @@ -6535,35 +6513,39 @@ "pEj" = (/obj/machinery/floodlight,/obj/machinery/light/small,/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/ap_emergency) "pEF" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/structure/bed/chair/office/dark,/obj/effect/landmark/start{name = "Psychiatrist"},/obj/machinery/button/remote/airlock{desc = "A remote control-switch for the office door."; id = "mentaldoor"; name = "office door control"; pixel_y = 24},/obj/machinery/camera/network/medbay{c_tag = "MED - Mental Health"; dir = 6},/turf/simulated/floor/carpet/sblucarpet,/area/medical/psych) "pFu" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/paleblue/border{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/patient_wing) -"pFH" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"pFH" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"pFV" = (/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "pGf" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/engineering/foyer) "pGB" = (/turf/simulated/floor/carpet,/area/library) -"pHl" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/chapel/main) +"pHl" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/turf/simulated/floor/tiled/techmaint,/area/chapel/main) "pHx" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/catwalk,/obj/random/junk,/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/medbay) "pIm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "pIH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet,/area/chapel/main) "pIS" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/wood,/area/library) -"pKA" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/tape/engineering,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"pKA" = (/obj/effect/floor_decal/spline/plain,/turf/simulated/floor/boxing{name = "yoga mat"},/area/crew_quarters/seconddeck/gym) "pMt" = (/obj/machinery/computer/HolodeckControl{dir = 1},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/holodeck_control) "pMv" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/industrial/loading{dir = 8},/turf/simulated/floor/tiled,/area/quartermaster/office) -"pNa" = (/obj/structure/window/reinforced{dir = 8; health = 1e+006},/turf/simulated/floor/tiled/dark,/area/crew_quarters/locker) +"pMW" = (/obj/structure/fitness/punchingbag,/obj/effect/floor_decal/spline/plain,/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) +"pNa" = (/obj/structure/table/woodentable,/obj/item/device/starcaster_news,/turf/simulated/floor/carpet,/area/crew_quarters/seconddeck/gym) "pNf" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/secondary/entry/D2) "pOh" = (/obj/structure/bed/chair/office/dark{dir = 4},/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) "pOy" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "pOD" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D3) "pOM" = (/obj/structure/sink/kitchen{pixel_y = 28},/obj/effect/landmark/start{name = "Barista"},/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) -"pPc" = (/obj/machinery/light,/obj/structure/sign/deck/second{pixel_y = -32},/obj/structure/window/reinforced{dir = 8; health = null},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"pPG" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/locker) -"pPU" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"pPc" = (/obj/machinery/light,/obj/structure/sign/deck/second{pixel_y = -32},/obj/structure/window/reinforced{dir = 8; health = null},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"pPG" = (/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) +"pPU" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "pQe" = (/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/effect/floor_decal/borderfloorwhite/corner2{dir = 10},/obj/effect/floor_decal/corner/paleblue/bordercorner2{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/ward) "pRG" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/storage/primary) "pTK" = (/obj/structure/bed/chair/comfy/black{dir = 1},/turf/simulated/floor/carpet,/area/hallway/secondary/entry/docking_lounge) "pTR" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/lino,/area/crew_quarters/bar) +"pUi" = (/obj/effect/floor_decal/spline/plain{dir = 6},/turf/simulated/floor/boxing{name = "yoga mat"},/area/crew_quarters/seconddeck/gym) +"pUn" = (/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "pUo" = (/obj/structure/closet/secure_closet/medical2,/obj/machinery/status_display{pixel_x = 30},/obj/effect/floor_decal/borderfloorwhite{dir = 5},/obj/effect/floor_decal/corner/pink/border{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/surgery2) "pVG" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/wood,/area/library) "pWn" = (/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/reagentgrinder,/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "pWr" = (/obj/structure/shuttle/engine/propulsion{dir = 4; icon_state = "burst_r"},/turf/simulated/floor/airless,/area/shuttle/cryo/station) -"pWH" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"pWH" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "pXi" = (/turf/simulated/shuttle/floor,/area/shuttle/cryo/station) "pXv" = (/turf/simulated/wall/r_wall,/area/teleporter) "pXH" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/high_volume,/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) @@ -6576,28 +6558,28 @@ "qeE" = (/obj/item/device/radio/intercom/department/medbay{pixel_y = -21},/obj/machinery/clonepod/transhuman/full,/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled/white,/area/medical/cryo) "qjt" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/borderfloorwhite/corner{dir = 4},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/patient_wing) "qkB" = (/obj/structure/table/reinforced,/obj/machinery/door/window/brigdoor/westleft{name = "Security Checkpoint"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/security/checkpoint2) -"qkD" = (/turf/simulated/floor/tiled/freezer,/area/crew_quarters/locker) "qkK" = (/obj/item/weapon/material/ashtray/glass,/obj/structure/table/steel,/turf/simulated/floor/plating,/area/maintenance/cargo) "qkT" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/plating,/area/maintenance/substation/cargo) "qle" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/medical{name = "Patient Room A"},/turf/simulated/floor/tiled/steel_grid,/area/medical/patient_a) "qlF" = (/obj/structure/lattice,/obj/structure/grille/broken,/turf/space,/area/space) "qmc" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/camera/network/civilian{c_tag = "CIV - Kitchen"; dir = 4},/obj/structure/table/marble,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "qmt" = (/obj/structure/table/standard,/obj/random/maintenance/clean,/obj/random/maintenance,/obj/item/weapon/tool/crowbar,/turf/simulated/floor/plating,/area/maintenance/bar) -"qmD" = (/obj/effect/landmark/start{name = "Assistant"},/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/hologram/holopad,/turf/simulated/floor/tiled,/area/storage/primary) +"qmD" = (/obj/effect/landmark/start{name = "Assistant"},/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/hologram/holopad,/turf/simulated/floor/tiled/dark,/area/storage/primary) "qmV" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable,/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/medbay) "qmX" = (/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/seconddeck/aft) -"qnA" = (/obj/structure/extinguisher_cabinet{pixel_x = -28},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"qnA" = (/obj/structure/extinguisher_cabinet{pixel_x = -28},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "qom" = (/obj/machinery/door/airlock/glass{name = "Kitchen"; req_access = list(28)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/kitchen) "qoI" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/ap_emergency) +"qoX" = (/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/obj/machinery/door/airlock/multi_tile/glass{dir = 2; name = "Gym"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/seconddeck/gym) "qpO" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/turf/simulated/floor/tiled/dark,/area/crew_quarters/kitchen) -"qqA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"qqA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) "qqJ" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/medical/first_aid_station/seconddeck/port) -"qse" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "qtk" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/chapel/main) "qtD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/obj/structure/bed/chair,/turf/simulated/floor/tiled/white,/area/medical/patient_wing) "qtO" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{name = "Bar Maintenance"; req_access = list(25)},/turf/simulated/floor/plating,/area/crew_quarters/bar) -"qtY" = (/obj/machinery/door/firedoor/border_only,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"qtY" = (/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) "quz" = (/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D2) +"qvY" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/crew_quarters/seconddeck/gym) "qxa" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/bar) "qxp" = (/obj/structure/ladder/up,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/plating,/area/maintenance/bar) "qxU" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/cargo) @@ -6606,31 +6588,29 @@ "qzu" = (/obj/structure/bookcase{name = "bookcase (Reference)"},/obj/item/weapon/book/codex/lore/vir,/obj/item/weapon/book/codex/lore/vir,/obj/item/weapon/book/codex/lore/robutt,/turf/simulated/floor/wood,/area/library) "qzH" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "qAy" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) -"qAW" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"qAW" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "qBe" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/wall/r_wall,/area/hallway/secondary/entry/D1) "qBg" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) "qCZ" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D3) "qDV" = (/obj/structure/bed/chair/comfy/black,/obj/structure/disposalpipe/segment,/turf/simulated/floor/carpet,/area/hallway/secondary/entry/docking_lounge) "qEt" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) -"qFB" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/ai_status_display{pixel_y = -32},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"qGw" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"qFB" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/ai_status_display{pixel_y = -32},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"qGw" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "qHW" = (/obj/structure/sink/kitchen{pixel_y = 28},/obj/machinery/button/remote/blast_door{id = "bar"; name = "Bar Shutters"; pixel_x = -26; pixel_y = -6},/obj/machinery/button/holosign{id = "baropen"; name = "Open Sign"; pixel_x = -24; pixel_y = 6},/obj/machinery/light_switch{name = "light switch "; pixel_x = -32; pixel_y = 6},/obj/machinery/camera/network/civilian{c_tag = "CIV - Bar Fore"; dir = 4},/turf/simulated/floor/lino,/area/crew_quarters/bar) "qIw" = (/obj/effect/floor_decal/chapel,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/table/bench/padded,/turf/simulated/floor/tiled/dark,/area/chapel/main) -"qIZ" = (/obj/structure/closet/crate/engineering,/obj/item/weapon/bedsheet/brown,/obj/item/weapon/coin/silver,/obj/item/weapon/bedsheet/brown,/obj/item/weapon/bedsheet/brown,/obj/item/stack/tile/carpet{amount = 24},/obj/item/weapon/airlock_electronics,/turf/simulated/floor/tiled/dark,/area/crew_quarters/locker) -"qJk" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) -"qJr" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Holodeck Control"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/coffee_shop) +"qJk" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) +"qJr" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "qMI" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/bar) "qOe" = (/turf/simulated/wall,/area/hallway/primary/seconddeck/apcenter) -"qPz" = (/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/junction{dir = 4},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/white,/area/crew_quarters/cafeteria) +"qPz" = (/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/junction{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/cafeteria) "qQv" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "qSA" = (/turf/simulated/wall/r_wall,/area/maintenance/bar) "qSS" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 10},/obj/machinery/floodlight,/turf/simulated/floor/plating,/area/maintenance/bar) "qTx" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/maintenance/bar) "qTW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/hydro,/area/hydroponics) -"qUo" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock{name = "Room 2"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/tape/engineering,/turf/simulated/floor/plating,/area/crew_quarters/locker) -"qUM" = (/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"qVz" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"qVR" = (/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) +"qUo" = (/obj/effect/floor_decal/corner/brown/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled/old_tile/yellow,/area/library) +"qVz" = (/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/seconddeck/gym) +"qVR" = (/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) "qWW" = (/obj/machinery/firealarm{dir = 1; pixel_y = -26},/obj/effect/floor_decal/borderfloorwhite{dir = 6},/obj/effect/floor_decal/corner/pink/border{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/surgery) "qWZ" = (/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/medical/patient_a) "qXP" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; id_tag = null},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2/arrivals) @@ -6638,53 +6618,49 @@ "qYO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "qZd" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/maintenance/bar) "qZe" = (/obj/item/device/radio/intercom/department/medbay{dir = 1; pixel_y = 21},/obj/machinery/vending/wallmed1{pixel_x = 25},/obj/structure/flora/pottedplant/flower,/turf/simulated/floor/carpet/sblucarpet,/area/medical/psych) -"qZT" = (/obj/machinery/light{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"qZT" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "raZ" = (/obj/effect/shuttle_landmark{base_area = /area/space; base_turf = /turf/space; docking_controller = "d2_w3_c_airlock"; landmark_tag = "d2_w3_c"; name = "Deck 2, Dock 3-C"},/turf/space,/area/space) "rbU" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) -"rcp" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/effect/floor_decal/corner/yellow/diagonal,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"rcp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/item/weapon/stool/padded,/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/carpet,/area/crew_quarters/coffee_shop) "rcG" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/structure/cable,/obj/machinery/power/smes/batteryrack/mapped,/turf/simulated/floor/airless,/area/space) "rcV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) -"rdD" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "reH" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/carpet/sblucarpet,/area/medical/psych) "rfD" = (/turf/simulated/wall,/area/medical/psych) -"rfF" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/cap/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/locker) "rfQ" = (/obj/machinery/disease2/incubator,/obj/effect/floor_decal/borderfloorwhite{dir = 6},/obj/effect/floor_decal/corner/lime/border{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/virology) "rgn" = (/obj/structure/table/bench/wooden,/obj/structure/flora/pottedplant/small{pixel_y = 9},/turf/simulated/floor/carpet/oracarpet,/area/library) "rgL" = (/obj/structure/table/glass,/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_y = -32},/obj/item/weapon/reagent_containers/blood/OMinus,/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled/white,/area/medical/ward) -"rhj" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod_berth{frequency = 1380; id_tag = "cryostorage_shuttle_berth"; name = "cryostorage shuttle berth controller"; pixel_x = -26; req_access = list(19); tag_door = "cryostorage_shuttle_berth_hatch"},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"rhj" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod_berth{frequency = 1380; id_tag = "cryostorage_shuttle_berth"; name = "cryostorage shuttle berth controller"; pixel_x = -26; req_access = list(19); tag_door = "cryostorage_shuttle_berth_hatch"},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "ris" = (/turf/simulated/wall/r_wall,/area/hallway/secondary/entry/D1) -"riG" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"riG" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "riV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/table/bench/padded,/turf/simulated/floor/tiled/dark,/area/chapel/main) "rjq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/tiled/dark,/area/chapel/main) -"rkp" = (/obj/item/frame/extinguisher_cabinet,/obj/item/weapon/extinguisher,/turf/simulated/floor/tiled,/area/crew_quarters/locker) +"rkp" = (/obj/effect/floor_decal/spline/plain{dir = 1},/obj/structure/table/standard,/obj/item/clothing/under/shorts/red,/obj/item/clothing/under/shorts/red,/obj/item/clothing/gloves/boxing,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) "rkS" = (/obj/effect/floor_decal/industrial/loading{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2/arrivals) -"rlr" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"rlr" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "rmd" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D3) "rmM" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/cargo) -"rnv" = (/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/machinery/light{dir = 4},/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"rnv" = (/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "rnx" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/wood,/area/library) -"rof" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "roJ" = (/obj/structure/bed/chair/wood,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "roS" = (/obj/effect/shuttle_landmark{base_area = /area/space; base_turf = /turf/space; landmark_tag = "d2_near_sw"; name = "Near SC - Deck 2 South West"},/turf/space,/area/space) "rpn" = (/obj/effect/floor_decal/chapel,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/dark,/area/chapel/main) -"rps" = (/obj/machinery/status_display{pixel_y = -32},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"rpY" = (/obj/structure/disposalpipe/segment,/obj/machinery/ai_status_display{pixel_x = -32},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"rps" = (/obj/machinery/status_display{pixel_y = -32},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"rpY" = (/obj/structure/disposalpipe/segment,/obj/machinery/ai_status_display{pixel_x = -32},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "rqw" = (/obj/effect/floor_decal/borderfloorwhite{dir = 10},/obj/effect/floor_decal/corner/pink/border{dir = 10},/obj/structure/table/standard,/obj/item/stack/medical/advanced/bruise_pack,/obj/item/weapon/surgical/retractor,/turf/simulated/floor/tiled/white,/area/medical/surgery) "rrB" = (/obj/structure/morgue{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/medical/morgue) -"rtr" = (/obj/structure/disposalpipe/segment,/obj/machinery/status_display{layer = 4; pixel_x = 32},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Aft Hallway 1"; dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"rsM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/kitchen) +"rtr" = (/obj/structure/disposalpipe/segment,/obj/machinery/status_display{layer = 4; pixel_x = 32},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Aft Hallway 1"; dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "rtA" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/bar) "ruN" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Hydroponics"; req_access = list(28)},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/steel_grid,/area/hydroponics) "rvu" = (/obj/structure/table/rack{dir = 1},/obj/item/clothing/suit/fire/firefighter,/obj/item/weapon/tank/oxygen,/obj/item/clothing/mask/gas,/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/clothing/glasses/meson,/obj/random/maintenance/engineering,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/bar) -"rwF" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) "rwP" = (/obj/machinery/space_heater,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/storage/emergency_storage/seconddeck/as_emergency) -"rxj" = (/obj/effect/floor_decal/corner/yellow/diagonal,/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"rxj" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "rxE" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/plating,/area/maintenance/locker) "rxI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "rzk" = (/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled,/area/storage/primary) "rzu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/turf/simulated/floor/plating,/area/maintenance/bar) "rzw" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/medbay) "rzK" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/cargo) -"rAb" = (/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/wood,/area/library) "rAm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/industrial/warning,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "rAK" = (/turf/simulated/wall,/area/library) "rBr" = (/obj/structure/reagent_dispensers/fueltank,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/yellow/border{dir = 8},/turf/simulated/floor/tiled,/area/storage/primary) @@ -6695,15 +6671,14 @@ "rDB" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/medbay) "rDC" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/effect/floor_decal/industrial/warning,/obj/machinery/iv_drip,/turf/simulated/floor/tiled/white,/area/medical/sleeper) "rDG" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; id_tag = null},/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{frequency = 1380; id_tag = "escape_dock_snorth_airlock"; master_tag = "escape_dock"; pixel_y = 27; req_one_access = list(13); tag_airlock_mech_sensor = null; tag_airpump = null; tag_chamber_sensor = null; tag_exterior_door = null; tag_interior_door = null; tag_shuttle_mech_sensor = null},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2) -"rEq" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/device/radio/beacon,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) -"rEJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/border_only,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"rEq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/device/radio/beacon,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) +"rEJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/docking_hallway2) "rEL" = (/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = -24},/obj/machinery/button/windowtint{id = "chapel"; pixel_x = -11; pixel_y = -25},/turf/simulated/floor/tiled/dark,/area/chapel/main) -"rEO" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8},/turf/simulated/floor/plating,/area/crew_quarters/locker) "rFO" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/maintenance/bar) "rGT" = (/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/effect/floor_decal/borderfloorwhite{dir = 10},/obj/effect/floor_decal/corner/pink/border{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/patient_b) "rHy" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/white,/area/medical/sleeper) -"rIm" = (/obj/effect/floor_decal/corner/yellow/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"rIE" = (/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"rIm" = (/obj/effect/floor_decal/corner/yellow/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 6},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"rIE" = (/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "rJB" = (/obj/machinery/camera/network/civilian{c_tag = "CIV - Kitchen Cold Room"; dir = 1},/obj/structure/closet/chefcloset,/obj/item/glass_jar,/obj/item/device/retail_scanner/civilian,/obj/item/weapon/soap/nanotrasen,/obj/item/device/destTagger{pixel_x = 4; pixel_y = 3},/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/item/clothing/gloves/sterile/latex,/obj/item/clothing/gloves/sterile/latex,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/kitchen) "rMh" = (/obj/structure/table/woodentable,/obj/item/weapon/material/kitchen/utensil/fork,/obj/item/weapon/material/kitchen/utensil/spoon{pixel_x = 2},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "rMM" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) @@ -6712,63 +6687,61 @@ "rPK" = (/obj/structure/bookcase{name = "bookcase (Reference)"},/turf/simulated/floor/wood,/area/library) "rQu" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled/white,/area/medical/patient_wing) "rQx" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"rRg" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"rRg" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "rRk" = (/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/cargo) "rRD" = (/obj/effect/floor_decal/chapel{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/dark,/area/chapel/main) "rSd" = (/obj/structure/sign/deck/second,/turf/simulated/wall/r_wall,/area/hallway/primary/seconddeck/dockhallway) "rTr" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/structure/disposalpipe/sortjunction/flipped{dir = 4; name = "Kitchen"; sortType = "Kitchen"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "rUs" = (/obj/random/plushielarge,/turf/simulated/floor/plating,/area/maintenance/locker) "rUA" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D1) -"rWa" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/coffee_shop) "rWs" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; id_tag = null},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "rXg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/plating,/area/maintenance/bar) -"rXm" = (/obj/item/latexballon,/turf/simulated/floor,/area/crew_quarters/locker) -"rXE" = (/turf/simulated/floor/tiled,/area/crew_quarters/locker) +"rXm" = (/obj/machinery/atmospherics/unary/heater/sauna{dir = 8; icon_state = "heater_1"; use_power = 1},/turf/simulated/floor/tiled/techmaint,/area/crew_quarters/seconddeck/gym) +"rXE" = (/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/vending/snack{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals9,/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "rXO" = (/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled/white,/area/medical/ward) "rXU" = (/obj/structure/table/steel,/obj/item/weapon/storage/box/lights/mixed,/obj/item/device/t_scanner,/obj/structure/closet/hydrant{pixel_y = -32},/turf/simulated/floor/plating,/area/maintenance/locker) "rXY" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/carpet/sblucarpet,/area/medical/psych) "rYB" = (/obj/effect/floor_decal/industrial/loading{dir = 4},/turf/simulated/floor/tiled,/area/quartermaster/office) "rZA" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{name = "Kitchen Maintenance"; req_access = list(28)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/kitchen) -"rZG" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/obj/machinery/status_display{pixel_y = 32},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"rZG" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "saJ" = (/obj/structure/table/rack,/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/clothing/mask/gas,/obj/item/device/flashlight,/obj/item/clothing/glasses/meson,/obj/random/maintenance/cargo,/obj/random/cash,/turf/simulated/floor,/area/maintenance/bar) "saP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "scT" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "sdq" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/docking_hallway2) "sdA" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "sdE" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/kitchen) -"seD" = (/turf/simulated/floor/carpet,/area/crew_quarters/coffee_shop) +"seD" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "seI" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/structure/closet/secure_closet/freezer/fridge,/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "seO" = (/obj/structure/bed/chair/comfy/black{dir = 1},/obj/structure/disposalpipe/segment,/turf/simulated/floor/carpet,/area/hallway/secondary/entry/docking_lounge) "sfi" = (/obj/machinery/portable_atmospherics/hydroponics,/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/lime/bordercorner{dir = 8},/turf/simulated/floor/tiled/hydro,/area/hydroponics) "sfv" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/bar) "sfI" = (/obj/machinery/ai_status_display,/turf/simulated/shuttle/wall/no_join,/area/shuttle/cryo/station) -"sfU" = (/obj/structure/disposalpipe/segment,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Aft Hallway 2"; dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"sfU" = (/obj/structure/disposalpipe/segment,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Aft Hallway 2"; dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "sga" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/bar) +"sgc" = (/obj/machinery/atmospherics/pipe/manifold/hidden/black{dir = 1},/obj/effect/floor_decal/spline/plain{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) "sgx" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/status_display{layer = 4; pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "shB" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light,/turf/simulated/floor/tiled/dark,/area/chapel/main) "shU" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) -"siq" = (/obj/machinery/light{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"siq" = (/obj/machinery/light{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "skB" = (/obj/effect/wingrille_spawn/reinforced,/obj/structure/sign/warning/evac,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D1) "smA" = (/obj/structure/closet/secure_closet/personal/patient,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/machinery/light,/obj/effect/floor_decal/borderfloorwhite{dir = 6},/obj/effect/floor_decal/corner/pink/border{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/patient_a) "snD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/medbay) -"soe" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "crglockdown"; name = "Cargo Lockdown"; opacity = 0},/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) "soz" = (/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/newscaster{pixel_x = 30},/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/yellow/border{dir = 6},/turf/simulated/floor/tiled,/area/storage/primary) "spx" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Three Internal Airlock"; req_access = list(13)},/obj/effect/map_helper/airlock/door/int_door,/obj/effect/map_helper/airlock/button/int_button,/obj/machinery/access_button{dir = 4; name = "interior access button"; pixel_x = 7; pixel_y = -27; req_one_access = null},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D3) -"sqd" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"sqd" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "sql" = (/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "srU" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/status_display{layer = 4; pixel_x = -32},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "ssC" = (/obj/machinery/power/breakerbox/activated{RCon_tag = "Medical Substation Bypass"},/turf/simulated/floor/plating,/area/maintenance/substation/medical) -"ssP" = (/obj/machinery/vending/assist,/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/yellow/border{dir = 4},/turf/simulated/floor/tiled,/area/storage/primary) -"ssW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"ssP" = (/obj/machinery/vending/assist{dir = 8; pixel_x = 5},/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/yellow/border{dir = 4},/turf/simulated/floor/tiled,/area/storage/primary) +"ssW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/dockhallway) "stb" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) -"stl" = (/obj/structure/table/standard,/obj/item/weapon/towel,/obj/item/weapon/towel,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/locker) +"stl" = (/turf/simulated/floor/boxing{name = "yoga mat"},/area/crew_quarters/seconddeck/gym) "stp" = (/obj/machinery/door/airlock/external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Two External Airlock"; req_access = list(13)},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/shield_diffuser,/obj/effect/map_helper/airlock/door/ext_door,/obj/effect/map_helper/airlock/button/ext_button,/obj/machinery/access_button{dir = 8; name = "exterior access button"; pixel_x = -7; pixel_y = -27; req_one_access = null},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2) "str" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/kitchen) -"stH" = (/obj/machinery/hologram/holopad,/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"sut" = (/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"stH" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"svD" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/floor/carpet,/area/crew_quarters/seconddeck/gym) "svX" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/camera/network/engineering{c_tag = "SUBS - Security"; dir = 1},/turf/simulated/floor/plating,/area/maintenance/substation/security) -"swR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"sxh" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/dark,/area/chapel/main) +"sxh" = (/obj/machinery/door/firedoor/multi_tile/glass,/obj/machinery/door/airlock/multi_tile/glass{name = "Gym"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/seconddeck/gym) "sxZ" = (/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/obj/structure/extinguisher_cabinet{pixel_y = -30},/turf/simulated/floor/tiled/white,/area/medical/patient_wing) "syd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/sc/cmo) "syJ" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/table/steel,/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor/plating,/area/maintenance/cargo) @@ -6777,39 +6750,34 @@ "szj" = (/obj/structure/closet/wardrobe/medic_white,/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/ward) "szT" = (/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "sAd" = (/obj/structure/bookcase{name = "bookcase (Non-Fiction)"},/turf/simulated/floor/carpet/oracarpet,/area/library) -"sAg" = (/obj/structure/bed/chair/wood{dir = 1},/obj/machinery/atm{pixel_x = 30},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"sAg" = (/obj/structure/bed/chair/wood{dir = 1},/obj/machinery/atm{pixel_x = 30},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "sAC" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/tiled/white,/area/rnd/mixing) "sAH" = (/obj/machinery/seed_storage/garden,/turf/simulated/floor/tiled/hydro,/area/hydroponics) -"sBh" = (/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/carpet,/area/library) "sCg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/hologram/holopad,/turf/simulated/floor/wood,/area/library) "sCE" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/lime/border{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/tiled/hydro,/area/hydroponics) -"sDc" = (/obj/machinery/status_display,/turf/simulated/wall,/area/crew_quarters/locker) -"sDg" = (/obj/machinery/light,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) -"sDn" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) +"sDc" = (/obj/machinery/status_display,/turf/simulated/wall,/area/crew_quarters/seconddeck/gym) +"sDg" = (/obj/machinery/light,/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "sDq" = (/obj/item/trash/candle,/turf/simulated/floor/plating,/area/maintenance/locker) -"sDs" = (/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/ascenter) -"sEx" = (/obj/effect/floor_decal/corner/yellow/diagonal,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"sFE" = (/obj/structure/window/reinforced,/obj/structure/bed/chair/comfy/brown{dir = 1},/turf/simulated/floor/carpet,/area/crew_quarters/coffee_shop) +"sEx" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/effect/floor_decal/corner/yellow/diagonal,/obj/machinery/light_switch{dir = 4; pixel_x = -25; pixel_y = 11},/obj/machinery/button/windowtint{id = "gamble_window_tint"; pixel_x = -24; pixel_y = -10; range = 9},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "sFM" = (/obj/machinery/photocopier,/obj/machinery/camera/network/civilian{c_tag = "CIV - Internal Affairs"; dir = 5},/obj/effect/floor_decal/borderfloorblack{dir = 8},/obj/effect/floor_decal/corner/blue/border{dir = 8},/turf/simulated/floor/tiled/dark,/area/lawoffice) -"sGr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"sGr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "sHn" = (/obj/structure/bed/chair/wood{dir = 1},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"sIk" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock 2 Aft"; dir = 4},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"sIk" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock 2 Aft"; dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "sIs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/cargo) "sJI" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Three Internal Airlock"; req_access = list(13)},/obj/effect/map_helper/airlock/door/int_door,/obj/effect/map_helper/airlock/button/int_button,/obj/machinery/access_button{dir = 1; master_tag = null; name = "interior access button"; pixel_x = 27; pixel_y = 7},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D3) "sKG" = (/obj/structure/table/glass,/turf/simulated/floor/tiled/dark,/area/medical/patient_wing) -"sKT" = (/obj/item/weapon/stool/padded,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"sLS" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/firedoor/glass,/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/green/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) -"sMt" = (/obj/machinery/door/morgue{dir = 2; name = "Confession Booth (Chaplain)"; req_access = list(22)},/turf/simulated/floor/tiled/dark,/area/chapel/main) -"sNc" = (/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"sKT" = (/obj/item/weapon/stool/padded,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"sLS" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/green/border,/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/docking_hallway2) +"sMt" = (/obj/machinery/door/morgue{dir = 2; name = "Confession Booth (Chaplain)"; req_access = list(22)},/turf/simulated/floor/tiled/techmaint,/area/chapel/main) "sNg" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/structure/closet/emcloset,/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) -"sOC" = (/obj/machinery/light{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"sOC" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "sOI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/patient_a) "sOZ" = (/obj/structure/sign/warning/docking_area,/turf/simulated/wall/r_wall,/area/hallway/secondary/entry/D3) "sPi" = (/obj/structure/bed/chair/office/dark,/obj/effect/landmark/start{name = "Librarian"},/turf/simulated/floor/wood,/area/library) "sPZ" = (/obj/structure/table/steel,/obj/machinery/recharger,/obj/item/weapon/stamp{pixel_x = -3; pixel_y = 3},/obj/item/weapon/hand_labeler,/turf/simulated/floor/tiled/dark,/area/quartermaster/office) -"sSi" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/item/weapon/tool/crowbar/red,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"sSi" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/item/weapon/tool/crowbar/red,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "sSl" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -36},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/tiled,/area/storage/primary) -"sUh" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) +"sUh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/D1) "sUt" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/machinery/power/solar,/turf/simulated/floor/airless,/area/space) "sWh" = (/obj/machinery/atmospherics/binary/pump/on{dir = 1; target_pressure = 200},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/locker) "sWJ" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "crg_aft_outer"; locked = 1; name = "External Airlock Access"; req_access = list(13)},/turf/simulated/floor,/area/maintenance/cargo) @@ -6822,40 +6790,38 @@ "taM" = (/obj/structure/bed/chair/office/dark{dir = 8},/turf/simulated/floor/carpet,/area/library) "taU" = (/obj/effect/shuttle_landmark{base_area = /area/space; base_turf = /turf/space; docking_controller = "d2_w2_e_airlock"; landmark_tag = "d2_w2_e"; name = "Deck 2, Dock 2-E"},/turf/space,/area/space) "tce" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/cryopod{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/cryo/station) -"tcy" = (/obj/item/weapon/camera_assembly,/turf/simulated/floor/tiled,/area/crew_quarters/locker) -"tdm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light,/obj/structure/sign/christmas/wreath{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"tdm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) "tdq" = (/obj/structure/closet/secure_closet/personal/patient,/obj/machinery/camera/network/medbay{c_tag = "MED - Patient Room B"; dir = 8},/obj/machinery/newscaster{pixel_x = 30},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/machinery/light,/obj/effect/floor_decal/borderfloorwhite{dir = 6},/obj/effect/floor_decal/corner/pink/border{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/patient_b) "tds" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/canister/air/airlock,/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/maintenance/locker) "tdJ" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/carpet,/area/chapel/main) -"teh" = (/obj/structure/noticeboard{pixel_y = 28},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/corner/paleblue{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/reception) +"teh" = (/obj/structure/noticeboard{pixel_y = 28},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/reception) "tfi" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced/polarized{id = "library_window_tint"},/turf/simulated/floor/plating,/area/library) "tft" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled/monotile,/area/hallway/secondary/entry/D2) -"tfv" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/yellow/bordercorner,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) -"tfF" = (/obj/machinery/ai_status_display{pixel_y = -32},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"tfG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/sign/dock/two,/obj/structure/sign/christmas/wreath{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"tfQ" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"tfv" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/yellow/bordercorner,/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"tfF" = (/obj/machinery/ai_status_display{pixel_y = -32},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"tfG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/sign/dock/two,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"tfQ" = (/obj/effect/floor_decal/spline/fancy/wood,/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 4},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) "tgb" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D3) "tgd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "thh" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 6},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/plating,/area/maintenance/bar) -"tie" = (/obj/machinery/light,/obj/item/stack/tile/floor,/obj/item/stack/tile/floor,/turf/simulated/floor/tiled,/area/crew_quarters/locker) "tiT" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/yellow/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/yellow/bordercorner2{dir = 8},/turf/simulated/floor/tiled,/area/storage/primary) "tiZ" = (/obj/structure/sink/kitchen{pixel_y = 28},/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "tka" = (/obj/item/weapon/storage/toolbox/emergency,/obj/machinery/light/small{dir = 8},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/chapel) "tkz" = (/obj/structure/closet/wardrobe/chaplain_black,/turf/simulated/floor/lino,/area/chapel/office) "tkH" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/table/reinforced,/obj/item/weapon/folder/red_hos,/obj/item/weapon/paper_bin,/obj/item/weapon/pen/multi,/obj/item/weapon/stamp/hos,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hos) "tkJ" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/turf/simulated/floor/tiled,/area/medical/morgue) -"tla" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/door/airlock/glass{name = "Dock"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/D3) +"tla" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/door/firedoor/multi_tile/glass,/obj/machinery/door/airlock/multi_tile/glass{name = "Dock"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/D3) "toq" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/carpet/oracarpet,/area/library) "tos" = (/turf/simulated/wall,/area/crew_quarters/bar) -"toU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/lino,/area/crew_quarters/bar) +"toU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/lino,/area/crew_quarters/bar) "tpH" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D3) -"trt" = (/obj/structure/table/glass,/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/aft) +"trt" = (/obj/structure/table/glass,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/aft) "trT" = (/obj/machinery/camera/network/medbay{c_tag = "MED - Diagnostics"; dir = 1},/obj/effect/floor_decal/borderfloorwhite/corner2,/obj/effect/floor_decal/borderfloorwhite/corner2{dir = 9},/obj/effect/floor_decal/corner/pink/bordercorner2,/obj/effect/floor_decal/corner/pink/bordercorner2{dir = 9},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/sleeper) "tsl" = (/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "tso" = (/obj/effect/floor_decal/borderfloorwhite/corner,/obj/effect/floor_decal/corner/paleblue/bordercorner,/turf/simulated/floor/tiled/white,/area/medical/ward) "ttq" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced/polarized{id = "lounge_window_tint"},/turf/simulated/floor/plating,/area/hallway/secondary/entry/docking_lounge) "ttW" = (/obj/structure/table/woodentable,/obj/item/toy/plushie/therapy/blue,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/status_display{pixel_x = -32},/turf/simulated/floor/carpet/sblucarpet,/area/medical/psych) -"tuI" = (/obj/structure/railing,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/open,/area/hallway/primary/seconddeck/aft) +"tuI" = (/obj/structure/railing,/turf/simulated/open,/area/hallway/primary/seconddeck/aft) "twc" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/white,/area/medical/ward) "twh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Dock 3 Fore"; dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "twl" = (/obj/machinery/door/firedoor,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/medical/patient_wing) @@ -6865,7 +6831,7 @@ "tyL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "tyZ" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/status_display{layer = 4; pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "tzP" = (/turf/simulated/wall/r_wall,/area/hallway/secondary/docking_hallway2) -"tAj" = (/obj/effect/floor_decal/corner/yellow/diagonal,/obj/machinery/atm{pixel_y = -30},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"tAj" = (/obj/machinery/atm{pixel_y = -30},/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "tAt" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/kitchen) "tAF" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/carpet/sblucarpet,/area/medical/psych) "tBz" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) @@ -6875,33 +6841,32 @@ "tDO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/holodeck_control) "tEa" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/camera/network/medbay{c_tag = "MED - Cryogenics"; dir = 1},/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/obj/machinery/computer/transhuman/resleeving{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/cryo) "tEP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"tFJ" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "tHE" = (/obj/structure/morgue,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/turf/simulated/floor/tiled,/area/medical/morgue) -"tKl" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/vending/wallmed1{name = "NanoMed Wall"; pixel_x = 25},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"tKl" = (/obj/machinery/vending/wallmed1{name = "NanoMed Wall"; pixel_x = 25},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "tNa" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "tNh" = (/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/obj/machinery/transhuman/resleever,/obj/machinery/light,/turf/simulated/floor/tiled/white,/area/medical/cryo) "tPA" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/library) -"tQh" = (/obj/item/weapon/stool/padded,/obj/machinery/atmospherics/unary/vent_pump/on,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"tQh" = (/obj/item/weapon/stool/padded,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "tQn" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/camera/network/civilian{c_tag = "CIV - Primary Tool Storage"; dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/yellow/border,/turf/simulated/floor/tiled,/area/storage/primary) "tRm" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/lino,/area/crew_quarters/bar) "tSo" = (/obj/structure/table/reinforced,/obj/machinery/computer/skills{pixel_y = 4},/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloorwhite/corner,/obj/effect/floor_decal/corner/blue/bordercorner,/turf/simulated/floor/tiled/white,/area/crew_quarters/heads/sc/cmo) -"tSv" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/glass{name = "Coffee Shop"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/coffee_shop) +"tSv" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced/polarized{id = "gamble_window_tint"},/turf/simulated/floor/plating,/area/crew_quarters/coffee_shop) "tVa" = (/obj/effect/shuttle_landmark{base_area = /area/space; base_turf = /turf/space; docking_controller = "d2_w3_e_airlock"; landmark_tag = "d2_w3_e"; name = "Deck 2, Dock 3-E"},/turf/space,/area/space) "tVq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/medical/sleeper) "tWd" = (/obj/machinery/optable,/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled,/area/medical/morgue) -"tWT" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/crew_quarters/locker) -"tYj" = (/obj/machinery/door/firedoor/border_only,/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"tYj" = (/obj/machinery/door/firedoor/border_only,/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) "tYk" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/lino,/area/chapel/office) -"tYm" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/holodeck_control) -"tYY" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) +"tYY" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) +"tZC" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 4},/turf/simulated/floor/wood,/area/library) "tZJ" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/structure/closet/crate,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/item/weapon/material/knife,/turf/simulated/floor/plating,/area/maintenance/bar) "uaf" = (/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Three Internal Airlock"; req_access = list(13)},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/effect/map_helper/airlock/door/int_door,/obj/effect/map_helper/airlock/button/int_button,/obj/machinery/access_button{dir = 8; name = "interior access button"; pixel_x = -7; pixel_y = 27},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D3) -"uay" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/sortjunction/flipped{dir = 8; name = "Primary Tool Storage"; sortType = "Primary Tool Storage"},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"uay" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/sortjunction/flipped{dir = 8; name = "Primary Tool Storage"; sortType = "Primary Tool Storage"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "uaW" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "ubN" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/white,/area/medical/ward) "ubU" = (/obj/structure/table/marble,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/machinery/button/remote/blast_door{id = "coffeeshop"; name = "Cafe Shutters"; pixel_y = 26},/obj/structure/extinguisher_cabinet{pixel_x = -28},/obj/machinery/button/neonsign{id = "cafeopen"; name = "Cafe Sign Switch"; pixel_x = 11; pixel_y = 27},/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) -"ucP" = (/obj/structure/flora/ausbushes/ppflowers,/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) "udG" = (/obj/machinery/floodlight,/turf/simulated/floor/plating,/area/maintenance/locker) -"ueP" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"ueP" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/obj/machinery/firealarm{pixel_y = 24},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "ueT" = (/turf/simulated/wall,/area/hallway/secondary/docking_hallway2) "ueZ" = (/obj/structure/table/marble,/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = 8; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = -4; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = 8; pixel_y = -4},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = -4; pixel_y = -4},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = 8},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = -4},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = 8; pixel_y = 12},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = -4; pixel_y = 12},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) "ufg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/library) @@ -6909,37 +6874,37 @@ "ufl" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/effect/floor_decal/borderfloor/corner2,/obj/effect/floor_decal/corner/brown/bordercorner2,/turf/simulated/floor/tiled,/area/quartermaster/office) "ugD" = (/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/door/blast/shutters{dir = 4; id = "kitchen"; layer = 3.3; name = "Kitchen Shutters"},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "ugP" = (/turf/simulated/floor/plating,/area/maintenance/locker) -"uhf" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"uhf" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "uhs" = (/obj/structure/table/woodentable,/obj/item/device/camera_film,/obj/item/device/camera_film,/obj/item/device/paicard,/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/wood,/area/library) "uhF" = (/obj/structure/table/glass,/obj/item/roller,/obj/machinery/light{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/white,/area/medical/virology) -"uhV" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"uhV" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/green/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "uhW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/hologram/holopad,/turf/simulated/floor/wood,/area/library) -"uig" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) "uiI" = (/obj/machinery/door/firedoor/border_only,/obj/effect/floor_decal/industrial/loading{dir = 8},/obj/structure/plasticflaps{opacity = 1},/obj/machinery/navbeacon/delivery/west{location = "Kitchen"},/turf/simulated/floor/tiled,/area/crew_quarters/kitchen) "uji" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/tiled/dark,/area/chapel/main) -"ujY" = (/obj/structure/closet/secure_closet/personal,/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/item/clothing/head/kitty,/obj/item/clothing/head/kitty,/turf/simulated/floor/tiled/dark,/area/crew_quarters/locker) +"ujY" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/green/border,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) +"ukI" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "ukV" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "unr" = (/obj/machinery/body_scanconsole,/turf/simulated/floor/tiled/white,/area/medical/sleeper) -"uoP" = (/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/structure/disposalpipe/segment,/obj/item/device/starcaster_news{pixel_x = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/white,/area/crew_quarters/cafeteria) +"uoP" = (/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/structure/disposalpipe/segment,/obj/item/device/starcaster_news{pixel_x = 8},/turf/simulated/floor/tiled/white,/area/crew_quarters/cafeteria) "upp" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/shield_diffuser,/obj/machinery/door/airlock/external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Two External Airlock"; req_access = list(13)},/obj/structure/fans/tiny,/obj/effect/map_helper/airlock/door/ext_door,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2/arrivals) "uqg" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/tiled/dark,/area/medical/patient_wing) "uqj" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/medbay) "uqP" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/bar) "uqR" = (/obj/structure/noticeboard{pixel_x = -32},/turf/simulated/floor/wood,/area/library) "usp" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/maintenance/locker) -"uss" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/starboard) -"utr" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced/polarized{id = "holodeck_tint"},/obj/machinery/camera/network/civilian{c_tag = "CIV - Holodeck Starboard"; dir = 8},/turf/simulated/floor/plating,/area/holodeck_control) "utG" = (/obj/structure/bed/chair/office/dark{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/security/checkpoint2) "utJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/obj/random/mob/mouse,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/bar) "utZ" = (/obj/structure/table/marble,/obj/machinery/chemical_dispenser/bar_alc/full,/obj/structure/sign/double/barsign{pixel_y = 32},/turf/simulated/floor/lino,/area/crew_quarters/bar) "uuU" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/medical/morgue) "uvS" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/medical/cryo) "uwj" = (/turf/simulated/floor/wood,/area/library) -"uxi" = (/obj/machinery/lapvend,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/yellow/border{dir = 4},/turf/simulated/floor/tiled,/area/storage/primary) +"uxi" = (/obj/machinery/lapvend{dir = 4; pixel_x = 5},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/yellow/border{dir = 4},/turf/simulated/floor/tiled,/area/storage/primary) "uxr" = (/obj/effect/floor_decal/chapel,/turf/simulated/floor/tiled/dark,/area/chapel/main) "uxt" = (/obj/machinery/light/small{dir = 4},/obj/random/junk,/turf/simulated/floor,/area/maintenance/bar) "uxZ" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/lino,/area/crew_quarters/bar) +"uzy" = (/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/seconddeck/gym) "uzI" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) +"uAt" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "uAD" = (/obj/item/weapon/stool/padded,/turf/simulated/floor/wood,/area/library) "uAZ" = (/obj/structure/table/standard,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = 12; pixel_y = -24},/obj/structure/cable/green,/obj/random/soap,/obj/random/soap,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/barrestroom) "uCb" = (/obj/item/device/radio/intercom/department/medbay{pixel_y = -24},/obj/structure/table/standard,/obj/item/weapon/surgical/hemostat,/obj/item/weapon/surgical/cautery,/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/pink/border,/turf/simulated/floor/tiled/white,/area/medical/surgery2) @@ -6947,44 +6912,42 @@ "uDr" = (/obj/structure/closet/crate/plastic,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/item/weapon/storage/mre/random,/turf/simulated/floor/plating,/area/maintenance/medbay) "uDM" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "uEc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) -"uEk" = (/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "uEF" = (/obj/structure/table/woodentable,/obj/machinery/reagentgrinder,/obj/item/weapon/reagent_containers/food/drinks/shaker,/obj/item/weapon/packageWrap,/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green,/turf/simulated/floor/wood,/area/crew_quarters/bar) "uET" = (/obj/structure/flora/pottedplant/flower{pixel_y = 10},/obj/structure/table/bench/wooden,/turf/simulated/floor/wood,/area/library) "uGj" = (/turf/simulated/wall/r_wall,/area/medical/virology) "uHc" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) "uHz" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{frequency = 1380; id_tag = "escape_dock_north_airlock"; master_tag = "escape_dock"; pixel_y = 27; req_one_access = list(13); tag_airlock_mech_sensor = null; tag_airpump = null; tag_chamber_sensor = null; tag_exterior_door = null; tag_interior_door = null; tag_shuttle_mech_sensor = null},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D1) "uIb" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Two Internal Airlock"; req_access = list(13)},/obj/effect/map_helper/airlock/door/int_door,/obj/machinery/access_button{dir = 8; name = "interior access button"; pixel_x = -7; pixel_y = 27},/obj/effect/map_helper/airlock/button/int_button,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2/arrivals) -"uIE" = (/obj/item/clothing/gloves/rainbow,/obj/item/clothing/head/soft/rainbow,/obj/item/clothing/shoes/rainbow,/obj/item/clothing/under/color/rainbow,/obj/item/weapon/bedsheet/rainbow,/obj/item/weapon/pen/crayon/rainbow,/obj/random/crate,/turf/simulated/floor,/area/crew_quarters/locker) +"uIE" = (/obj/structure/fitness/punchingbag,/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) "uIN" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled/dark,/area/chapel/main) "uJr" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/freezer{name = "Kitchen cold room"; req_access = list(28)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/kitchen) "uLk" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/sleeper) "uMn" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D2) -"uMC" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/corner/yellow/diagonal,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"uMC" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/bed/chair/oldsofa{dir = 5},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/coffee_shop) "uNh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/security/checkpoint2) "uNi" = (/obj/structure/catwalk,/obj/item/tape/engineering,/turf/simulated/floor/plating,/area/maintenance/medbay) -"uPq" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/corner/green/bordercorner2{dir = 10},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"uQN" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/locker) +"uNA" = (/obj/structure/fitness/weightlifter,/obj/effect/floor_decal/spline/plain{dir = 10},/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) +"uQN" = (/obj/machinery/fitness/heavy/lifter,/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) "uRk" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hydroponics) "uSG" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 4},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/medbay) "uTy" = (/obj/random/mob/mouse,/turf/simulated/floor/plating,/area/maintenance/locker) -"uTV" = (/obj/structure/sign/christmas/wreath{dir = 1},/turf/simulated/floor/tiled,/area/engineering/foyer) "uVN" = (/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/dockhallway) "uWb" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/library) "uWK" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/dark,/area/chapel/main) -"uZx" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"uZx" = (/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "uZI" = (/obj/structure/table/woodentable,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/item/weapon/clipboard,/obj/item/weapon/folder/blue,/obj/item/weapon/folder/red,/obj/item/weapon/folder/blue,/obj/machinery/light{dir = 8},/obj/structure/extinguisher_cabinet{pixel_y = 30},/turf/simulated/floor/carpet/sblucarpet,/area/medical/psych) "uZK" = (/obj/machinery/pointdefense{id_tag = "PD Main"},/turf/simulated/floor/airless,/area/space) "vaL" = (/obj/structure/table/woodentable,/obj/machinery/photocopier/faxmachine{department = "Public Office"; req_one_access = newlist()},/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) -"vbq" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) +"vbq" = (/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/obj/machinery/door/airlock/multi_tile/glass{dir = 2; name = "Central Access"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) "vbJ" = (/obj/structure/morgue/crematorium{dir = 1; id = "Chapelburn"},/turf/simulated/floor/tiled/dark,/area/chapel/main) "vbL" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/medical{id_tag = "mentaldoor"; name = "Mental Health"; req_access = list(64)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/steel_grid,/area/medical/psych) "vbX" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/obj/machinery/newscaster{pixel_x = 30},/obj/structure/curtain/open/privacy,/obj/effect/floor_decal/borderfloorwhite{dir = 5},/obj/effect/floor_decal/corner/paleblue/border{dir = 5},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled/white,/area/medical/ward) "vco" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/security/checkpoint2) "vcv" = (/obj/structure/closet/crate,/obj/random/drinkbottle,/obj/random/tech_supply,/obj/random/tech_supply,/obj/random/action_figure,/obj/random/plushie,/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/plating,/area/maintenance/bar) "vcN" = (/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Two Internal Airlock"; req_access = list(13)},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/effect/map_helper/airlock/door/int_door,/obj/machinery/access_button{dir = 4; name = "interior access button"; pixel_x = 7; pixel_y = -27; req_one_access = null},/obj/effect/map_helper/airlock/button/int_button,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2) -"vdc" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"vdc" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "vdd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/cargo) -"veb" = (/obj/structure/flora/ausbushes/ppflowers,/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) +"vdL" = (/obj/effect/floor_decal/spline/plain{dir = 4},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 0; external_pressure_bound_default = 0; icon_state = "map_vent_in"; initialize_directions = 1; internal_pressure_bound = 4000; internal_pressure_bound_default = 4000; pressure_checks = 2; pressure_checks_default = 2; pump_direction = 0; use_power = 1},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) "vfn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "vfz" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/hallway/secondary/entry/D3) "vgH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/medbay) @@ -6996,88 +6959,87 @@ "vjZ" = (/obj/structure/bookcase{name = "Forbidden Knowledge"},/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/turf/simulated/floor/carpet,/area/library) "vkv" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/pink/border{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled/white,/area/medical/sleeper) "vmb" = (/obj/machinery/hologram/holopad,/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"vmw" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/port) -"vof" = (/obj/machinery/vending/coffee{dir = 1},/obj/structure/sign/christmas/lights,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"vof" = (/obj/machinery/vending/coffee{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "voE" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) "voL" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/curtain/open/privacy,/turf/simulated/floor/tiled/steel_grid,/area/medical/cryo) -"vpH" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) -"vpM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) +"vpH" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) +"vpM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "vqB" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/maintenance/bar) -"vrg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/corner/yellow/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"vrh" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass,/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/docking_hallway2) +"vrg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/corner/yellow/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"vrh" = (/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/docking_hallway2) "vrr" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/dark,/area/chapel/main) -"vtu" = (/obj/structure/table/woodentable,/obj/item/weapon/flame/candle,/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/light_switch{name = "light switch "; pixel_x = 38},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"vtR" = (/obj/structure/bed/chair/wood,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/effect/floor_decal/corner/yellow/diagonal,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"vuU" = (/obj/machinery/vending/cola{dir = 1},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/machinery/status_display{pixel_y = -32},/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"vtu" = (/obj/structure/table/woodentable,/obj/item/weapon/flame/candle,/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/light_switch{name = "light switch "; pixel_x = 38},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"vtR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/item/weapon/stool/padded,/turf/simulated/floor/carpet,/area/crew_quarters/coffee_shop) +"vuU" = (/obj/machinery/vending/cola{dir = 1},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/machinery/status_display{pixel_y = -32},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "vvh" = (/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled/white,/area/medical/ward) -"vvJ" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"vvJ" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "vxe" = (/obj/structure/bed/chair/sofa/blue{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/paleblue/border,/obj/machinery/light{layer = 3},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled,/area/medical/medbay2) "vxj" = (/obj/structure/table/standard,/obj/item/weapon/folder/red,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/red,/area/security/main) "vyA" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "vzh" = (/obj/structure/table/standard,/obj/item/roller,/obj/item/roller{pixel_y = 8},/obj/item/roller{pixel_y = 16},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/light_switch{name = "light switch "; pixel_x = 36},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/medbay_primary_storage) "vzx" = (/obj/structure/disposalpipe/sortjunction/flipped{dir = 2; name = "Chapel"; sortType = "Chapel"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/table/bench/padded,/turf/simulated/floor/tiled/dark,/area/chapel/main) -"vzM" = (/obj/item/frame/mirror,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/locker) +"vzM" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "vAp" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/button/windowtint{id = "psyco_tint"; pixel_x = 11; pixel_y = 24},/obj/machinery/light_switch{pixel_x = -11; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/carpet/sblucarpet,/area/medical/psych) "vAw" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; id_tag = null},/obj/machinery/embedded_controller/radio/airlock/docking_port{dir = 4; frequency = 1380; id_tag = "d2_w2_e_airlock"; pixel_x = -27; req_one_access = list(13)},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "vAS" = (/obj/machinery/shield_diffuser,/obj/machinery/door/airlock/external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Two External Airlock"; req_access = list(13)},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/access_button{master_tag = null; name = "exterior access button"; pixel_x = 27; pixel_y = -7},/obj/effect/map_helper/airlock/door/ext_door,/obj/effect/map_helper/airlock/button/ext_button,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2) -"vAV" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "crglockdown"; name = "Cargo Lockdown"; opacity = 0},/obj/structure/sign/christmas/wreath{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) -"vAY" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/obj/machinery/light{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"vAY" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "vBP" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/library) "vDl" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) "vDV" = (/obj/machinery/bookbinder,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/library) -"vEq" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/floor_decal/corner/yellow/diagonal,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"vEq" = (/obj/structure/table/gamblingtable,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/simulated/floor/carpet,/area/crew_quarters/coffee_shop) "vFV" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D1) "vHd" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "vHI" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"vIj" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Aft Hallway 4"; dir = 8},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"vIj" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/second_deck{c_tag = "Second Deck - Aft Hallway 4"; dir = 8},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "vIC" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{name = "Cargo Maintenance"; req_access = list(50)},/turf/simulated/floor/plating,/area/quartermaster/office) "vID" = (/obj/structure/closet/crate,/obj/random/contraband,/obj/random/contraband,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/turf/simulated/floor/plating,/area/maintenance/cargo) "vIX" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) "vJh" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/pink/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/patient_a) "vJq" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/table/marble,/obj/item/weapon/book/manual/chef_recipes,/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "vJS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled,/area/security/checkpoint2) -"vKX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"vKX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "vLr" = (/obj/machinery/papershredder,/turf/simulated/floor/wood,/area/library) "vMl" = (/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Two Internal Airlock"; req_access = list(13)},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/effect/map_helper/airlock/door/int_door,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2) "vMO" = (/obj/effect/floor_decal/borderfloorwhite/corner{dir = 1},/obj/effect/floor_decal/corner/paleblue/bordercorner{dir = 1},/turf/simulated/floor/tiled/white,/area/medical/medbay_primary_storage) "vNr" = (/turf/simulated/wall/r_wall,/area/rnd/research) +"vNZ" = (/obj/structure/closet/cabinet,/obj/item/clothing/under/pants/yogapants,/obj/item/clothing/under/pants/yogapants,/obj/item/clothing/under/pants/yogapants,/obj/item/clothing/shoes/footwraps,/obj/item/clothing/shoes/footwraps,/obj/item/clothing/shoes/footwraps,/obj/item/weapon/towel/random{pixel_y = 8},/obj/item/weapon/towel/random{pixel_y = 8},/obj/item/weapon/towel/random{pixel_y = 8},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/obj/machinery/camera/network/civilian{c_tag = "CIV - Gym Fore"},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "vOY" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) "vPj" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) +"vPr" = (/obj/effect/floor_decal/steeldecal/steel_decals6,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "vQT" = (/obj/structure/disposalpipe/segment,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/barrestroom) "vRq" = (/obj/structure/table/glass,/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/structure/extinguisher_cabinet{pixel_x = -28},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled/white,/area/medical/ward) "vRG" = (/obj/machinery/door/airlock/external{icon_state = "door_locked"; locked = 1; name = "Dock One External Airlock"; req_access = list(13)},/obj/machinery/shield_diffuser,/obj/effect/floor_decal/industrial/hatch/yellow,/obj/effect/map_helper/airlock/door/ext_door,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D1) "vRH" = (/obj/machinery/shield_diffuser,/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/airlock/external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Three External Airlock"; req_access = list(13)},/obj/effect/map_helper/airlock/door/ext_door,/obj/effect/map_helper/airlock/button/ext_button,/obj/machinery/access_button{dir = 4; name = "exterior access button"; pixel_x = 7; pixel_y = 27; req_one_access = null},/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D3) "vSM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/locker) -"vSR" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/machinery/status_display/shuttle_display{pixel_x = -32},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"vSR" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/machinery/status_display/shuttle_display{pixel_x = -32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "vUv" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/storage/primary) -"vUQ" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"vUQ" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/green/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "vUV" = (/obj/structure/cryofeed{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/industrial/warning/cee,/turf/simulated/shuttle/floor,/area/shuttle/cryo/station) "vVh" = (/obj/machinery/shieldwallgen{anchored = 1; req_access = list(47)},/obj/structure/cable/green,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/blast/regular{density = 0; dir = 2; icon_state = "pdoor0"; id = "misclab"; name = "Test Chamber Blast Doors"; opacity = 0},/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled,/area/rnd/misc_lab) "vVP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/cargo) "vVQ" = (/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) "vVV" = (/obj/machinery/seed_extractor,/turf/simulated/floor/tiled/hydro,/area/hydroponics) -"vYJ" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/glass{name = "Dock"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/D3) +"vYJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/D3) "vYL" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/tiled/white,/area/medical/sleeper) "vZT" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/item/weapon/stool/padded,/turf/simulated/floor/tiled,/area/teleporter) "wag" = (/obj/structure/sign/directions/bridge{dir = 1; pixel_y = 10},/obj/structure/sign/directions/science{dir = 1},/obj/structure/sign/directions/medical{dir = 1; pixel_y = -10},/turf/simulated/wall,/area/hallway/secondary/entry/D2) "wbB" = (/obj/effect/floor_decal/industrial/warning/cee{dir = 4},/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "d2_w1_a_airlock"; pixel_y = 27; req_one_access = list(13)},/obj/machinery/atmospherics/unary/vent_pump/high_volume,/obj/machinery/airlock_sensor{dir = 1; id_tag = null; pixel_y = -27},/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/effect/map_helper/airlock/sensor/chamber_sensor,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "wct" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"wcF" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) +"wcF" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) "wdc" = (/turf/simulated/wall/r_wall,/area/maintenance/central) "weK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) -"weS" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"weS" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "wfl" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume,/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/machinery/airlock_sensor{dir = 1; id_tag = null; pixel_y = -27},/obj/effect/map_helper/airlock/sensor/chamber_sensor,/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2) "wfV" = (/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/lime/border{dir = 6},/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = -24},/obj/structure/cable/green,/obj/machinery/portable_atmospherics/hydroponics,/turf/simulated/floor/tiled/hydro,/area/hydroponics) "wiE" = (/obj/structure/closet/crate,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/random/drinkbottle,/turf/simulated/floor/plating,/area/maintenance/cargo) -"wiH" = (/obj/item/stack/material/plastic{amount = 50},/turf/simulated/floor/plating,/area/crew_quarters/locker) -"wiY" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/crew_quarters/locker) -"wjE" = (/obj/structure/table/standard,/obj/effect/floor_decal/corner/yellow/diagonal,/obj/item/weapon/reagent_containers/food/condiment/small/sugar,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"wjN" = (/obj/structure/flora/pottedplant/xmas{anchored = 1},/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/dockhallway) +"wiH" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) +"wjE" = (/obj/structure/table/gamblingtable,/turf/simulated/floor/carpet,/area/crew_quarters/coffee_shop) "wki" = (/obj/machinery/portable_atmospherics/hydroponics,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/lime/border{dir = 1},/obj/machinery/camera/network/civilian{c_tag = "CIV - Hydroponics"},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/tiled/hydro,/area/hydroponics) "wkq" = (/obj/item/weapon/stool/padded,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/green/border,/obj/machinery/light,/turf/simulated/floor/tiled,/area/holodeck_control) "wkF" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) -"wlg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) -"wnt" = (/obj/structure/bed/chair/wood{dir = 1},/obj/effect/floor_decal/corner/yellow/diagonal,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"wlg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/apcenter) +"wnt" = (/turf/simulated/floor/carpet,/area/crew_quarters/coffee_shop) +"wnB" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/green/border,/obj/machinery/light,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/structure/closet/athletic_mixed,/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "woi" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/ward) "wom" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/airlock_sensor{id_tag = null; pixel_y = 27},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1380; id_tag = "dock3_south_pump"},/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/effect/map_helper/airlock/sensor/chamber_sensor,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "wpq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/bar) @@ -7086,24 +7048,24 @@ "wrf" = (/obj/effect/floor_decal/spline/plain{dir = 4},/obj/structure/table/marble,/obj/machinery/door/blast/shutters{dir = 4; id = "coffeeshop"; layer = 3.1; name = "Cafe Shutters"},/turf/simulated/floor/tiled/old_cargo/yellow,/area/library) "wrn" = (/obj/structure/disposalpipe/sortjunction/flipped{dir = 8; name = "Locker Room"; sortType = "Locker Room"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) "wry" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled/dark,/area/chapel/main) +"wrK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/techmaint,/area/chapel/main) "wsB" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D1) -"wuf" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"wuf" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "wuv" = (/obj/structure/table/rack{dir = 1},/obj/item/clothing/suit/fire/firefighter,/obj/item/weapon/tank/oxygen,/obj/item/clothing/mask/gas,/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/clothing/glasses/meson,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor/plating,/area/maintenance/locker) "wuH" = (/obj/structure/bed/chair/comfy/beige,/turf/simulated/floor/plating,/area/maintenance/cargo) -"wuI" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/floor/plating,/area/crew_quarters/locker) -"wvp" = (/obj/machinery/door/firedoor/border_only,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"wwG" = (/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"wxw" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/structure/flora/pottedplant/xmas{anchored = 1},/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/dockhallway) +"wuI" = (/obj/effect/floor_decal/spline/plain,/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) +"wvp" = (/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/dockhallway) +"wxw" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/dockhallway) "wxM" = (/obj/effect/floor_decal/industrial/warning/cee{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; id_tag = null},/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "d2_w3_c_airlock"; pixel_y = 27; req_one_access = list(13)},/obj/machinery/airlock_sensor{dir = 1; id_tag = null; pixel_y = -27},/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/effect/map_helper/airlock/sensor/chamber_sensor,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "wxP" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/blue,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/medical/morgue) -"wzj" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) -"wzw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) -"wzP" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"wzj" = (/obj/effect/floor_decal/steeldecal/steel_decals6,/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"wzw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) +"wzP" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "wAG" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D2) "wAM" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) "wAN" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/simulated/floor/tiled/techmaint,/area/ai_monitored/storage/emergency/eva) -"wBd" = (/obj/item/stack/tile/floor/dark,/turf/simulated/floor/plating,/area/crew_quarters/locker) -"wBl" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/door/firedoor/border_only,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"wBd" = (/obj/machinery/fitness/punching_bag/clown,/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) +"wBl" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/D2) "wCB" = (/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; id_tag = null},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "wCI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/bookcase{name = "bookcase (Religious)"},/turf/simulated/floor/wood,/area/library) "wCU" = (/obj/structure/cryofeed{dir = 2},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/effect/floor_decal/industrial/warning/cee{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/cryo/station) @@ -7111,80 +7073,82 @@ "wER" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "wFh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) "wFM" = (/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; id_tag = null},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) -"wFY" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"wFY" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "wIa" = (/turf/simulated/wall,/area/medical/ward) -"wKN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) +"wKN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/effect/floor_decal/corner/brown/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled/old_tile/yellow,/area/library) "wLh" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/turf/simulated/floor/wood,/area/library) -"wLi" = (/obj/machinery/light/small{dir = 8},/obj/structure/device/piano,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"wLi" = (/obj/machinery/vending/fitness{dir = 8; pixel_x = -5},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "wLn" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/library) "wMO" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/floor/plating,/area/hallway/secondary/entry/D3) -"wNj" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/door_assembly,/obj/item/weapon/airlock_electronics,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"wNa" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"wNj" = (/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced/polarized{id = "sauna"},/turf/simulated/floor/plating,/area/crew_quarters/seconddeck/gym) "wNH" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/docking_hallway2) "wOC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/medical/cryo) "wPD" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/button/windowtint{id = "tabletop_window_tint"; pixel_x = -13; pixel_y = -24},/turf/simulated/floor/carpet,/area/library) "wQE" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/tiled/hydro,/area/hydroponics) -"wQP" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/crew_quarters/locker) +"wQP" = (/obj/effect/floor_decal/spline/plain{dir = 1},/obj/machinery/scale,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) "wRt" = (/obj/structure/table/steel,/obj/item/weapon/reagent_containers/food/drinks/glass2/rocks,/obj/item/weapon/reagent_containers/food/drinks/glass2/rocks,/turf/simulated/floor/plating,/area/maintenance/cargo) -"wRC" = (/obj/machinery/vending/cigarette{dir = 1},/obj/machinery/ai_status_display{pixel_y = -32},/obj/structure/sign/christmas/lights,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"wSU" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"wUN" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/monotile,/area/hallway/secondary/entry/D2) +"wRC" = (/obj/machinery/vending/cigarette{dir = 1},/obj/machinery/ai_status_display{pixel_y = -32},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"wSU" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"wUN" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/D2) "wVa" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D3) -"wVw" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"wVD" = (/obj/structure/bed,/obj/item/weapon/bedsheet/mime,/turf/simulated/floor/plating,/area/crew_quarters/locker) -"wVT" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/fore) +"wVw" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"wVD" = (/obj/structure/table/bench/wooden,/obj/effect/floor_decal/spline/fancy/wood{dir = 8},/obj/item/weapon/bikehorn/rubberducky,/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) "wWd" = (/obj/structure/bookcase{name = "bookcase (Religious)"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/library) -"wWW" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"wWW" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/dockhallway) "wWX" = (/turf/simulated/wall,/area/maintenance/emergencyeva) "wYq" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/floor_decal/corner/brown/diagonal,/turf/simulated/floor/tiled/old_tile/yellow,/area/library) "xaY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/hologram/holopad,/turf/simulated/floor/wood,/area/hallway/secondary/entry/docking_lounge) -"xbV" = (/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) +"xbV" = (/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) "xch" = (/obj/effect/floor_decal/spline/plain{dir = 4},/obj/structure/noticeboard{pixel_y = 27},/obj/structure/table/marble,/obj/machinery/door/blast/shutters{dir = 4; id = "coffeeshop"; layer = 3.1; name = "Cafe Shutters"},/turf/simulated/floor/tiled/old_cargo/yellow,/area/library) "xcQ" = (/obj/structure/table/woodentable,/obj/item/device/starcaster_news,/turf/simulated/floor/carpet,/area/library) -"xdX" = (/obj/machinery/door/firedoor/border_only,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"xdX" = (/obj/machinery/door/firedoor/border_only,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/green/bordercorner,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) "xeF" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/dockhallway) -"xeT" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/item/stack/tile/floor,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"xeT" = (/turf/simulated/floor/carpet,/area/crew_quarters/seconddeck/gym) "xeV" = (/obj/machinery/power/breakerbox/activated{RCon_tag = "Cargo Substation Bypass"},/turf/simulated/floor/plating,/area/maintenance/substation/cargo) -"xgL" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/glass{name = "Coffee Shop"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/coffee_shop) -"xhM" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/red/border,/obj/machinery/ai_status_display{pixel_y = -32},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"xgL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/curtain/black{icon_state = "open"; layer = 2; name = "privacy curtain"; opacity = 0},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/coffee_shop) +"xhM" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/red/border,/obj/machinery/ai_status_display{pixel_y = -32},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "xip" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/cryo) +"xiE" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/seconddeck/aft) "xiX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/bar) +"xka" = (/obj/effect/floor_decal/spline/plain{dir = 9},/turf/simulated/floor/boxing{name = "yoga mat"},/area/crew_quarters/seconddeck/gym) "xkS" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "escape_dock_south_sensor"; pixel_y = 27},/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/effect/map_helper/airlock/sensor/chamber_sensor,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D1) -"xkY" = (/obj/machinery/vending/tool,/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/yellow/border{dir = 4},/turf/simulated/floor/tiled,/area/storage/primary) +"xkY" = (/obj/machinery/vending/tool{dir = 4; pixel_x = 5},/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/yellow/border{dir = 4},/turf/simulated/floor/tiled,/area/storage/primary) "xlF" = (/turf/simulated/wall/r_wall,/area/medical/patient_b) "xnj" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; locked = 1; name = "Dock One Internal Airlock"; req_access = list(13)},/obj/effect/map_helper/airlock/door/int_door,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D1) -"xnR" = (/obj/structure/flora/ausbushes/brflowers,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fpcenter) "xom" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/machinery/camera/network/medbay{c_tag = "MED - Patient Hallway Starboard"; dir = 8},/turf/simulated/floor/tiled/white,/area/medical/patient_wing) "xoy" = (/obj/structure/bookcase/bookcart,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/machinery/newscaster{pixel_y = 30},/turf/simulated/floor/wood,/area/library) "xqf" = (/obj/effect/floor_decal/industrial/warning/cee{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1},/obj/machinery/airlock_sensor{dir = 1; id_tag = null; pixel_y = -27},/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "d2_w1_c_airlock"; pixel_y = 27; req_one_access = list(13)},/obj/effect/map_helper/airlock/sensor/chamber_sensor,/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "xqV" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/firealarm{pixel_y = 24},/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/turf/simulated/floor/tiled,/area/medical/surgeryobs) "xrx" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/chapel/main) -"xsZ" = (/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/simulated/floor/plating,/area/crew_quarters/locker) +"xsZ" = (/obj/machinery/fitness/heavy/lifter,/obj/effect/floor_decal/spline/plain,/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) "xte" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/library) "xtM" = (/turf/simulated/wall,/area/medical/surgery) -"xtR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/glass,/obj/structure/curtain/black{icon_state = "open"; layer = 2; name = "privacy curtain"; opacity = 0},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/docking_lounge) +"xtR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/glass{name = "Lounge"},/obj/structure/curtain/black{icon_state = "open"; layer = 2; name = "privacy curtain"; opacity = 0},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/docking_lounge) "xuy" = (/obj/machinery/door/airlock/external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Two External Airlock"; req_access = list(13)},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/shield_diffuser,/obj/effect/map_helper/airlock/door/ext_door,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D2) -"xuM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) -"xvb" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/cap/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/locker) +"xuM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"xvb" = (/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "xvt" = (/obj/structure/closet/crate,/obj/random/maintenance/cargo,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance/clean,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/bar) "xvw" = (/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/reagent_containers/glass/beaker{pixel_x = 5},/obj/item/weapon/reagent_containers/food/condiment/enzyme,/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) -"xvF" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/crew_quarters/coffee_shop) +"xvF" = (/obj/structure/disposalpipe/segment,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/structure/bed/chair/comfy/brown,/obj/structure/window/reinforced/tinted/frosted{dir = 1},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/coffee_shop) "xwa" = (/obj/machinery/portable_atmospherics/hydroponics,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/lime/border{dir = 1},/turf/simulated/floor/tiled/hydro,/area/hydroponics) "xwr" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/bed/chair/comfy/black,/turf/simulated/floor/carpet/oracarpet,/area/library) -"xwT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"xxe" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"xxf" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/crew_quarters/locker) +"xwT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"xxe" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/green/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"xxf" = (/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "xyg" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) -"xyl" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/crew_quarters/locker) -"xyM" = (/obj/random/obstruction,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"xyl" = (/obj/effect/floor_decal/spline/plain{dir = 1},/obj/structure/table/standard,/obj/item/clothing/under/shorts/blue,/obj/item/clothing/under/shorts/blue,/obj/item/clothing/gloves/boxing/blue,/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) +"xyM" = (/obj/random/obstruction,/turf/simulated/floor/plating,/area/crew_quarters/seconddeck/gym) "xzs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "xCr" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/dockhallway) "xCz" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; id_tag = null},/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/light/small{dir = 1},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "xDl" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/hydro,/area/hydroponics) -"xDr" = (/obj/machinery/floodlight,/turf/simulated/floor/plating,/area/crew_quarters/locker) -"xDJ" = (/obj/item/frame/apc,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/item/weapon/module/power_control,/turf/simulated/floor/plating,/area/crew_quarters/locker) -"xEA" = (/obj/structure/table/marble,/obj/item/weapon/reagent_containers/food/snacks/pie,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/structure/disposalpipe/segment,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/white,/area/crew_quarters/cafeteria) -"xEJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/stack/tile/floor,/turf/simulated/floor/plating,/area/crew_quarters/locker) -"xFz" = (/obj/structure/table/glass,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/item/device/starcaster_news,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"xDr" = (/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_y = 28},/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) +"xDJ" = (/obj/effect/floor_decal/spline/fancy/wood/corner,/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/seconddeck/gym) +"xEA" = (/obj/structure/table/marble,/obj/item/weapon/reagent_containers/food/snacks/pie,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/crew_quarters/cafeteria) +"xEJ" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/carpet,/area/crew_quarters/seconddeck/gym) +"xEQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/aft) +"xFz" = (/obj/structure/table/glass,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/item/device/starcaster_news,/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) "xFC" = (/obj/structure/table/glass,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 8},/obj/item/device/radio{anchored = 1; canhear_range = 7; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; name = "Virology Emergency Phone"; pixel_x = -6; pixel_y = 8},/obj/item/weapon/reagent_containers/spray/cleaner,/obj/machinery/requests_console{department = "Virology"; name = "Virology Requests Console"; pixel_x = 32},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/effect/floor_decal/borderfloorwhite{dir = 6},/obj/effect/floor_decal/corner/lime/border{dir = 6},/obj/machinery/light,/turf/simulated/floor/tiled/white,/area/medical/virology) "xHj" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/cryo) "xHG" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/airlock/glass_external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Dock Three Internal Airlock"; req_access = list(13)},/obj/effect/map_helper/airlock/door/int_door,/turf/simulated/floor/tiled/dark,/area/hallway/secondary/entry/D3) @@ -7196,25 +7160,24 @@ "xLN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled/white,/area/medical/cryo) "xLT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/random/junk,/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/bar) "xMr" = (/turf/simulated/wall/r_wall,/area/rnd/storage) -"xNl" = (/obj/structure/flora/ausbushes/ywflowers,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/apcenter) -"xOD" = (/obj/item/frame,/turf/simulated/floor/plating,/area/crew_quarters/locker) +"xOD" = (/obj/machinery/door/airlock/multi_tile/metal{dir = 2; name = "Sauna"},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/seconddeck/gym) "xPe" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled/hydro,/area/hydroponics) -"xPX" = (/obj/structure/extinguisher_cabinet{pixel_x = 28},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) -"xTR" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "crglockdown"; name = "Cargo Lockdown"; opacity = 0},/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/seconddeck/port) +"xPX" = (/obj/structure/extinguisher_cabinet{pixel_x = 28},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "xTX" = (/obj/structure/filingcabinet,/turf/simulated/floor/wood,/area/library) -"xUU" = (/obj/structure/flora/ausbushes/ywflowers,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/grass,/area/hallway/primary/seconddeck/fscenter) +"xXn" = (/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "xZu" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "crg_aft_pump"},/obj/machinery/airlock_sensor{id_tag = "crg_aft_sensor"; pixel_x = -24},/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/simulated/floor,/area/maintenance/cargo) -"ydn" = (/obj/structure/closet/wardrobe/mixed,/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/dark,/area/crew_quarters/locker) +"yaI" = (/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) +"ydn" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/green/border{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) "ydH" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/machinery/light/small{dir = 1},/obj/effect/map_helper/airlock/atmos/chamber_pump,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D1) "yet" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/seconddeck/fscenter) -"yeN" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) +"yeN" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/aft) "ygz" = (/obj/machinery/appliance/cooker/fryer,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen) -"ygD" = (/obj/structure/door_assembly,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/locker) -"yiw" = (/obj/structure/disposalpipe/broken{dir = 4},/turf/simulated/floor/plating,/area/crew_quarters/locker) -"yiX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/door/airlock/glass{name = "Dock"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/D1) -"yjc" = (/obj/item/weapon/stool/padded,/turf/simulated/floor/plating,/area/crew_quarters/locker) -"yjo" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) -"ykL" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/light{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) +"ygD" = (/obj/structure/table/standard,/obj/structure/flora/pottedplant/subterranean{name = "Scrumbus"; pixel_y = 11},/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/green/border{dir = 9},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) +"yiw" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/green/bordercorner{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/machinery/camera/network/civilian{c_tag = "CIV - Gym Port"; dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/seconddeck/gym) +"yiX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled/steel_grid,/area/hallway/secondary/entry/D1) +"yjc" = (/turf/simulated/floor/boxing/gym,/area/crew_quarters/seconddeck/gym) +"yjo" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/seconddeck/dockhallway) +"ykL" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/D2) "ylt" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock{name = "Bar Backroom"; req_access = list(25)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/bar) (1,1,1) = {" @@ -7235,13 +7198,13 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaagaaaaaaaaaaaaasfasfasfasfaodaaqajjajkaarasfasfasfasfasfaosaosajoajpaasaosaataauaavamfaawcsFaaxaayaazcsFcsFaljaljaljaljaljaljajxajyajzajAaujaujaujaujaujaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasbasbcmNcmNcmNcmNcmNcmNcmNcmNcmNasbasbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiuZKaafaafaafaafasfasfakiakjaogaaAaaBaaCaaDaaEaaFatVakkanfasfaosaaGamfakoaaHaaIaaHaaJaaKaaLaajaaMaaNaaOaaPajJcsFaljakraktaktakuappakwakxakyaujanuaquaquaquaujaujaafaafaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasbasbaaQcmNcmNcmNcmNcmNcmNcmNcmNcmNaaQasbasbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaakaagaaaaaaaaaasfaaSaldamVaogaaTaphargaphaphaaUatVatVaaVasfaosaaXamfalgamfaaYamfaaZabaabbabcaahabeabfaaPalhcsFaljappagVaocabhappabiabjallaujanualoalpaloanyatraaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaasbcmNcmNcmNabkcmNcmNcmNcmNcmNablcmNcmNcmNasbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaasfalUalValWaogabmaphargaldaphabnatVambanfamdaosameamfamgaboabpabqabrabsabtabuabvabwabxaaPabycsFamiabzalHamjabAappamlabBammaujanuaquaquaquanyatraaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaasbasbcmNcmNcmNcmNabkcmNcmNcmNablcmNcmNcmNcmNasbasbaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaasfalUalValWaogabmaphargaldaphabnatVaneanfamdaosameamfamgaboabpabqabrabsabtabuabvabwabxaaPabycsFamiabzalHamjabAappamlabBammaujanuaquaquaquanyatraaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaasbasbcmNcmNcmNcmNabkcmNcmNcmNablcmNcmNcmNcmNasbasbaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahqqaaaaaaaaaasfamTamUamVaogamXamYaaRanaanbancatVaneanfangaosanianjankanlaosabCabDabFabGabHcsFabIabJabKcsFcsFappappamManpabLanqanrabMansaujanuanvanwanxanyatraaaaaaaaacAwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahqqaaaaaaaaaasbcmNcmNcmNcmNcmNcmNabkapaablcmNcmNcmNcmNcmNcmNasbaaaaaaaaaaagaaiaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaodaogaofaogatVabNaphaoiaojaphabOatVatVaomatVaosaopaosaoraosaosaosabPabQabPaoscsFcsFcsFcsFcsFcsFaovabRaocaowabSappaoyabTaoAaujabUaquaoCaquaoEaujaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahqqaafaafaafasbapaapbcmNcmNcmNcmNcmNabVcmNcmNcmNcmNcmNabWapaasbaafaafaafaafuZKaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaagaagaafqlFaagaagaagaagaagaagaagaagaagabXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaapdabYabZacaapeacbaphapfapgaphapiaccapjapkaplacdaceapmacfapnacgaqgachaciacjasparoackaclacmapoaouappappappacnappappapqacoapqaujapsapvapuapvapwaujaaaaaaaaaqlFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaasbcmNcmNcmNcmNcmNcmNacpacqacrcmNcmNcmNcmNcmNcmNasbaaaaaaaaaaagaaiaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFUaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaaaaaaaaaacsactaagaaaaaaaafaaaaaaaafaaaaaaaafaaaaafaaaaaaaaaaagaagabXabXabXabXacuaaaaaaaaaaaaqlFcFUaaaaaaapXapYapZaqaaqbacvaqdacwaqcaqdacxacyaqdaqeaqfaqgaczacAaqhaqiacBacCacDacEacFacGacHacIacJacKacLaspacMacNaqkaqoaqmaoFaqnaqoaqpaqqaqraquaqtaquaqvaujaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqlFaaaaaaaaaasbasbcmNcmNcmNcmNacpcmNacqcmNacrcmNcmNcmNcmNasbasbaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiuZKaaiaaaaagaagqlFaaaaaaaaaaaaaafaaaaaaaafaaaaaaaafaaaaafaaaaaaaaaaaaaafaafaaaaaaaaaabXabXaaaaaaaaaaagaaaaaaaaaardarearfargacOacPacQacRacSarhacTacUacVacWariaqgaczarjarkarlarmacXacYacZadaaspadbadcaddarnaroaspadeatmarqarrarsarsartaruarvarwarxarzaryarzarAatraafaafaafaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasbcmNcmNcmNacpcmNadfacqadgcmNacrcmNcmNcmNasbaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaafaagaagaagaaaaaaaaaaaaaaaaaaaafaaaaaaaafaaaaaaaafaaaaafaaaaaaaaaaaaaafaaaaaaaafqlFaaaaaaaaaaaaaaaaagaafaafaafasfasfadiadjadkatVasgashasiatVaskaslatVbUdadlaxNaxNaxNasnadmadnaxNadoawxadpaspaspaspadqaspaspaspasqadradsasradtatmassatmasuatraswaszasyaszasAatraaaaaaaaaaagasGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasbasbcmNcmNcmNcmNadfacqadgcmNcmNcmNcmNasbasbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaafaagaagaagaaaaaaaaaaaaaaaaaaaafaaaaaaaafaaaaaaaafaaaaafaaaaaaaaaaaaaafaaaaaaaafqlFaaaaaaaaaaaaaaaaagaafaafaafasfasfadiadjadkatVasgashasiatVaskaslatVaphadlaxNaxNaxNasnadmadnaxNadoawxadpaspaspaspadqaspaspaspasqadradsasradtatmassatmasuatraswaszasyaszasAatraaaaaaaaaaagasGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasbasbcmNcmNcmNcmNadfacqadgcmNcmNcmNcmNasbasbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaagaaaaaaaaaaaaaaaaaaaeHaeHaeHaeHaaaaeHaeHaeHaeHaaaaeHaeHaeHaeHaaaaeHaeHaeHaeHaafaagaaaaaaaaaaaaaagaaaaaaaaaaaaaCDadvadwadxaCFadyadwasXaCFasYasZatVataatbaxNatdateatfadzadAaxNadBadCadDaxUadEadFadGadHadIaxUathatiatjvxjadJatmatmatmadKatnatqadLatpadMatqatraaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasbcmNadNcmNcmNadfacqadgcmNcmNadNcmNasbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaafaafaafaafaafaafaafaafaeHadOadPaeHaafaeHadQadRaeHaafaeHadSadTaeHadUaeHadVadWaeHaaaaagaaaaaaaaaaaaaagaaaaaaaaaaaaaCDadXadYatSaCFatRadYatSaCFatTatUatVadZaeaaxNaebavEatWaecaedaeeaefawxaegaehaeiaejaekaejatXaxUatZadrauaatkaelaubaueaudaueaufaugaemauhaenauiaujaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxwasbaxxasbcmNcmNadfacqadgcmNcmNasbaxxasbaxwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaafaaaaaaaaaaaaaaaaaaaaaaeHaeoaeoaeHaaaaeHaepaepaeHaaaaeHaeqaeqaeHaaaaeHaeraeraeHaaaaesaaaaaaaaaaaaaagaafaafaafauGaCDauHauIaetaCFauJauKaetaCFauLaeuatVaevaewaxNaexavEauNavEaeyaezawwaeAaeBaeCaeDaeEaeFaeIaeJaxUauOauPauQauRatmaeKaydaydaydaydaydazkazkazkazkazlazlaafaafaafaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxwaeLacqasbasbasbcmNacqcmNasbasbasbacqaeLaxwaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7258,8 +7221,8 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaafaaaaafaaaaaaaYyakUaTvahqaRCaTvaTvaTvaTvakVaTvakWakXakXakYakZalbalcalqaltaltaYyaaaaaaaafaaaaaaaaaaaaaaaaTKaTKaIdaIealuaIfaIgaLyaLIaIjaIkaIlalvaImaJOaIoaIpalwaIqaLIaIraIsaItalxalyaIuaIvaIwalzaLQalAaIxalBalCaIyaIzalDaIAalEalFaIBalGaICalIaIDalJaIEalKalLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZLaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaUwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaactaafaafaafaeHaeHaeHaeHaeHaaaaYyakUaTvahqaRCaTvaTvalMalMalNaTvalOalPalSaPHaWHaRCakEaTvamuamuaYyaaaaaaaafaaaaaacFUaaaaaaaaaaLsaLtaJDaFbaJEamvaLyaJGaJHaJIaJJaJKaJLaJOaJNaJOaJPaJQaLIaLPaLPaLPaJVamwaJWaLPaJYaLPaLQamxamyamzamAaKbaIzaKcaKdaKeamBaKfaKgaICamCamDamEaKhamFalLaaaaaaaaacFUqlFaaaaaaaaaaaaaaaaafhqqaagaagaagaagaagqlFcAwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZLaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaUwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFUaaaaeHamGamHamIaiqairaisamJaiuamKamLaTvaTvamNamOalNaTvamPahpagYaPHaWHaRCaTvamQaMTaMTaMTaMTaMTaafaaaaaaaaaaaaaaaaaaaLsaLtaLuaLvaLwaLxaLyaLIaLAaLBaLCamRaLDaLEaLFaLGaLHanAaLIaLJaLPaLOaLManBaLNaLOanCaLPanEaLQaLQaLQaLQaLQaIzaLRanFaLSanGanHanIaICanJaLTanKanLanLalLaaaaaaaaaaaaaagaaaaaaaaaaaaaafaafaaaaafaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZLaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaUwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqlFaaaaaaaaaaeHanMamHanNajIajKajLanOanPanQaRCaTvalOalcalcanRanSaMRanTaMRalqaWHaRCaTvanUaMTaMSanWanXaMTaRNaIaaIaaMVaMVaMWaTKaMYaMZaNaanYaNbberberberberberberberberberberberberberberberberaNqaNraNswVTaNtaozaoBaoBaoGaoHaoIaoJaNuaICaNvaNwaNxaNvaNvaICaICaoKaoLaoMaoOaoPaSqaSqaafaafaafaagaaaaaaaaaaafaafaaaaaaaafaaaaaaaafaaaaaaaaaaaacFUaaaaaaaaaaaaaaaaaaaaaaaaaaaaZLaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaUwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaafaafaafaeHaeHaeHaeHaeHaaaakgaoQakAaTvahtaTvaPHaTvaTvagYaTvamPaTvagYaTvaOraOsaOtaOuaoRaOvaOwaOxaOyaOzaOAaIaaIaaZLaOBaOCaODaOEaOFaoSaOGaTTaOIaOJaoTaoUaOKaoVaOLaOMaONaOOaOPaoWaoXaOQaORaOSaShapcaOUaOVaOWaOXaOYapyaOZaPaapzpmJapBaPbaPcapCapDapEapFapGapIapJaQvapKapLapNapOaaaaaaaaahqqaagaagaagqlFcFUaaaaaaaafaaaaaaaafaaaaafaafapRaafaafaaaaaaaaacAwaaaaaaaaaaaaaZLaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaUwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqlFaaaaaaaaaaeHanMamHanNajIajKajLanOanPanQaRCaTvalOalcalcanRanSaMRanTaMRalqaWHaRCaTvanUaMTaMSanWanXaMTaRNaIaaIaaMVaMVaMWaTKaMYaMZaNaanYaNbberberberberberberberberberberberberberberberberaNqaNraNsaNsaNtaozaoBaoBaoGaoHaoIaoJaNuaICaNvaNwaNxaNvaNvaICaICaoKaoLaoMaoOaoPaSqaSqaafaafaafaagaaaaaaaaaaafaafaaaaaaaafaaaaaaaafaaaaaaaaaaaacFUaaaaaaaaaaaaaaaaaaaaaaaaaaaaZLaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaUwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaafaafaafaeHaeHaeHaeHaeHaaaakgaoQakAaTvahtaTvaPHaTvaTvagYaTvamPaTvagYaTvaOraOsaOtaOuaoRaOvaOwaOxaOyaOzaOAaIaaIaaZLaOBaOCaODaOEaOFaoSaOGaTTaOIaOJaoTaoUaOKaoVaOLaOMaONaOOaOPaoWaoXaOQaORaOSaShapcaOUaOVaOWaOXaOYapyaOZaPaapzpmJbrzaPbaPcapCapDapEapFapGapIapJaQvapKapLapNapOaaaaaaaaahqqaagaagaagqlFcFUaaaaaaaafaaaaaaaafaaaaafaafapRaafaafaaaaaaaaacAwaaaaaaaaaaaaaZLaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaUwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaafaaaaafaaaaaaaYyakUaTvaTvaRCaTvaPHaPIapSapVaixaPJaPKaPLaPMaPNaPOaPPaPQapWaPRaPSaPTaPUaPVaqxaqyaIaaZLaqzaOCaqAaqBaqCaqDaPWaPXaPYaQdaQaaQdaQcaQdaQeaqEaQdaQfaQgaqFaQhaQiaQjaQkaQlaQmaQnaQoaQpaQqaQraqGaQsaQtaQuaqHaqIaqHaqJaqHaqKaqLaqMaqNaqOaqPaQvaqQaQwapNaqRaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaqSaQBaqUaqVaaaaafaaaaqYaaaaafaafaafqlFaaaaaaaaaaaaaaaaZLaaaaaaaaaaafaaaaaaaaaaafcFUaaaaaaaUwaaaaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaeHaeHaeHaeHaeHaaaaYyakUaTvaTvaRCakEaRvaRwaYzaTsaTsaqZaTsaRzaYzaWHaRCaTvaREaYEaYEaYEaYEaYEkMiaRKaRLaRNaRNaTKaTKaRQaRRaRSaRTaRUberaRWaScaSdaScaSaaSbaScaraarbaSdaraarCaSearDaSfaSgaSharEaSiaSjaSkaSlaSmbcVaSnbcVarFbcVbcVbcVbcYarGarHarGbcYbcYarIarJaoMaUcaSCaSqaSqaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaXBaSyaSyaXBaXBaXBbzBarKaaaaafaaaaaaaaaaaaaaaaaaaaacFUaZLaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaUwaaaaaaaaghqqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaafaafaafaeHarLarMarNaiqairaisarOaiuaixarParQarRarSaTsarTarUarWarXaTraTsaTtaTuaTvaTwaYEaTxarYaTyaYEbaJaTBaTCbGhbfVaTFaTGaTHaTIaTKaTKaTLberarZaWYaTOaWYaXbberasaaTSberaTRaTSberascaTSaTTasdasCasDasEbbmaTWasFaTWbcVaTXaTYasHasIasJbcVasKasLasNasOasPbcYasQbJYbJYasRaUfbdcaXBaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaUhaUnaUmasSasTasTasUarKbzBbzBasVaUpaUpaUpaaaaaaaaaaaaaZLaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaUwaaaaaaaaaaafqlFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7274,35 +7237,35 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaaaaaaaafaaaaaaaaaaaaaafaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFUaaaaaaaaaaaaaagaaaaaaaaaaafaaaaaaaaaaaaaafaaaaGhaGhaGhaGhaGhaGhaGhaGiaGiazCaGjaGkaBLbiXaGlaGmaGnaGoaGpaGqaGrbiXaGsaGtaGvbiYaGxbiZbjabkLbjcbjdbnMbjebjfbqcbjhbjibjjbjkbjlbsebsebjnbsebsebsebsekMikMikMiaGybmFaGzaGAaHjbmFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanWHaHkbjCyetaHlaHmnWHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabnbbjFaHnbjGbjGbjHbjIbjJblubjLbjMbjNbjObjPaHobjQaHpaHqaHrbjRbePaHsbjSbjTaHwbjUbjUbjUbjUlGRaHxaHyaHzaHAlGRbjWbjXxMrxMrbkcaHBbkabkcaHDbkcbkdbkeaHEbkfbkkbkhbkibkjbkkbklbrbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaaaaafaGhaGhaHFaHGaHHaHIaHJaGhaHKaHLaHMaHNaHOaHPbiXaGlaGmaHQaHRaHSaHTaHUbiXaHVaHWaHXaHYbkLbkKaHZbkLbkMbkNbkOaIbbkPbqcbhJbnRaIFbkQaIGbsebkTbkUbkVaIHbkWbsebkYaIIkMiaIJbmFaIKaIMbmFbmFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanWHblhaINaXiaIPbljnWHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabnbbnbaIQbloblpbnbblrbJYbjObluaIRblubjObdhbjRaISaITaISaIVbdhaIWblxblwblxaIXblyblzblBblBlGRlGRblDlGRlGRlGRblFaILaHuxMrxMrxMrxMrxMrxMrxMrxMrbAiblMaIYblNsACbAibtqbAiblRblSblTblUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaafaafaafaIZaJaaJaaJaaJaaJbaJcaJdaJfaJgaJhaJiaJjaGhaJkaJlaJmaJoaJpazCbiXbiXbiXbiXbiXbiXbiXbiXbiXaJqaJraJsaJtaJubmlbpPaJvbmmbAwbnMaJwbnObnPbmrbmsbmtbmuaWhbmwbmxbmybmzbmAbmBbseaJxbmDaJybxqbmFbmFbmFbmFaaaaaaaaaaaaaaaaaabYDbYDbRGbRGbRGbYDbYDaJBaKiaXiaKjaKmbzybzynWHnWHnWHbzybzyaaaaaaaaaaaaaaaaaabnbbnbbnbbnbbnbaKnbjJbmWbmXaKobmYaKpbmZaKraKtaKvaKwaKxbnaaKyaKzaKAaKBaKCboybndbndbndbnebnfbngbnhbnibnjaKDaKEaKFaKGaKGaKHaKJaKKaKGjwDbnlbrbbnnfRKaKLaKMaKNbnoaKOaKPaKQaKQbrgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagqlFaagaaaaaaaaaaaaaKRaKSaKTaJaaKSaJbaKUaKVaKWaKXaKYaKZaLaaLbaLcaLdaLeaLfazCaLgaLhaLiaLjaLkaLlaLmaLoaLpaLqaLraLUbnFaLVbnGbnHbpQbpRbwZbAwbnMbnNbnObnPbnQbnRbnSbnTbnUbsebnWbnXbnYjPgbnZbseaLWaLXkMibxqbGlkMiaaaaaaaaacFUaaaaaabRGbRGbYDljebolbombonbooaLYbopbqqaXidlRbgsboxbouaLZaMabowwcFbzynWHnWHaaaaaacFUaaaaaaaaabJYboHboIboJbjJbdkaMbaMcaMdaMeaMfaMhaMiaMjboUboZboVboZboYboLaMkboZboWboZboPboQaMlbgSboSboTboUboVboWbpqboYboZbpabpbbpcbpqbpeaMmaMnbpfbpgbphbpiaZtbpkaMobplbpmbpnbpnaMpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaagaagaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIZaKSaKSaJaaKSaJbaKUaMraMsaMtaMuaMvaMwaGhaMxaJmaMyaMzaMAaMBaMCaMDaMEaMFaMGaMHaMIaMJaMKaMLaMMaMDbpNbpObpPbpQbpRbwZbAwbpUbrTbpWbqcbqcbqbbqabqbbqcbsebsebqdaMNjPgbqebseaMOaMPbGgbxqbGlkMiaaaaaaaaaaaaaaabRGbRGucPbqmbqlbqnbqlbqobqnxnRbqrbqqaXidlRbqrxUUbqwbqubqzbqwbqzbqyvebnWHnWHaaaaaaaaaaaaaaabJYbqDbqEbqFbEVbEVbqIbqIbqIbqIbqIbqIaMQaNzbdsbqQbqQbqQbqQbqQbqQbqQbqQbqQbqQbqQbqQbFaaNAbqRbDCbDCbDCbDCbDCbDCbDCaNBaNCbDGbraaNDaNEbrbaNFbrcaKLaNGbrdaNHaKObrebrfaNIbrgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaagaagaagaagaagaagaagqlFaagaaaaaaaaaaaaaKRaKSaKTaJaaKSaJbaKUaKVaKWaKXaKYaKZaLaaLbaLcaLdaLeaLfazCaLgaLhaLiaLjaLkaLlaLmaLoaLpaLqaLraLUbnFaLVbnGbnHbpQbpRbwZbAwbnMbnNbnObnPbnQbnRbnSbnTbnUbsebnWbnXbnYjPgbnZbseaLWaLXkMibxqbGlkMiaaaaaaaaacFUaaaaaabRGbRGbYDbqobolbombonbooaLYbopbqqaXibuBbgswcFbouaLZaMabowwcFbzynWHnWHaaaaaacFUaaaaaaaaabJYboHboIboJbjJbdkaMbaMcaMdaMeaMfaMhaMiaMjboUboZboVboZboYboLaMkboZboWboZboPboQaMlbgSboSboTboUboVboWbpqboYboZbpabpbbpcbpqbpeaMmaMnbpfbpgbphbpiaZtbpkaMobplbpmbpnbpnaMpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaagaagaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIZaKSaKSaJaaKSaJbaKUaMraMsaMtaMuaMvaMwaGhaMxaJmaMyaMzaMAaMBaMCaMDaMEaMFaMGaMHaMIaMJaMKaMLaMMaMDbpNbpObpPbpQbpRbwZbAwbpUbrTbpWbqcbqcbqbbqabqbbqcbsebsebqdaMNjPgbqebseaMOaMPbGgbxqbGlkMiaaaaaaaaaaaaaaabRGbRGbqlbqmbqlbqnbqlbqobqnbqnbqrbqqaXibuBbqrbqwbqwbqubqzbqwbqzbqybqznWHnWHaaaaaaaaaaaaaaabJYbqDbqEbqFbEVbEVbqIbqIbqIbqIbqIbqIaMQaNzbdsbqQbqQbqQbqQbqQbqQbqQbqQbqQbqQbqQbqQbFaaNAbqRbDCbDCbDCbDCbDCbDCbDCaNBaNCbDGbraaNDaNEbrbaNFbrcaKLaNGbrdaNHaKObrebrfaNIbrgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaagaagaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaKRaJaaJaaJaaJaaJbaJcaNLaNMaNMaNNaNOaNPaGhaNQaNRaNSaNUaBLaNVaNWaNXaNYaNZaOaaNZaNZaObaNZaNYbEmaOcaOdbrNaOebrObEmbrQbrRbrSbrTbrUbCDbrWbyYbrYbrZbsabsbbseaOfaOgjPgbsdbseaOhaOibGgbxqaOjkMiaaaaaaaaaaaabRGbRGbudbvsbGtbsmbsnbspbspbvsbsqbvFbssaXibstbvFbsvburbsybsybszbsAbuBburbsDnWHnWHaaaaaaaaaaaabJYbsJbJYbJYbEVbsMbsNaOkaOlaOmaOnaOoaOpaPdaDabzObsObsPaPfbsQaPgbsRbsSbsTbsUbsVaPhbFabsXbsYbsZbtabDCaPiaPjaPkbDCaPmaPnbDGbDGbsobAcbthbtibtjbtkbbEbAiblUbAibAibAibAibtqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaagaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaGhaPoaPpaPraPsaPtaPvaGhaPwaPxaNSaPyaBLaPzaPAaNYaNYaPBaPCaPDaPEaPFaPGaQxbEmaQzaQAaQCaQDaQEaQGbAvbtNbtObAxbAyaQHbtQbtRbtSbtTbdRbtVknzknzbtYknzknzknzknzkMikMibxqaQIkMiaaaaaaaaabRGbRGbudbvsbxvbxvbufbugbuhaQJaQJaQKaQLaQMbuiaQNbujbukaQObumbumbunbuobvMbvMburbsDnWHnWHaaaaaaaaabJYbuvaQPaQQbEVaQSbuwbuxbuyaQTaQUaQVaQXaQYaQZbuzaRabuAaRbaRbaRbaRcbzJaRdaRebyabuCbFabuDbuEaRfbuFbzYbzYbzYbzYbDCbuJaRgaRhbDGaRibuKbAiaRjaRkaRlaRmaRnbuLbuMbuNbrbaaaaaacFUaaaaaaaaahqqaagaagaagaagaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaafaaaaaaaaaaIZaRoaIZaRoaIZaRoaIZaRoaIZaRoaIZaRoaafaafaRpaRqaRpaRpaRpaRpaRpaRqaRraRsaRpazCaRtaNSaRuaBLaSraSsaNYaStaSuaSvaSxaSzaSAaSDaSEbEmaSGaSHaSIbvgbvhbvibvjbtNpGfbAxbvkbvlaSJbvmaSKbvnbxjaSLknzaSMaSNozLozLbvqknzaSQbGlbxqaSRbzjaaaaaaaaabRGbvrbvsbxvbvubvvbvwaSSbvxbvybvzbvAbvBbvCbvDbvEbvFbvGbvHaSTbvIbvJaSUbxIbvLbvMburaSVnWHaaaaaaaaabzBbxLbIqaSWbEVbvUbvVaSXbxQbvWaSYbvXbvYbvZbvNbzObwabwbbwebwdbweaSZbyabwgaTabwhbwibFaaTbaTcaTdbwjbyfbwlbzYbwnbDCbwobwpbwqbDGbwsaTebAibwubwznSCnSCnSCbwzbwzbyvbwBaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaagqlFaaaaaaaaaaaaaaa aaaaaaaaaaaaaafaaaaaaaaaaTfaTgaThaTgaThaTgaThaTgaThaTgaThaTgaTiaTjaTkaTlaTmaTnaTlaToaTlaTpaTqaUdaUgazCaUqaUuaUvaUxaUzaUAaNYaUBaSuaUCaUDaUEaUFaSDaUGbEmaUHbwWaUIbwXaUJbwYbwZbxabxbbxcbxdbxebxfbxgbxhbxibxjaUKecTbxlbxmaULbxnbxoknzbzhbaObxqbxrbzjaaaaaabYDbYDaUMbGtbxvaUNaUObEJbxxaUPbxxbxxbVAwdcbxAaVybxBpXvbxDpXvaVJpXvpXvpXvaVLbxIbvMbuBaVUbzybzyaaaaaabzBbxLbxMbbrbEVbxOaVVbxPbxQbxRbEVbEVvNraVWvNrbFabFabxWbxXbxYbxZaSZbyabybaVXbycbydbFaaVYaVZaWabyebyfbygbzYbyhbDCaWjbyjbykbDGbymbynbAibypbyqbyrbysbytaWkbyubyvbAiaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaagaagaaaaaaaaaaaa aaaaaaaaaaaaaafaaaaaaaaaaKRaJaaJaaJaaJaaJaaJaaJaaJaaJaaJaaJaaTiaWlaWmaWnaWoaWpaWqaWoaWpaWraWsaWtaWuazCaWvaWwaJpaBLaWxaWyaNYaWzaSuaSxaWAaWBaSxaSDaWCbEmaWDaWEaXMbyRbySbyTbyUaEFbyVbyWbyXbvlbyYbyZbzbbzbbzcaXNknzbzdbzeaXPbzfbzgknzbzhbGlbGmaCibzjaaaaaabYDaXQaXRbzmaXSbznbEJbEJaYaaYbbzpbEJaYcwdcwdcbMQpXvpXvbztaYdaYebzubzvpXvpXvbzxaYfaYgaYhaYibzyaaaaaabzBaYjbzCaYkbEVbzEbzGbzGbzHbzIbvXaadbzLaYlbzMbzNbzObzPbzSbzSbzSaYmbzWbzWbzUbzVbzWbGWaYnaYoaYpbzXbzYbzYbzYbzZbDCaYqaYrbAbbDGbBJbAcbAibAibAibAibAibAibAibAibAibAibAjbAjaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaagaaaaaaaaaaaa aaaaaaaaaaaaqlFaaaaaaaaaaIZaRoaIZaRoaIZaRoaIZaRoaIZaRoaIZaRoaagaYsaYtaYuaYvaYwaYuaYvaYwaWraYxaZBaZJazCaZKaZNaZKaBLaZOaZYaNYaZZbaababbacaWBbabbadbaebEmbafbagbahbaibAtbAubAvbAwbAxbAxbAyaQHbajbyYbyYbyYbyYbakknzbAzknzbAAknzknzknzkMibCKbGmbAGkMiaaaaaabRGbalbambgObALbAMbANbanbAObAPbAQbEJbASbASbAUbaopXvbAWbAXbAYbapbAZbBabBbpXvbBcbaqbaraYhbbRnWHaaaaaabJYbBgbBhbJYbEVbBjbbSbBlbBlbBmbBnbBobBpbbTbBqbBrbBsbBtbBubBubBubbUbBxbbVbBybBzbtfbGWbbWbbXbbYvVhbDCbBBbBCbBDbDCbBFbBGbBHbDGbBJbAcbKsbBLbBMbBNbBObMcbBQbBRbKubQNuGjbVabVauGjuGjuGjuGjuGjaaaaaaaaaaaaaagaaaaaaaaaaaa -aaaaaaaaiaaiaagaaaaaaaaaaTfaTgaThaTgaThaTgaThaTgaThaTgaThaTgaTibbZaRpbcaaYvaYwbcbaYvaYwaWrbccbcdbcdbcdbcdbcdbcdbcdbcebcfaNYbcgbchbcibcjbckbdjbdFbEibEmbEmbdGbEmbCxbCybEmbCAbdHuTVbCBbCCbCDbCEbdJbdKbdLgpFbdMknzbCFknzbCGknzbCIbdNbdObGlbdPbCKkMiaaaaaabRGbCObCPbCQbCRbdQbdSbCSbCTbCUbfmbCVbCWbCXbmcbfnpXvbDbbDcbfobfpbfqbfrbfspXvbftbfubfvbfwbfxnWHaaaaaabJYbDfbDgbfybEVbEVbfzbDjbDkbDlbvXaaebDnbDobfAbDpbDqbDrbDsbDtbDubfBbBxbDvbDwbDxbDybGWbDCbfCbDCbDCbDCbDCbDCbDCbDCbDGbDGbDGbDGbDHbfDbKsbDJbDKbDLbKtbIObDObMcbKubKuuGjbDTbDUbDVuGjbWtbfEuGjuGjaafaafaafaagaaaaaaaaaaaa +aaaaaaaaiaaiaagaaaaaaaaaaTfaTgaThaTgaThaTgaThaTgaThaTgaThaTgaTibbZaRpbcaaYvaYwbcbaYvaYwaWrbccbcdbcdbcdbcdbcdbcdbcdbcebcfaNYbcgbchbcibcjbckbdjbdFbEibEmbEmbdGbEmbCxbCybEmbCAbdHbAxbCBbCCbCDbCEbdJbdKbdLgpFbdMknzbCFknzbCGknzbCIbdNbdObGlbdPbCKkMiaaaaaabRGbCObCPbCQbCRbdQbdSbCSbCTbCUbfmbCVbCWbCXbmcbfnpXvbDbbDcbfobfpbfqbfrbfspXvbftbfubfvbfwbfxnWHaaaaaabJYbDfbDgbfybEVbEVbfzbDjbDkbDlbvXaaebDnbDobfAbDpbDqbDrbDsbDtbDubfBbBxbDvbDwbDxbDybGWbDCbfCbDCbDCbDCbDCbDCbDCbDCbDGbDGbDGbDGbDHbfDbKsbDJbDKbDLbKtbIObDObMcbKubKuuGjbDTbDUbDVuGjbWtbfEuGjuGjaafaafaafaagaaaaaaaaaaaa aaaaaaaaiuZKaafaafaafaafaTfbfFbfGbfFbfGbfFbfGbfFbfGbfFbfGbfFaTibfHaRpbfIaYvbfJbfKaYvbfJaWrbfLbcdbgNbhkbhlbhmbhobcdaWxbhpbEibEibEibEibEibEibEibEibEibhqbEmbEmbEmbEmbEmbEmbEnbEobhrbEpbEnbEsbEsbEsbEsbEsbEsbEsbEtbEtbEtbEtknzbEvbhskMibEwbExbEykMiaaaaaabRGbECbGsbEEbhtbhubEJbEJbEJbEJbEJbEJbEKbOQbOQbhvpXvpXvpXvbhwpXvbEOaYdnGqpXvbhxbfubEPbfwbhynWHaaaaaabJYbERbESbhzbhAbEVbEVbEVbEVbEVbEVbhBbEWbiwbEWbhBbFabFabFabFabFabFabGWbFcbFebFebFfbGWbFgbFgbFgbSdbixbFhbFibiybFjbFkbizvNrbFmbFnbiBbFobiCbFpbFqbKtbIObIPbMcbFvbKuuGjbFybVcbFAbVabVbbVcbFDuGjaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaiaaiaagaaaaaaaaaaKRbiDaKRbiDaKRbiDaKRbiDaKRbiDaKRbiDaafbiEaRpbiFbiGbiHbiIbiJbiHbiKbiLbiMbiNbiObiPbiQbiTbiUaWxbiVbiWbjtbjubjwbjxbjybjybjybjybjxbjybjybjybjzbGabGbbGcbjApgKbGdbjDkMibGebGebjEaCibkmbknbGgbGgbGhbfVkMibGjkMikMibGlbGmbGnkMiaaaaaabYDbGrbGsbGtbGubGvbkobGwbkpbGxbLubGzbGAbMTbMTbkqbMTbMTbMTbGGpXvaYdbGIvZTpXvlaobkrbuBbfwrwFbzyaaaaaabJYbksbGLbBdbBdbGNbktbIqbkubkvbJYbGPbGRbkwbGRbkxbKgbGSbkybkzbkAbBAbGWbGWbkBbGXbGWbGWbkCbkDbkEbkFbkGbkHbTubGZbTubIHbkIvNrbHdbHeaMnbHfbHgbHhbkJbKtbIObIObIPbIPbKuuGjbHobkZbHpbHqbHrbHsbHtbAkbHuaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaaaaRpblaaWoblbblcbldbleaWrblfbcdbcdbcdbcdblgbcdbliblkbllblmblmblVblWblXblXblXblXblXblXblXbGbbGbbGbblYblZbmabmbbmdbmebmfbmgbHHbmhbHIbHHbHHbHHbHIbHObHObHObHObHLbHObHObHObHPbHQkMibRGbRGbYDbHTcBhbHUbHVbHWbLsbHYbHYbHZbLubQvwdcwdcwdcwdcwdcwdcwdcbQvbxDidIbmibmjpXvbmkbmGbmHbmIbmJbzyceTceTbJYbmKbIjlLlbIlbImbInbIobIpbIqbIrbIubmNbItbmPbIuhIEbIvbpjbIxbIybIzbIAbmQbIBbICbmTbmTbnkbSdbSdbSdbSdbSdbSdbSdbKkbIHbnqvNrbIJbnrbnsbKsbnubILbIMbKtbIObIPbIQbnvbKuuGjbISbPKbITuGjbVabnwbVauGjuGjaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaRqaRpbnxbnxaRpbnybnzbnAaWrbnBbnCbnDbnEbobbocbodbofbogbovboBboCboEboFblXboRboRboRboRboRbpobQcbppbGbbprbJmbJnbJobQebJqxbVkMikMikMikMikMikMikMikMikMikMikMikMikMikMikMikMikMibpsbQqbJEbptbYDbJGbpubQubJIbJJbLsbLsbJLbpvbLubJMwdcbQzbQzbQzbQzbQzwdcbJRpXvpXvpXvpXvpXvbpwbpxbpwbpybpzbZkbpBbpCbJSbpDaXBbJYbJYbJYbJYbJYbJYbJYbJYbJZbKabKbbpEbKcbKgbKgbKgbKfbKgbKgbKgbKgrofbpFbmTbpGbpHbpIbQKbQKbQKbQKbQKbSdbKkbLVbQNvNrbKnvNrvNrbKsbKsbKsbKsbKtbKubQNuGjuGjuGjuGjbKAbPKbKBbKCbKDbKEbKFbpJuGjuGjaaaaaaaaaaagaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafbpKaRpbpLbpMbqfbqhbqibqCbrhbribrjbrkbrlbrmbrnbrobrpbrqbrrbrsbrtblmbrubrvblXboRboRboRboRboRbrwbrxbrybrzbrAbrBbKUbLdbOqbKZbrCbrDbrEbKYnJWbLabLbbrFbrGbrHbrIbLcfWQqUMbLfbrJbLgbLhbLibLjbLkbLlbLmbOJbOJbLobLpbLqbLrbLsbLubLubLubEKwdcbQzbQzbQzbQzbQzwdcbQvwdcbrKbrLpXvbrMbsfbLCbRSsDssDsbshbsBbsGbsHbtlbtrbtsbLDbLEnSWfjzjpBbLHbLIbLJbttbLKbLObLLbtubLNbtvussbLPbtwbtxbtybKhbtzbtAbtBbtCbtDbQKbQKbQKbQKbQKbSdbLUbLVbLWbLXbLYbLZbQNbtEbtFbtGbMbbMcbtHbtIuGjbMdbtJuGjbtKbtLbMfbMfbMfbPGbVcbtUbMhbVaaaaaaacFUaagaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabubbucbuubuObuQbuRbuSbuTbuUbuVbuWbuXbuYbuZbvabvbbofbpPbvcblmblmbvdbGbblXboRboRboRboRboRbvebvfbvobvObvPbMAbJsbMsbMrbMsbMtbMAbMubMAbMAbMxbMybMAbMAbMBbwCbMCbMDbMEtCRbwDbMFbMGbMHbMNbMJbMNbMNbMNbMNbMNbMObMPbwEbMQbMRbMSbMTbMUwdcbQzbQzbQzbQzbQzwdcbNbbaobNcbNdbNebNfbNgbNhbwFbwFbwFbwFbwFbwGbwHbwIbNibNjbwJbNwbNobNwbNwbwKbNpbNwbNobwLbNwbNqbNwbNwbNnbNwbNwbNvbwMbwKbwNbwObwPbwQbwRbwSbQKbQKbQKbQKbQKbSdbNBbNCbNDbNEbNFbNGbNHaSPbNJbNKbNLbNMbwTbNNbNObNPbNQbNRbNSbNTbNUbNVbNWbNXbNYbVcbOabObaafaafaafaagaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaaaaRpbwUbpMbwVbxtbyxbyybyzbyAbyBbyCbyDbyFbyGbyHbyIbyJblmblmblmbyMbyNbyOblXboRboRboRboRboRbyPbyQbzkbrzbzzbzAbMqbOpbOqpjTbOsbOtbOunpZbOwbOxbOyvmwbAlbAmbAnbAqbOzbOAbArbAsbOBbOCbODbOEbOFbOGbOHfDDfDDbOKbOLbAHbATwdcbONbOObOQbOQwdcbQzbQzbQzbQzbQzwdcbOXbOYbaooHPwdcbPabBebPbbBvbCdbCdbCebCfbCgbChbCibCjbtspftbPdbNufZsfZsbPjbPgbClbCmbCnbPhbCouigbPfbPibPjbPebCpbCqbCrbCsbtzbtAbCtbCubCvbQKbQKbQKbQKbQKbSdbPpbPqbQNbPsbPtbPubQNbNZbPxbPybPzbCMbDdbPAuGjbPCbPDuGjbPFbPGbPHbVcbUYbPKbVcbPwrfQbVaaaaaaaaaaaagaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaRqaRpbnxbnxaRpbDZbEabEbaWrbEcbnCbEdbEebEfbEgbEhbEzbEAbFFbFGbFHbFIbFJblXboRboRboRboRboRbpobFKbFLbGbbGbbFMnupbQdbQebOrbQfwWXwWXwWXwWXwWXwWXbXQbXQbFNbQlbXQbQnbFObFPbFQbQojiSbFRbQqbQrbQsbYDbQtbpubQubFSbJJbYDwdcbQvbQwbFTbFUwdcbQzbQzbQzbQzbQzbZibZibFVbZibZibZibZibQEbpxbpwbpybFWbZkbFXbFYbJSbFZclgclgclgbGpbGKbQHbQHbQHbQHbQHbQGbQHbQHbQHbQHbQHbQHbHvbHwbHxbCqbHybQIbHzbmTbHAbQIbpIbQKbQKbQKbQKbQKbSdbQMbKkbQNbTybQPbHBbXsbXsbXsbXsbXsbHCbXsbXsuGjuGjuGjuGjbHDbQYbQZbRabRbbHEbHFxFCuGjuGjaaaaaaaaaaagaaaaaa -aaaaaaaaaaaaqlFaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaaaaRpbHGbIXbIYbIZbnzbJaaWrbJbbJcbJcbJdbJcbJebJcbJcbEAbFHbFHbJfbJgbJhblXblXblXblXblXblXblXbGbbGbbGbbJibRqbRubJjbRsbRtbRubJkbJlbRvbKIbRwbRxbRybRzbRAbRBbKJbXQqqJbKKqqJbSRbREiCsjiSbRGbRGgfQbRIjZpbRJbRKbKMbVAbKNbRLbVDbVDbVDbKObKObKPbRNbROgfQbZibKQbKRbKSbKTbRQbZibMjbRRbRSbRTbMkbZkceTceTclgbMlbMmbMnbMobMpbMpbOcbOdbRWbRUbRVbRWbRXbRYbOebOfbOgbOhbOibOjbOkbOlbOmbOnbPIbPIbPIbPNbSdbSdbSdbSdbSdbSdbSdbTubPPbSfbTybShbSibXrbPSbSkbSlbSmbSnbSobPTbSpbSqbSruGjbStbPKbSuuGjbVabSxbVauGjuGjaaaaaaaaaaaaaagaaaaaa -aaaaaaaaiaaiaagaaaaaaaaaaIZaRoaIZaRoaIZaRoaIZaRoaIZaRoaIZaRoaafbPUaRpbPVaWobPZbQabQbbRfbRgbRhbRibRjbRkbRlbRmbRnbJcbRobRpbSBbSBbSCbSDbSFbSFbSFbSHbSIbSJbSKbJibSLbJibJibGbxTRbSNvAVbSNsoewWXbSMbSObSVbTTbSPbXQbTUbTVbTWbTYbXQbTZbUabUbbSRbSSiCsjiSaaaaaagfQbUcbKLsqlbUmcTSbVAbUebSZbVDbUfbUgbVebVgsqlbVhsqlbTcbTdbVjbTebTfbVkbVlbZibThbUwbsgbTjbTkbZkaaaaaaclgkOlbVmcljclgbVqbVrbQHbVwbVLbTlbTmbTnbTobTpbWdbWsbWubWzbQHbWAbWEinGbXqbXCbPIbXEbKkbTqbTubTubGZbTubTubTubTvbTwbKkbTxbTybTzbTAbXrbTCbTDbUPbTFbTGbTHbXFbTIbTJbTKuGjbTMbTNbTObVabTQbTRbTSuGjaaaaaaaaaaaaaaghqqaaaaaa -aaaaaaaaiuZKaafaafaafaafaTfaTgaThaTgaThaTgaThaTgaThaTgaThaTgaTiaTjaRpbXHbXIbXJbXKbXIbXLbXXbYibJcbYLbYMbYNbYQbYRbJcbYSbYTbYUbYUbYVbYWbYUbZlbZlbZxbZxcsKbZNcsKbZRbZRcsKbZVbZVbZWbZYbZWbZVbZVbXNbXNbXNbXNbXNbXNbUjcaacadbXQbXQcafcagcahbSRcaiiCsjiSaaaaaabWCbUlcajcakbUmcarbVAcasbUnbUocbccbdcbecbecbfcbgsqlbUqbUrcbjbUsbVIbUtbUubZicbkbUwbUxbUybUzceTaaaaaaclgcbAcbFcbFcbFcbBccicbFcbFbUBbUBbUBccUccQcclccQccQccQccQccnccoccqccWccrccodOBdOBdOBdOBdOBdOBdOBbUIbUIbUIbUIbULbULbULbULbUMbUNbXrccsbUPbUQbURbUSbUTcctccubUUbUVuGjbUXbUYbUZbVabVbbVcbVduGjaaaaaaaaaaagaagaaaaaaaaa +aaaaaaaaiaaiaagaaaaaaaaaaKRbiDaKRbiDaKRbiDaKRbiDaKRbiDaKRbiDaafbiEaRpbiFbiGbiHbiIbiJbiHbiKbiLbiMbiNbiObiPbiQbiTbiUaWxbiVbiWbjtbjubjwbjxbjybjybjybjybjxbjybjybjybjzbGabGbbGcbjAbGdbGdbjDkMibGebGebjEaCibkmbknbGgbGgbGhbfVkMibGjkMikMibGlbGmbGnkMiaaaaaabYDbGrbGsbGtbGubGvbkobGwbkpbGxbLubGzbGAbMTbMTbkqbMTbMTbMTbGGpXvaYdbGIvZTpXvbuBbkrbuBbfwwcFbzyaaaaaabJYbksbGLbBdbBdbGNbktbIqbkubkvbJYbGPbGRbkwbGRbkxbKgbGSbkybkzbkAbBAbGWbGWbkBbGXbGWbGWbkCbkDbkEbkFbkGbkHbTubGZbTubIHbkIvNrbHdbHeaMnbHfbHgbHhbkJbKtbIObIObIPbIPbKuuGjbHobkZbHpbHqbHrbHsbHtbAkbHuaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaaaaRpblaaWoblbblcbldbleaWrblfbcdbcdbcdbcdblgbcdbliblkbllblmblmblVblWblXblXblXblXblXblXblXbGbbGbbGbblYblZbmabmbbmdbmebmfbmgbHHbmhbHIbHHbHHbHHbHIbHObHObHObHObHLbHObHObHObHPbHQkMibRGbRGbYDbHTbGsbHUbHVbHWbLsbHYbHYbHZbLubQvwdcwdcwdcwdcwdcwdcwdcbQvbxDidIbmibmjpXvbmkbmGbmHbmIbmJbzyceTceTbJYbmKbIjlLlbIlbImbInbIobIpbIqbIrbIubmNbItbmPbIuhIEbIvbpjbIxbIybIzbIAbmQbIBbICbmTbmTbnkbSdbSdbSdbSdbSdbSdbSdbKkbIHbnqvNrbIJbnrbnsbKsbnubILbIMbKtbIObIPbIQbnvbKuuGjbISbPKbITuGjbVabnwbVauGjuGjaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaRqaRpbnxbnxaRpbnybnzbnAaWrbnBbnCbnDbnEbobbocbodbofbogbovboBboCboEboFblXboRboRboRboRboRbpoxbVbppbGbbprbJmbJnbJobQebJqxbVkMikMikMikMikMikMikMikMikMikMikMikMikMikMikMikMikMibpsbQqbJEbptbYDbJGbpubQubJIbJJbLsbLsbJLbpvbLubJMwdcbQzbQzbQzbQzbQzwdcbJRpXvpXvpXvpXvpXvbpwbpxbpwbpybpzbZkbpBbpCbJSbpDaXBbJYbJYbJYbJYbJYbJYbJYbJYbJZbKabKbbpEbKcbKgbKgbKgbKfbKgbKgbKgbKgbKhbpFbmTbpGbpHbpIbQKbQKbQKbQKbQKbSdbKkbLVbQNvNrbKnvNrvNrbKsbKsbKsbKsbKtbKubQNuGjuGjuGjuGjbKAbPKbKBbKCbKDbKEbKFbpJuGjuGjaaaaaaaaaaagaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafbpKaRpbpLbpMbqfbqhbqibqCbrhbribrjbrkbrlbrmbrnbrobrpbrqbrrbrsbrtblmbrubrvblXboRboRboRboRboRbrwbrxbrybLgbrAbrBbKUbLdbOqbKZbrCbrDbrEbKYbKZbLabLbbrFbrGbrHbrIbLcbLdbQebLfbrJbLgbLhbLibLjbLkbLlbLmfDDfDDbLobLpbLqbLrbLsbLubLubLubEKwdcbQzbQzbQzbQzbQzwdcbQvwdcbrKbrLpXvbrMbsfbLCbRSbsgbsgbshbsBbsGbsHbtlbtrbtspftbLEbLJbttbPdbLHbLIbLJbttbLKbLObLLbtubLNbtvbLObLPbtwbtxbtybKhbtzbtAbtBbtCbtDbQKbQKbQKbQKbQKbSdbLUbLVbLWbLXbLYbLZbQNbtEbtFbtGbMbbMcbtHbtIuGjbMdbtJuGjbtKbtLbMfbMfbMfbPGbVcbtUbMhbVaaaaaaacFUaagaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabubbucbuubuObuQbuRbuSbuTbuUbuVbuWbuXbuYbuZbvabvbbofbpPbvcblmblmbvdbGbblXboRboRboRboRboRbvebvfbvobvObvPbMAbJsbMsbMrbMsbMtbMAbMAbMubMAbMxbMybMAbMAbMBbwCbMCbMDbMEtCRbwDbMFbMGbMHbMNbMJbMNbMNbMNbMNbMNbMObMPbwEbMQbMRbMSbMTbMUwdcbQzbQzbQzbQzbQzwdcbNbbaobNcbNdbNebNfbNgbNhbwFbwFbwFbwFbwFbwGbwHbwIbNibNjbwJbNwbNobNwbNwbwKbNpbNwbNobwLbNwbNqbNwbNwbNnbNwbNwbNvbwMbwKbwNbwObwPbwQbwRbwSbQKbQKbQKbQKbQKbSdbNBbNCbNDbNEbNFbNGbNHaSPbNJbNKbNLbNMbwTbNNbNObNPbNQbNRbNSbNTbNUbNVbNWbNXbNYbVcbOabObaafaafaafaagaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaaaaRpbwUbpMbwVbxtbyxbyybyzbyAbyBbyCbyDbyFbyGbyHbyIbyJblmblmblmbyMbyNbyOblXboRboRboRboRboRbyPbyQbzkbLgbzzbzAbMqbOpbOqpjTbOsbOtbOumOobOwbOxbOybOpbAlbAmbAnbAqbOzbOAbArbAsbOBbOCbODbOEbOFbOGbOHfDDfDDbOKbOLbAHbATwdcbONbOObOQbOQwdcbQzbQzbQzbQzbQzwdcbOXbOYbaooHPwdcbPabBebPbbBvbCdbCdbCebCfbCgbChbCibCjbtspftbPdbNubPdbPdbPjbPgbClbCmbCnbPhbCobPebPfbPibPjbPebCpbCqbCrbCsbtzbtAbCtbCubCvbQKbQKbQKbQKbQKbSdbPpbPqbQNbPsbPtbPubQNbNZbPxbPybPzbCMbDdbPAuGjbPCbPDuGjbPFbPGbPHbVcbUYbPKbVcbPwrfQbVaaaaaaaaaaaagaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaRqaRpbnxbnxaRpbDZbEabEbaWrbEcbnCbEdbEebEfbEgbEhbEzbEAbFFbFGbFHbFIbFJblXboRboRboRboRboRbpobFKbFLbGbbGbbFMxbVbQdbQebOrbQfwWXwWXwWXwWXwWXwWXbXQbXQbFNbQlbXQbQnbFObFPbFQbQojiSbFRbQqbQrbQsbYDbQtbpubQubFSbJJbYDwdcbQvbQwbFTbFUwdcbQzbQzbQzbQzbQzbZibZibFVbZibZibZibZibQEbpxbpwbpybFWbZkbFXbFYbJSbFZclgclgclgbGpbGKbQHbQHbQHbQHbQHbQGbQHbQHbQHbQHbQHbQHbHvbHwbHxbCqbHybQIbHzbmTbHAbQIbpIbQKbQKbQKbQKbQKbSdbQMbKkbQNbTybQPbHBbXsbXsbXsbXsbXsbHCbXsbXsuGjuGjuGjuGjbHDbQYbQZbRabRbbHEbHFxFCuGjuGjaaaaaaaaaaagaaaaaa +aaaaaaaaaaaaqlFaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaafaaaaaaaRpbHGbIXbIYbIZbnzbJaaWrbJbbJcbJcbJdbJcbJebJcbJcbEAbFHbFHbJfbJgbJhblXblXblXblXblXblXblXbGbbGbbGbbJibRqbRubJjbRsbRtbRubJkbJlbRvbKIbRwbRxbRybRzbRAbRBbKJbXQqqJbKKqqJbSRbREiCsjiSbRGbRGgfQbRIbKLbRJbRKbKMbVAbKNbRLbVDbVDbVDbKObKObKPbRNbROgfQbZibKQbKRbKSbKTbRQbZibMjbRRbRSbRTbMkbZkceTceTclgbMlbMmbMnbMobMpbMpbOcbOdbRWbRUbRVbRWbRXbRYbOebOfbOgbOhbOibOjbOkbOlbOmbOnbPIbPIbPIbPNbSdbSdbSdbSdbSdbSdbSdbTubPPbSfbTybShbSibXrbPSbSkbSlbSmbSnbSobPTbSpbSqbSruGjbStbPKbSuuGjbVabSxbVauGjuGjaaaaaaaaaaaaaagaaaaaa +aaaaaaaaiaaiaagaaaaaaaaaaIZaRoaIZaRoaIZaRoaIZaRoaIZaRoaIZaRoaafbPUaRpbPVaWobPZbQabQbbRfbRgbRhbRibRjbRkbRlbRmbRnbJcbRobRpbSBbSBbSCbSDbSFbSFbSFbSHbSIbSJbSKbJibSLbJibJibGbbSNbSNbSNbSNbSNwWXbSMbSObSVbTTbSPbXQbTUbTVbTWbTYbXQbTZbUabUbbSRbSSiCsjiSaaaaaagfQvpHbKLsqlbUmiqfbVAbUebSZbVDbUfbUgbVebVgsqlbVhsqlbTcbTdbVjbTebTfbVkbVlbZibThbUwbsgbTjbTkbZkaaaaaaclgkOlbVmcljclgbVqbVrbQHbVwbVLbTlbTmbTnbTobTpbWdbWsbWubWzbQHbWAbWEbXqbXqbXCbPIbXEbKkbTqbTubTubGZbTubTubTubTvbTwbKkbTxbTybTzbTAbXrbTCbTDbUPbTFbTGbTHbXFbTIbTJbTKuGjbTMbTNbTObVabTQbTRbTSuGjaaaaaaaaaaaaaaghqqaaaaaa +aaaaaaaaiuZKaafaafaafaafaTfaTgaThaTgaThaTgaThaTgaThaTgaThaTgaTiaTjaRpbXHbXIbXJbXKbXIbXLbXXbYibJcbYLbYMbYNbYQbYRbJcbYSbYTbYUbYUbYVbYWbYUbZlbZlbZxbZxcsKbZNcsKbZRbZRcsKbZVbZVbZWbZYbZWbZVbZVbXNbXNbXNbXNbXNbXNbUjcaacadbXQbXQcafcagcahbSRcaiiCsjiSaaaaaabWCbUlcajcakbUmcarbVAcasbUnbUocbccbdhPQcbecbfcbgsqlbUqbUrcbjbUsbVIbUtbUubZicbkbUwbUxbUybUzceTaaaaaaclgcbAcbFcbFcbFcbBccicbFcbFbUBbUBbUBccUccQcclccQccQccQccQccnccoccqccWccrccodOBdOBdOBdOBdOBdOBdOBbUIbUIbUIbUIbULbULbULbULbUMbUNbXrccsbUPbUQbURbUSbUTcctccubUUbUVuGjbUXbUYbUZbVabVbbVcbVduGjaaaaaaaaaaagaagaaaaaaaaa aaaaaaaaiaaiaagaaaaaaaaaaTfbfFbfGbfFbfGbfFbfGbfFbfGbfFbfGbfFaTibbZaRpbcaccvccwccxccyccwcczccAbJcbJcbJcbJcbJcbJcbJcccBccCbYUccHccIcdsbYUcdtcducdvcdwcsKcdxcsKcdycsKcsKcdzcdAcdBcdCcdBcdDcdEcdFcdGcdHcdIbVsbXNbVucdJgkOwANbXQbVvcdKcdLbSRcdMiCsjiSaaaaaabWCbVxcdNcdObVybVzbVAbVBbVCbVDcdPcdQcdRceCceDceEsqlbWFaGwceFbVHbVIceGbVJbZiceHbUwceIceJceKceTaaaaaaclguqjcbFbVNjVLceLceMceNceOcePbVObVPccUbVRbVSbVTceQtehceRceShsPcaLbVVcaNbVWbVXbVYceUkwWceVbWacdbbWbceXceYnjGcfhcfLbyKcdkbWfbWgbXrcfNbWibWjbWkbWlcfOcfPbWmbWncfQuGjbWpbWqbWruGjbWtuhFuGjuGjaafaafaafaagaaaaaaaaaaaa aaaaaaaaaaaaaagaaaaaaaaaaKRbiDaKRbiDaKRbiDaKRbiDaKRbiDaKRbiDaagaYscfRcfScfTcfUcfVcfTcfUcfWcfXcfYcfZaRpblXbRpcgabSBbSBcgbbYUcgccgecgfbYUcdtcgObZxcgPcsKcgQcgRcgScgTcgUcgVcgWcgWcgWcgXcgYcgZcdFchachbchcbWBbXNchdchekLWwANbXQbSRbSRbSRbSRjiSiCsjiSaaaaaabWCchfbKLchgchhchibVAbWDbPlbVDchjchkchlbVgchmchNchObWFchQchRchSchTchUbWGbZibWIchVbWJbWKbWLceTaaaaaaclgkOlcbFbWNbWOchWlRFchXcbJbWQchYbWRccQbWTcaFbWUbWVchZbWWbWXbWYbWZbXabXbbXccaMbXdbXelQlbXecibcdbvMOciccidnjGbXgciebSccdkbXjbXkbXrbXrbXrbXrbXrbXrbXrbXrbXrbXsbXtuGjbXvbVauGjuGjuGjuGjuGjaaaaaaaaaaaaaagaaaaaaaaaaaa -aaaaaaaaaaaaaagaaaaaaaaaaIZaJaaJaaJaaJaaJaaJaaJacifaJaaJaaJaaTiaWlcigcihciIciJciKciLciJciMcfZcfZciNaRpblXciObFHciPciPciQciPbYUciRciSbYUbYUciTciUcjvcsKcjwcjxcjycjzcjAcjBcgWcgWcjCcjDckBckCbXNckPckRckXbXMbXNbXQbXQbXPbXQbXQbXUbXUbXTbXUjiSiCsbYZaaaaaagfQlZzbKLbXZbYaclOwdcwdccmjbVDchjcmlcmmbVgsqlbVysqlbYbbZicmnbYccnbbYdbZibZicncbYebYfcndjqtbZkaaaaaacmFkOlcbFcnFcnGchWcnIcnJcbJcodcoebYkccQcbicaFcofcogcohcoicowcoLbYobYpbYqbYrbYsbYtbYwbYvbYwbYxcoMbYybYzbYAnjGbYCcpfcpgcdkcpjcpwcpxcpycpMceBcpNcpOcaZcpPbYFcdrbYHbYIcpQaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaagaaaaaaaaaaaa -aaaaaaaaaaaaaafaaaaaaaaaaTfbfFbfGbfFbfGbfFbfGbfFbfGbfFbfGbfFaTibfHaRpaRpcqfcqgcqhaTocqhcqjcfZcfZcqkaRpblXciObFHciPcqlcqmcqnbYUcqocqpcqqbYUcqrcqscqtcsKcqucqvcqwcqxcqycqzcqAcqMcqMcqNckBcqOcqQcqRcqScqTcqUbXNcqVcqWcqXcqYcqZbXUiOIbYXuxtjiSiCsbYZaaaaaagfQgfQcrasqlcbgtBzcrlwdccrmbVDbVDbVDbVDcrnbZcbZbouTbZdbZibZidJNbZibZibZicrobZjcbwbsgcrpbZkbZkaaaaaacmFuqjcbFcbFbZpbZqbZrbZscbJbZucrqbZvccQpxbcrrbZzbZzbZAbZBbZCcrsbZDcrtcaNcrucaMcrvcrwcrxcrycrzdOBcrAbZEbZFnjGbZGbZHbZIcdkbZKcrBbZLbZMbZMceBbZPbZQbAKceBceBcdraaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaqlFaafaaaaaaaaaaaa -aaaaaaaaaaaaqlFaaaaaaaaaaKRbiDaKRbiDaKRbiDaKRbiDaKRbiDaKRbiDaafaafaafaRqaRpaRpaRpaRpaRpaRpaRpaRpaRpaRpblXcrCbGbciPcrDcqmcrEbYUcrHcrIcrJcrUcrVcrWcrXcsKcrYcsKcrZcsacsKcsbcsccsemfEcsfcsgcshcdFcsjcskcsocswbXNcqVcsxcsycszcqYcsAbXUiOIcsBjiSiCsbYZaaaaaaaaabWCcsCcsDcbgcsEcsGwlgcsHcsIcalcsJctcjqwctdbUmctejqwctfctgcthcticamctjctkctlcbwcbxcapceTaaaaaaaaacmFkOlcaucbFcawcaxcaycazcbJcaCctmcaCccQcaEcaFcaGcaHcaIcaJcaKctncaLctocaNctpcaMctqbYwctrbYwcaOdOBctsctthBTnjGcaQcaRcaScdkcaUcaVeHwctGcaWbZUcaXcaYcaZctPcbacdraaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaagaagaaaaaaaaaaaaaaa +aaaaaaaaaaaaaagaaaaaaaaaaIZaJaaJaaJaaJaaJaaJaaJacifaJaaJaaJaaTiaWlcigcihciIciJciKciLciJciMcfZcfZciNaRpblXciObFHciPciPciQciPbYUciRciSbYUbYUciTciUcjvcsKcjwcjxcjycjzcjAcjBcgWcgWcjCcjDckBckCbXNckPckRckXbXMbXNbXQbXQbXPbXQbXQbXUbXUbXTbXUjiSiCsbYZaaaaaagfQvpHbKLbXZbYaclOwdcwdccmjbVDchjcmlcmmbVgsqlbVysqlbYbbZicmnbYccnbbYdbZibZicncbYebYfcndklhbZkaaaaaacmFkOlcbFcnFcnGchWcnIcnJcbJcodcoebYkccQcbicaFcofcogcohcoicowcoLbYobYpbYqbYrbYsbYtbYwbYvbYwbYxcoMbYybYzbYAnjGbYCcpfcpgcdkcpjcpwcpxcpycpMceBcpNcpOcaZcpPbYFcdrbYHbYIcpQaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaagaaaaaaaaaaaa +aaaaaaaaaaaaaafaaaaaaaaaaTfbfFbfGbfFbfGbfFbfGbfFbfGbfFbfGbfFaTibfHaRpaRpcqfcqgcqhaTocqhcqjcfZcfZcqkaRpblXciObFHciPcqlcqmcqnbYUcqocqpcqqbYUcqrcqscqtcsKcqucqvcqwcqxcqycqzcqAcqMcqMcqNckBcqOcqQcqRcqScqTcqUbXNcqVcqWcqXcqYcqZbXUiOIbYXuxtjiSiCsbYZaaaaaagfQgfQcrasqlcbgtBzcrlwdccrmbVDbVDbVDbVDcrnouTbZbouTbZdbZibZidJNbZibZibZicrobZjcbwbsgcrpbZkbZkaaaaaacmFuqjcbFcbFbZpbZqbZrbZscbJbZucrqbZvccQpxbcrrbZzbZzbZAbZBbZCcrsbZDcrtcaNcrucaMcrvcrwcrxcrycrzdOBcrAbZEbZFnjGbZGbZHbZIcdkbZKcrBbZLbZMbZMceBbZPbZQbAKceBceBcdraaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaqlFaafaaaaaaaaaaaa +aaaaaaaaaaaaqlFaaaaaaaaaaKRbiDaKRbiDaKRbiDaKRbiDaKRbiDaKRbiDaafaafaafaRqaRpaRpaRpaRpaRpaRpaRpaRpaRpaRpblXcrCbGbciPcrDcqmcrEbYUcrHcrIcrJcrUcrVcrWcrXcsKcrYcsKcrZcsacsKcsbcsccsecsecsfcsgcshcdFcsjcskcsocswbXNcqVcsxcsycszcqYcsAbXUiOIcsBjiSiCsbYZaaaaaaaaabWCcsCcsDcbgcsEcsGwlgcsHcsIcalcsJctcjqwctdbUmctejqwctfctgcthcticamctjctkctlcbwcbxcapceTaaaaaaaaacmFkOlcaucbFcawcaxcaycazcbJcaCctmcaCccQcaEcaFcaGcaHcaIcaJcaKctncaLctocaNctpcaMctqbYwctrbYwcaOdOBctsctthBTnjGcaQcaRcaScdkcaUcaVeHwctGcaWbZUcaXcaYcaZctPcbacdraaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaagaagaaaaaaaaaaaaaaa aaaaaaaaaaaaaagaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaactQctRctSctTctUctUctVctWctXctYctZcuaciPcubcuccudbYUbYUbYUbYUcuecufcugcuecsKcuhcsKcuicujcsKcuCcuDcuEcuEcuGcuHcuCbXNcuIcuJcuKcuLbXNcuMcuMcuMcuNcuMcqYcqYcqYcsBjiSiCsjiSaaaaaaaaabWCbWCcuOcsDcbgcbgcuPcblcbncbncbocbpcbqcbrcbscbtcbqcuQcuRcuScuScuTcbucbwcbwcbxccEceTceTaaaaaaaaaclgkOlcbEcbFcbFcbGcbHcbIcbJcbKcuUcbLccQcbNcuVcbOcbPcbQcbRcbScuWcbTcbUcbVcuXdOBcvkcvlcvncvocvpdOBfmgcvqvzhnjGcbXcvrcvscdkcbZcdlccbcccccdceBccfccgcchcdrcdrcdraafaafaafhqqaafaaaaaaqlFaafaagaagaagaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaagaagaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaactQcvtcvJcvKcvLctQctQctQcvMcvOcvPcvQciPciPciPciPcvRcvScvTcvUcuecvVcvWcvXcvYcvZcwacwbcwccsKcwdcwecwfcwhcwucwvcwwbXNcdFcwxcdFcwybXNcwzcwAcwBcwCcuMjiSjiScwDjiSjiScwEjiSaaaaaaaaaaaabWCbWCcuOcsDsqlcwFcwGcwHcwHcsDcwIcwJcwKbUmcwMcwJcxccbxcxdcxdcxeccDbsgcbxccEceTceTaaaaaaaaaaaaclgkOlcxfcfccfdccLccMccNcxhccOcxiccPccQccQccQccQccTccSccTccUccWccVccWccXccWdOBcdbcdbcxjcdcdOBdOBcxkcxlcdfnjGcdkcdicdkcdkcbZcdlccbcxmcdmceBcdocdpcdqcdraaaaaaaaaaaaaaaaagaaaaaaaaaaaiuZKaaiaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaagaagaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaacvKcxncvKcxocxpcxqctQcxrcxscxucxIcxKcxLcxMcxNcvRcxOcxPcxQcxRcuecxScxTcxUcxVcxWcuecxXcyicyjcykcymcwNcwNcyncyocypcyqcyrcyscytcyucuMcyvcywcyxcyycuMcyzcyAcyNcyPcyQcySjiSaaaaaaaaaaaaaaabWCbWCdIxcyUcyTcyVcyWcyVcyWxNlcyXiqfbUmcTScyXeDicyYmIdcyZcyYmIdczajqGceTceTaaaaaaaaaaaaaaaclgcdTcdUcfccdWcdXcdYcdZceacebcecceiczbceeczccefcegcehceicejcekcelcemczdbCYcencznceocepczpceqbCZcesczHcetceucevcewcexczIczJczKczYczZcAbceBceBceAceBcdraaaaaaaaaaaaaaaaagaaaaaaaaaaaiaaiaaiaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaagaagaagaagqlFaafaafaafqlFaagaagaagaagaafaagqlFaaaaaaaaacvKcAccAucAvcAxcAycAzcABcACcAJcAKcAMcxLcxMcxNcvRcvRcANcAOcvUcuecAPcAQcAVcAWcAXcAYpMvcBacBecBfcBgcBecBecBicBjcBkcBlcBscAZcBtcBucBvcBwcBxcBycBGcBHcyzcBIcBJcBKcqYcBLjiSaaaaaaaaacFUaaaaaabWCbWCgfQlZzcBMcBNcBOcBWvpHcBXiqfbUmcTScBYklhcBZcCacCbcCejqtbZkceTceTaaaaaacFUaaaaaaaaaclgcfbcCfcfccfdcfecffcChcfgcClcCmcfocficfjcfkcfncfmcfncfocfpcfqcfrcfscftcfucfvcfxcfxcfycfzcfAcfBcCncfEcfDcfEcfFcfEcCocCpcCwcCCcCFcCGcCHcjqcfHcfIcfJcjuaaaaaacFUaaaaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaagaagaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaacvKcxncvKcxocxpcxqctQcxrcxscxucxIcxKcxLcxMcxNcvRcxOcxPcxQcxRcuecxScxTcxUcxVcxWcuecxXcyicyjcykcymcwNcwNcyncyocypcyqcyrcyscytcyucuMcyvcywcyxcyycuMcyzcyAcyNcyPcyQcySjiSaaaaaaaaaaaaaaabWCbWCcyTcyUcyTcyVcyWcyVcyWcyWcyXiqfbUmiqfcyXcyYcyYmIdcyZcyYmIdczamIdceTceTaaaaaaaaaaaaaaaclgcdTcdUcfccdWcdXcdYcdZceacebcecceiczbceeczccefcegcehceicejcekcelcemczdbCYcencznceocepczpceqbCZcesczHcetceucevcewcexczIczJczKczYczZcAbceBceBceAceBcdraaaaaaaaaaaaaaaaagaaaaaaaaaaaiaaiaaiaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaagaagaagaagqlFaafaafaafqlFaagaagaagaagaafaagqlFaaaaaaaaacvKcAccAucAvcAxcAycAzcABcACcAJcAKcAMcxLcxMcxNcvRcvRcANcAOcvUcuecAPcAQcAVcAWcAXcAYpMvcBacBecBfcBgcBecBecBicBjcBkcBlcBscAZcBtcBucBvcBwcBxcBycBGcBHcyzcBIcBJcBKcqYcBLjiSaaaaaaaaacFUaaaaaabWCbWCgfQvpHcBMcBNcBOcBWvpHcBXiqfbUmiqfcBYklhcBZcCacCbcCeklhbZkceTceTaaaaaacFUaaaaaaaaaclgcfbcCfcfccfdcfecffcChcfgcClcCmcfocficfjcfkcfncfmcfncfocfpcfqcfrcfscftcfucfvcfxcfxcfycfzcfAcfBcCncfEcfDcfEcfFcfEcCocCpcCwcCCcCFcCGcCHcjqcfHcfIcfJcjuaaaaaacFUaaaaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiuZKaafaafaaaaaaaaactQcCIcCJcCKcCLcCSctQcCTcCUcCVcCWcCXcCYcAJcCYcCZcDacDbcAOcAOcuecDccDdcDdcDecDfcDgrYBcDhcwNcDncwNcwNcwNcDhcDocDpcDpcDpcDpcDpcDpcDrcDscDtcDucDvcuMcyzcBIcDwcDxcDycDycDycDycDyaaaaaaaaaaaaaaaaaagfQgfQbWCbWCbWCgfQgfQgfQcDzcDAcDHgfQbZkbZkceTceTceTbZkbZkaaaaaaaaaaaaaaaaaackackackackacgkcjfcjfcgncgocjfcgqcjNcgscjNckjckEckHcjRcgycjRckHckHckHcgCcDIcgDckHcDMcgEcDNcDOcDNcDMcgGcgGcgGcgGcgGcgGcgHcgIcDPcDQcDScDWcDXcDYcjqcgKcgLcgMciHaaaaaaaaaaafaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaagaafaafaafcDZcEactQcEbcEccEdctQcCTcEecxucEfcEgcEhcEicEjcEkcvRcElcEmcEmcuecEncEocDdcEpcEqcuecErcEscwNcEtcEucEucEucEscEzcDpcEAcEAcEAcEAcEAcEBcECcECcEDcECjiSjiSjiScEEcBKcDycEIcEJcEKcDycDyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabWCcEMcENcEOcEZcFabWCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackackachpchqckacFbcgochschtcFccjfchvcFdchwchxcFhckjchychzchAchBchCckHchEchFcFschGcFtcDMcFucFvcFycFAcFBcgGcFFcFGcFHcFIcgGcFJcFMcFMcFNcFOcFPcFVcFWchIchJchKchLchMaaaaaaaaaqlFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFUaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaacFXctQcvKcvKctQctQcvMcFYcFYcvMcFZcGdcvMcvMcEkcvRcAOcAOcAOcuecGecGfcGmcGncGocuecGpcwNcwNcGqcGwcwNcwNcwNcGxcGycEAcEAcEAcEAcEAcEBcGDcGEcGFcECcGKcGLjiScBJcGOcGPcGRcGRcGTcGYcDyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabWCcIncJncSRedReiIbWCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackacijceZekkckaewQcgocilcimcincjfcipciqcirciscitciueBmcivciwccJciycjRcjociBfnQfADfFDfRjgitgFDgFOgKChiKhMyiJYciCeLachHcgGkjRklKkrHkrZkAhkMjkQGlnNcjqciFlxXciGciHaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7310,62 +7273,62 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaacvMxZueGpjDscvMfHQcvRcvRfHhcAOcxOcxOcAOcEmcEmvIDcvRcuCvICcuCcuChSpcNagUkuflfeheCocEAcEAcEAcEAcEAcEBxeVqkTkzAcECrFOrvujiShVhnkIcDycDycDycDycDycDyguLcyQcyQnTFnUhutJlbXnUhnUhnUhnUhnUhflBljujPicHRfVPhVHhVHjeIhVHhVHpHxcjEcjFclgcjGcjHcjIckacjKcjLlKyckamOGcgocgocWIcgocjfnVWkHlsydsYgkgmcjNrDCcjOcjUcjPcjQcjRcjScjTcjUrHymQPkEzuvSmsvemXjvulLDcgGtHEcjVwxPdWCcgGrfDrfDrfDrfDrfDrfDkdqkjbcjucjucjucjucjuaafaafaafaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFUaafaaaaaaaaaaaacvMsWJsWJcvMcvMnFarRkcvRcvRcxOcxOcvRcvRcvRcvRcvRcvRmNfmNfmNfcuCcuCcuCcuCgqmsPZcDpcEAcEAcEAcEAcEAcEBcECoHEcECcECjiSjiSjiSvcvpmdhlXcyQrXgqTxvqBcyQcyScqYcqYiCXirxeIZenRcqVnEoirxhNKxvtjiSqGwtdmlKaclglmFmWRlmFpBmoevcjWnmjdQtgCIcjXcjXiHRckackacjYckackavgHclgcfcckcbEZckEckfbGockhckijYEckjoEUckkcklckmcknckHockckotrTvYLfdhcDMmGltEatNhqeEhkrcgGeHUckpkPkbNrcgGuZIpEFvApmRDqZerfDipymBKbTyaaaaaaaaaaaaaaaaaaaaahqqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahqqaagaagaaaaaaaaacvMplkilyehEcvMrzKcCZeIYeLejdCjUwgThsXooRMdCHpuYnqKfBJfBJfBJdzifjpfjpcuCcuCcuCcDpcDpcDpcDpcDpcDpcDpmNfdsjmNfcvRegHcvRsaJcwEcqYiCXkUDuqPhVhtZJcqYtosenGqtOtostostostostostostostostostosjMajLawAMclgcmAclguNimXbclgmXbckquSGeNbckrckscktckuckvckwckyckyrDBckzckArzwollckEckEckEckEckEckEckEckHckHckHckHckHckHwIackIclwjDgwIacDMcDMcDMcDMcDMcDMcgGtkJckpuuUfnpcgGjOOkLOrXYjgqiznrfDdOFhimbTyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaesaafaafaafaafaaaaaaaaacvMcvMrzKcCYcCYcWkggihRvitjpfJiYspfJpfJkZvlRGcCYsIscCYeKsggieYucCYcCYcCYcCYcCYcCYcCYvVPoByqxUokZrmMvddjEmeFxpAQcsAnKRnKRnKRnKRnKRuiItosjJfoGbkTwdvetosqHWkAwkQVjUxutZjwTtosvSRpAGjbTclgegGcljlmFviXmXbclgcAqcljgzuclgclgclgclgclgclgclgclgclgqmVckOegGbGTckQeLIbHRckSckScnacmHjdwckVckWbZXmgkclwfwZckZclthenszjclwdEcbZXckWckVvbXcgGgtAtWdclaeSncgGttWjZotAFreHmDZrfDgbdefRbTyaaaaaaaaahqqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaafaaaaaaaaaaaacvMcvMcFYcFYcFYcvMcvMcvMcFYcFYcFYcvMcvMcvMcvMcvMcvMcvMcvMpuYcAOcAOiADcEmcAOcAOcAOcAOcAOmmqcvMcvMcvMcvMqSAcwEcqYnKRkhrsyMiErkqplkAtosgTMoGboQzpfYylttoUfbPlXKfPktRmcRitosiuXvDlfBzclgcljdgYdkbegGfyDclgckJcljclhclgclecljcljclgclhcliuDrcljcljclkcllclmclncloclpclqclrjBXcmHnwlcltcluclvkNSclwclxclyfbZpfZgNyclwpQeclvclucltkhAcgGcgGcgGcgGcgGcgGrfDejPvbLejPrfDrfDpBwoxNlhGaafaafaafhqqaaaaaacFUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaaaaaaaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaacvMcvMqbZwiEqkKwuHwRteMvjMYsyJkKpcvMcvMaaaaaaaaabYZqMIdIqrZAsZgsZgtAtsdEstrtosgCylpdhgnuEFtosuxZgUjmBHmPDoUCpTRtosrlrvIXkLGclgclgclgclgclgclgclgclAclBctMctMctMctMctMctMctMctMctMclJcljclKclLcdScdSclLcerbYmclPclQclRclSclTclUclVclWclXclYclZoLQclYclYclXoLQoGxubNclYclYeEylTMqjtekFpFuxKOneWmqHocbkvqlUZmKooVWxomtwlaaaaaaaaaqlFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagqlFaafaagaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaacvMcvMcvMcFYcFYcFYcFYcFYcvMcvMcvMaaaaaaaaaaaabYZsgacqYnKRkwykPrrJBiiQfixtostostostostostosenddzbkuxnkNnkNfJXtoskSsvDlxPXfERgMajqdjrSmnGmEJfERhZZtYmcmactMcmccmfcmecmfcmgcmhctMctMclgcmkgMzcikcixckdckgckgcmpcfccmHvRqrgLbIwcmstxXcmtcmubKptwctsocmumfzplpeGrmIzvvhgaArXOpgWfoisxZdDwkrQiMomrFofDduciMopesrQuqtDgvFaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiuZKaagaagaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaacFUaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaqSAoiAcqYnKRnKRnKRnKRuJrnKRnKRqpOnKRhnykgiemvgiQoTPsKTdTptQhsNcfWjwufvDliPqfERsExpgPpgPnFWpyTqJrcmvcmBcmBcYlcmxoaLcmzcmBcmBcmCnISrNnbMmgYmcmDcmEnwnkFHcnacmFcmFcnacmHcmHcpBeIMxtMhloxtMwIadMpheowoiwIacpLiAqwqhjYlwqhcovcmLcovcoviLdgQhqlegQhgJPnJpjmunJplhGuqgsKGtwlaaaaaaaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaagqlFaagaaghqqqlFqlFaagaagaagaagaafcAwaaaaafqlFaagaagaagaagaagaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaqSApmhcqYkoFnKRhdVtiZkQHiJxseIvOYugDoWWkHElnsgbswctgwpdGsmutjSMfWjsfUovwxxefERdOkooaeSvkAyfRZcmOkIciSRcmPwkqcmQcmRpMtcmStDOcmTcmUctMcmVcmWcvjcmZcmZcnaaaaaaaaafaaaaaacpBcnfbMacnhcnicnjcnmcnmnHYcnmcnmcnncnocnpcnqpUocovcnscntcnuiLdgknsOIvJhgJPtxkhMvkDjlhGgvFtwllhGaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaqSAsgacqYfJlnKRnZxjpFvPjlMwkTtrTroxOqPzjMOwERxzspwYfVukLDiyallbgZmxwTqJkdtNxgLvrgpbfiRTvtRrcpfERxvFctMcsZcsZcsZcnycsZcsZcnycsZcsZctMctMoiecvjcnCcnDcnEaaaaaaaafaaaaaacpBpsncnKcnLcnMcnNconcnPcXBxqVcoTcnRcnScnTcnUiGBcovcnWcnXcnYiLdfnokVTpAjgJPieChxAirOaacaaaaaaaafaafaafaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafhqqqlFaagaafaaaaaaaaaaagaagaagaaaaaaaaaaaaaaaqSAdxaiKaqSSnKRnKEeupxvwhexfldmKmkBXeIXkHElnsfVvnDSdGsgOuroJdGsigNmcsvDlcGQikCrImeSvwjEjbhlNelhHnnscsZcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcsZoiecvjaaaaaaaaaaaaaaaaafaaaaaacpBcokcolcomfvSnOfconcooqdUcoScoTcorcoscotcoupYEcovbXhcoxcoyiLdpcqnUbsmAgJPrGTiEHtdqaacaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaaaaaaaaaaaaqSAwpqcqYddOnKRqmcjpFlboeqLoySvOYkBXuoPkHElnsrMhlasstHlAvlOWevbldXtYjkKFxdXfERjPtrxjexmfravEqseDcoAcsZcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcoJctNctbaaaaaaaaaaaaaaaaafaaaaaacpBcoNcoOcnLgNIcoPconcoQcoRcoScoTfLJcoUcnTcoVlrpcoZcoZcoZcoZcparCNqWZrCNxlFgKJhJCgKJaacaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFUaaaaagaafaafaafaafqSAsfvthhknEnKRgotkfJpWnoVEjpFvOYugDxEAkHElnsfTtsHndGsmKrgBnpsRfWjwFYvDlcuZrWawjEeSvmPBwnteSvsFEgjucsZcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcsZctactbaaaaaaaaaaaaaaaaafaafaafcpBrqwlyGdWlhwHqWWcpGpbFcphgKLcpGokqcpieEWuCbjGdcpLaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaqlFhqqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaqSAsfvmAZlybnKRhKakTTjfTvJqxyguCrnKRlPIdGslnsdGsdGsdGsdGsdGsjSMfWjwFYvDllfqrWagLOeSvjnMhDztAjcplkZmcpmcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcrkctacvjaaaaaaaaaaaaaagqlFaaaaafcpBcpBcpBcpBcpBcpBcpGcpGcpGcpGcpGcpLcpLcpLcpLcpLcpLaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqSArzujiSjiSnKRejDjpFjpFjpFjpFvyAqomiihiihjfWnDSdenwRCpfTvofvuUhKFiejvIXpFHfERuMCfKLnmNctBctBctBctActBcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYutrctactbaaaaaaaaaqlFaagaaaaaaaafaafqlFaaaaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahqqaaaaaaaaaaaaqSAsfvkOMcqVnKRygzvhSmbldXDmbykEpfvadHRdGsnYUvtuhKFhKFfWjfWjhKFhKFuhVvDloOzhtmfERikCtSvctBcqBctBmuSctBcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcsZctactbaaaaafaafaagaaacFUaaaaaaaaaaagaaaaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaafaaaaaaaafaafaagaagaagaafcAwqlFaagaagaagaafaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqlFaafaafaafaafbYZsfvfFGiJTiJTuRkuRkuRkiJTdtIruNiJTiJTwwGlnssAghKFeHotuItuIrZGctxdyyvDlcsMdMlgNtvdctKlctBbOoctBkRJctBcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcrkkXkcvjaaaaaaaaaaagaaaaaaaaaaaaaaaaagaagaaaaaaaaaaafaaaaaaaaaaafaaaaagaagaafaagaagqlFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiuZKaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaabYZxLTcqYmNtjiHxwadvzxwawkiiYwkFdnFEuRkwwGvmbiihoBhgdVgQRtNagJrkotyeNovwmuOcGQqVRvKXnnNctBmEScrKvQTctBcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcsZctactbaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaagqlFaaaaagaagaagqlFaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaabYZcNBgtwemneGFhyffMShyfhyfwQEqTWeuBgLDmaCmaCmaCnMnpPUrAmmKsgmIvbqfIxcsmmYLmnKcsnkLllgmabdcspcsqcsrctBcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcoJctactbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaafaafaafaafqSAsfvcqYiJTpnBlzdhBtfVAvVVnTMlKQlLjuRkwwGdGsfoFhKFqnAdmmlbWpPcctxsiqfEEcsLsutgNteHGcsNctBuAZcsOcsPctBcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcsZctactbaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaabYZfGWqmtiJTlcelzddUesAHiKnkttlzdnSdiJTcKucKurAKrAKrAKrAKrAKrAKrAKqBgnZyctuctxctxctxctxddHctBctBctActBctMctMctMctMctMctMctMctJctKctLctMctNcvjaaaaafaafaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaabYZiKAcdMiJTiFylzdhIhxDllzdxPelzdsCEiJTuwjuwjwLhjjVxoyrAKvjZfAHrAKopMpAGjIMcuYcurnAIcGMcuncuocGMcuqcurcuscutcuucuvgVltkzcuscuwcuxcuycuzcuAcvjaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaagaaaaaaaaaaaabYZqxacaiiJTfDfnDHnDHsfilzdtwonDHwfViJTuqRuwjduUuwjpVGidPmqZjnXrAKftvvDlmNUcuYcGMjnlcumliqdlPcwOcwPcGMcuscvbcvccvdcvecvfcuscvgviVcvhiKCcvicvjaaaaaaaaaaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaesaafaafaafaafaaaaaaaaacvMcvMrzKcCYcCYcWkggihRvitjpfJiYspfJpfJkZvlRGcCYsIscCYeKsggieYucCYcCYcCYcCYcCYcCYcCYvVPoByqxUokZrmMvddjEmeFxpAQcsAnKRnKRnKRnKRnKRuiItosjJfeNjkTwdvetosqHWkAwkQVjUxutZjwTtosvSRpAGjbTclgegGcljlmFviXmXbclgcAqaTVclgclgclgcljclgclgclgclgclgclgqmVckOegGbGTckQeLIbHRckSckScnacmHjdwckVckWbZXmgkclwfwZckZclthenszjclwdEcbZXckWckVvbXcgGgtAtWdclaeSncgGttWjZotAFreHmDZrfDgbdefRbTyaaaaaaaaahqqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaafaaaaaaaaaaaacvMcvMcFYcFYcFYcvMcvMcvMcFYcFYcFYcvMcvMcvMcvMcvMcvMcvMcvMpuYcAOcAOiADcEmcAOcAOcAOcAOcAOmmqcvMcvMcvMcvMqSAcwEcqYnKRkhrsyMiErkqplkAtosgTMoGboQzpfYylttoUfbPlXKfPktRmcRitosiuXvDlcsMclgcljdgYdkbegGfyDclgckJclhclgbUdclgcljclhclgclhcliuDrcljcljclkcllclmclncloclpclqclrjBXcmHnwlcltcluclvkNSclwclxclyfbZpfZgNyclwpQeclvclucltkhAcgGcgGcgGcgGcgGcgGrfDejPvbLejPrfDrfDpBwoxNlhGaafaafaafhqqaaaaaacFUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaaaaaaaafaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaacvMcvMqbZwiEqkKwuHwRteMvjMYsyJkKpcvMcvMaaaaaaaaabYZqMIdIqrZArsMsZgtAtsdEstrtosgCylpdhgnuEFtosuxZgUjmBHmPDoUCpTRtosrlrvIXkLGclgclgclgclgclgclgclgclActMctMctMctMclectMctMctMctMctMclJcljclKclLcdScdSclLcerbYmclPclQclRclSclTclUclVclWclXclYclZoLQclYclYclXoLQoGxubNclYclYeEylTMqjtekFpFuxKOneWmqHocbkvqlUZmKooVWxomtwlaaaaaaaaaqlFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagqlFaafaagaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaacvMcvMcvMcFYcFYcFYcFYcFYcvMcvMcvMaaaaaaaaaaaabYZsgacqYnKRkwykPrrJBiiQfixtostostostostostosenddzbkuxnkNnkNfJXtoskSsvDlxPXfERgMajqdjrSmnGmEJclBhZZctMcmacplcmccmfcmecpmcmgcmhctMctMclgcmkgMzcikcixckdckgckgcmpcfccmHvRqrgLbIwcmstxXcmtcmubKptwctsocmumfzplpeGrmIzvvhgaArXOpgWfoisxZdDwkrQiMomrFofDduciMopesrQuqtDgvFaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiuZKaagaagaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaacFUaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaqSAoiAcqYnKRnKRnKRnKRuJrnKRnKRqpOnKRhnykgiemvgiQoTPsKTkHEtQhdGsfWjwufvDliPqfERsExpgPpgPnFWqJrqJrcmvcBhcYlcmBcmxoaLcmzcmBcmBcmCnISrNnbMmgYmcmDcmEnwnkFHcnacmFcmFcnacmHcmHcpBeIMxtMhloxtMwIadMpheowoiwIacpLiAqwqhjYlwqhcovcmLcovcoviLdgQhqlegQhgJPnJpjmunJplhGuqgsKGtwlaaaaaaaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaagqlFaagaaghqqqlFqlFaagaagaagaagaafcAwaaaaafqlFaagaagaagaagaagaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaqSApmhcqYkoFnKRhdVtiZkQHiJxseIvOYugDoWWkHElnsgbswctgwpdGsmutdGsfWjsfUovwxxefERdOkooaeSvkAyfRZcmOkIciSRcmPwkqcmQcmRpMtcmStDOcmTcmUctMcmVcmWcvjcmZcmZcnaaaaaaaaafaaaaaacpBcnfbMacnhcnicnjcnmcnmnHYcnmcnmcnncnocnpcnqpUocovcnscntcnuiLdgknsOIvJhgJPtxkhMvkDjlhGgvFtwllhGaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaqSAsgacqYfJlnKRnZxjpFvPjlMwkTtrTroxOqPzjMOwERxzspwYfVukLDiyallbgZmxwTqJkdtNxgLvrgpbfiRTvtRrcpdlRxvFctMcsZcsZcsZcnycsZcsZcnycsZcsZctMctMoiecvjcnCcnDcnEaaaaaaaafaaaaaacpBpsncnKcnLcnMcnNconcnPcXBxqVcoTcnRcnScnTcnUiGBcovcnWcnXcnYiLdfnokVTpAjgJPieChxAirOaacaaaaaaaafaafaafaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafhqqqlFaagaafaaaaaaaaaaagaagaagaaaaaaaaaaaaaaaqSAdxaiKaqSSnKRnKEeupxvwhexfldmKmkBXeIXkHElnsfVvnDSdGsgOuroJozligNmcsdIxcGQikCrImeSvwjEjbhlNelhHnnscsZcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcsZoiecvjaaaaaaaaaaaaaaaaafaaaaaacpBcokcolcomfvSnOfconcooqdUcoScoTcorcoscotcoupYEcovbXhcoxcoyiLdpcqnUbsmAgJPrGTiEHtdqaacaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaagaaaaaaaaaaaaqSAwpqcqYddOnKRqmcjpFlboeqLoySvOYkBXuoPkHElnsrMhlasstHlAvlOWevbldXtYjdMlxdXfERjPtrxjwntfravEqseDcoAcsZcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcoJctNctbaaaaaaaaaaaaaaaaafaaaaaacpBcoNcoOcnLgNIcoPconcoQcoRcoScoTfLJcoUcnTcoVlrpcoZcoZcoZcoZcparCNqWZrCNxlFgKJhJCgKJaacaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFUaaaaagaafaafaafaafqSAsfvthhknEnKRgotkfJpWnoVEjpFvOYugDxEAkHElnsfTtsHndGsmKrgBnpsRfWjwFYdIxczitSvdTpeSvwntwntwnteSvgjucsZcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcsZctactbaaaaaaaaaaaaaaaaafaafaafcpBrqwlyGdWlhwHqWWcpGpbFcphgKLcpGokqcpieEWuCbjGdcpLaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaqlFhqqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaqSAsfvmAZlybnKRhKakTTjfTvJqxyguCrnKRlPIdGslnsdGsdGsdGsdGsdGsdGsfWjwFYdIxlfqtSvgLOeSveSvhDztAjeSvkZmcsZcsYcsYcsYcsYcsYcsYcsYcsYcsYeDicrkctacvjaaaaaaaaaaaaaagqlFaaaaafcpBcpBcpBcpBcpBcpBcpGcpGcpGcpGcpGcpLcpLcpLcpLcpLcpLaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqSArzujiSjiSnKRejDjpFjpFjpFjpFvyAqomtFJiihjfWnDSdenwRCpfTvofvuUhKFiejeJfpFHfERuMCfKLnmNctBctBctBctActBfjzcsYcsYcsYcsYcsYcsYcsYcsYcsYcsZctactbaaaaaaaaaqlFaagaaaaaaaafaafqlFaaaaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahqqaaaaaaaaaaaaqSAsfvkOMcqVnKRygzvhSmbldXDmbykEpfvadHRdGsnYUvtuhKFhKFfWjfWjhKFhKFuhVdIxoOzhtmfERtSvtSvctBcqBctBmuSctBcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcsZctactbaaaaafaafaagaaacFUaaaaaaaaaaagaaaaaaaaaaaaaafaaaaaaaaaaafaaaaaaaaaaafaaaaaaaafaafaagaagaagaafcAwqlFaagaagaagaafaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqlFaafaafaafaafbYZsfvfFGiJTiJTuRkuRkuRkiJTdtIruNiJTiJTjewlnssAghKFeHotuItuIrZGctxdyydIxcsMcsMgNtvdctKlctBbOoctBkRJctBcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcrkkXkcvjaaaaaaaaaaagaaaaaaaaaaaaaaaaagaagaaaaaaaaaaafaaaaaaaaaaafaaaaagaagaafaagaagqlFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiuZKaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaabYZxLTcqYmNtjiHxwadvzxwawkiiYwkFdnFEuRkdGsvmblYOoBhgdVgQRtNagJrkotyeNfBzmuOcsMqVRvKXnnNctBmEScrKvQTctBcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcsZctactbaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaagqlFaaaaagaagaagqlFaagaagaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaabYZcNBgtwemneGFhyffMShyfhyfwQEqTWeuBgLDmoHmaCokunMnpPUrAmmKsgmIvbqfIxcsmmYLmnKcsnkLllgmabdcspcsqcsrctBcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcoJctactbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaafaafaafaafqSAsfvcqYiJTpnBlzdhBtfVAvVVnTMlKQlLjuRkjiLvPrfoFhKFqnAdmmlbWpPcctxsiqpAGcsLcsMgNteHGcsNctBuAZcsOcsPctBcsYcsYcsYcsYcsYcsYcsYcsYcsYcsYcsZctactbaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaabYZfGWqmtiJTlcelzddUesAHiKnkttlzdnSdiJTcKudywrAKrAKrAKrAKrAKrAKrAKqBgnZyctuctxctxctxctxddHctBctBctActBctMctMctMctMctMctMctMctJctKctLctMctNcvjaaaaafaafaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaabYZiKAcdMiJTiFylzdhIhxDllzdxPelzdsCEiJTiImtZCwLhjjVxoyrAKvjZfAHrAKopMpAGjIMcuYcurnAIcGMcuncuocGMcuqcurcuscutcuucuvgVltkzcuscuwcuxcuycuzcuAcvjaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaagaaaaaaaaaaaabYZqxacaiiJTfDfnDHnDHsfilzdtwonDHwfViJTuqRuwjduUuwjpVGidPmqZjnXrAKcsMvDlmNUcuYcGMjnlcumliqdlPcwOcwPcGMcuscvbcvccvdcvecvfcuscvgviVcvhiKCcvicvjaaaaaaaaaaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabguZKaafaafaafaafaafqSAqxajiSiJTdEoiJTiJTuRkePpuRkdEoiJTiJTgkhuwjgsPsPiwLntfikVLgPhtficNkvIXcvwczDcvyrRDuxrcuncuncvzrpncGMcwVcvBcvCcvDtYkbXwcusbXAcvGcvHtkacvIcvjaaaaaaaaaaaaaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaagaaaaaaaaaqSAqSAqxarAKubUhMBpOMhTsuETuwjpISiCyqzurPKuwjuwjiniuhsitKrAKtfitfirAKftvvDlwzPczDcwjoJicwjcuntdJcwjvzxcwkpcDcwocwocwncwocwpcuscwqcwrcwslICcwtcvjaaaaaaaaaaaaaaaaagaaiaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaqSAkoFqxarAKiAwiGfjlKxchuADuwjxteuwjuwjuwjuwjuwjuwjrBvkGfkLouwjuwjkYAmcsvDlvIjcuYcGMjnlcumclNcuncwOcwPcvNcuscwVcwVcwTcwVcwVcusczDczDczDcuzcwZcxbcxbcxbaafaafaafaafuZKaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqSAiCXxiXrAKpqGjEclciwrfuADuwjxtehUMlkssAdllHeROxwrloxmgOlRJmgOmgOheBmdqvoEwSUcuYcwjpyRqIwpIHpIHcxvcxwriVsxhcxycxycxzcxAcxDvrrcxCcxDcxDcxEcxFrjqcxGcyhaaaaaaaaaaaaaaiaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaqSAkoFqxarAKiAwiGfjlKxchuADuwjxteuwjuwjuwjuwjuwjuwjrBvkGfkLouwjnpfkYAncmvDlvIjcuYcGMjnlcumclNcuncwOcwPcvNcuscwVcwVcwTcwVcwVcusczDczDczDcuzcwZcxbcxbcxbaafaafaafaafuZKaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqSAiCXxiXrAKpqGjEclciwrfuADuwjxtehUMlkssAdllHeROxwrloxmgOlRJmgOdwPheBmdqvoEwSUcuYcwjpyRqIwpIHpIHcxvcxwriVwrKcxycxycxzcxAcxDvrrcxCcxDcxDcxEcxFrjqcxGcyhaaaaaaaaaaaaaaiaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqSAlOwwpqrAKpdwhnSjlKhtiuADuwjuhWlbItoqtoqmoufRLrgnsCgpGBhJUhJUnRdoQjeWtovweOJczDhsIshBrELsXKeXPcxYcxZqtkpHlcyaqtkwrycybcyccyecydcyecyexrxcyfujicygcyhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqSAmKxrtArAKueZhJXoKdpgXuADuwjxtemijlkseYXjmxfRLjmxwLngBsoSrcyBtaMplLuPqvDleNJczDcuYcuYczDhgvlNxczDcyDcuYczDczDcyFczDsMtczDiepbYJcGMcGMuWKcGMgLxczDcxbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqSAqxplsHpDhwKNstbljUgCotPAojkrnxwqLwqLwqLwqLuWbtPAufggBsnZqxcQtaMplLftvemkjKujewjARmqaixjcyOfIXczgczhczitrtczDdvBkAonnGczDfhCczjvbJmWlmMfuINczkczlczmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqSAqSAqSAqSAqSAqSAqSAqZdrAKwYqjlKdpOrAKrAbizSvDVmMDwWdwCIhLSvLrxTXohFwPDfQLfQLsBhplLftveSFdVlqqAiXYjHnhWElMncztczuczvhYxczqczDczDczDczDczDczDczDczDczDczEczFczFczFgeVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagpBgpBgpBeHVgpBgpBpWrtzPjXaueTvBPecyvBPoQjvBPdGElPqrAKrAKrAKrAKrAKrAKrAKrAKplLplLplLjvlqtYkKFfeeojNojNojNojNojNojNojNojNojNojNojNxyMczVxyMojNoZwczWxyMheNvSMudGrUsczXgeVaaaaaaaaaaaacFUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagpBnWLwCUwCUwCUhHGhHGtzPkMwhYMhOuxKTmYUvAYhzEwNHmYUrEJsqdvvJewVoWKqAWmVkuePdlxvUQrdDfILcsMvDlcMiojNygDygDlvXfcXvzMcwQojNcAicYfojNojNojNojNojNojNojNojNojNcAsugPuTycAtdFHaaaaaaaaaaaacAwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeHVsfIiVFkJgkJgflCeHVnpgkThnXliVPcSFdaruhfrbUmqhnVxsLSoCLnSJsdAvHduaykPLosgjsGrByrByrBymEpwrnwVwojNojNojNhIdgikcAEcAFcAGgdWnEQojNlRjuQNeiAcAHxDrwiHuIEojNlyJdtRugPlwTdFHaaaaaaaaaaaaqlFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagpBnWLeQyffZffZjYjkRudSttyLvfnhadfWdttqomuxtRttqttqfWdnEheKppbbsDgtfvsdqrRgjHagbBxhMrRgcsMmmacuZojNwLiipNfHCfHPstlcARojNqkDqkDojNkrCyjciGahjepPGrEOwBdojNlyJsDqugPkaLdFHaafaafaafaafaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagpBnWLkVvffZffZpXikRudSttyLtgdivxfWdojjiNstYYmVepuyfWdvUvvUvowyvUvfgekPKvcokfYvcokPKqmXqZTmmakXmojNojNojNojNpKAojNdhQojNojNojNojNqIZxsZiGamFswuIiGawBdojNdBhugPgeVgeVgeVgeVaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeHVgDkgyAtcetceflCeHVtzPrhjtgdkmjttqoIXqDVqEtoIXdWpfWdtDnerEhJoerElJskPKdQcoJofJbvcolbdcsMmmacGQpoCcBzcBnnFjmgacBocBpcBqtWTmTbnRLrfFxvbxxfcBrwiYwiYwiYlySnWFrxEczFwuvfgbdFHaaaaaaaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagpBnWLvUVvUVvUVhHGhHGtzPcJLtgdgpGttqsXGpcGhvGhDcdcSfWdsSlpRGmyqerExkYkPKjHHuNhoFMvcokIDcsMrEqcGQpoCcBzcBAiGaiGacBDrXErXEokurXEwQPtierkprXExylrXEdmqexSojNtdsuspgWbugPoIKdFHaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagpBgpBgpBeHVgpBgpBiEStzPmaUluYfgNfWdnaXseOxaYpTKgAXfWdtiTfjyiaherEssPkPKmFYvJSutGqkBiYDcsMnbkqVzsDcyiwcBPcBQcBRrXErXEcCkcCvpxLwNjojNojNojNqUoojNojNojNojNduxgImczFnmGrXUdFHaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatzPtzPtzPtzPtzPtzPtzPjDiqaCkmjttquzIfSYiqTvaLixUfWdrBrerErzkfiGuxikPKwDmmYKoVkvcokIDcsMvDlfBzhPKydnxEJoqZpNarXErXEcCkxyMiGanDbxDJojNiGatfQovoojNrXmojNjcrhPygeVgeVgeVgeVaafaafaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatzPwzwwzjgpGttqvVQiNsvVQpOhgCHfWdduKerEqmDerEoYzkPKgUVhLgnZMvconHJdpQfEEkabhPKnaCxeTfzRpNarXErXEcCkxyMxODiGaiGaxyMuQNdGbgomojNnXPojNsWhiJcgeVaaaaaaaaaaaaaaaqlFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatzPjRrvrhsdqfWdeaJuHcjAYvVQeHXfWdjAhfoctQnfocsozkPKkPKkPKkPKlYOcDVxeFpZYxeFhPQhPQlKTiMYujYtcyrXEcCkpxLiGaiSGkVyxyMpnzjQdwVDojNrXmojNlWjhcCgeVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDVcDVsGriLbeIufWdfWdttqttqttqfWdfWdgIMvUvvUvvUvgIMcCsxCruVNeIurSdwjNiLbhddiLbwxwhPQojNhPKhPKhPKhPKojNojNojNojNojNojNojNojNojNojNojNojNoqodvfcDVcDVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDVhBqfcetsltslcDUphTyjonYucGSkSMcGScCQcCPcCMcCRcCMmXofcetsltslgXptslgdStEPtsltslgXpuEkoAUuEkkdLcCMcGScCOxFzcCQcCRkSMcGSiGUyjodNLeJfuEkeFQmvfrnvcDVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDVrMMuDMxLDcDjssWdjgdjgcDmdjgdjgcDjnrWdjgdjgcDmdjgdjgrQxswRgyTkyudjgichwWWcDjdjgkyuswRqsedjgdjgdjgcDjdjgcDknrWcDmdjgdjgcDjdjgdjgssWcDjvHIkrqhemcDVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDVcDVmvCkzXfcqwvpeLkrpshvbrIEcDCcDDcDFcDEkaMcDBcDCrIEqFBcDVcDVcDVobIkowtfGtBOphocDVcDVcDVtfFrIEcDCcDDfyLcDEcDFcDBcDCrIEexcrpsweSwvpfcqkzXpklcDVcDVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqSAmKxrtArAKueZhJXoKdpgXuADuwjxtemijlkseYXjmxfRLjmxwLngBsoSrcyBtaMplLwFYvDleNJczDcuYcuYczDhgvlNxczDcyDcuYczDczDcyFczDsMtczDiepbYJcGMcGMuWKcGMgLxczDcxbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqSAqxplsHpDhwKNstbljUgCotPAojkrnxwqLwqLwqLwqLuWbtPAufggBsnZqxcQtaMplLiSqemkjKuxiEjARmqaixjcyOfIXczgczhczitrtczDdvBkAonnGczDfhCczjvbJmWlmMfuINczkczlczmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqSAqSAqSAqSAqSAqSAqSAqZdrAKwYqqUodpOrAKuwjizSvDVmMDwWdwCIhLSvLrxTXohFwPDfQLfQLpGBplLcsMeSFdVlqqAiXYjHnhWElMncztczuczvhYxczqczDczDczDczDczDczDczDczDczDczEczFczFczFgeVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagpBgpBgpBeHVgpBgpBpWrtzPjXaueTvBPecyvBPoQjvBPdGElPqrAKrAKrAKrAKrAKrAKrAKrAKplLplLplLjvlqtYkKFfeeojNojNqVzojNsxhuzyojNojNojNojNojNxyMczVxyMojNoZwczWxyMheNvSMudGrUsczXgeVaaaaaaaaaaaacFUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagpBnWLwCUwCUwCUhHGhHGtzPkMwhYMhOuxKTmYUvAYhzEwNHmYUrEJsqdvvJewVoWKqAWmVkuePdlxvUQvUQfILcsMvDlcMiojNygDnLolvXfcXvzMcwQvNZabEadhojNojNojNojNojNojNojNojNojNcAsugPuTycAtdFHaaaaaaaaaaaacAwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeHVsfIiVFkJgkJgflCeHVnpgkThnXliVPcSFdaruhfrbUmqhnVxsLSoCLnSJsdAvHduaykPLosgjsGrByrByrBymEpwrnwVwqVzgSRxkahIdhIdhIdhIdhIdafFpFVlxYlRjuQNeiAcAHxDrwiHuIEojNlyJdtRugPlwTdFHaaaaaaaaaaaaqlFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagpBnWLeQyffZffZjYjkRudSttyLvfnhadfWdttqomuxtRttqttqfWdnEheKppbbsDgtfvsdqrRgjHagbBxhMrRgcsMmmagOjojNwLiipNstlstlstlstlstlagRpFVgPCyjcyjcyjchjeyjcyjcwBdojNlyJsDqugPkaLdFHaafaafaafaafaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagpBnWLkVvffZffZpXikRudSttyLtgdivxfWdojjiNstYYmVepuyfWdvUvvUvowyvUvfgekPKvcokfYvcokPKqmXqZTmmakXmojNijcifdpKApKApKApKApKApUipFVuNAwuIxsZwuImFswuIwuIpMWojNdBhugPgeVgeVgeVgeVaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeHVgDkgyAtcetceflCeHVtzPrhjtgdkmjttqoIXqDVqEtoIXdWpfWdtDnerEhJoerElJskPKdQcoJofJbvcolbdcsMxEQwNapoCcBzcBpxxfmgaxxfxxfxxfpPGmTbxvbpUnxvbxvbqvYxvbeHlxXnlySnWFrxEczFwuvfgbdFHaaaaaaaagaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagpBnWLvUVvUVvUVhHGhHGtzPcJLtgdgpGttqsXGpcGhvGhDcdcSfWdsSlpRGmyqerExkYkPKjHHuNhoFMvcolbdcsMrEqcGQqoXukIcBDhUOhUOhUOuAtrXEgJdgmAwQPphKrkpjhWxylwQPmbBexSojNtdsuspgWbugPoIKdFHaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagpBgpBgpBeHVgpBgpBiEStzPmaUluYfgNfWdnaXseOxaYpTKgAXfWdtiTfjyiaherEssPkPKmFYvJSutGqkBiYDcsMnbkmuOsDcyiwxEJcBQcBRsvDbsjnYwcCvojNwNjwNjojNojNojNwNjwNjojNojNduxgImczFnmGrXUdFHaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatzPtzPtzPtzPtzPtzPtzPjDiqaCkmjttquzIfSYiqTvaLixUfWdrBrerErzkfiGuxikPKwDmmYKoVkvcolbdcsMvDlcsMhPKydnxEJoqZpNasvDbsjyaIjmhuzynDbxDJfCAfUEtfQovosgcrXmojNjcrhPygeVgeVgeVgeVaafaafaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatzPwzwwzjgpGttqvVQiNsvVQpOhgCHfWdduKerEqmDerEoYzkPKgUVhLgnZMvconHJdpQpAGdpQhPKnaCxeTfzRfzRxeTjXUyaIjmLxODfIikVypnzpnzpnzgompbYnXPojNsWhiJcgeVaaaaaaaaaaaaaaaqlFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatzPjRrvrhsdqfWdeaJuHcjAYvVQeHXfWdjAhfoctQnfocsozkPKkPKkPKkPKkPKcCsxeFpZYxeFojNojNlKTujYujYujYhkWwnBpxLojNiSGkVypnzpnzpnzwVDvdLkhtojNlWjhcCgeVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDVcDVsGrapBeIufWdfWdttqttqttqfWdfWdgIMvUvvUvvUvgIMcCsxCruVNeIurSduVNiLbhddiLbwxwojNojNhPKhPKhPKhPKojNojNojNojNojNwNjwNjwNjojNojNojNojNoqodvfcDVcDVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDVhBqfcetsltslcDUphTyjonYucGSkSMcGScCQcCPcCMcCRcCMmXofcetsltslfiwtslgdStEPtsltslfiwtslgdStslkdLcCMcGScCOxFzcCQjzfcCMcGSiGUyjophTcDUtsleFQmvfrnvcDVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDVrMMuDMxLDcDjlQbdjgdjgcDmdjgdjgcDjnrWdjgdjgcDmdjgdjgrQxdjggyTssWdjgichwWWcDjdjgssWdjgcDmdjgdjgdjgcDjdjgcDknrWcDmdjgdjgcDjdjgdjglQbcDjvHIkrqhemcDVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDVcDVmvCkzXfcqwvpeLkrpshvbrIEcDCcDDcDFcDEkaMcDBcDCrIEqFBcDVcDVcDVobIkowtfGtBOphocDVcDVcDVtfFrIEcDCcDDfyLcDEcDFcDBcDCrIEexcrpsweSwvpfcqdippklcDVcDVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarisoChyiXriscDVcDUcDVcDVcDUhXAcDUcDVcDVcDVcDUhXAcDUcDVcDVaaacDRvhBdojjaXdZUwagcDRaaacDVcDVcDUhXAcDUcDVcDVcDVcDUhXAcDUcDVcDVcDUcDVmtKtlavYJmtKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarisiEXgDUdWMaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaawAGxuMjXgcGUwAGaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaojYoWHvpMmtKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadWMrisiioweKfiaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaisqcQJtftaTVisqaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaiRwsaPpOymtKojYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadWMrisiioweKfiaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaisqcQJtftqyXisqaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaiRwsaPpOymtKojYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakseeUReURdWMooTqzHuEcdWMaaaaaaaafaaaaaahruhruhruhruhruhruhruaaaaaaaafaaaaaawAGcQJjgykTowAGaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaojYrxIdwVsNgojYcFkcFkcCyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadUzaaarOXhulwbBdWGscTjEnufkrisaaaaaaaafaaahruhruhruhruhruhruhruhruhruaaaaafaaaaaacDRdCbtftriGcDRaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaamtKnoZrmdnSeuafcEPcEQcERaaacDqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeURkeQrCTeiBkzzjSifGGdWMaaaaaaaafaafhruhruhruhruhruhruhruhruhruaafaafaaaaaawAGkGptftaTVwAGaaaaaaaafaaaaaacGWcGWcGWcGWcGWaaaaaaaaaaaaaafaaaaaaojYwVawFhfYNnWNcFicFjcFkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadWMdWMjyCmXKdWMaaaaaaavuaaahruhruhruhruhruhruhruhruhruaaaavuaaaaaawAGkGptftaTVwAGaaaaaaavuaaacGWcGWcGWcGWcGWcGWcGWaaaaaaaaaavuaaaaaaojYhlbnNEojYojYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadWMjyCeDxdWMaaaaaaaafaaahruhruhruhruhruhruhruhruhruaaaaafaaaaaawAGmoGtftaTVwAGaaaaaaaafaaacGWcGWcGWcGWcGWcGWcGWaaaaaaaaaaafaaaaaaojYtwhnNEojYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeURkeQrCTeiBkzzjSifGGdWMaaaaaaaafaafhruhruhruhruhruhruhruhruhruaafaafaaaaaawAGqyXtftqyXwAGaaaaaaaafaaaaaacGWcGWcGWcGWcGWaaaaaaaaaaaaaafaaaaaaojYwVawFhfYNnWNcFicFjcFkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadWMdWMjyCmXKdWMaaaaaaavuaaahruhruhruhruhruhruhruhruhruaaaavuaaaaaawAGqyXtftqyXwAGaaaaaaavuaaacGWcGWcGWcGWcGWcGWcGWaaaaaaaaaavuaaaaaaojYhlbnNEojYojYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadWMjyCeDxdWMaaaaaaaafaaahruhruhruhruhruhruhruhruhruaaaaafaaaaaawAGmoGtftqyXwAGaaaaaaaafaaacGWcGWcGWcGWcGWcGWcGWaaaaaaaaaaafaaaaaaojYtwhnNEojYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaaaaaaaarismzGivHrisaaaaaaaaahruhruhruhruhruhruhruhruhruhruhruaaaaaaaaacDRgexprugLwcDRaaaaaaaaacGWcGWcGWcGWcGWcGWcGWcGWcGWaaaaaaaaaaaaaaamtKqYOdXImtKaaaaaaaaaaaiaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFUaaaaaiuZKsOZmtKrisrisouokOQeiBrUAnTbskBhruhruhruhruhruhruhruhruhruhruhrufvHjwxjjLuMnlAhwUNwBlwAGmzamzaefHcGWcGWcGWcGWcGWcGWcGWcGWcGWaaaaaapODhKVxIfmZGhEvkLBmtKmtKmtKsOZuZKaaiaaacFUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaaaaaaaarisjzVpImfpAydHuHzvRGhruhayhruhruhruhruhruhruhruhruhruxuyrDGxCzgGjotstftoIsuIbgddqXPuppcGWcGacGWcGWcGWcGWcGWcGWcGWaaaaaaguCrWseYnmbHrcVfALmtKaaaaaaaaaaaiaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadWMjyCpImhqBlsmmiShMRhruhruhruhruhruhruhruhruhruhruhrustpwflpiEvMlotshbfngtoZLnSwhzXfjAcGWcGWcGWcGWcGWcGWcGWcGWcGWaaaaaalFNgPGjJixHGrcVnNEojYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadWMdWMnITsUheiBfyahLieURhruhruhruhruhruhruhruhruhruhruhruquzeQKnDkuMneFWqevofvwAGwAGmzamzacGWcGWcGWcGWcGWcGWcGWcGWcGWaaaaaacFkqYexIBvfzdGCsDnojYojYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadWMdWMnITsUheiBfyahLieURhruhruhruhruhruhruhruhruhruhruhruquzeQKnDkuMneFWqevofvwAGwAGmzamzacGWcGWcGWcGWcGWcGWcGWcGWcGWaaaaaacFkqYexIBvfzdGCvYJojYojYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahjAwsBdsoeiBshUjSifGGsgxrisaaaaaahruhruhruhruhruhruhruhruhruhruhruaaaaaacDRfqlqyXtftqyXtyZcDRaaaaaacGWcGWcGWcGWcGWcGWcGWcGWcGWaaaaaaaaaaaamtKsrUwVawFhhOinWNtpHmHYcFkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapBraaalUpmDMxqfdWGscTjEnmXKjmUrisaaaaaahruhruhruhruhruhruhruhruhruhruhruaaaaaacDRoctqyXfYHqyXmsscDRaaaaaacGWcGWcGWcGWcGWcGWcGWcGWcGWaaaaaaaaaaaamtKibthlbrmdnSecGHwxMcTjvRHaaaraZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeUReUReURdWMmifgcBexbnevrisaaaaaahruhruhruhruhruhruhruhruhruhruhruaaaaaacDRnPcqyXgLdowOcSicDRaaaaaacGWcGWcGWcGWcGWcGWcGWcGWcGWaaaaaaaaaaaamtKnPXwkFeTfhYGojYcFkcFkcCyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -7374,7 +7337,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaaaaaaaarisjyCqQvnuHnrmlQmvRGhruhruhruhruhruhruhruhruhruhruhruxuyetvondvcNotseuYngtobphcAqXPuppcGWcGWcGWcGWcGWcGWcGWcGWcGWaaaaaavjMpXHngbspxmgbnNEmtKaaaaaaaaaaaiaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFUaaaaaiuZKsOZmtKrisriskSuukVeiBfyahLiskBhruhruhruhruhruhruhruhruhruhruhrufvHeQKnDkuMnsIkpNfofvwAGmzamzaefHcGWcGWcGWcGWcGWcGWcGWcGWcGWaaaaaapODqYewMOmZGncvgDrmtKmtKmtKsOZuZKaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaaaaaaaariskCenhErisaaaaaaaaahruhruhruhruhruhruhruhruhruhruhruaaaaaaaaacDRpWHuaWnDAcDRaaaaaaaaacGWcGWcGWcGWcGWcGWcGWcGWcGWaaaaaaaaaaaaaaamtKlfagzNmtKaaaaaaaaaaaiaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadWMnhchNmdWMaaaaaaaaahruhruhruhruhruhruhruhruhruhruhruaaaaaaaaaisqsOCfKlaTVisqaaaaaaaaacGWcGWcGWcGWcGWcGWcGWcGWcGWaaaaaaaaaaaaaaaojYlgjmWiojYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadWMnhchNmdWMaaaaaaaaahruhruhruhruhruhruhruhruhruhruhruaaaaaaaaaisqsOCfKlqyXisqaaaaaaaaacGWcGWcGWcGWcGWcGWcGWcGWcGWaaaaaaaaaaaaaaaojYlgjmWiojYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaavFVpxcjZygqpaaaaaacFUhruhruhruhruhruhruhruhruhruhruhrucFUaaaaaawAGuZxhUhsSiwAGaaaaaacFUaaaaaacGWcGWcGWcGWcGWaaaaaaaaaaaacFUaaaaaahgzpgNgcdiVxaaaaaacFUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaroSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqBecHsxnjqBeaaaaaaaaahruhruhruhruhruhruhruhruhruhruhruaaaaaaaaacDRwAGlnqcDRcDRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacXZxHGsJIcXZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadyNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajRWgelszThxsaaaaaaaaahruhruhruhruhruhruhruhruhruhruhruaaaaaasUtwAGwFMpmowCBwAGsUtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadLgfMGdzNqCZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/maps/southern_cross/southern_cross-3.dmm b/maps/southern_cross/southern_cross-3.dmm index 303b441c85..f78e254648 100644 --- a/maps/southern_cross/southern_cross-3.dmm +++ b/maps/southern_cross/southern_cross-3.dmm @@ -3,17 +3,17 @@ "aav" = (/obj/structure/sign/directions/cryo{dir = 8},/obj/structure/sign/directions/medical{dir = 8; pixel_y = 6},/obj/structure/sign/directions/evac{dir = 8; pixel_y = -6},/turf/simulated/wall,/area/hallway/primary/thirddeck/aft) "aaM" = (/obj/structure/cable,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/structure/table/steel,/obj/item/stack/cable_coil/yellow,/obj/item/stack/cable_coil/yellow,/obj/item/stack/cable_coil/yellow,/obj/item/stack/cable_coil/yellow,/turf/simulated/floor/plating,/area/maintenance/solars/aftstarboardsolar) "abK" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/portable_atmospherics/canister/air/airlock,/obj/structure/sign/warning/airlock{pixel_y = 32},/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) -"abV" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) +"abV" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/cosmos,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) "abX" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/plating,/area/maintenance/substation/dorms) "aci" = (/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) -"acS" = (/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"acS" = (/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals5,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "acU" = (/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/carpet/blue,/area/crew_quarters/heads/sc/bs) "aea" = (/turf/simulated/wall/r_wall,/area/maintenance/thirddeck/dormsstarboard) -"aee" = (/obj/machinery/door/airlock{id_tag = "Dorms6"; name = "Room 6"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_8) +"aee" = (/obj/machinery/door/airlock{id_tag = "Dorms6"; name = "Room 6"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_8) "aeh" = (/obj/structure/flora/ausbushes/ywflowers,/turf/simulated/floor/grass,/area/crew_quarters/coffee_shop) -"aej" = (/obj/machinery/light,/obj/machinery/newscaster{layer = 3.3; pixel_y = -27},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"aej" = (/obj/machinery/light,/obj/machinery/newscaster{layer = 3.3; pixel_y = -27},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "aet" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/hallway/primary/thirddeck/port) -"aex" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet{dir = 9},/obj/effect/floor_decal/carpet{dir = 5},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/lino,/area/crew_quarters/cafeteria) +"aex" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet{dir = 9},/obj/effect/floor_decal/carpet{dir = 5},/turf/simulated/floor/lino,/area/crew_quarters/cafeteria) "afc" = (/obj/structure/catwalk,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "afz" = (/obj/machinery/ai_status_display,/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/starboard) "agd" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) @@ -24,9 +24,10 @@ "aiP" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod_berth{frequency = 1380; id_tag = "escape_pod_7_berth"; pixel_x = -25; pixel_y = 30; tag_door = "escape_pod_7_berth_hatch"},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "ajC" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/catwalk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "ajM" = (/obj/structure/railing{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 4},/turf/simulated/open,/area/crew_quarters/coffee_shop) -"akK" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/browndouble,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) -"alA" = (/obj/structure/table/standard,/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/random/pizzabox,/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) +"akK" = (/obj/structure/table/woodentable,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) +"alA" = (/obj/structure/table/standard,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -36; pixel_y = -6},/obj/structure/cable/green,/obj/item/pizzabox/old,/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) "amz" = (/obj/structure/table/glass,/obj/item/weapon/towel{color = "#b5651d"; name = "brown towel"},/obj/item/weapon/towel{color = "#00FFFF"; name = "cyan towel"; pixel_x = 2; pixel_y = 4},/obj/item/weapon/towel{color = "#90ee90"; name = "green towel"},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) +"anh" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) "anD" = (/turf/simulated/wall/r_wall,/area/maintenance/substation/command) "anE" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "aoy" = (/obj/effect/wingrille_spawn/reinforced/polarized{id = "rdquarters"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/crew_quarters/heads/sc/hor/quarters) @@ -36,26 +37,27 @@ "apL" = (/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "aqj" = (/obj/structure/lattice,/turf/space,/area/space) "ary" = (/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/red/border{dir = 10},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 8},/obj/machinery/computer/secure_data{dir = 1},/obj/machinery/ai_status_display{pixel_x = -32},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/bridge) -"asb" = (/obj/structure/closet/lasertag/blue,/obj/effect/floor_decal/corner/orange/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"asb" = (/obj/structure/closet/lasertag/blue,/obj/effect/floor_decal/corner/orange/border{dir = 8},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "atX" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/structure/cable/cyan{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/ai) -"auX" = (/obj/machinery/vending/coffee,/obj/structure/sign/christmas/lights,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"auX" = (/obj/machinery/vending/coffee{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "auZ" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "avH" = (/obj/structure/lattice,/obj/structure/grille/broken,/turf/space,/area/space) "avO" = (/turf/simulated/wall/r_wall,/area/crew_quarters/heads/sc/cmo/quarters) "avY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftstarboardcentral) -"awy" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/item/weapon/storage/mre/random,/obj/item/weapon/storage/mre/random,/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) +"awg" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_11) +"awy" = (/obj/structure/bed/chair/comfy/black{dir = 8},/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_6) "aAf" = (/obj/item/weapon/stool/padded,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "aAA" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_5) "aBe" = (/obj/structure/toilet{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_11) "aBs" = (/turf/simulated/wall/r_wall,/area/crew_quarters/heads/sc/chief/quarters) "aBA" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "fore_port_solar_inner"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/turf/simulated/floor/plating,/area/maintenance/solars/foreportsolar) -"aBW" = (/obj/structure/flora/ausbushes/lavendergrass,/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/structure/flora/tree/pine/xmas{desc = "A perfectly decorative fake christmas plant."},/turf/simulated/floor/grass,/area/crew_quarters/coffee_shop) +"aBW" = (/obj/structure/flora/ausbushes/lavendergrass,/obj/machinery/portable_atmospherics/hydroponics/soil,/turf/simulated/floor/grass,/area/crew_quarters/coffee_shop) "aCh" = (/turf/simulated/open,/area/crew_quarters/coffee_shop) "aDV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "aFa" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/carpet/blue,/area/crew_quarters/heads/sc/bs) "aFn" = (/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) +"aFq" = (/obj/machinery/door/airlock{id_tag = "Dorms3"; name = "Room 3"},/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_5) "aFB" = (/obj/structure/bed/chair,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/bridge) -"aFN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) "aFT" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/lights/mixed,/obj/item/device/multitool,/obj/item/weapon/storage/toolbox/mechanical,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/yellow/border{dir = 6},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/yellow/bordercorner2{dir = 6},/turf/simulated/floor/tiled/dark,/area/bridge) "aHx" = (/obj/structure/table/steel,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "aId" = (/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1379; id_tag = "d3_starboard_pump"},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{id_tag = "d3_starboard_airlock"; pixel_y = -26; req_access = null; tag_airpump = "d3_starboard_pump"; tag_chamber_sensor = "d3_starboard_sensor"; tag_exterior_door = "d3_starboard_outer"; tag_interior_door = "d3_starboard_inner"},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) @@ -63,11 +65,11 @@ "aIV" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/aftportsolar) "aJq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "aJy" = (/obj/structure/ladder,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) -"aJH" = (/obj/structure/table/woodentable,/obj/effect/floor_decal/corner/green/diagonal,/obj/item/clothing/head/santa/green,/obj/item/clothing/head/santa/green,/obj/item/clothing/head/santa/green,/obj/item/clothing/head/santa/green,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) +"aJH" = (/obj/structure/table/woodentable,/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "aKj" = (/turf/simulated/wall,/area/medical/first_aid_station/thirddeck) -"aKv" = (/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/structure/flora/pottedplant/xmas{anchored = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) -"aKL" = (/obj/structure/table/standard,/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/light,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_7) -"aMh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/effect/floor_decal/corner/blue/bordercorner,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"aKm" = (/obj/random/junk,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) +"aKL" = (/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/light,/obj/structure/table/rack/shelf,/obj/item/weapon/towel/random,/obj/item/weapon/towel/random,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_7) +"aMh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/effect/floor_decal/corner/blue/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "aMl" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "aMs" = (/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "aMw" = (/obj/structure/sign/warning/lethal_turrets,/turf/simulated/wall/r_wall,/area/ai/ai_cyborg_station) @@ -75,7 +77,6 @@ "aNx" = (/obj/effect/floor_decal/industrial/warning/cee,/obj/structure/cable/cyan{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/hologram/holopad,/turf/simulated/floor/tiled/dark,/area/ai) "aNH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftportcentral) "aOO" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/aftportsolar) -"aPz" = (/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) "aQE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/corner/green/border{dir = 1},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "aQL" = (/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "aSW" = (/turf/simulated/wall/r_wall,/area/maintenance/thirddeck/aftstarboard) @@ -83,44 +84,42 @@ "aTy" = (/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/porta_turret/ai_defense,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled/techfloor,/area/ai) "aTK" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/foreportsolar) "aUo" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_13) -"aUt" = (/obj/effect/floor_decal/techfloor/orange{dir = 6},/obj/machinery/light{dir = 4},/obj/machinery/newscaster{pixel_x = 29},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/techfloor,/area/hallway/primary/thirddeck/stationgateway) -"aVj" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) -"aVv" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"aWg" = (/obj/machinery/vending/loadout/accessory,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"aUt" = (/obj/effect/floor_decal/techfloor/orange{dir = 6},/obj/machinery/light{dir = 4},/obj/machinery/newscaster{pixel_x = 29},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/techfloor,/area/hallway/primary/thirddeck/stationgateway) +"aVj" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_14) +"aVv" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"aWg" = (/obj/machinery/vending/loadout/accessory,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "aWs" = (/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_6) "aWE" = (/obj/machinery/atmospherics/binary/pump/on{dir = 1; target_pressure = 200},/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/structure/closet/crate,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) -"aXo" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/disposalpipe/segment,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"aXN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"aXo" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"aXN" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_13) "aYd" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_server_room) "aYv" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/donut,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/sd) "aYx" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/substation/dorms) "aYy" = (/turf/simulated/wall/r_wall,/area/ai/ai_upload_foyer) "aZQ" = (/obj/machinery/shower{dir = 1},/obj/structure/curtain/open/shower,/obj/structure/window/basic{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_8) "bbl" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) -"bbV" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) +"bbV" = (/obj/structure/closet/secure_closet/personal/cabinet,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_6) "bci" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "bde" = (/obj/structure/table/wooden_reinforced,/obj/machinery/photocopier/faxmachine{department = "Bridge"},/obj/machinery/light,/turf/simulated/floor/wood,/area/bridge/meeting_room) "bdA" = (/obj/structure/table/woodentable,/obj/item/weapon/deck/tarot,/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "bdC" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"bdG" = (/obj/structure/table/standard,/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_9) +"bdG" = (/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/light{dir = 4},/obj/structure/table/rack/shelf,/obj/random/soap,/obj/item/weapon/towel/random,/obj/item/weapon/towel/random,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_9) "beu" = (/obj/structure/table/marble,/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = 8; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = -4; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = 8; pixel_y = -4},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = -4; pixel_y = -4},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = 8},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = -4},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = 8; pixel_y = 12},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = -4; pixel_y = 12},/turf/simulated/floor/tiled/kafel_full/green,/area/crew_quarters/coffee_shop) -"bfc" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) -"bgg" = (/obj/structure/event/present,/obj/effect/effect/snow,/turf/simulated/floor/outdoors/snow/snow{outdoors = 0},/area/crew_quarters/cafeteria) -"bgE" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/item/weapon/lipstick/random,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) -"bha" = (/obj/structure/bed/chair/wood,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"bhy" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/random/medical/pillbottle,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) +"bfc" = (/obj/structure/table/standard,/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/random/coin,/obj/random/snack,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_12) +"bgE" = (/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_4) +"bhy" = (/obj/structure/bed/chair/comfy/black{dir = 8},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_11) "biM" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_7) "bjg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "bjl" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "bjz" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; layer = 3.3; master_tag = "fore_port_solar_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = -25; req_access = list(); req_one_access = list(11,24)},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/foreportsolar) "bjH" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/bridge/meeting_room) "bkm" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/cee{dir = 8},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{id_tag = "fore_port_solar_airlock"; layer = 3.3; pixel_y = -25; req_access = list(13); tag_airpump = "fore_port_solar_pump"; tag_chamber_sensor = "fore_port_solar_sensor"; tag_exterior_door = "fore_port_solar_outer"; tag_interior_door = "fore_port_solar_inner"},/obj/machinery/airlock_sensor{id_tag = "fore_port_solar_sensor"; layer = 3.3; pixel_y = 25},/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1379; id_tag = "fore_port_solar_pump"},/turf/simulated/floor/plating,/area/maintenance/solars/foreportsolar) -"bkC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Dorms 2"; dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"bkC" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "bkJ" = (/obj/structure/closet,/obj/item/weapon/storage/backpack,/obj/random/maintenance/clean,/obj/random/maintenance/cargo,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) "blk" = (/obj/structure/table/steel,/obj/item/weapon/virusdish/random,/obj/item/weapon/virusdish/random,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "blt" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "blB" = (/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/central) -"blD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"blD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_13) "bmK" = (/obj/machinery/firealarm{pixel_y = 24},/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "bng" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled,/area/bridge) "bnv" = (/obj/machinery/hologram/holopad,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/bridge/meeting_room) @@ -129,15 +128,15 @@ "bpe" = (/turf/simulated/wall,/area/crew_quarters/heads/sc/hor/quarters) "bpy" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/bridge/meeting_room) "bqB" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/effect/floor_decal/corner/orange/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) -"bqS" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"bqS" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/obj/structure/disposalpipe/junction{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "brV" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "bsM" = (/obj/machinery/camera/network/engineering{c_tag = "ENG - Solar Fore Starboard"},/obj/item/stack/cable_coil/yellow,/obj/item/stack/cable_coil/yellow,/obj/item/weapon/stool,/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) -"buw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/button/remote/airlock{id = "Dorms7"; name = "Bolt Control"; pixel_y = 30; specialfunctions = 4},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) +"buw" = (/obj/machinery/button/remote/airlock{id = "Dorms7"; name = "Bolt Control"; pixel_y = 30; specialfunctions = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_11) "bvr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "bvz" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/catwalk,/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) "bvA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/catwalk,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "bwZ" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) -"bxL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/effect/floor_decal/corner/orange/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"bxL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/effect/floor_decal/corner/orange/border{dir = 1},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "bzQ" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/structure/flora/ausbushes/ywflowers,/turf/simulated/floor/grass,/area/crew_quarters/coffee_shop) "bAf" = (/obj/structure/sign/kiddieplaque,/turf/simulated/wall/r_wall,/area/ai/ai_upload) "bCU" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/railing{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) @@ -145,31 +144,31 @@ "bDU" = (/obj/structure/closet/secure_closet/hos_wardrobe,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hos/quarters) "bET" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; layer = 3.3; master_tag = "aft_port_solar_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = 25; req_access = list(); req_one_access = list(11,24)},/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) "bFh" = (/obj/machinery/newscaster{pixel_y = 30},/turf/simulated/floor/wood,/area/bridge/meeting_room) -"bFE" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) +"bFE" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/crew_quarters/cafeteria) "bFI" = (/turf/simulated/floor/airless,/area/thirddeck/roof) "bGG" = (/obj/effect/floor_decal/corner/green/border{dir = 10},/obj/machinery/vending/hydronutrients{dir = 1},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "bGL" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_3) -"bGQ" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/machinery/light{dir = 8},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) +"bGQ" = (/obj/machinery/light{dir = 8},/obj/structure/closet/secure_closet/personal/cabinet,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_9) "bHU" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; layer = 3.3; master_tag = "aft_port_solar_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = -25; req_access = list(); req_one_access = list(11,24)},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/aftportsolar) -"bJo" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/random/drinkbottle,/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) +"bJo" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_10) "bLc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_8) "bLp" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/button/windowtint{id = "bsquarters"; pixel_x = 36; pixel_y = 6},/obj/machinery/light_switch{pixel_x = 36; pixel_y = -6},/turf/simulated/floor/carpet/blue,/area/crew_quarters/heads/sc/bs) "bOb" = (/obj/machinery/shower,/obj/structure/curtain/open/shower,/obj/structure/window/basic{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "bOl" = (/obj/item/weapon/stool/padded,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) -"bOE" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) +"bOE" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) "bOR" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/light_switch{pixel_x = 36},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/wood,/area/bridge/meeting_room) -"bOS" = (/obj/structure/table/standard,/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_6) -"bPC" = (/obj/structure/table/standard,/obj/random/tool,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) -"bPD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) +"bOS" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_6) +"bPD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "bQV" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/bridge) "bRj" = (/obj/structure/bed/chair/comfy/blue,/turf/simulated/floor/carpet,/area/bridge/meeting_room) -"bRN" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) +"bRN" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/corner/green/diagonal,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/crew_quarters/coffee_shop) "bSv" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/random/trash_pile,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "bTr" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "bTs" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; layer = 3.3; master_tag = "aft_starboard_solar_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access = list(); req_one_access = list(11,24)},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/aftstarboardsolar) +"bTy" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_5) "bTO" = (/turf/simulated/wall/r_wall,/area/crew_quarters/heads/sc/bs) "bTW" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "fore_port_solar_outer"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/turf/simulated/floor/plating,/area/maintenance/solars/foreportsolar) -"bUe" = (/obj/machinery/door/airlock{id_tag = "Dorms2"; name = "Room 2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_4) +"bUe" = (/obj/machinery/door/airlock{id_tag = "Dorms1"; name = "Room 1"},/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_3) "bUp" = (/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "bUr" = (/turf/simulated/wall/r_wall,/area/ai/ai_cyborg_station) "bVQ" = (/obj/structure/table/standard,/obj/machinery/light{dir = 8},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/folder/yellow_ce,/obj/item/weapon/pen/multi,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -32},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/chief/quarters) @@ -178,11 +177,9 @@ "bZg" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "bZn" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/light,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled/techfloor,/area/ai) "bZQ" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/machinery/camera/network/command{c_tag = "COM - Bridge Starboard"},/obj/structure/window/reinforced{dir = 4},/obj/structure/closet/emcloset,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/bridge) -"cad" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) "cai" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aft) "caS" = (/obj/structure/curtain/open/shower,/obj/machinery/shower{dir = 1},/obj/structure/window/basic{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_6) "cbk" = (/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_7) -"cbz" = (/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) "ccv" = (/obj/structure/railing{dir = 1},/obj/machinery/light{dir = 1; layer = 3},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/simulated/open,/area/crew_quarters/coffee_shop) "ccJ" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "aft_starboard_solar_inner"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/turf/simulated/floor/plating,/area/maintenance/solars/aftstarboardsolar) "cdo" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) @@ -194,24 +191,24 @@ "cgh" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/thirddeck/starboard) "cgi" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/ai_status_display{pixel_x = -32},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "cgt" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/airless,/area/solar/aftstarboardsolar) -"chr" = (/obj/machinery/firealarm{dir = 8; pixel_x = -26},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"chr" = (/obj/machinery/firealarm{dir = 8; pixel_x = -26},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "cih" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5},/turf/simulated/wall/r_wall,/area/maintenance/thirddeck/dormsport) "ciH" = (/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = 32},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/restroom) -"cjc" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/table/standard,/obj/random/action_figure,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) "cjC" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) "ckl" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/stationgateway) "cko" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_3) "ckH" = (/obj/structure/cable/yellow,/obj/machinery/power/solar_control{auto_start = 2; id = "aftportsolar"; name = "Aft Port Solar Control"},/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) -"ckU" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/machinery/button/remote/airlock{id = "Dorms2"; name = "Bolt Control"; pixel_x = 26; specialfunctions = 4},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) -"clf" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) -"clr" = (/obj/structure/table/standard,/obj/item/weapon/storage/mre/random,/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"ckU" = (/obj/machinery/button/remote/airlock{id = "Dorms2"; name = "Bolt Control"; pixel_y = 29; specialfunctions = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_4) +"clf" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"clr" = (/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/structure/coatrack,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_13) "cly" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "clB" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftstarboardcentral) "clN" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) -"cmw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) -"cnT" = (/obj/item/weapon/towel{color = "#FF8C00"; name = "orange towel"},/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_7) +"cmw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_12) +"cnT" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_7) "cpp" = (/obj/machinery/floodlight,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) -"cps" = (/obj/structure/railing{dir = 1},/obj/structure/railing{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 9},/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/open,/area/crew_quarters/cafeteria) +"cps" = (/obj/structure/railing{dir = 1},/obj/structure/railing{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 9},/turf/simulated/open,/area/crew_quarters/cafeteria) +"cpE" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) "cqz" = (/turf/simulated/wall,/area/maintenance/thirddeck/dormsaft) "cqT" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/command{name = "Secretary Office"; req_access = list(19)},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/bridge/meeting_room) "crb" = (/obj/structure/railing{dir = 4},/obj/structure/railing{dir = 1},/obj/structure/railing{dir = 8},/turf/simulated/open,/area/hallway/primary/thirddeck/aft) @@ -224,55 +221,55 @@ "cvC" = (/turf/simulated/wall/r_wall,/area/maintenance/thirddeck/dormsaft) "cvI" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor/tiled/dark,/area/bridge) "cwv" = (/turf/simulated/wall,/area/maintenance/thirddeck/forestarboard) -"cxo" = (/obj/machinery/button/remote/blast_door{id = "bridge blast"; name = "Bridge Blastdoors"; pixel_y = -36},/obj/machinery/button/windowtint{id = "bridge_center"; pixel_x = -11; pixel_y = -24},/obj/machinery/keycard_auth{pixel_y = -24},/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/blue/border{dir = 6},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/blue/bordercorner2{dir = 6},/obj/structure/flora/pottedplant/xmas,/turf/simulated/floor/tiled,/area/bridge) +"cxo" = (/obj/machinery/button/remote/blast_door{id = "bridge blast"; name = "Bridge Blastdoors"; pixel_y = -36},/obj/machinery/button/windowtint{id = "bridge_center"; pixel_x = -11; pixel_y = -24},/obj/machinery/keycard_auth{pixel_y = -24},/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/blue/border{dir = 6},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/blue/bordercorner2{dir = 6},/turf/simulated/floor/tiled,/area/bridge) "czb" = (/obj/machinery/floodlight,/turf/simulated/floor/plating,/area/maintenance/substation/dorms) "czh" = (/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/heads/sc/hor/quarters) "cAd" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/thirddeck) "cBt" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "cCe" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/cafeteria) -"cCt" = (/obj/structure/bed/chair,/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"cDq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/button/remote/airlock{id = "Dorms4"; name = "Bolt Control"; pixel_y = 30; specialfunctions = 4},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) +"cCt" = (/obj/structure/bed/chair,/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"cDq" = (/obj/machinery/button/remote/airlock{id = "Dorms4"; name = "Bolt Control"; pixel_y = 30; specialfunctions = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_6) "cEd" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/binary/pump/on{dir = 4; target_pressure = 200},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) "cEp" = (/obj/machinery/floodlight,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) -"cEu" = (/obj/effect/floor_decal/corner_steel_grid/full,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) -"cEw" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) -"cEG" = (/obj/machinery/vending/loadout/clothing,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"cEu" = (/obj/effect/floor_decal/corner_steel_grid/full,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"cEw" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"cEG" = (/obj/machinery/vending/loadout/clothing,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "cEH" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "cEX" = (/obj/structure/table/steel,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "cFw" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_cyborg_station) "cFA" = (/obj/structure/closet/secure_closet/RD_wardrobe,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hor/quarters) "cFY" = (/obj/structure/flora/ausbushes/fullgrass,/obj/structure/extinguisher_cabinet{pixel_x = -28},/turf/simulated/floor/grass,/area/crew_quarters/coffee_shop) -"cGK" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/light{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) -"cGT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"cGK" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/light{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"cGT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "cHh" = (/obj/structure/sign/deck/third,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/port) "cHm" = (/obj/structure/table/woodentable,/obj/machinery/recharger,/obj/item/weapon/storage/secure/safe{pixel_x = 5; pixel_y = -26},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) -"cHn" = (/obj/machinery/vending/fitness,/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"cHn" = (/obj/machinery/vending/fitness{dir = 1},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "cIT" = (/obj/structure/sign/warning/high_voltage{pixel_y = 32},/turf/simulated/floor/reinforced/airless,/area/thirddeck/roof) "cJp" = (/obj/machinery/door/airlock/glass_external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_7_berth_hatch"; locked = 1; name = "Escape Pod 7"; req_access = list(13)},/turf/simulated/floor,/area/hallway/primary/thirddeck/port) "cJI" = (/obj/machinery/computer/aiupload,/turf/simulated/floor/bluegrid,/area/ai/ai_upload) "cKn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "cKu" = (/obj/machinery/computer/aifixer{dir = 8},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/bluegrid,/area/ai/ai_cyborg_station) "cKW" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/door/blast/regular{density = 0; dir = 8; icon_state = "pdoor0"; id = "directorblast"; name = "Blast Doors"; opacity = 0},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/heads/sc/sd) -"cLt" = (/obj/machinery/door/airlock{id_tag = "Dorms10"; name = "Room 10"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_12) +"cLt" = (/obj/machinery/door/airlock{id_tag = "Dorms10"; name = "Room 10"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_12) "cLH" = (/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) -"cMk" = (/obj/structure/table/standard,/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_14) +"cMk" = (/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light,/obj/structure/table/rack/shelf,/obj/random/soap,/obj/item/weapon/towel/random,/obj/item/weapon/towel/random,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_14) "cMP" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "cND" = (/obj/structure/table/wooden_reinforced,/obj/machinery/computer/skills,/turf/simulated/floor/wood,/area/bridge/meeting_room) -"cOb" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/flora/pottedplant/xmas,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) +"cOb" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "cOc" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) -"cOx" = (/obj/structure/table/standard,/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/random/junk,/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) +"cOx" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/random/maintenance/engineering,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_8) "cPJ" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) "cPN" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/command{id_tag = "cequarters"; name = "Chief Engineer Quarters"; req_access = list(56)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/heads/sc/chief/quarters) "cPX" = (/obj/machinery/vending/loadout/uniform,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "cQE" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/aftportsolar) "cQF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"cQQ" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/effect/floor_decal/corner/orange/diagonal,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) +"cQQ" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/effect/floor_decal/corner/orange/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) "cRk" = (/turf/simulated/floor/carpet,/area/bridge/meeting_room) "cSJ" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) -"cSS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/corner/blue/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"cSS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/corner/blue/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "cTw" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/bridge) "cTz" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/aftstarboardsolar) -"cVl" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/obj/machinery/light,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"cVl" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/obj/machinery/light,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "cVJ" = (/obj/structure/disposalpipe/junction{dir = 8},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled,/area/bridge) "cXw" = (/obj/machinery/ai_slipper{icon_state = "motion0"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/greengrid,/area/ai) "cXM" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) @@ -284,7 +281,7 @@ "dan" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet,/obj/effect/floor_decal/carpet{dir = 6},/turf/simulated/floor/holofloor/carpet,/area/crew_quarters/cafeteria) "dbm" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "dbY" = (/obj/structure/bed/chair/office/dark,/obj/effect/landmark/start{name = "Colony Director"},/obj/machinery/button/remote/airlock{desc = "A remote control switch for the Starboard Bridge Doors."; id = "sbridgedoor"; name = "Starboard Bridge Door Control"; pixel_x = 30; pixel_y = -6},/obj/machinery/button/remote/airlock{desc = "A remote control switch for the captain's office."; id = "captaindoor"; name = "Office Door Control"; pixel_x = 30; pixel_y = 6},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) -"dcT" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"dcT" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_13) "ddq" = (/obj/structure/sign/warning/high_voltage{pixel_x = -32},/turf/simulated/wall,/area/crew_quarters/cafeteria) "ddu" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/engineering{name = "Fore Port Solar Access"; req_access = list(); req_one_access = list(11,24)},/turf/simulated/floor/plating,/area/maintenance/solars/foreportsolar) "def" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) @@ -297,50 +294,48 @@ "djK" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/light_switch{pixel_x = 36},/obj/structure/cable/cyan,/obj/machinery/status_display{pixel_y = -32},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_server_room) "djV" = (/obj/machinery/door/airlock/engineering{name = "SMES Room"; req_one_access = list(11,24)},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/substation/dorms) "dmb" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_8) -"dmh" = (/obj/machinery/light,/obj/structure/table/bench/standard,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"dmh" = (/obj/machinery/light,/obj/structure/table/bench/standard,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "dmx" = (/obj/effect/decal/cleanable/generic,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "dmH" = (/obj/machinery/hologram/holopad,/obj/structure/table/woodentable,/obj/random/plushie,/obj/item/device/starcaster_news,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "dog" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/glass_command{name = "Bridge"; req_access = list(19)},/turf/simulated/floor/tiled/steel_grid,/area/bridge) -"dpB" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"dpF" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"dpB" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"dpF" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "dpI" = (/obj/structure/table/wooden_reinforced,/obj/machinery/computer/skills,/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "dpO" = (/obj/structure/curtain/open/shower,/obj/machinery/shower{dir = 1},/obj/structure/window/basic{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_11) -"dpT" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) "dqb" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "dqO" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "aft_starboard_solar_pump"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{id_tag = "aft_starboard_solar_airlock"; layer = 3.3; pixel_y = 25; req_access = list(13); tag_airpump = "aft_starboard_solar_pump"; tag_chamber_sensor = "aft_starboard_solar_sensor"; tag_exterior_door = "aft_starboard_solar_outer"; tag_interior_door = "aft_starboard_solar_inner"},/obj/machinery/airlock_sensor{id_tag = "aft_starboard_solar_sensor"; layer = 3.3; pixel_y = -25},/obj/effect/floor_decal/industrial/warning/cee{dir = 4},/turf/simulated/floor/plating,/area/maintenance/solars/aftstarboardsolar) "drl" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "csblast"; name = "Blast Doors"; opacity = 0},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/bridge/meeting_room) -"drt" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/corner/blue/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) -"dsP" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/machinery/light{dir = 1},/obj/effect/floor_decal/corner/orange/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"drt" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/corner/blue/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"dsP" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/machinery/light{dir = 1},/obj/effect/floor_decal/corner/orange/border{dir = 1},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "dvD" = (/obj/machinery/camera/network/engineering{c_tag = "ENG - Solar Aft Port"; dir = 1},/obj/item/weapon/stool,/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) "dwY" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{id_tag = "aft_port_solar_airlock"; layer = 3.3; pixel_y = 25; req_access = list(13); tag_airpump = "aft_port_solar_pump"; tag_chamber_sensor = "aft_port_solar_sensor"; tag_exterior_door = "aft_port_solar_outer"; tag_interior_door = "aft_port_solar_inner"},/obj/effect/floor_decal/industrial/warning/cee{dir = 8},/obj/machinery/airlock_sensor{id_tag = "aft_port_solar_sensor"; layer = 3.3; pixel_y = -25},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "aft_port_solar_pump"},/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) -"dxl" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) +"dxl" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -32},/obj/structure/dogbed,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_9) "dxF" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/ai) -"dxN" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/reinforced/airless,/area/hallway/primary/thirddeck/aftstarboardcentral) "dym" = (/obj/effect/landmark/map_data{height = 3},/turf/space,/area/space) "dyy" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/blue/bordercorner,/turf/simulated/floor/tiled,/area/bridge) -"dyJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/effect/floor_decal/corner/beige/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"dyJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/effect/floor_decal/corner/beige/border,/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "dyX" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/aftstarboardsolar) "dzQ" = (/obj/structure/catwalk,/obj/machinery/space_heater,/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"dAf" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) +"dAf" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_9) "dAz" = (/obj/structure/railing{dir = 4},/obj/structure/railing{dir = 1},/obj/effect/floor_decal/spline/plain{dir = 5},/turf/simulated/open,/area/crew_quarters/coffee_shop) "dBh" = (/obj/structure/sign/warning/lethal_turrets,/turf/simulated/wall/r_wall,/area/ai) -"dBt" = (/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) -"dBx" = (/obj/structure/railing{dir = 1},/obj/effect/floor_decal/spline/plain{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/open,/area/crew_quarters/cafeteria) +"dBt" = (/obj/random/junk,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) "dCg" = (/obj/machinery/recharge_station,/obj/machinery/light/small,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "dCl" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "dCB" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "dEh" = (/obj/machinery/door/airlock{name = "Emergency Storage"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "dFk" = (/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) -"dFr" = (/obj/structure/table/glass,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/bedsheetbin,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"dFr" = (/obj/structure/table/glass,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/bedsheetbin,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "dFx" = (/obj/random/junk,/turf/space,/area/space) "dGe" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "dGl" = (/obj/structure/sign/warning/secure_area,/turf/simulated/wall/r_wall,/area/ai/ai_server_room) "dHa" = (/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) -"dIm" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) -"dJu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"dIm" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/orangedouble,/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) +"dJu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_13) "dJO" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/effect/floor_decal/industrial/warning,/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/maintenance/substation/command) "dKj" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/simulated/floor/tiled/techfloor,/area/ai) "dLP" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_upload) +"dMf" = (/obj/machinery/alarm{dir = 1; pixel_y = -25},/turf/simulated/wall,/area/crew_quarters/sleep/vistor_room_12) "dMh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/greengrid,/area/ai) "dMk" = (/obj/item/weapon/stool/padded,/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "dNI" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green,/obj/machinery/door/blast/regular{density = 0; dir = 8; icon_state = "pdoor0"; id = "directorblast"; name = "Blast Doors"; opacity = 0},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/heads/sc/sd) @@ -351,11 +346,12 @@ "dQu" = (/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/sd) "dRo" = (/obj/structure/grille,/turf/space,/area/space) "dRt" = (/obj/machinery/firealarm{pixel_y = 24},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) -"dSN" = (/obj/structure/reagent_dispensers/water_cooler/full,/obj/structure/sign/christmas/lights,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"dRN" = (/obj/structure/dogbed,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_5) +"dSN" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "dSP" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/machinery/ai_status_display{pixel_x = -32},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "dTv" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled/techfloor,/area/ai) "dTJ" = (/turf/simulated/wall/r_wall,/area/crew_quarters/heads/sc/hop/quarters) -"dTR" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"dTR" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "dUI" = (/obj/structure/lattice,/obj/structure/cable{d1 = 32; d2 = 8; icon_state = "32-8"},/obj/machinery/door/firedoor/border_only,/turf/simulated/open,/area/maintenance/thirddeck/aftport) "dUZ" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/obj/effect/floor_decal/corner/beige/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "dVb" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/light{dir = 4},/obj/machinery/status_display{layer = 4; pixel_y = -32},/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod{frequency = 1380; id_tag = "escape_pod_8"; pixel_y = 25; tag_door = "escape_pod_8_hatch"},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod8/station) @@ -364,12 +360,12 @@ "dVO" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "dVR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_6) "dVU" = (/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled/techfloor,/area/ai) -"dWg" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/structure/reagent_dispensers/water_cooler/full,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"dWg" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/obj/machinery/computer/timeclock/premade/north,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "dXG" = (/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/white/border{dir = 6},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 6},/obj/machinery/computer/med_data{dir = 1},/obj/machinery/status_display{pixel_x = 32},/turf/simulated/floor/tiled,/area/bridge) "dXW" = (/obj/structure/closet/crate,/obj/item/clothing/mask/gas,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/effect/decal/cleanable/dirt,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) -"dYf" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"dYf" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "dYo" = (/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftstarboardcentral) -"dYv" = (/obj/structure/table/bench/standard,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"dYv" = (/obj/structure/table/bench/standard,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "dYZ" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/floodlight,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) "dZQ" = (/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Stairwell"; dir = 1},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "dZU" = (/obj/machinery/shield_diffuser,/turf/simulated/floor/airless,/area/thirddeck/roof) @@ -380,14 +376,14 @@ "eaE" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/blue/bordercorner,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "eaN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/stationgateway) "eaQ" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) -"eaW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) +"eaW" = (/obj/structure/table/bench/wooden,/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) "eaY" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/chief/quarters) "eba" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/port) "ebu" = (/obj/structure/flora/pottedplant{pixel_y = 10},/obj/structure/table/woodentable,/obj/machinery/alarm{pixel_y = 22},/obj/structure/extinguisher_cabinet{pixel_x = -28},/turf/simulated/floor/wood,/area/bridge/meeting_room) "ebB" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "ecu" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/simulated/floor/tiled,/area/bridge) "ecR" = (/obj/structure/bed/chair,/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) -"eeA" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"eeA" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "eeV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "efi" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "eiK" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/glasses/square,/obj/item/weapon/storage/box/glasses/square,/obj/item/weapon/reagent_containers/glass/rag,/obj/item/weapon/reagent_containers/glass/rag,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) @@ -396,7 +392,7 @@ "ele" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "elx" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/bridge) "elz" = (/obj/machinery/light/small{dir = 1},/obj/structure/closet/hydrant{pixel_y = 32},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) -"elB" = (/obj/structure/table/standard,/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/random/junk,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) +"elB" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/random/plushielarge,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_4) "elF" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "elH" = (/obj/structure/bed/chair/office/dark,/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/chief/quarters) "elR" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) @@ -406,19 +402,19 @@ "emC" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/item/stack/cable_coil/yellow,/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) "enk" = (/obj/machinery/vending/coffee,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = 32},/turf/simulated/floor/wood,/area/bridge/meeting_room) "enz" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) -"enW" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/flora/pottedplant/xmas,/turf/simulated/floor/wood,/area/bridge/meeting_room) -"eod" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/effect/floor_decal/corner/beige/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"eot" = (/obj/machinery/button/remote/airlock{id = "Dorms1"; name = "Bolt Control"; pixel_x = 26; specialfunctions = 4},/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/hosdouble,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) +"enW" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/bridge/meeting_room) +"eod" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/effect/floor_decal/corner/beige/border,/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"eot" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/browndouble,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) "epg" = (/obj/structure/lattice,/obj/structure/grille,/turf/space,/area/space) -"epw" = (/obj/machinery/door/airlock/glass{name = "Cafeteria"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/cafeteria) +"epw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/cafeteria) "eqr" = (/obj/machinery/porta_turret/ai_defense,/obj/effect/floor_decal/industrial/outline/grey,/obj/effect/floor_decal/industrial/warning/corner,/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled/techfloor,/area/ai) "equ" = (/obj/machinery/shower{dir = 1},/obj/structure/curtain/open/shower,/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/machinery/door/window/northright,/obj/item/weapon/bikehorn/rubberducky,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/sd) -"eqC" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) +"eqC" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) "ers" = (/obj/structure/cable/yellow,/turf/simulated/floor/airless,/area/solar/forestarboardsolar) "ery" = (/turf/simulated/wall/r_wall,/area/bridge/meeting_room) "ess" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/simulated/shuttle/wall,/area/shuttle/escape_pod7/station) "esF" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_12) -"esK" = (/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Dorms 5"; dir = 8},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"esK" = (/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Dorms 5"; dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "eup" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/command{name = "Command Restroom"; req_access = list(19)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/heads/sc/restroom) "euu" = (/obj/machinery/camera/network/command{c_tag = "COM - Secretary Office"},/turf/simulated/floor/wood,/area/bridge/meeting_room) "evc" = (/obj/effect/floor_decal/corner/orange/border{dir = 6},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) @@ -426,47 +422,47 @@ "evA" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "ewB" = (/obj/structure/ladder,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "ewU" = (/obj/structure/sink,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) -"exE" = (/obj/structure/event/present,/obj/item/toy/plushie/box,/obj/effect/effect/snow,/turf/simulated/floor/outdoors/snow/snow{outdoors = 0},/area/crew_quarters/cafeteria) "exO" = (/obj/effect/landmark{name = "JoinLateCyborg"},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_cyborg_station) "eyi" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "d3_port_dorms_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = 26; req_access = null},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"eyr" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green,/obj/machinery/light_switch{pixel_x = 36; pixel_y = -6},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) -"ezD" = (/obj/machinery/light{dir = 4},/obj/machinery/light_switch{pixel_x = 36; pixel_y = -6},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"eyr" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_9) +"ezD" = (/obj/machinery/light{dir = 4},/obj/machinery/light_switch{pixel_x = 36; pixel_y = -6},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "ezK" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"eAr" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"eAr" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/effect/floor_decal/corner_steel_grid{dir = 10},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "eBi" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/solars/foreportsolar) "eBy" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) -"eCs" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/random/plushie,/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) -"eCI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"eCs" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_5) +"eCI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "eCU" = (/obj/machinery/light/small{dir = 4},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) "eDk" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/light{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "eEi" = (/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1379; id_tag = "d3_port_pump"},/obj/machinery/light/small,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "eFC" = (/obj/structure/sign/warning/high_voltage,/turf/simulated/wall/r_wall,/area/crew_quarters/heads/sc/sd) "eGw" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/substation/dorms) "eGU" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "aft_port_solar_inner"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) -"eHp" = (/obj/machinery/vending/loadout,/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Dorms 1"},/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"eHp" = (/obj/machinery/vending/loadout,/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Dorms 1"},/obj/effect/floor_decal/corner_steel_grid{dir = 10},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "eHC" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/machinery/camera/network/command{c_tag = "AI - Upload"},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_upload) "eHT" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "eIE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/binary/pump/on{target_pressure = 200},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "eIM" = (/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"eJa" = (/obj/structure/railing,/obj/structure/railing{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 10},/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/open,/area/crew_quarters/cafeteria) -"eJk" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) -"eJC" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/random/junk,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) +"eJa" = (/obj/structure/railing,/obj/structure/railing{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 10},/turf/simulated/open,/area/crew_quarters/cafeteria) +"eJk" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_5) +"eJC" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_9) "eJF" = (/turf/simulated/wall,/area/crew_quarters/sleep/vistor_room_14) "eJK" = (/obj/machinery/porta_turret/ai_defense,/obj/effect/floor_decal/industrial/outline/grey,/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/ai_status_display{pixel_y = -32},/turf/simulated/floor/tiled/techfloor,/area/ai) "eLm" = (/obj/machinery/light{dir = 8},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -32},/obj/structure/table/standard,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/folder/blue,/obj/item/weapon/pen/multi,/turf/simulated/floor/carpet/blue,/area/crew_quarters/heads/sc/bs) "eLA" = (/turf/simulated/wall,/area/crew_quarters/sleep/vistor_room_7) -"eLK" = (/obj/machinery/washing_machine,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) -"eMd" = (/obj/machinery/gear_painter{dir = 1},/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"eMd" = (/obj/machinery/gear_painter{dir = 1},/obj/effect/floor_decal/corner_steel_grid{dir = 10},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"eMx" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) "eMM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/status_display{pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"eMP" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"eMP" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "eMQ" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) "eNb" = (/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating,/area/maintenance/substation/dorms) "eNk" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/light/small{dir = 8},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) -"eNJ" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/random/toy,/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) +"eNJ" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "ePu" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) -"eQA" = (/obj/structure/flora/ausbushes/brflowers,/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/structure/flora/tree/pine/xmas{desc = "A perfectly decorative fake christmas plant."},/turf/simulated/floor/grass,/area/crew_quarters/coffee_shop) +"eQx" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/random/junk,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_5) +"eQA" = (/obj/structure/flora/ausbushes/brflowers,/obj/machinery/portable_atmospherics/hydroponics/soil,/turf/simulated/floor/grass,/area/crew_quarters/coffee_shop) "eQJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftportcentral) -"eQQ" = (/obj/structure/table/woodentable,/obj/item/device/paicard,/obj/item/device/starcaster_news,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftstarboardcentral) +"eQQ" = (/obj/structure/table/woodentable,/obj/item/device/paicard,/obj/item/device/starcaster_news,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftstarboardcentral) "eQU" = (/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "eRQ" = (/obj/structure/railing{dir = 8},/obj/structure/railing,/obj/effect/floor_decal/spline/plain{dir = 10},/turf/simulated/open,/area/crew_quarters/coffee_shop) "eSa" = (/obj/structure/table/wooden_reinforced,/obj/item/weapon/storage/photo_album{pixel_y = -10},/obj/item/device/camera,/obj/machinery/firealarm{pixel_y = 24},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/sd) @@ -475,109 +471,109 @@ "eTl" = (/obj/machinery/atmospherics/pipe/manifold/hidden/cyan,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "eTA" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1379; id_tag = "d3_starboard_dorms_pump"},/obj/machinery/light/small,/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/simulated/floor/airless,/area/maintenance/thirddeck/dormsaft) "eTG" = (/obj/structure/table/reinforced,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/paper_bin,/obj/item/weapon/folder/red,/obj/item/weapon/folder/blue,/obj/item/weapon/pen,/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/bridge) -"eTW" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/random/pizzabox,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) +"eTW" = (/obj/structure/table/standard,/obj/random/contraband,/obj/random/plushie,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_9) "eUC" = (/obj/machinery/recharge_station,/turf/simulated/floor/bluegrid,/area/ai/ai_cyborg_station) -"eVH" = (/obj/structure/closet/lasertag/red,/obj/effect/floor_decal/corner/orange/border{dir = 10},/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"eVH" = (/obj/structure/closet/lasertag/red,/obj/effect/floor_decal/corner/orange/border{dir = 10},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "eWL" = (/obj/structure/flora/ausbushes/sunnybush,/turf/simulated/floor/grass,/area/crew_quarters/coffee_shop) "eXg" = (/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "eXU" = (/obj/structure/table/steel,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) +"eYg" = (/obj/structure/table/standard,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = -24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/random/maintenance/medical,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_5) "eYk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/bridge) "eZO" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled/techfloor,/area/ai) -"fam" = (/obj/structure/table/glass,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/item/weapon/storage/laundry_basket,/obj/item/weapon/storage/laundry_basket,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) -"fau" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/corner/orange/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"fam" = (/obj/structure/table/glass,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/item/weapon/storage/laundry_basket,/obj/item/weapon/storage/laundry_basket,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"fau" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/corner/orange/border{dir = 8},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "faF" = (/obj/structure/table/standard,/obj/item/weapon/aiModule/oxygen,/obj/item/weapon/aiModule/oneHuman,/obj/machinery/door/window{dir = 8; name = "High-Risk Modules"; req_access = list(20)},/obj/item/weapon/aiModule/purge,/obj/item/weapon/aiModule/antimov,/obj/item/weapon/aiModule/teleporterOffline,/obj/structure/window/reinforced{dir = 1},/obj/machinery/status_display{pixel_y = -32},/turf/simulated/floor/bluegrid,/area/ai/ai_upload) "faZ" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "fbn" = (/obj/machinery/alarm{dir = 1; pixel_y = -25},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "fbo" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_13) "fbp" = (/turf/simulated/wall/r_wall,/area/crew_quarters/sleep/vistor_room_9) -"fbA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) +"fbA" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) "fbL" = (/obj/structure/closet/emcloset,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/central) "fbO" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/bed/chair/office/light{dir = 4},/obj/effect/landmark{name = "JoinLateCyborg"},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_cyborg_station) "fbT" = (/obj/structure/railing{dir = 4},/obj/structure/railing{dir = 8},/obj/structure/railing,/obj/machinery/light,/turf/simulated/open,/area/hallway/primary/thirddeck/aft) "fcs" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/simulated/floor/tiled,/area/bridge) -"fcv" = (/obj/machinery/light,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/effect/floor_decal/corner/orange/diagonal,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) +"fcv" = (/obj/machinery/light,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/effect/floor_decal/corner/orange/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) "fcU" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/button/remote/airlock{id = "cmoquarters"; name = "Bolt Control"; pixel_y = -30; specialfunctions = 4},/turf/simulated/floor/carpet/blue,/area/crew_quarters/heads/sc/cmo/quarters) "fda" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "fdq" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5},/turf/simulated/wall/r_wall,/area/maintenance/thirddeck/dormsaft) "fdM" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "feq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/corner/green/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) -"feC" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"feC" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "ffd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "ffk" = (/turf/simulated/wall,/area/crew_quarters/sleep/vistor_room_12) "ffH" = (/turf/simulated/wall/r_wall,/area/maintenance/solars/aftportsolar) -"ffQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"ffQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "ffT" = (/obj/machinery/smartfridge/drinks,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "fgf" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/bridge) -"fgj" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/random/contraband,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) +"fgj" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/structure/coatrack,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_14) "fhg" = (/obj/structure/table/steel,/obj/item/glass_jar,/obj/item/pizzavoucher,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "fhn" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/port) -"fhr" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/machinery/button/remote/airlock{id = "Dorms11"; name = "Bolt Control"; pixel_x = -30; specialfunctions = 4},/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) -"fiE" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) +"fhr" = (/obj/machinery/button/remote/airlock{id = "Dorms11"; name = "Bolt Control"; pixel_x = -30; specialfunctions = 4},/obj/structure/bed/chair/comfy/brown{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_13) +"fiE" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/crew_quarters/cafeteria) "fiS" = (/turf/simulated/wall/r_wall,/area/crew_quarters/cafeteria) "fjx" = (/obj/machinery/cryopod/robot{dir = 4},/turf/simulated/floor/bluegrid,/area/ai/ai_cyborg_station) "fjG" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp/green,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hor/quarters) "fjH" = (/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -36; pixel_y = -6},/obj/machinery/button/windowtint{id = "cmoquarters"; pixel_x = -36; pixel_y = 6},/turf/simulated/floor/carpet/blue,/area/crew_quarters/heads/sc/cmo/quarters) -"fjK" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) +"fjK" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "fjX" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/meter,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; layer = 3.3; master_tag = "fore_starboard_solar_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = 25; req_access = list(); req_one_access = list(11,24)},/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) "fke" = (/turf/simulated/wall,/area/crew_quarters/heads/sc/hos/quarters) -"flb" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle/wataur,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_11) -"fle" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"flb" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_11) +"fle" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "flw" = (/turf/simulated/wall/r_wall,/area/crew_quarters/heads/sc/sd) "flM" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/hallway/primary/thirddeck/stationgateway) "fmf" = (/obj/machinery/light/small{dir = 8},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) "fmw" = (/turf/simulated/wall,/area/crew_quarters/heads/sc/hop/quarters) -"fmx" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) -"fmC" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) -"fmM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"fmx" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_14) +"fmC" = (/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_12) +"fmM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "fmR" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) +"fnn" = (/obj/structure/table/standard,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/random/contraband,/obj/random/action_figure,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_5) "fno" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/command{id_tag = "hopquarters"; name = "Head of Personnel Quarters"; req_access = list(57)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/heads/sc/hop/quarters) "fop" = (/obj/machinery/door/airlock{name = "Unisex Showers"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "foz" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "fpl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "fqR" = (/obj/structure/closet/wardrobe/captain{name = "station director's wardrobe"},/obj/random/drinkbottle,/obj/machinery/light{dir = 1},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/sd) -"fqV" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) -"frh" = (/obj/item/weapon/towel{color = "#800080"; name = "purple towel"},/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_10) +"frh" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_10) "frz" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_7_hatch"; locked = 1; name = "Escape Pod Hatch 7"; req_access = list(13)},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod7/station) -"frG" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) +"frG" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_8) "fsM" = (/obj/structure/table/woodentable,/obj/item/device/paicard,/obj/random/action_figure,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "fts" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) "ftD" = (/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/starboard) "fua" = (/obj/structure/table/standard,/obj/machinery/light{dir = 4},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/folder/white_cmo,/obj/item/weapon/pen/multi,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = 32},/turf/simulated/floor/carpet/blue,/area/crew_quarters/heads/sc/cmo/quarters) -"fuC" = (/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Hallway 1"},/obj/structure/sign/christmas/wreath,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aft) +"fuC" = (/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Hallway 1"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aft) "fvh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_10) -"fvy" = (/obj/structure/closet/wardrobe/black,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) -"fvS" = (/obj/structure/event/present,/obj/item/weapon/wrapping_paper,/obj/effect/effect/snow,/turf/simulated/floor/outdoors/snow/snow{outdoors = 0},/area/crew_quarters/cafeteria) +"fvy" = (/obj/structure/closet/wardrobe/black,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "fwR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/bridge) "fxk" = (/obj/structure/table/rack,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/cash,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) -"fxx" = (/obj/machinery/lapvend,/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Dorms 4"; dir = 8},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"fxz" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) -"fyg" = (/obj/structure/curtain/open/shower,/obj/machinery/shower,/obj/structure/window/basic{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_10) +"fxx" = (/obj/machinery/lapvend{dir = 1},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Dorms 4"; dir = 8},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"fxz" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"fyg" = (/obj/structure/curtain/open/shower,/obj/machinery/shower{pixel_y = 16},/obj/structure/window/basic{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_10) "fyw" = (/obj/machinery/alarm{dir = 8; pixel_x = 24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "fzr" = (/obj/random/trash_pile,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "fzQ" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "fAC" = (/obj/structure/table/woodentable,/obj/item/weapon/material/kitchen/utensil/spoon{pixel_x = 2},/obj/item/weapon/material/kitchen/utensil/fork,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"fAM" = (/obj/structure/table/marble,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"fAM" = (/obj/structure/table/marble,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"fBA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "fBR" = (/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "fCn" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "fCW" = (/obj/structure/loot_pile/maint/boxfort,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"fCX" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"fCX" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "fDa" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"fDg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"fDg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/structure/disposalpipe/junction/yjunction{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "fDG" = (/obj/structure/table/woodentable,/obj/random/plushie,/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "fDV" = (/turf/simulated/wall,/area/maintenance/thirddeck/aftstarboard) "fDZ" = (/obj/machinery/atmospherics/valve/shutoff{dir = 1; name = "Atmospherics to Distro automatic shutoff valve"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) -"fED" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/machinery/button/remote/airlock{id = "Dorms3"; name = "Bolt Control"; pixel_x = 26; specialfunctions = 4},/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) +"fED" = (/obj/machinery/button/remote/airlock{id = "Dorms3"; name = "Bolt Control"; pixel_y = -29; specialfunctions = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_5) "fEI" = (/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "fFq" = (/obj/structure/catwalk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "fFB" = (/obj/structure/closet/secure_closet/engineering_chief_wardrobe,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/chief/quarters) "fFF" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) "fFO" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/hallway/primary/thirddeck/starboard) -"fGa" = (/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) +"fGa" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_8) "fGp" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "fGy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/bridge/meeting_room) "fHn" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/wall/r_wall,/area/maintenance/thirddeck/dormsport) "fIG" = (/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/substation/dorms) -"fJD" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) "fJR" = (/obj/machinery/floodlight,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "fKI" = (/obj/machinery/light{dir = 4},/obj/machinery/atm{pixel_x = 30},/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "fLv" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/catwalk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) @@ -587,24 +583,23 @@ "fMV" = (/turf/simulated/wall,/area/maintenance/substation/dorms) "fNB" = (/obj/machinery/light/small{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/airless,/area/hallway/primary/thirddeck/starboard) "fPf" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) -"fPj" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) +"fPj" = (/obj/structure/bed/chair/comfy/black{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_4) "fPz" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/structure/table/standard,/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet/blue,/area/crew_quarters/heads/sc/bs) "fPG" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/random/trash_pile,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "fQG" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/foreportsolar) -"fRd" = (/obj/structure/table/standard,/obj/random/contraband,/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) -"fRB" = (/obj/effect/effect/snow,/turf/simulated/floor/outdoors/snow/snow{outdoors = 0},/area/crew_quarters/cafeteria) +"fRd" = (/obj/structure/table/woodentable,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) "fSx" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"fSz" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"fSz" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/junction{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "fTe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "fTh" = (/obj/machinery/power/breakerbox/activated{RCon_tag = "Command Substation Bypass"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/maintenance/substation/command) "fTw" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "fUa" = (/obj/structure/sign/deck/third,/turf/simulated/wall,/area/hallway/primary/thirddeck/central) -"fUE" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green,/obj/machinery/light_switch{pixel_x = 36; pixel_y = -6},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) +"fUE" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/purpledouble,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) "fUH" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) -"fUM" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/effect/floor_decal/corner/orange/diagonal,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) +"fUM" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/effect/floor_decal/corner/orange/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) "fUN" = (/obj/structure/table/rack{dir = 4},/obj/item/weapon/storage/toolbox/mechanical,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/obj/random/maintenance/medical,/turf/simulated/floor,/area/maintenance/thirddeck/aftstarboard) -"fVJ" = (/obj/machinery/light{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/obj/effect/floor_decal/corner/beige/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"fWg" = (/obj/structure/table/bench/standard,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/effect/floor_decal/corner/blue/bordercorner,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"fVJ" = (/obj/machinery/light{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/obj/effect/floor_decal/corner/beige/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"fWg" = (/obj/structure/table/bench/standard,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/effect/floor_decal/corner/blue/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "fWz" = (/obj/machinery/clonepod,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "fXn" = (/obj/structure/lattice,/obj/item/stack/rods,/turf/space,/area/space) "fYV" = (/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) @@ -612,11 +607,12 @@ "fZd" = (/obj/structure/sign/warning/secure_area,/turf/simulated/wall/r_wall,/area/bridge) "fZu" = (/turf/simulated/shuttle/wall/no_join{base_state = "orange"; icon = 'icons/turf/shuttle_orange.dmi'; icon_state = "orange"},/area/shuttle/escape_pod8/station) "gbg" = (/obj/machinery/computer/rcon{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/yellow/border{dir = 10},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/yellow/bordercorner2{dir = 8},/turf/simulated/floor/tiled/dark,/area/bridge) -"gbu" = (/obj/machinery/vending/loadout/costume,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) -"gbH" = (/obj/structure/closet/wardrobe/white,/obj/machinery/light{dir = 4; layer = 3},/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) -"gct" = (/obj/structure/railing,/obj/structure/railing{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 6},/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/open,/area/crew_quarters/cafeteria) -"gcQ" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 8; pixel_x = -26},/obj/random/contraband,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) -"gdl" = (/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"gbu" = (/obj/machinery/vending/loadout/costume,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"gbH" = (/obj/structure/closet/wardrobe/white,/obj/machinery/light{dir = 4; layer = 3},/obj/effect/floor_decal/corner_steel_grid{dir = 5},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"gct" = (/obj/structure/railing,/obj/structure/railing{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 6},/turf/simulated/open,/area/crew_quarters/cafeteria) +"gcQ" = (/obj/structure/bed/chair/comfy/brown{dir = 1},/obj/machinery/firealarm{dir = 8; pixel_x = -26},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) +"gcW" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_5) +"gdl" = (/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "gdr" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/airless,/area/solar/aftstarboardsolar) "ger" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "gfr" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 4},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) @@ -630,26 +626,25 @@ "gjT" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/reinforced/airless,/area/thirddeck/roof) "gkF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftportcentral) "glb" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled,/area/bridge) -"glw" = (/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = -28},/obj/effect/floor_decal/corner/orange/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"glw" = (/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = -28},/obj/effect/floor_decal/corner/orange/border{dir = 8},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "gnG" = (/obj/structure/closet/crate,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/obj/item/weapon/tool/crowbar,/obj/item/weapon/tool/wirecutters,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/maintenance/thirddeck/aftstarboard) "gnX" = (/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "gpl" = (/obj/structure/table/reinforced,/obj/machinery/light{dir = 8},/obj/machinery/newscaster{pixel_y = -30},/obj/item/weapon/storage/secure/briefcase,/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/blue/border{dir = 10},/turf/simulated/floor/tiled,/area/bridge) "gpm" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/command{id_tag = "comsecquarters"; name = "Secretary Quarters"; req_access = list(19)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/heads/sc/bs) "gpJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/thirddeck/port) -"gqT" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) +"gqT" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_7) "grs" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled,/area/bridge) "grQ" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/starboard) -"gsi" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/effect/floor_decal/corner/orange/diagonal,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) +"gsi" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/effect/floor_decal/corner/orange/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) "gtp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "gud" = (/obj/machinery/door/firedoor/glass,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/effect/wingrille_spawn/reinforced/polarized{id = "bridge_center"},/turf/simulated/floor/plating,/area/bridge) "gun" = (/obj/structure/toilet{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_6) "guY" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/effect/floor_decal/techfloor{dir = 6},/turf/simulated/floor/tiled/techfloor,/area/hallway/primary/thirddeck/central) -"gvC" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) -"gwJ" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/effect/floor_decal/corner/orange/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"gwJ" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/effect/floor_decal/corner/orange/border{dir = 8},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "gxt" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/camera/network/medbay{c_tag = "MED - FA Station Deck 3"; dir = 1},/obj/structure/table/rack,/obj/item/weapon/tool/crowbar,/obj/item/weapon/tool/crowbar,/obj/item/roller,/obj/item/roller,/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/thirddeck) "gyc" = (/obj/effect/floor_decal/industrial/warning/cee{dir = 1},/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/effect/landmark/free_ai_shell,/turf/simulated/floor/tiled/techfloor,/area/ai) "gzf" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/window/westleft{req_access = list(25,28)},/obj/machinery/door/blast/shutters{dir = 4; id = "botanicshop"; layer = 3.3; name = "Botanic Shutters"},/turf/simulated/floor/tiled/kafel_full/green,/area/crew_quarters/coffee_shop) -"gAn" = (/obj/machinery/door/airlock{id_tag = "Dorms8"; name = "Room 8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_10) +"gAn" = (/obj/machinery/door/airlock{id_tag = "Dorms8"; name = "Room 8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_10) "gAU" = (/obj/machinery/papershredder,/obj/machinery/alarm{dir = 8; pixel_x = 24},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "gCu" = (/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/power/solar{id = "forestarboardsolar"; name = "Starboard Solar Array"},/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/solar/forestarboardsolar) "gDe" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/stationgateway) @@ -662,60 +657,59 @@ "gIn" = (/turf/simulated/wall/r_wall,/area/ai/ai_upload) "gIz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled/kafel_full/green,/area/crew_quarters/coffee_shop) "gJe" = (/obj/machinery/power/terminal{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/cable/yellow,/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/light/small,/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) -"gJu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"gJu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "gJE" = (/obj/structure/closet/crate,/obj/item/clothing/mask/gas,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/effect/decal/cleanable/dirt,/obj/random/maintenance/research,/obj/random/maintenance/research,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) "gJN" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless,/area/solar/foreportsolar) "gKj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "gKC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "gLb" = (/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) "gLF" = (/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) -"gLS" = (/obj/machinery/vending/snack,/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"gLS" = (/obj/machinery/vending/snack{dir = 1},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "gMg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/blue/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "gNz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/blue/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"gNI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/corner/orange/border{dir = 5},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"gNI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/corner/orange/border{dir = 5},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "gNN" = (/obj/structure/table/marble,/obj/machinery/newscaster{layer = 3.3; pixel_y = -27},/turf/simulated/floor/tiled/kafel_full/green,/area/crew_quarters/coffee_shop) -"gPm" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/orange,/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) +"gPm" = (/obj/structure/closet/secure_closet/personal/cabinet,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_5) "gPU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"gQa" = (/obj/structure/extinguisher_cabinet{pixel_x = -28},/obj/effect/floor_decal/corner/orange/diagonal,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) +"gQa" = (/obj/structure/extinguisher_cabinet{pixel_x = -28},/obj/effect/floor_decal/corner/orange/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) "gQA" = (/obj/structure/table/steel,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "gRp" = (/obj/machinery/light/small,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"gSd" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) -"gSV" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"gSd" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"gSV" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "gTb" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/thirddeck/roof) "gTo" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) -"gUA" = (/obj/structure/closet/wardrobe/grey,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"gUA" = (/obj/structure/closet/wardrobe/grey,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "gVl" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/thirddeck/aft) "gXD" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "gXS" = (/obj/machinery/gateway{dir = 6},/obj/effect/floor_decal/techfloor/orange,/obj/effect/landmark{name = "JoinLateStationGateway"},/turf/simulated/floor/tiled/techfloor,/area/hallway/primary/thirddeck/stationgateway) -"gXZ" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) +"gXZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "gYi" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/foreportsolar) "hcC" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/bluegrid,/area/ai/ai_upload) -"hcP" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/corner/green/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) -"hdJ" = (/obj/random/junk,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) +"hcP" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/corner/green/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "hdM" = (/obj/structure/ladder,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "hfi" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/sign/warning/high_voltage{pixel_x = -32},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/camera/network/engineering{c_tag = "ENG - Solar Aft Port Access"; dir = 4},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "hfm" = (/obj/structure/table/steel,/obj/item/weapon/folder/blue,/obj/item/device/starcaster_news,/obj/item/device/starcaster_news,/obj/item/device/starcaster_news,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"hgu" = (/obj/machinery/firealarm{dir = 8; pixel_x = -26},/obj/structure/table/standard,/obj/random/pizzabox,/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) -"hgN" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/random/junk,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) +"hgu" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_10) +"hgN" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_14) "hgP" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/junction{dir = 1},/turf/simulated/floor/tiled,/area/bridge) -"hih" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"hih" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "hiF" = (/obj/structure/closet,/obj/item/weapon/storage/backpack,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/random/firstaid,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) -"hjc" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"hjc" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "hkY" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/ai_status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"hln" = (/obj/structure/disposalpipe/segment,/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{dir = 10},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) -"hlO" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) -"hmi" = (/obj/structure/table/woodentable,/obj/item/device/communicator,/obj/item/device/starcaster_news,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftportcentral) +"hln" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/random/trash,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) +"hlO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_10) +"hmi" = (/obj/structure/table/woodentable,/obj/item/device/communicator,/obj/item/device/starcaster_news,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftportcentral) "hml" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/simulated/floor/tiled,/area/bridge) "hni" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/industrial/warning/corner,/obj/structure/sign/warning/high_voltage{pixel_x = 32},/obj/machinery/camera/network/engineering{c_tag = "ENG - Solar Aft Starboard Access"; dir = 8},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "hnm" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "hnK" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_5) "hnP" = (/obj/machinery/computer/message_monitor{dir = 4},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/bluegrid,/area/ai/ai_server_room) -"how" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) -"hoS" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/corner/blue/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"how" = (/obj/structure/table/standard,/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/random/maintenance/engineering,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_4) +"hoS" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/corner/blue/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "hoZ" = (/turf/simulated/wall,/area/crew_quarters/sleep/vistor_room_8) "hpe" = (/obj/structure/bed/chair/janicart,/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "hqg" = (/obj/structure/closet/secure_closet/captains{name = "station director's locker"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/sd) -"hqr" = (/obj/machinery/light,/obj/machinery/newscaster{layer = 3.3; pixel_y = -27},/obj/effect/floor_decal/corner/orange/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"hqr" = (/obj/machinery/light,/obj/machinery/newscaster{layer = 3.3; pixel_y = -27},/obj/effect/floor_decal/corner/orange/border,/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "hsD" = (/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/item/weapon/soap/deluxe,/obj/item/weapon/towel{color = "#FFD700"; name = "gold towel"},/obj/machinery/alarm{pixel_y = 22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/sd) "hsN" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/forestarboardsolar) "hsZ" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/command{id_tag = "cmoquarters"; name = "CMO's Quarters"; req_access = list(40)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/heads/sc/cmo/quarters) @@ -723,45 +717,47 @@ "htr" = (/obj/machinery/portable_atmospherics/powered/scrubber,/obj/machinery/light/small,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "hug" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "hvg" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/command{name = "Station Director's Quarters"; req_access = list(20)},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/sd) -"hwa" = (/obj/structure/table/woodentable,/obj/effect/floor_decal/corner/green/diagonal,/obj/item/seeds/random,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) +"hwa" = (/obj/structure/table/woodentable,/obj/effect/floor_decal/corner/green/diagonal,/obj/item/seeds/random,/obj/item/weapon/tape_roll{pixel_x = 4; pixel_y = 4},/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "hwu" = (/turf/simulated/wall,/area/hallway/primary/thirddeck/central) -"hxb" = (/obj/structure/railing{dir = 4},/obj/machinery/light{dir = 4; layer = 3},/obj/effect/floor_decal/spline/plain{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/open,/area/crew_quarters/cafeteria) +"hxb" = (/obj/structure/railing{dir = 4},/obj/machinery/light{dir = 4; layer = 3},/obj/effect/floor_decal/spline/plain{dir = 4},/turf/simulated/open,/area/crew_quarters/cafeteria) +"hxM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_4) "hyf" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/techfloor,/turf/simulated/floor/tiled/techfloor,/area/hallway/primary/thirddeck/central) "hyP" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/thirddeck/aft) -"hzP" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) -"hzZ" = (/obj/structure/cable/green,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = -24},/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/blue/border{dir = 10},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner2{dir = 8},/obj/structure/flora/pottedplant/xmas,/turf/simulated/floor/tiled,/area/bridge) +"hzP" = (/obj/structure/table/standard,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/random/maintenance/medical,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_11) +"hzZ" = (/obj/structure/cable/green,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = -24},/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/blue/border{dir = 10},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner2{dir = 8},/turf/simulated/floor/tiled,/area/bridge) "hAe" = (/obj/structure/sign/directions/bridge{pixel_y = 10},/obj/structure/sign/directions/science{dir = 1},/obj/structure/sign/directions/medical{dir = 1; pixel_y = -10},/turf/simulated/wall,/area/hallway/primary/thirddeck/central) -"hAo" = (/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) +"hAo" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/random/plushielarge,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) "hAC" = (/obj/structure/railing{dir = 4},/obj/structure/railing,/obj/effect/floor_decal/spline/plain{dir = 6},/turf/simulated/open,/area/crew_quarters/coffee_shop) -"hBe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) -"hBG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-j2"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"hBe" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) +"hBG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-j2"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "hCZ" = (/obj/machinery/ai_slipper{icon_state = "motion0"},/obj/machinery/turretid/stun{check_synth = 1; name = "AI Chamber turret control"; pixel_x = -30; pixel_y = -24},/obj/machinery/flasher{id = "AI"; pixel_x = 24; pixel_y = -25},/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for the AI core maintenance door."; id = "AICore"; name = "AI Maintenance Hatch"; pixel_x = 14; pixel_y = 25; req_access = list(16)},/obj/machinery/camera/xray/command{c_tag = "AI - Core"},/obj/machinery/power/apc/super/critical{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/cyan{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/tiled/techfloor,/area/ai) "hDe" = (/obj/structure/table/rack,/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/clothing/mask/gas,/obj/item/device/flashlight,/obj/item/clothing/glasses/meson,/obj/random/maintenance/cargo,/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/railing{dir = 4},/turf/simulated/floor,/area/maintenance/thirddeck/foreport) "hDi" = (/obj/machinery/ai_status_display{pixel_y = 32},/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/paleblue/border{dir = 1},/obj/machinery/sleep_console{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/thirddeck) "hDw" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) "hFy" = (/obj/structure/catwalk,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "hGT" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_5) -"hHH" = (/obj/structure/table/standard,/obj/random/drinkbottle,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) -"hIh" = (/obj/structure/table/standard,/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_5) +"hHH" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_12) +"hIh" = (/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light,/obj/structure/table/rack/shelf,/obj/random/soap,/obj/item/weapon/towel/random,/obj/item/weapon/towel/random,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_5) "hIz" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "d3_starboard_dorms_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -26; req_access = null},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/airless,/area/maintenance/thirddeck/dormsaft) "hIR" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/greengrid,/area/ai) "hIS" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/forestarboardsolar) "hJj" = (/obj/random/toolbox,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "hJH" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/catwalk,/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) -"hKr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) +"hKr" = (/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) "hLT" = (/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/cable/green,/obj/machinery/power/sensor{name = "Powernet Sensor - Command Subgrid"; name_tag = "Command Subgrid"},/obj/machinery/light/small{dir = 8},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/atmospherics/binary/passive_gate{regulate_mode = 0; unlocked = 1},/turf/simulated/floor,/area/maintenance/substation/command) "hLU" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "d3_starboard_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -26; req_access = null},/turf/simulated/floor/airless,/area/hallway/primary/thirddeck/starboard) "hMh" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hos/quarters) "hMo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/thirddeck) "hML" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/tiled,/area/bridge) "hNh" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "d3_starboard_dorms_pump"},/obj/machinery/airlock_sensor{id_tag = "d3_starboard_dorms_sensor"; pixel_y = 25},/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/airless,/area/maintenance/thirddeck/dormsaft) +"hNR" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/orangedouble,/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) "hOk" = (/turf/simulated/wall,/area/hallway/primary/thirddeck/aft) "hOJ" = (/obj/structure/lattice,/obj/item/stack/rods,/obj/item/stack/rods,/turf/space,/area/space) "hPM" = (/obj/machinery/ai_slipper{icon_state = "motion0"},/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/greengrid,/area/ai) -"hQu" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"hQu" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 8},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "hSU" = (/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "hSX" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/blue/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"hVq" = (/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/effect/floor_decal/corner/orange/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"hVq" = (/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/effect/floor_decal/corner/orange/border,/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "hVB" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/bridge) "hVL" = (/turf/simulated/wall,/area/maintenance/thirddeck/dormsport) "hVW" = (/turf/simulated/shuttle/wall/no_join{base_state = "orange"; icon = 'icons/turf/shuttle_orange.dmi'; icon_state = "orange"},/area/shuttle/escape_pod7/station) @@ -773,58 +769,55 @@ "hZD" = (/obj/structure/flora/ausbushes/brflowers,/obj/machinery/light{dir = 1},/obj/machinery/portable_atmospherics/hydroponics/soil,/turf/simulated/floor/grass,/area/crew_quarters/coffee_shop) "hZZ" = (/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = null; locked = 1; name = "AI Core"; req_access = list(16)},/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/techfloor,/area/ai) "iaG" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) -"iaR" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/orangedouble,/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) -"iaY" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) +"iaR" = (/obj/structure/table/woodentable,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) "iaZ" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/reinforced/airless,/area/thirddeck/roof) "ibq" = (/obj/structure/curtain/open/shower,/obj/machinery/shower{dir = 1},/obj/structure/window/basic{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_3) "ibO" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "icm" = (/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar{id = "foreportsolar"; name = "Port Solar Array"},/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/solar/foreportsolar) "icv" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/thirddeck/stationgateway) "icZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"idA" = (/obj/item/weapon/towel{color = "#3fc0ea"; name = "light blue towel"; pixel_x = 2; pixel_y = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_9) -"idD" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) +"idA" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_9) +"idD" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) "idJ" = (/obj/structure/table/standard,/obj/machinery/light{dir = 4},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/folder/red_hos,/obj/item/weapon/pen/multi,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = 32},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hos/quarters) "ieb" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/blue,/area/crew_quarters/heads/sc/bs) "iel" = (/turf/simulated/floor/tiled/kafel_full/green,/area/crew_quarters/coffee_shop) "ieB" = (/obj/machinery/alarm{pixel_y = 22},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"ieL" = (/obj/machinery/light,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) +"ieL" = (/obj/machinery/light,/obj/structure/dogbed,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) "igz" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled,/area/bridge) -"ihl" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"ihl" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "ihn" = (/obj/structure/table/rack,/obj/item/device/tvcamera,/obj/item/device/tvcamera,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"ihC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/corner/orange/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"ihC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/corner/orange/border{dir = 1},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "iiZ" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "ijt" = (/turf/simulated/wall,/area/maintenance/solars/aftstarboardsolar) "ijw" = (/obj/structure/sign/warning/pods{dir = 8},/turf/simulated/wall,/area/hallway/primary/thirddeck/port) -"iki" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/hologram/holopad,/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) +"iki" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/hologram/holopad,/obj/effect/floor_decal/corner/green/diagonal,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/crew_quarters/coffee_shop) "ilF" = (/turf/simulated/wall,/area/crew_quarters/toilet) "inP" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hor/quarters) "ios" = (/obj/machinery/door/airlock/engineering{name = "SMES Room"; req_one_access = list(11,24)},/obj/machinery/door/firedoor/border_only,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "iqX" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/foreportsolar) "itj" = (/turf/simulated/floor/airless,/area/solar/forestarboardsolar) -"itI" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/random/drinkbottle,/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) -"itZ" = (/obj/item/weapon/towel{color = "#00FFFF"; name = "cyan towel"; pixel_x = 2; pixel_y = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_12) -"iuZ" = (/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-j2"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"itI" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/random/plushie,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_13) +"itZ" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_12) +"iuZ" = (/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-j2"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "ivn" = (/obj/structure/table/reinforced,/obj/machinery/light{dir = 4},/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/machinery/recharger,/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/blue/border{dir = 6},/obj/item/weapon/storage/box/donut,/turf/simulated/floor/tiled,/area/bridge) "ivo" = (/obj/structure/toilet,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_7) -"ivB" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) "ivZ" = (/obj/structure/table/standard,/obj/machinery/light{dir = 8},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/folder/white_rd,/obj/item/weapon/pen/multi,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -32},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hor/quarters) "iwG" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/forestarboardsolar) "ixC" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/heads/sc/cmo/quarters) "ixE" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/portable_atmospherics/powered/scrubber,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "izz" = (/obj/structure/flora/ausbushes/fullgrass,/obj/machinery/light,/obj/machinery/newscaster{layer = 3.3; pixel_y = -27},/turf/simulated/floor/grass,/area/crew_quarters/coffee_shop) -"izO" = (/obj/structure/bed/chair,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"izO" = (/obj/structure/bed/chair,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "iAp" = (/obj/machinery/cryopod/robot/door/gateway,/obj/machinery/gateway{dir = 1; layer = 4; pixel_y = 32},/turf/simulated/floor/tiled/techfloor,/area/hallway/primary/thirddeck/stationgateway) -"iAR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) "iAZ" = (/obj/machinery/smartfridge/drying_rack,/obj/effect/floor_decal/corner/green/border{dir = 6},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "iBe" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/bridge/meeting_room) -"iBf" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) -"iBn" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) +"iBf" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_10) +"iBn" = (/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "iBE" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod_berth{frequency = 1380; id_tag = "escape_pod_8_berth"; pixel_x = 25; pixel_y = 30; tag_door = "escape_pod_8_berth_hatch"},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "iDw" = (/obj/random/trash,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) -"iDQ" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) +"iDQ" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "iEb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftstarboardcentral) "iEn" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/carpet,/area/bridge/meeting_room) -"iEp" = (/obj/machinery/door/airlock{id_tag = "Dorms1"; name = "Room 1"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_3) +"iEp" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "iFh" = (/obj/structure/table/wooden_reinforced,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/folder/blue,/obj/item/device/megaphone,/obj/item/weapon/pen/multi,/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "iFp" = (/obj/random/plushielarge,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "iGW" = (/turf/simulated/wall/r_wall,/area/thirddeck/roof) @@ -834,8 +827,8 @@ "iIX" = (/obj/random/toolbox,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "iJc" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/catwalk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "iJK" = (/obj/machinery/keycard_auth{pixel_y = 24},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) -"iKs" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/light{dir = 1},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) -"iKC" = (/obj/structure/table/standard,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/recharger,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"iKs" = (/obj/machinery/light{dir = 1},/obj/structure/bed/chair/comfy/black{dir = 8},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_4) +"iKC" = (/obj/structure/table/standard,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/recharger,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/item/weapon/tape_roll{pixel_x = 4; pixel_y = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "iMd" = (/obj/structure/reagent_dispensers/water_cooler/full,/turf/simulated/floor/wood,/area/bridge/meeting_room) "iMo" = (/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "iMA" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/obj/effect/floor_decal/industrial/outline/yellow,/obj/structure/sign/warning/airlock{pixel_y = -32},/obj/machinery/portable_atmospherics/canister/air/airlock,/turf/simulated/floor/plating,/area/maintenance/solars/foreportsolar) @@ -843,27 +836,26 @@ "iNf" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/light{dir = 8},/obj/machinery/status_display{layer = 4; pixel_y = 32},/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod{frequency = 1380; id_tag = "escape_pod_7"; pixel_y = -25; tag_door = "escape_pod_7_hatch"},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod7/station) "iNH" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{id_tag = "d3_port_airlock"; pixel_y = -26; req_access = null; tag_airpump = "d3_port_pump"; tag_chamber_sensor = "d3_port_sensor"; tag_exterior_door = "d3_port_outer"; tag_interior_door = "d3_port_inner"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1379; id_tag = "d3_port_pump"},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "iOY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftstarboardcentral) -"iPV" = (/obj/structure/bed/chair/office/dark{dir = 1},/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/structure/cable/green,/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"iRx" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/random/action_figure,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) +"iPV" = (/obj/structure/bed/chair/office/dark{dir = 1},/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/structure/cable/green,/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"iRx" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/alarm{dir = 1; pixel_y = -25},/obj/random/plushielarge,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_12) "iSp" = (/obj/structure/bed/chair/office/dark,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hos/quarters) "iSE" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/stationgateway) "iSK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled/kafel_full/green,/area/crew_quarters/coffee_shop) "iSZ" = (/obj/machinery/door/airlock{name = "Unit 1"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "iTY" = (/obj/structure/table/reinforced,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/folder/white,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/bridge) -"iUN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) +"iUN" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_6) "iVn" = (/obj/structure/sign/warning/airlock{pixel_y = 32},/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "d3_port_pump"},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "iVs" = (/obj/structure/bed/chair,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/bridge) -"iVB" = (/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"iVE" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/machinery/button/remote/airlock{id = "Dorms6"; name = "Bolt Control"; pixel_x = -30; specialfunctions = 4},/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) +"iVE" = (/obj/machinery/button/remote/airlock{id = "Dorms6"; name = "Bolt Control"; pixel_x = -30; specialfunctions = 4},/obj/structure/closet/secure_closet/personal/cabinet,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_8) "iXs" = (/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) "iXE" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "iXT" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/airless,/area/solar/aftportsolar) "iXW" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled/techfloor,/area/ai) "iYf" = (/obj/structure/filingcabinet,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/ai_status_display{pixel_x = 32},/turf/simulated/floor/wood,/area/bridge/meeting_room) -"iYl" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/machinery/door/firedoor/border_only,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"iYl" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "iYC" = (/turf/simulated/wall,/area/crew_quarters/sleep/vistor_room_9) "iZh" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/port) -"jbO" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"jbO" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "jbT" = (/obj/machinery/blackbox_recorder,/turf/simulated/floor/bluegrid,/area/ai/ai_server_room) "jcE" = (/obj/machinery/door/airlock/glass{name = "Botanic Shop"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/coffee_shop) "jcJ" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/door/airlock/glass_external{frequency = 1379; icon_state = "door_locked"; id_tag = "d3_starboard_dorms_inner"; locked = 1; name = "Internal Airlock Access"; req_access = list(13)},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) @@ -871,17 +863,17 @@ "jdl" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/reinforced/airless,/area/thirddeck/roof) "jdp" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "jdE" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"jdR" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/random/junk,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) +"jdR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "jge" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"jgo" = (/obj/structure/table/standard,/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_4) -"jgF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) +"jgo" = (/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/light{dir = 1},/obj/structure/table/rack/shelf,/obj/random/soap,/obj/item/weapon/towel/random,/obj/item/weapon/towel/random,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_4) +"jgF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "jgO" = (/turf/simulated/wall,/area/crew_quarters/sleep/vistor_room_6) "jhg" = (/turf/simulated/floor/reinforced/airless,/area/thirddeck/roof) "jhv" = (/obj/structure/railing{dir = 4},/obj/structure/railing{dir = 8},/obj/structure/railing,/turf/simulated/open,/area/hallway/primary/thirddeck/aft) "jiN" = (/turf/simulated/wall,/area/maintenance/solars/foreportsolar) "jiY" = (/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/tiled/techfloor,/area/ai) "jjg" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/airless,/area/solar/foreportsolar) -"jjl" = (/obj/machinery/door/airlock{id_tag = "Dorms11"; name = "Room 11"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_13) +"jjl" = (/obj/machinery/door/airlock{id_tag = "Dorms11"; name = "Room 11"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_13) "jjB" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "jjF" = (/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "jjK" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/captain,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/sd) @@ -891,59 +883,62 @@ "jkX" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_6) "jme" = (/obj/structure/table/steel,/obj/item/weapon/photo,/obj/item/weapon/photo,/obj/item/weapon/disk/nifsoft/compliance,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "jmf" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/ce,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/button/remote/airlock{id = "cequarters"; name = "Bolt Control"; pixel_y = 30; specialfunctions = 4},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/chief/quarters) -"jnb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) +"jnb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_8) "jnq" = (/turf/simulated/wall/r_wall,/area/bridge) -"jnH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/station_map{dir = 1; pixel_y = -32},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"jnH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/station_map{dir = 1; pixel_y = -32},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "joC" = (/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_11) "jpG" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "jqd" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "jqC" = (/obj/machinery/shower{dir = 1},/obj/structure/curtain/open/shower,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/restroom) "jqO" = (/turf/simulated/wall/r_wall,/area/maintenance/substation/dorms) +"jra" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_11) "jtv" = (/obj/structure/loot_pile/mecha/hoverpod,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "jtL" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) "jtX" = (/obj/machinery/door/airlock/maintenance,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "jub" = (/obj/structure/flora/ausbushes/brflowers,/obj/machinery/light,/obj/machinery/portable_atmospherics/hydroponics/soil,/turf/simulated/floor/grass,/area/crew_quarters/coffee_shop) -"jul" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/table/bench/standard,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"jul" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/table/bench/standard,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "jun" = (/obj/structure/bed/chair/comfy/blue,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/carpet,/area/bridge/meeting_room) "jvU" = (/obj/machinery/camera/network/command{c_tag = "AI - Starboard"; dir = 4},/turf/simulated/floor/reinforced/airless,/area/thirddeck/roof) "jwm" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -36},/obj/structure/cable/cyan,/obj/machinery/ai_status_display{pixel_y = -32},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_cyborg_station) -"jxI" = (/obj/structure/closet/lasertag/blue,/obj/effect/floor_decal/corner/orange/border{dir = 9},/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"jxI" = (/obj/structure/closet/lasertag/blue,/obj/effect/floor_decal/corner/orange/border{dir = 9},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "jxP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "jyS" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_12) "jzA" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) "jAy" = (/obj/random/trash_pile,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) "jAE" = (/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) "jBL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) -"jDg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) +"jDg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_14) "jDo" = (/obj/machinery/door/airlock/glass_external{frequency = 1379; icon_state = "door_locked"; id_tag = "d3_starboard_inner"; locked = 1; name = "Internal Airlock Access"; req_access = list(13)},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/starboard) -"jEj" = (/obj/structure/table/standard,/obj/item/clothing/head/cakehat,/obj/machinery/light,/obj/machinery/vending/wallmed1{name = "NanoMed Wall"; pixel_y = -30},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"jEj" = (/obj/machinery/light,/obj/machinery/vending/wallmed1{name = "NanoMed Wall"; pixel_y = -30},/obj/structure/reagent_dispensers/water_cooler/full{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "jEU" = (/obj/machinery/light/small{dir = 8},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "jFO" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/portable_atmospherics/powered/scrubber,/obj/structure/cable{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) -"jGO" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 1},/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) -"jHY" = (/obj/structure/table/standard,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) +"jGO" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 1},/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"jHD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_4) +"jHY" = (/obj/structure/bed/chair/comfy/black{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) "jIk" = (/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) "jIr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/restroom) "jIs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/tiled,/area/bridge) "jJn" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/bluedouble,/obj/machinery/button/remote/airlock{id = "comsecquarters"; name = "Bolt Control"; pixel_y = 30; specialfunctions = 4},/turf/simulated/floor/carpet/blue,/area/crew_quarters/heads/sc/bs) -"jKo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"jKo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "jLi" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_command{id_tag = "sbridgedoor"; name = "Bridge"; req_access = list(19)},/turf/simulated/floor/tiled/steel_grid,/area/bridge) "jLx" = (/obj/structure/table/wooden_reinforced,/obj/item/weapon/folder/red,/obj/item/weapon/folder/blue{pixel_x = -2; pixel_y = -2},/turf/simulated/floor/carpet,/area/bridge/meeting_room) "jMa" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/chief/quarters) -"jMJ" = (/obj/structure/table/standard,/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_11) +"jMJ" = (/obj/random/soap,/obj/machinery/light{dir = 1},/obj/structure/table/rack/shelf,/obj/random/soap,/obj/item/weapon/towel/random,/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle/wataur,/obj/item/weapon/towel/random,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_11) "jNP" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/station_map{dir = 1; pixel_y = -32},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"jOC" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) +"jOy" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"jOC" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) "jPi" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/command{name = "Conference Room"; req_access = list(19)},/turf/simulated/floor/wood,/area/bridge/meeting_room) "jPA" = (/turf/simulated/wall,/area/crew_quarters/sleep/vistor_room_11) -"jPR" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/light_switch{pixel_x = -36; pixel_y = -6},/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"jPR" = (/obj/structure/closet/secure_closet/personal/cabinet,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_13) "jQx" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) -"jQG" = (/obj/machinery/recharge_station,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"jQG" = (/obj/machinery/recharge_station,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "jQQ" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "jQV" = (/obj/structure/bed/chair/comfy/blue{dir = 4},/turf/simulated/floor/carpet,/area/bridge/meeting_room) "jRX" = (/obj/effect/landmark/start{name = "AI"},/obj/machinery/requests_console{department = "AI"; departmentType = 5; pixel_x = 30; pixel_y = -32},/obj/machinery/newscaster/security_unit{pixel_x = -32; pixel_y = -32},/obj/item/device/radio/intercom/private{dir = 4; pixel_x = 21; pixel_y = -10},/obj/item/device/radio/intercom/custom{dir = 8; pixel_x = -21; pixel_y = -10},/obj/item/device/radio/intercom{broadcasting = 1; name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/light/small,/turf/simulated/floor/greengrid,/area/ai) "jSS" = (/obj/structure/loot_pile/maint/technical,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "jTD" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) "jTN" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) -"jTT" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"jTT" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "jUf" = (/obj/structure/closet/crate,/obj/item/clothing/mask/gas,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/effect/decal/cleanable/dirt,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/random/maintenance/medical,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "jUh" = (/obj/effect/floor_decal/industrial/warning/cee{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{id_tag = "fore_starboard_solar_airlock"; layer = 3.3; pixel_y = -25; req_access = list(13); tag_airpump = "fore_starboard_solar_pump"; tag_chamber_sensor = "fore_starboard_solar_sensor"; tag_exterior_door = "fore_starboard_solar_outer"; tag_interior_door = "fore_starboard_solar_inner"},/obj/machinery/airlock_sensor{id_tag = "fore_starboard_solar_sensor"; layer = 3.3; pixel_y = 25},/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1379; id_tag = "fore_starboard_solar_pump"},/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) "jUj" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) @@ -953,21 +948,22 @@ "jXa" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/substation/dorms) "jXl" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "jXw" = (/turf/simulated/wall/r_wall,/area/crew_quarters/sleep/vistor_room_3) -"jYj" = (/obj/machinery/vending/cigarette,/obj/structure/sign/christmas/lights,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"jYj" = (/obj/machinery/vending/cigarette{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "jZf" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/thirddeck/aftportcentral) -"jZo" = (/obj/item/weapon/towel{color = "#90ee90"; name = "green towel"},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_8) +"jZo" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_8) "jZH" = (/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "d3_starboard_pump"},/obj/machinery/airlock_sensor{id_tag = "d3_starboard_sensor"; pixel_y = 25},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) -"kaL" = (/obj/structure/table/standard,/obj/machinery/alarm{dir = 8; pixel_x = 24},/obj/random/medical/lite,/obj/item/weapon/lipstick/random,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) -"kbB" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = 28},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"kaL" = (/obj/structure/table/woodentable,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) +"kbB" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = 28},/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-j2"},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "kcL" = (/obj/structure/table/standard,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/restroom) "kcR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) +"kcV" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) "kcY" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/kafel_full/green,/area/crew_quarters/coffee_shop) -"ket" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/button/remote/airlock{id = "Dorms5"; name = "Bolt Control"; pixel_y = -30; specialfunctions = 4},/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) +"ket" = (/obj/machinery/button/remote/airlock{id = "Dorms5"; name = "Bolt Control"; pixel_y = -30; specialfunctions = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_7) "kev" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) -"keO" = (/obj/structure/table/standard,/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/random/pizzabox,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) -"kfL" = (/obj/item/weapon/towel{color = "#00FFFF"; name = "cyan towel"; pixel_x = 2; pixel_y = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_3) -"kgG" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) -"kix" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/obj/machinery/firealarm{dir = 1; pixel_y = -26},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/structure/flora/pottedplant/tall{pixel_y = 10},/obj/structure/table/bench/wooden,/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/stationgateway) +"keO" = (/obj/structure/bed/chair/comfy/black{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_12) +"kfL" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_3) +"kgG" = (/obj/structure/bed/chair/comfy/black{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_11) +"kix" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/obj/machinery/firealarm{dir = 1; pixel_y = -26},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/structure/flora/pottedplant/tall{pixel_y = 10},/obj/structure/table/bench/wooden,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/stationgateway) "kiE" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/simulated/shuttle/wall,/area/shuttle/escape_pod8/station) "kiZ" = (/obj/structure/window/reinforced,/obj/effect/floor_decal/carpet,/turf/simulated/floor/holofloor/carpet,/area/crew_quarters/cafeteria) "kjO" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/greengrid,/area/ai) @@ -975,7 +971,7 @@ "kkD" = (/obj/structure/grille,/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4; health = 1e+006},/turf/simulated/shuttle/plating,/area/shuttle/escape_pod8/station) "kle" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "aft_starboard_solar_pump"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light/small{dir = 1},/obj/effect/floor_decal/industrial/warning/cee{dir = 8},/turf/simulated/floor/plating,/area/maintenance/solars/aftstarboardsolar) "klF" = (/obj/structure/table/woodentable,/obj/item/device/tape/random,/obj/item/device/taperecorder,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/sd) -"klU" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) +"klU" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_9) "knK" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) "kol" = (/obj/random/obstruction,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "kos" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) @@ -986,21 +982,21 @@ "kqN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals5,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "krO" = (/obj/random/contraband,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "krT" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) +"krZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) "ktn" = (/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/machinery/door/firedoor/border_only,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "kuz" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) "kvb" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) -"kwc" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"kwc" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "kxk" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/bridge) "kxK" = (/obj/structure/filingcabinet,/obj/machinery/ai_status_display{pixel_x = -32},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "kzd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) "kAk" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/wall/r_wall,/area/crew_quarters/heads/sc/sd) -"kAt" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"kAt" = (/obj/structure/table/standard,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/random/coin,/obj/random/plushie,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) "kAu" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -36},/obj/structure/cable/cyan,/turf/simulated/floor/bluegrid,/area/ai/ai_upload) "kAw" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"kAA" = (/obj/machinery/door/firedoor/glass,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"kAB" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) +"kAA" = (/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/obj/machinery/door/airlock/multi_tile/glass{dir = 2; name = "Cafeteria"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/cafeteria) +"kAB" = (/obj/structure/bed/chair/comfy/black{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_7) "kAS" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/foreportsolar) -"kBu" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "kCd" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "d3_port_dorms_pump"},/obj/machinery/airlock_sensor{id_tag = "d3_port_dorms_sensor"; pixel_y = 25},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "kEc" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "kET" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) @@ -1008,12 +1004,12 @@ "kFv" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/visible/universal,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "kFT" = (/obj/machinery/light{dir = 1},/obj/machinery/ai_status_display{pixel_y = 32},/obj/machinery/pointdefense_control{id_tag = "PD Main"},/turf/simulated/floor/bluegrid,/area/ai/ai_server_room) "kFY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "d3_starboard_dorms_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = 26; req_access = null},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) -"kGh" = (/obj/machinery/computer/arcade,/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Port Civ Bar 2"},/obj/effect/floor_decal/carpet{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/holofloor/carpet,/area/crew_quarters/cafeteria) +"kGh" = (/obj/machinery/computer/arcade,/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Port Civ Bar 2"},/obj/effect/floor_decal/carpet{dir = 1},/turf/simulated/floor/holofloor/carpet,/area/crew_quarters/cafeteria) "kGN" = (/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "kGY" = (/obj/machinery/atmospherics/pipe/tank/air,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "kHj" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp/green,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hos/quarters) "kHW" = (/obj/machinery/atmospherics/pipe/simple/visible/universal,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/structure/closet/crate,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) -"kII" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/white/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"kII" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/white/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "kIS" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "kLr" = (/obj/structure/railing{dir = 4},/turf/simulated/open,/area/hallway/primary/thirddeck/central) "kLY" = (/turf/simulated/wall,/area/crew_quarters/cafeteria) @@ -1021,87 +1017,85 @@ "kME" = (/obj/structure/bed/chair{dir = 1},/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "kMU" = (/obj/structure/catwalk,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "kNg" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/portable_atmospherics/canister/air/airlock,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) -"kNr" = (/obj/machinery/door/airlock{id_tag = "Dorms12"; name = "Room 12"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_14) -"kNF" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/brown/bordercorner,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"kNr" = (/obj/machinery/door/airlock{id_tag = "Dorms12"; name = "Room 12"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_14) +"kNF" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/brown/bordercorner,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "kPf" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/structure/dogbed,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hop/quarters) "kPn" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/aftstarboardsolar) -"kQo" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) -"kRw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) -"kSn" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) +"kQo" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_10) +"kRw" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/structure/disposalpipe/segment,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) +"kSn" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/crew_quarters/coffee_shop) "kTm" = (/obj/effect/landmark{name = "carpspawn"},/turf/space,/area/space) -"kTs" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) -"kTz" = (/obj/structure/table/glass,/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/item/weapon/coin/silver,/obj/random/toy,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"kTs" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_8) +"kTz" = (/obj/structure/table/glass,/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/item/weapon/coin/silver,/obj/random/toy,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "kTC" = (/obj/structure/table/wooden_reinforced,/obj/machinery/photocopier/faxmachine{department = "Captain's Office"},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/item/weapon/paper/dockingcodes{pixel_x = -4; pixel_y = -4},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "kTK" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) "kUR" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) -"kVg" = (/obj/structure/bed/chair/comfy/brown,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green,/obj/machinery/light_switch{pixel_x = -36; pixel_y = -6},/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) +"kVg" = (/obj/structure/bed/chair/comfy/black,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) "kVt" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/corner/green/border{dir = 5},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "kWh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "kWB" = (/obj/random/trash_pile,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) -"kWZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) +"kWZ" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_11) "kXz" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 8; start_pressure = 4559.63},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "kXV" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/wingrille_spawn/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/hallway/primary/thirddeck/port) -"kZf" = (/obj/item/weapon/towel{color = "#FFD700"; name = "gold towel"},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_13) +"kZf" = (/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_13) "kZk" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) -"kZI" = (/obj/structure/curtain/open/shower,/obj/machinery/shower,/obj/structure/window/basic,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_13) +"kZI" = (/obj/structure/curtain/open/shower,/obj/structure/window/basic,/obj/machinery/shower{pixel_y = 16},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_13) "lan" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/item/device/radio/intercom/locked/ai_private{dir = 1; pixel_x = -36; pixel_y = 21},/obj/machinery/flasher{id = "AI"; pixel_x = -22; pixel_y = 24},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_upload) "laA" = (/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/paleblue/border{dir = 1},/obj/structure/closet/secure_closet/medical_wall{name = "defibrillator closet"; pixel_y = 31},/obj/item/device/defib_kit/loaded,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/thirddeck) "laM" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"lbO" = (/obj/structure/table/rack,/obj/item/weapon/towel{color = "#ff0000"; name = "red towel"},/obj/item/weapon/towel{color = "#b5651d"; name = "brown towel"},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_11) +"lbO" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_11) "lcw" = (/obj/structure/lattice,/obj/item/stack/rods,/obj/structure/grille/broken,/turf/space,/area/space) "lcC" = (/obj/machinery/portable_atmospherics/canister/air/airlock,/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/atmospherics/portables_connector{dir = 8},/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) "lcM" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/effect/floor_decal/corner/green/border{dir = 9},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "lcP" = (/obj/structure/sign/warning/pods{dir = 4},/turf/simulated/wall,/area/hallway/primary/thirddeck/starboard) "lds" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/starboard) -"ldu" = (/obj/machinery/button/remote/blast_door{id = "heads_meeting"; name = "Security Shutters"; pixel_x = -26},/obj/structure/flora/pottedplant/xmas,/turf/simulated/floor/wood,/area/bridge/meeting_room) +"ldu" = (/obj/machinery/button/remote/blast_door{id = "heads_meeting"; name = "Security Shutters"; pixel_x = -26},/turf/simulated/floor/wood,/area/bridge/meeting_room) "leg" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/bridge) -"len" = (/obj/effect/floor_decal/corner/orange/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"len" = (/obj/effect/floor_decal/corner/orange/border,/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "leC" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/machinery/ai_status_display{pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "lfv" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/blue/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "lfV" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/computer/timeclock/premade/south,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "lht" = (/obj/effect/shuttle_landmark{base_area = /area/space; base_turf = /turf/space; landmark_tag = "d3_near_w"; name = "Near SC - Deck 3 West"},/turf/space,/area/space) "lib" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "d3_port_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = 26; req_access = null},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "liI" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/machinery/door/airlock/glass_external{frequency = 1379; icon_state = "door_locked"; id_tag = "d3_starboard_dorms_inner"; locked = 1; name = "Internal Airlock Access"; req_access = list(13)},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) -"ljg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) -"ljZ" = (/obj/structure/railing,/obj/effect/floor_decal/spline/plain,/obj/structure/sign/christmas/wreath{dir = 1},/turf/simulated/open,/area/crew_quarters/cafeteria) +"ljg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) "lke" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp/green,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/carpet/blue,/area/crew_quarters/heads/sc/cmo/quarters) "lkh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "lmX" = (/obj/structure/table/wooden_reinforced,/obj/machinery/requests_console{announcementConsole = 1; department = "Station Director's Desk"; departmentType = 5; name = "Station Administrator RC"; pixel_x = 30},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) -"lou" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/blue,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) +"lou" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_11) "loI" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green,/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/blast/regular{density = 0; dir = 8; icon_state = "pdoor0"; id = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/bridge) -"loO" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"lpZ" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) +"loO" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"lpZ" = (/obj/structure/table/standard,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/item/weapon/lipstick/random,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) "lsm" = (/obj/structure/table/reinforced,/obj/item/device/flash,/obj/item/device/flash,/obj/item/device/aicard,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/bridge) "lsr" = (/obj/structure/table/glass,/obj/item/weapon/towel,/obj/item/weapon/towel{color = "#FFD700"; name = "gold towel"},/obj/item/weapon/towel{color = "#3fc0ea"; name = "light blue towel"; pixel_x = 2; pixel_y = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) -"lsG" = (/obj/structure/closet/wardrobe/mixed,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"lsG" = (/obj/structure/closet/wardrobe/mixed,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "lsV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "lsW" = (/obj/structure/bed/chair/comfy/blue{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/carpet,/area/bridge/meeting_room) "luc" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/thirddeck/aft) "lun" = (/obj/structure/table/glass,/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/obj/item/roller,/obj/item/bodybag/cryobag,/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/pill_bottle/spaceacillin,/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/thirddeck) "lwa" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "lwt" = (/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -36; pixel_y = -6},/obj/machinery/button/windowtint{id = "hopquarters"; pixel_x = -36; pixel_y = 6},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hop/quarters) -"lwC" = (/obj/structure/table/standard,/obj/random/medical/pillbottle,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) "lwW" = (/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/power/solar{id = "foreportsolar"; name = "Port Solar Array"},/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/solar/foreportsolar) "lwY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "lzK" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/forestarboardsolar) "lzT" = (/obj/structure/cable/cyan{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/bluegrid,/area/ai/ai_upload) "lzV" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/effect/floor_decal/techfloor{dir = 10},/turf/simulated/floor/tiled/techfloor,/area/hallway/primary/thirddeck/central) -"lzX" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/browndouble,/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) -"lAx" = (/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"lzX" = (/obj/structure/table/bench/wooden,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/item/device/flashlight/lamp/green,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"lAx" = (/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "lBi" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/corner/green/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "lBH" = (/obj/structure/cable/green{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/primary/thirddeck/central) "lCg" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) -"lCh" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/machinery/light_switch{pixel_x = 36; pixel_y = -6},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) +"lCh" = (/obj/machinery/button/remote/airlock{id = "Dorms1"; name = "Bolt Control"; pixel_y = 29; specialfunctions = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) "lCG" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/random/trash,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "lDi" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/kafel_full/green,/area/crew_quarters/coffee_shop) -"lFi" = (/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Station Gateway"; dir = 1},/obj/structure/sign/christmas/wreath{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/stationgateway) +"lFi" = (/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Station Gateway"; dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/stationgateway) "lFA" = (/obj/random/junk,/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) -"lHl" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/white/bordercorner{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) -"lIN" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) +"lHl" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/white/bordercorner{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"lIN" = (/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_14) "lJd" = (/obj/machinery/power/tracker,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/airless,/area/solar/aftportsolar) -"lJn" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) +"lJn" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_9) "lJt" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) -"lJN" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"lJN" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "lLG" = (/obj/structure/bed/chair/office/light{dir = 8},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_server_room) "lMs" = (/obj/structure/table/wooden_reinforced,/obj/machinery/recharger,/turf/simulated/floor/wood,/area/bridge/meeting_room) "lME" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) @@ -1113,45 +1107,45 @@ "lPN" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/bridge) "lQt" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/carpet,/area/bridge/meeting_room) "lRi" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1379; id_tag = "d3_port_dorms_pump"},/obj/machinery/light/small,/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"lRx" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/obj/machinery/light{dir = 1},/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"lRx" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_13) "lRR" = (/obj/structure/table/steel,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "lRS" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/aftstarboardsolar) "lSg" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/thirddeck) "lSN" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/structure/flora/pottedplant/stoutbush,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/central) "lTq" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/structure/catwalk,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) -"lTs" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "lTP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/stationgateway) "lTV" = (/obj/machinery/door/airlock/maintenance,/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment,/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/plating,/area/maintenance/thirddeck/aftport) "lTW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "lUe" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "lUt" = (/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "lUS" = (/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"lVh" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/effect/floor_decal/corner/blue/bordercorner,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"lVh" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/effect/floor_decal/corner/blue/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "lVx" = (/obj/machinery/power/terminal{dir = 4},/obj/structure/cable/yellow,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/table/steel,/obj/item/stack/cable_coil/yellow,/obj/machinery/light/small,/turf/simulated/floor/plating,/area/maintenance/solars/foreportsolar) "lVD" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/kafel_full/green,/area/crew_quarters/coffee_shop) "lVM" = (/obj/structure/catwalk,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"lYa" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"lYa" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "lZq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftportcentral) -"lZW" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/obj/structure/noticeboard{pixel_y = 30},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"lZW" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/obj/structure/noticeboard{pixel_y = 30},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "maB" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) -"maE" = (/obj/structure/table/standard,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/random/junk,/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"maE" = (/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_13) "mbn" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) +"mcQ" = (/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/structure/coatrack,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_4) "mdj" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "mdT" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "mep" = (/turf/simulated/wall/r_wall,/area/maintenance/solars/foreportsolar) "mfh" = (/turf/simulated/shuttle/wall,/area/shuttle/escape_pod8/station) "mfN" = (/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hor/quarters) -"mgf" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/junction{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"mgf" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/junction{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "mgl" = (/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) -"mgv" = (/obj/structure/bed/chair/wood,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"mgv" = (/obj/structure/bed/chair/wood,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "mgF" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "mgH" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/binary/pump/on{dir = 8; target_pressure = 200},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/solars/foreportsolar) "mgL" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/bluegrid,/area/ai/ai_upload) -"mhn" = (/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"mhn" = (/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "mhC" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/paleblue/border{dir = 1},/obj/structure/bed/roller,/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/thirddeck) "miC" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{dir = 1},/obj/machinery/vending/wallmed1{name = "NanoMed Wall"; pixel_y = 30},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "miH" = (/turf/simulated/wall/r_wall,/area/crew_quarters/sleep/vistor_room_8) -"mkb" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/table/steel,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) +"mkb" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/table/steel,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "mlx" = (/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Central Ring 3"; dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "mlL" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/bridge) "mlO" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/obj/structure/cable/green,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/bridge) @@ -1160,8 +1154,8 @@ "mmp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "mmz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "mmB" = (/obj/random/plushielarge,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) -"mmP" = (/obj/structure/table/standard,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/weapon/paper_bin,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/item/device/tape,/obj/item/weapon/pen,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"mno" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/hopdouble,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) +"mmP" = (/obj/structure/table/standard,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/weapon/paper_bin,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/item/weapon/pen,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"mno" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_4) "mnq" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/portable_atmospherics/powered/scrubber,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "moj" = (/obj/structure/ladder,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "mor" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/flora/pottedplant/minitree,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) @@ -1173,11 +1167,10 @@ "mse" = (/obj/machinery/floodlight,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "msq" = (/obj/structure/table/wooden_reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/item/weapon/storage/box/matches,/obj/item/clothing/mask/smokable/cigarette/cigar,/obj/item/weapon/reagent_containers/food/drinks/flask{pixel_x = 8},/obj/random_multi/single_item/captains_spare_id,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/sd) "mtW" = (/obj/machinery/porta_turret/ai_defense,/obj/effect/floor_decal/industrial/outline/grey,/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/ai_status_display{pixel_y = 32},/turf/simulated/floor/tiled/techfloor,/area/ai) -"muv" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/light_switch{pixel_x = -36; pixel_y = -6},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) +"muv" = (/obj/structure/bed/chair/comfy/black{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_12) "mvd" = (/obj/structure/railing,/obj/machinery/light{layer = 3},/obj/effect/floor_decal/spline/plain,/turf/simulated/open,/area/crew_quarters/coffee_shop) "mwK" = (/obj/effect/wingrille_spawn/reinforced/polarized{id = "hopquarters"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/crew_quarters/heads/sc/hop/quarters) -"mwZ" = (/obj/structure/table/standard,/obj/machinery/light_switch{pixel_x = -36; pixel_y = -6},/obj/random/cash,/obj/structure/cable/green,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) -"mxY" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"mwZ" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_6) "myX" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "mzL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "mAS" = (/turf/simulated/wall,/area/maintenance/thirddeck/foreport) @@ -1185,22 +1178,21 @@ "mCr" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/plating,/area/maintenance/solars/foreportsolar) "mCI" = (/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "mCS" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) -"mCV" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/corner/orange/diagonal,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) +"mCV" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/corner/orange/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) "mDE" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "mEk" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "mEG" = (/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "mFG" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/status_display{pixel_y = -32},/turf/simulated/floor/wood,/area/bridge/meeting_room) "mFN" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/engineering{name = "Aft Starboard Solar Access"; req_access = list(); req_one_access = list(11,24)},/turf/simulated/floor/plating,/area/maintenance/solars/aftstarboardsolar) -"mFO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"mFO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "mGm" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) -"mGO" = (/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"mGO" = (/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "mJH" = (/obj/effect/floor_decal/industrial/warning,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) "mKg" = (/obj/structure/sign/directions/engineering{dir = 1; pixel_y = 10},/obj/structure/sign/directions/cargo{dir = 1},/obj/structure/sign/directions/security{dir = 1; pixel_y = -10},/turf/simulated/wall,/area/hallway/primary/thirddeck/central) -"mKs" = (/obj/machinery/washing_machine,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) -"mKv" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) +"mKs" = (/obj/machinery/washing_machine,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "mKx" = (/obj/machinery/alarm{pixel_y = 22},/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) -"mKL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) -"mLT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) +"mKL" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_4) +"mLT" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_9) "mLZ" = (/obj/structure/table/rack,/obj/item/clothing/glasses/sunglasses,/obj/item/clothing/suit/storage/hazardvest,/obj/item/device/radio,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/railing{dir = 8},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "mMv" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/thirddeck/port) "mMR" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/yellow,/obj/item/device/flashlight,/obj/item/device/flashlight{pixel_x = 2; pixel_y = 2},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/yellow/border{dir = 10},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/yellow/bordercorner2{dir = 8},/obj/item/device/radio{pixel_x = -5; pixel_y = -5},/obj/item/device/radio{pixel_x = 5; pixel_y = 5},/turf/simulated/floor/tiled/dark,/area/bridge) @@ -1209,7 +1201,7 @@ "mNM" = (/obj/machinery/computer/borgupload,/turf/simulated/floor/bluegrid,/area/ai/ai_upload) "mOM" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "mQo" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/glass_command{id_tag = "sbridgedoor"; name = "Bridge"; req_access = list(19)},/turf/simulated/floor/tiled/steel_grid,/area/bridge) -"mQs" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_11) +"mQs" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"},/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_11) "mRB" = (/obj/machinery/vending/cola,/obj/machinery/status_display{pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "mSu" = (/obj/structure/cable,/obj/machinery/power/smes/buildable{RCon_tag = "Solar - Fore Starboard"; input_attempt = 1; input_level = 150000; output_level = 100000},/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) "mSM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/stationgateway) @@ -1223,7 +1215,6 @@ "mXD" = (/obj/machinery/atmospherics/valve,/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "mXH" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/bridge) "mXN" = (/obj/structure/table/woodentable,/obj/effect/floor_decal/corner/green/diagonal,/obj/item/device/starcaster_news,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) -"mXZ" = (/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "mYj" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "mZp" = (/obj/machinery/firealarm{dir = 8; pixel_x = -26},/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "mZu" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/tiled/techfloor,/area/ai) @@ -1232,10 +1223,10 @@ "mZV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "naz" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/visible/universal,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "naW" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftstarboardcentral) -"nbo" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/light_switch{pixel_x = 36; pixel_y = -6},/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) +"nbo" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/yellowdouble,/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) "nca" = (/obj/machinery/shower{dir = 1},/obj/structure/curtain/open/shower,/obj/structure/window/basic{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) -"ncI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Hallway 2"; dir = 1},/obj/structure/sign/christmas/wreath{dir = 1},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aft) -"neu" = (/obj/structure/table/glass,/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Stairwell 1"},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/item/device/starcaster_news,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"ncI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Hallway 2"; dir = 1},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aft) +"neu" = (/obj/structure/table/glass,/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Stairwell 1"},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/item/device/starcaster_news,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "nfq" = (/obj/structure/closet/secure_closet/hop2,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hop/quarters) "nfF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/firedoor/glass,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "nfH" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/camera/network/command{c_tag = "COM - Conference Room"; dir = 8},/turf/simulated/floor/wood,/area/bridge/meeting_room) @@ -1244,38 +1235,39 @@ "nhV" = (/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) "nhX" = (/obj/structure/table/marble,/obj/machinery/microwave,/turf/simulated/floor/tiled/kafel_full/green,/area/crew_quarters/coffee_shop) "nil" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aft) -"niI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"niI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "niM" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "njj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/thirddeck) +"njv" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_6) "njS" = (/turf/simulated/wall,/area/crew_quarters/sleep/vistor_room_3) "njY" = (/obj/machinery/atmospherics/binary/pump/on{dir = 8; target_pressure = 200},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) "nkg" = (/obj/structure/table/standard,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/item/device/communicator,/obj/item/weapon/hand_labeler,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/effect/floor_decal/corner/beige/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"nkF" = (/obj/machinery/computer/arcade,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/carpet{dir = 1},/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet{dir = 9},/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/holofloor/carpet,/area/crew_quarters/cafeteria) -"nlq" = (/obj/structure/table/woodentable,/obj/item/weapon/deck/cards,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"nkF" = (/obj/machinery/computer/arcade,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/carpet{dir = 1},/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet{dir = 9},/turf/simulated/floor/holofloor/carpet,/area/crew_quarters/cafeteria) +"nlq" = (/obj/structure/table/woodentable,/obj/item/weapon/deck/cards,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "nlE" = (/obj/structure/closet/crate/internals,/obj/item/weapon/tank/emergency/oxygen/engi,/obj/item/weapon/tank/emergency/oxygen/engi,/obj/item/weapon/tank/emergency/oxygen/double,/obj/random/tank,/obj/random/maintenance/research,/obj/random/maintenance/research,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 5},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "nlI" = (/turf/simulated/wall,/area/crew_quarters/sleep/vistor_room_4) "nmr" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled/techfloor,/area/ai/ai_upload) -"nmB" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"nmB" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "nnz" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/flora/pottedplant/minitree,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "nnG" = (/turf/simulated/wall,/area/hallway/primary/thirddeck/aftdoorm) -"npi" = (/obj/structure/table/standard,/obj/machinery/light,/obj/random/toy,/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) +"npi" = (/obj/machinery/light,/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_6) "nqg" = (/obj/effect/floor_decal/carpet{dir = 8},/turf/simulated/floor/holofloor/carpet,/area/crew_quarters/cafeteria) "nqE" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/bridge) -"nrs" = (/obj/item/weapon/towel{color = "#b5651d"; name = "brown towel"},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_14) +"nrs" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_14) "nrx" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) -"nso" = (/obj/machinery/vending/loadout/loadout_misc,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"nso" = (/obj/machinery/vending/loadout/loadout_misc,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "nst" = (/obj/machinery/atmospherics/pipe/simple/visible/universal,/obj/machinery/meter,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "nuN" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "d3_starboard_dorms_pump"},/obj/structure/sign/warning/airlock{pixel_y = 32},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/airless,/area/maintenance/thirddeck/dormsaft) "nuZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "nvl" = (/turf/simulated/wall/r_wall,/area/crew_quarters/heads/sc/restroom) "nwm" = (/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/power/solar_control{id = "forestarboardsolar"; name = "Fore Starboard Solar Control"},/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) "nwF" = (/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/aftstarboardcentral) -"nwU" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/bench/standard,/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Central Civ Hallway 2"; dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"nwU" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/bench/standard,/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Central Civ Hallway 2"; dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "nxk" = (/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/heads/sc/hop/quarters) "nxo" = (/obj/structure/railing{dir = 1},/obj/structure/railing{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 9},/turf/simulated/open,/area/crew_quarters/coffee_shop) "nxp" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/foreportsolar) -"nxF" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) -"nxY" = (/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"nxF" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"nxY" = (/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "nyp" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "nyt" = (/obj/structure/bed/chair/wood,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "nza" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/meter,/obj/random/mob/mouse,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) @@ -1286,7 +1278,7 @@ "nAt" = (/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "nAZ" = (/obj/effect/floor_decal/corner/orange/border{dir = 4},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "nBd" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless,/area/solar/aftstarboardsolar) -"nCz" = (/obj/structure/window/reinforced,/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet,/obj/effect/floor_decal/carpet{dir = 10},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/holofloor/carpet,/area/crew_quarters/cafeteria) +"nCz" = (/obj/structure/window/reinforced,/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet,/obj/effect/floor_decal/carpet{dir = 10},/turf/simulated/floor/holofloor/carpet,/area/crew_quarters/cafeteria) "nCT" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/command{id_tag = "rdquarters"; name = "Research Director Quarters"; req_access = list(30)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/heads/sc/hor/quarters) "nCY" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Starboard Hallway 2"; dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "nEg" = (/obj/structure/railing{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 8},/turf/simulated/open,/area/crew_quarters/coffee_shop) @@ -1301,12 +1293,12 @@ "nMy" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/tiled,/area/bridge) "nMY" = (/obj/structure/table/wooden_reinforced,/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -32},/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/sd) "nNp" = (/obj/machinery/light{dir = 1},/obj/machinery/ai_status_display{pixel_y = 32},/turf/simulated/floor/wood,/area/bridge/meeting_room) -"nNw" = (/obj/machinery/vending/nifsoft_shop,/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"nNw" = (/obj/machinery/vending/nifsoft_shop,/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "nNW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) "nOK" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) -"nPo" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/random/junk,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) -"nPH" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/white/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) -"nQB" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/alarm{dir = 8; pixel_x = 24},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"nPo" = (/obj/structure/bed/double/padded,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/item/weapon/bedsheet/piratedouble,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) +"nPH" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/white/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"nQB" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/alarm{dir = 8; pixel_x = 24},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "nQZ" = (/obj/structure/cable/cyan,/obj/machinery/power/smes/buildable{charge = 5e+006; input_attempt = 1; input_level = 200000; output_level = 200000},/obj/machinery/flasher{id = "AI"; pixel_y = -24},/turf/simulated/floor/plating,/area/ai) "nRI" = (/obj/structure/table/standard,/obj/item/weapon/aiModule/nanotrasen,/obj/item/weapon/aiModule/reset{pixel_x = 2; pixel_y = 3},/obj/structure/window/reinforced{dir = 8},/obj/machinery/ai_status_display{pixel_y = 32},/turf/simulated/floor/bluegrid,/area/ai/ai_upload) "nSM" = (/obj/structure/cable,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) @@ -1315,17 +1307,17 @@ "nTW" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "nUX" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/table/steel,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/maintenance/substation/dorms) "nVn" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) -"nWD" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/obj/machinery/alarm{dir = 1; pixel_y = -25},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"nWD" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/obj/machinery/alarm{dir = 1; pixel_y = -25},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "nWP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"nWV" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/random/cash,/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"nWV" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/structure/table/standard,/obj/random/contraband,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_13) "nYl" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "d3_starboard_outer"; locked = 1; name = "External Airlock Access"; req_access = list(13)},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/starboard) "nYA" = (/obj/structure/bed/chair/wood{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "nZG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "nZV" = (/obj/effect/landmark{name = "tripai"},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/item/device/radio/intercom/private{dir = 1; pixel_y = 21},/obj/item/device/radio/intercom/custom{pixel_y = -21},/turf/simulated/floor/greengrid,/area/ai) "oaL" = (/obj/effect/floor_decal/corner/orange/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) "obC" = (/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_10) -"obF" = (/obj/structure/bed/chair,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) -"odB" = (/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"obF" = (/obj/structure/bed/chair,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"odB" = (/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "odE" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "oeW" = (/obj/item/weapon/stool/padded,/turf/simulated/floor/tiled/kafel_full/green,/area/crew_quarters/coffee_shop) "oeX" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) @@ -1333,17 +1325,17 @@ "ogk" = (/obj/machinery/message_server,/obj/machinery/camera/network/command{c_tag = "AI - Messaging Server"; dir = 4},/turf/simulated/floor/bluegrid,/area/ai/ai_server_room) "ogm" = (/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/machinery/camera/network/command{c_tag = "COM - Station Director's Office"},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "ohk" = (/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Port Hallway 1"},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) -"ohS" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) "oif" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/techfloor,/area/ai) -"ojq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) -"ojz" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"ojq" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_12) +"ojz" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "ojY" = (/obj/structure/lattice,/obj/structure/cable{d1 = 32; icon_state = "32-1"},/obj/machinery/door/firedoor/border_only,/turf/simulated/open,/area/maintenance/thirddeck/foreport) "okd" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "okt" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "olf" = (/obj/machinery/door/airlock/glass_external{frequency = 1379; icon_state = "door_locked"; id_tag = "d3_port_dorms_inner"; locked = 1; name = "Internal Airlock Access"; req_access = list(13)},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "olt" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/sd) -"oly" = (/obj/machinery/atm{pixel_x = 30},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"omc" = (/obj/structure/railing{dir = 1},/obj/structure/railing{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 5},/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/open,/area/crew_quarters/cafeteria) +"olx" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) +"oly" = (/obj/machinery/atm{pixel_x = 30},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"omc" = (/obj/structure/railing{dir = 1},/obj/structure/railing{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 5},/turf/simulated/open,/area/crew_quarters/cafeteria) "ome" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_12) "omJ" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/airlock/glass_medical{name = "First-Aid Station"; req_access = newlist(); req_one_access = newlist()},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_grid,/area/medical/first_aid_station/thirddeck) "omS" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) @@ -1356,51 +1348,49 @@ "oqC" = (/obj/machinery/portable_atmospherics/powered/scrubber,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) "orc" = (/turf/simulated/wall/r_wall,/area/crew_quarters/toilet) "orY" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/hallway/primary/thirddeck/stationgateway) -"osR" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) +"osR" = (/obj/structure/table/standard,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/random/maintenance/medical,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_6) "oup" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "out" = (/turf/simulated/wall/r_wall,/area/crew_quarters/heads/sc/hos/quarters) "ouE" = (/obj/machinery/atmospherics/binary/pump/on{target_pressure = 200},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "ouV" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/wood,/area/bridge/meeting_room) "ovx" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/reinforced/airless,/area/thirddeck/roof) "owX" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/light_switch{pixel_x = -36; pixel_y = -6},/obj/machinery/button/windowtint{id = "hosquarters"; pixel_x = -36; pixel_y = 6},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hos/quarters) -"oxB" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) -"ozw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) +"oxB" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "ozS" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "ozU" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "oCg" = (/obj/structure/table/standard,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/structure/flora/pottedplant/unusual{name = "Steve"; pixel_y = 15},/obj/item/device/radio/intercom/custom{dir = 8; pixel_x = -21},/obj/item/device/radio/intercom/private{dir = 4; pixel_x = 21},/turf/simulated/floor/greengrid,/area/ai) -"oCp" = (/obj/structure/railing{dir = 1},/obj/effect/floor_decal/spline/plain{dir = 1},/obj/structure/sign/christmas/wreath,/turf/simulated/open,/area/crew_quarters/cafeteria) -"oCE" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) +"oCp" = (/obj/structure/railing{dir = 1},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/simulated/open,/area/crew_quarters/cafeteria) +"oCE" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/rainbowdouble,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) "oDg" = (/obj/effect/floor_decal/industrial/warning,/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/hologram/holopad,/turf/simulated/floor/tiled/techfloor,/area/ai) "oDo" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/engineering{name = "Fore Starboard Solar Access"; req_access = list(); req_one_access = list(11,24)},/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) "oEE" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "oET" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) -"oFV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) "oGh" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/corner/orange/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) -"oGv" = (/obj/machinery/station_map{pixel_y = 32},/obj/structure/sign/christmas/wreath,/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftdoorm) +"oGv" = (/obj/machinery/station_map{pixel_y = 32},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftdoorm) "oGN" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/starboard) "oHf" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "oIl" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) -"oIF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"oIQ" = (/obj/machinery/vending/snack,/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Port Civ Bar 3"; dir = 1},/obj/structure/sign/double/barsign{pixel_y = -32},/obj/structure/sign/christmas/lights,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"oIF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"oIQ" = (/obj/machinery/vending/snack{dir = 1},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Port Civ Bar 3"; dir = 1},/obj/structure/sign/double/barsign{pixel_y = -32},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "oJD" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) -"oKA" = (/obj/machinery/door/airlock{id_tag = "Dorms3"; name = "Room 3"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_5) -"oKM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"oKA" = (/obj/machinery/door/airlock{id_tag = "Dorms2"; name = "Room 2"},/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_4) +"oKM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "oLA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/effect/floor_decal/corner/beige/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "oMy" = (/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) -"oNT" = (/obj/machinery/lapvend,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) -"oNY" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"oNT" = (/obj/machinery/lapvend,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"oNY" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "oOk" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/door/blast/regular{density = 0; dir = 8; icon_state = "pdoor0"; id = "directorblast"; name = "Blast Doors"; opacity = 0},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/heads/sc/sd) "oOx" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/turf/simulated/wall/r_wall,/area/maintenance/thirddeck/dormsport) "oPH" = (/obj/machinery/photocopier,/obj/machinery/button/remote/blast_door{id = "csblast"; name = "Blastdoors"; pixel_y = -24},/turf/simulated/floor/wood,/area/bridge/meeting_room) "oQe" = (/obj/machinery/light,/turf/simulated/floor/wood,/area/bridge/meeting_room) "oQl" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/wall/r_wall,/area/maintenance/thirddeck/dormsaft) "oQy" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) +"oQZ" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) "oRe" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) -"oRH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/obj/machinery/door/firedoor/border_only,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) -"oRO" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) -"oRR" = (/obj/machinery/firealarm{dir = 8; pixel_x = -26},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) +"oRH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"oRO" = (/obj/structure/table/bench/wooden,/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) "oSC" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/central) -"oSL" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/atmospherics/unary/vent_pump/on,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"oSL" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "oSW" = (/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/airless,/area/solar/forestarboardsolar) "oTP" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless,/area/solar/aftportsolar) "oUd" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) @@ -1413,68 +1403,66 @@ "oXg" = (/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar{id = "forestarboardsolar"; name = "Starboard Solar Array"},/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/solar/forestarboardsolar) "oXh" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/heads/sc/hor/quarters) "oXS" = (/obj/structure/bed/chair/office/dark,/obj/effect/landmark/start{name = "Command Secretary"},/turf/simulated/floor/wood,/area/bridge/meeting_room) -"oZi" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) +"oZi" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/random/action_figure,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_10) "oZC" = (/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/port) -"pbl" = (/obj/machinery/door/airlock/glass{name = "Cafeteria"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/cafeteria) -"pdz" = (/obj/structure/railing{dir = 8},/obj/machinery/light{dir = 8; layer = 3},/obj/effect/floor_decal/spline/plain{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/open,/area/crew_quarters/cafeteria) -"pef" = (/obj/structure/bed/chair/comfy/brown{dir = 1},/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) -"peN" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"pbl" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/obj/machinery/door/airlock/multi_tile/glass{dir = 2; name = "Cafeteria"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/cafeteria) +"pdz" = (/obj/structure/railing{dir = 8},/obj/machinery/light{dir = 8; layer = 3},/obj/effect/floor_decal/spline/plain{dir = 8},/turf/simulated/open,/area/crew_quarters/cafeteria) +"pef" = (/obj/structure/bed/chair/comfy/black{dir = 1},/obj/machinery/firealarm{dir = 8; pixel_x = -26},/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) +"peN" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "peV" = (/obj/structure/railing{dir = 4},/obj/structure/railing{dir = 8},/obj/structure/railing,/obj/machinery/light{layer = 3},/turf/simulated/open,/area/hallway/primary/thirddeck/aft) -"pfc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) "pfE" = (/turf/simulated/wall/r_wall,/area/crew_quarters/sleep/vistor_room_4) "pgC" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/port) "pjr" = (/obj/structure/table/marble,/obj/machinery/door/blast/shutters{dir = 4; id = "botanicshop"; layer = 3.3; name = "Botanic Shutters"},/obj/item/weapon/paper_bin,/obj/item/weapon/pen/fountain,/turf/simulated/floor/tiled/kafel_full/green,/area/crew_quarters/coffee_shop) "pkp" = (/obj/machinery/power/solar{id = "foreportsolar"; name = "Port Solar Array"},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/solar/foreportsolar) -"pkC" = (/obj/machinery/vending/cigarette,/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"pkC" = (/obj/machinery/vending/cigarette{dir = 1},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "pld" = (/turf/simulated/wall/r_wall,/area/crew_quarters/sleep/vistor_room_5) -"pmD" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/corner/orange/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"pmD" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/corner/orange/border,/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "pmN" = (/obj/machinery/floodlight,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"pmY" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 1},/obj/structure/sign/directions/evac{dir = 1; pixel_y = 32},/obj/structure/sign/directions/bridge{dir = 1; pixel_y = 26},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"pmY" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 1},/obj/structure/sign/directions/evac{dir = 1; pixel_y = 32},/obj/structure/sign/directions/bridge{dir = 1; pixel_y = 26},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "pob" = (/obj/structure/toilet{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_12) -"poc" = (/obj/machinery/door/airlock{id_tag = "Dorms9"; name = "Room 9"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_9) +"poc" = (/obj/machinery/door/airlock{id_tag = "Dorms9"; name = "Room 9"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_9) "ppf" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/wall/r_wall,/area/maintenance/thirddeck/dormsport) "ppK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "ppV" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/obj/structure/closet/crate,/obj/random/powercell,/obj/random/powercell,/obj/random/powercell,/obj/random/toolbox,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) -"pqT" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/structure/bed/chair/comfy/brown{dir = 8},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) -"pro" = (/obj/machinery/door/airlock{id_tag = "Dorms7"; name = "Room 7"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_11) +"pqT" = (/obj/structure/table/standard,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/disposalpipe/segment{dir = 4},/obj/random/snack,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) +"pro" = (/obj/machinery/door/airlock{id_tag = "Dorms7"; name = "Room 7"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_11) "prA" = (/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-j2"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/bridge) -"prP" = (/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) +"prP" = (/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_8) "prU" = (/obj/structure/noticeboard{pixel_y = 27},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/bridge) -"prX" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/random/plushie,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) +"prX" = (/obj/machinery/light,/obj/machinery/disposal,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_11) "psu" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "ptq" = (/turf/simulated/wall,/area/crew_quarters/sleep/vistor_room_10) "ptV" = (/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "puR" = (/obj/machinery/recharge_station,/obj/machinery/light{dir = 1},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/bluegrid,/area/ai/ai_cyborg_station) -"puU" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) +"puU" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) "pvc" = (/obj/machinery/atmospherics/pipe/tank/air,/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "pvH" = (/obj/structure/closet/firecloset,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) -"pxx" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) +"pxx" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) "pxJ" = (/obj/structure/table/standard,/obj/item/weapon/aiModule/freeform,/obj/item/weapon/aiModule/protectStation{pixel_x = -3; pixel_y = 2},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/bluegrid,/area/ai/ai_upload) +"pzb" = (/obj/structure/table/standard,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/random/maintenance/medical,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_10) "pzk" = (/turf/simulated/wall/r_wall,/area/crew_quarters/heads/sc/hor/quarters) "pzv" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/aftstarboardsolar) -"pzH" = (/obj/structure/closet/wardrobe/pjs,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"pzH" = (/obj/structure/closet/wardrobe/pjs,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "pAt" = (/turf/simulated/wall,/area/maintenance/thirddeck/dormsstarboard) -"pAL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/event/present,/obj/effect/effect/snow,/turf/simulated/floor/outdoors/snow/snow{outdoors = 0},/area/crew_quarters/cafeteria) -"pAS" = (/obj/structure/table/standard,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/random/medical/lite,/obj/item/device/starcaster_news,/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) +"pAS" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/random/action_figure,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_6) "pAT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "pBm" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/window/southleft{name = "Director's Desk Door"; req_access = list(20)},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "pBF" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) "pDc" = (/obj/machinery/papershredder,/turf/simulated/floor/wood,/area/bridge/meeting_room) "pDz" = (/obj/structure/railing{dir = 4},/obj/structure/railing{dir = 8},/turf/simulated/open,/area/hallway/primary/thirddeck/aft) "pDX" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"pES" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/rainbow,/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) -"pEU" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) +"pES" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/red,/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) "pFO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) -"pGp" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"pGp" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/item/clothing/head/cakehat{pixel_y = 11},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "pGF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/table/bench/standard,/obj/effect/floor_decal/corner/green/border{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"pGV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"pGV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/obj/machinery/door/firedoor/multi_tile/glass,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "pGW" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "pHp" = (/turf/simulated/wall,/area/crew_quarters/heads/sc/cmo/quarters) -"pHw" = (/obj/machinery/computer/arcade,/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet{dir = 1},/obj/effect/floor_decal/carpet{dir = 5},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/holofloor/carpet,/area/crew_quarters/cafeteria) -"pHU" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) +"pHw" = (/obj/machinery/computer/arcade,/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet{dir = 1},/obj/effect/floor_decal/carpet{dir = 5},/turf/simulated/floor/holofloor/carpet,/area/crew_quarters/cafeteria) "pIw" = (/turf/simulated/wall,/area/hallway/primary/thirddeck/port) -"pII" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/bench/standard,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"pII" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/bench/standard,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "pJf" = (/obj/structure/curtain/open/shower,/obj/machinery/shower{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_11) +"pKH" = (/obj/random/junk,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) "pLV" = (/obj/effect/floor_decal/borderfloorblack{dir = 1},/obj/effect/floor_decal/industrial/danger{dir = 1},/turf/simulated/floor/tiled/techfloor/grid,/area/hallway/primary/thirddeck/central) "pMP" = (/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_9) "pNe" = (/obj/machinery/alarm{pixel_y = 22},/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) @@ -1485,26 +1473,26 @@ "pSN" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/highsecurity{name = "AI Upload"; req_access = list(16)},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_upload) "pTi" = (/obj/effect/floor_decal/industrial/outline/grey,/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_upload) "pUj" = (/obj/effect/floor_decal/industrial/warning,/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor,/area/ai) -"pUP" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/extinguisher_cabinet{pixel_x = -28},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"pUP" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/extinguisher_cabinet{pixel_x = -28},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "pVY" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/catwalk,/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) -"pWt" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"pWt" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "pWI" = (/obj/item/clothing/under/rank/geneticist,/obj/item/clothing/under/rank/geneticist,/obj/item/clothing/under/rank/geneticist_new,/obj/structure/table/rack,/obj/structure/loot_pile/surface/medicine_cabinet/fresh{pixel_y = 25},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "pWM" = (/obj/machinery/media/jukebox,/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet{dir = 4},/turf/simulated/floor/lino,/area/crew_quarters/cafeteria) "pXm" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftportcentral) "pXp" = (/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "d3_port_pump"},/obj/machinery/airlock_sensor{id_tag = "d3_port_sensor"; pixel_y = 25},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) -"pXC" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/random/toy,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) +"pXC" = (/obj/structure/table/standard,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/item/pizzabox/old,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_14) "pXO" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) -"pYa" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"pYa" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "pYq" = (/obj/machinery/light/small{dir = 1},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/airless,/area/maintenance/thirddeck/dormsport) "qas" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/thirddeck/port) "qaU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) -"qaW" = (/obj/structure/table/woodentable,/obj/effect/floor_decal/corner/green/diagonal,/obj/item/seeds/random,/obj/item/seeds/random,/obj/item/clothing/head/santa,/obj/item/clothing/head/santa,/obj/item/clothing/head/santa,/obj/item/clothing/head/santa,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) -"qbV" = (/obj/machinery/vending/cola,/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"qaW" = (/obj/structure/table/woodentable,/obj/effect/floor_decal/corner/green/diagonal,/obj/item/seeds/random,/obj/item/seeds/random,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) +"qbV" = (/obj/machinery/vending/cola{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "qcT" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/bridge) -"qdj" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"qdj" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "qew" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/meter,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; layer = 3.3; master_tag = "fore_port_solar_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = 25; req_access = list(); req_one_access = list(11,24)},/turf/simulated/floor/plating,/area/maintenance/solars/foreportsolar) "qeY" = (/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) -"qff" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) +"qff" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/orange,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) "qfg" = (/obj/structure/ladder,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) "qjx" = (/obj/structure/curtain/open/shower,/obj/machinery/shower{dir = 1},/obj/structure/window/basic{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_5) "qjG" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) @@ -1514,57 +1502,56 @@ "qld" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "qlf" = (/obj/random/tool,/turf/space,/area/space) "qlG" = (/obj/machinery/seed_storage/garden{dir = 1},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Starboard Civ Botanical 2"; dir = 1},/obj/effect/floor_decal/corner/green/border,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"qmc" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"qmc" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "qmk" = (/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) "qnz" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "d3_port_dorms_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = -26; req_access = null},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/airless,/area/maintenance/thirddeck/dormsport) "qnM" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "d3_starboard_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = 26; req_access = null},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "qnV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "qnZ" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/command{id_tag = "hosquarters"; name = "Head of Security Quarters"; req_access = list(58)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/heads/sc/hos/quarters) "qoi" = (/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/crew_quarters/cafeteria) -"qpl" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) +"qpl" = (/obj/structure/table/bench/wooden,/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) "qpm" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/blue/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "qpo" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/aftportsolar) "qqq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "qrn" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 4},/obj/machinery/camera/network/engineering{c_tag = "SUBS - Command"},/turf/simulated/floor,/area/maintenance/substation/command) -"qrz" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"qru" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/item/clothing/head/pelt/black,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) +"qrz" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "qrB" = (/obj/machinery/light{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "qtx" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftportcentral) "quN" = (/obj/structure/lattice,/obj/structure/cable{d1 = 32; d2 = 2; icon_state = "32-2"},/obj/machinery/door/firedoor/border_only,/turf/simulated/open,/area/maintenance/thirddeck/aftstarboard) "qvK" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "qwl" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/canister/air/airlock,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "qwD" = (/turf/simulated/wall/r_wall,/area/crew_quarters/coffee_shop) -"qwG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/thirddeck/aft) +"qwG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/thirddeck/aft) "qyD" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/requests_console{announcementConsole = 1; department = "Bridge"; departmentType = 5; name = "Bridge RC"; pixel_y = 30},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/bridge) "qzs" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/thirddeck) -"qzv" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/weapon/wrapping_paper,/obj/effect/effect/snow,/turf/simulated/floor/outdoors/snow/snow{outdoors = 0},/area/crew_quarters/cafeteria) -"qzw" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"qzG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"qzw" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"qzG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "qzO" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/structure/sink/kitchen{pixel_y = 28},/turf/simulated/floor/tiled/kafel_full/green,/area/crew_quarters/coffee_shop) "qzT" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "qAc" = (/obj/structure/table/standard,/obj/item/weapon/phone,/obj/machinery/camera/network/command{c_tag = "AI - Cyborg Station"; dir = 8},/obj/machinery/computer/cryopod/robot{pixel_x = 30},/turf/simulated/floor/bluegrid,/area/ai/ai_cyborg_station) "qAk" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/blast/shutters{density = 0; dir = 8; icon_state = "shutter0"; id = "heads_meeting"; name = "Meeting Room Window Shutters"; opacity = 0},/obj/structure/cable/green,/turf/simulated/floor/plating,/area/bridge/meeting_room) "qAK" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/aftstarboardsolar) -"qFy" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Port Civ Bar 1"; dir = 1},/obj/effect/floor_decal/corner/orange/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"qFy" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Port Civ Bar 1"; dir = 1},/obj/effect/floor_decal/corner/orange/border,/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "qGE" = (/obj/structure/closet,/obj/item/weapon/weldingtool,/obj/effect/decal/cleanable/dirt,/obj/random/maintenance/clean,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "qHj" = (/obj/structure/cable/cyan{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/ai_slipper{icon_state = "motion0"},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_upload) -"qHU" = (/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Central Civ Hallway 3"; dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"qHU" = (/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Central Civ Hallway 3"; dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "qIj" = (/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/power/solar{id = "aftportsolar"; name = "Port Solar Array"},/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/solar/aftportsolar) "qKD" = (/obj/effect/floor_decal/industrial/warning,/obj/machinery/hologram/holopad,/obj/structure/cable/cyan{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/cyan{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/turf/simulated/floor/tiled/techfloor,/area/ai/ai_upload_foyer) -"qKU" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"qKU" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "qKZ" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"qLf" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/disposalpipe/junction{dir = 1},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"qLf" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/disposalpipe/junction{dir = 1},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "qLr" = (/obj/item/toy/figure/geneticist,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) -"qLD" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) +"qLD" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_5) "qLF" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"qLH" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/machinery/light,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) +"qLH" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_11) "qLM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/bridge) "qMu" = (/obj/structure/sign/directions/evac{dir = 1},/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/central) "qOy" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/aftstarboardsolar) -"qOC" = (/obj/item/weapon/gift,/obj/effect/effect/snow,/turf/simulated/floor/outdoors/snow/snow{outdoors = 0},/area/crew_quarters/cafeteria) -"qPR" = (/obj/structure/table/standard,/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_12) +"qPR" = (/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light,/obj/structure/table/rack/shelf,/obj/random/soap,/obj/item/weapon/towel/random,/obj/item/weapon/towel/random,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_12) "qQg" = (/obj/structure/catwalk,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) -"qQv" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/white/bordercorner{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) -"qRa" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) +"qQv" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/white/bordercorner{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"qRa" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_8) "qRq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/wall,/area/maintenance/substation/command) "qRF" = (/obj/structure/catwalk,/obj/item/weapon/storage/mre/random,/obj/item/weapon/storage/mre/random,/obj/item/weapon/storage/mre/random,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "qSn" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) @@ -1574,30 +1561,29 @@ "qVX" = (/obj/structure/table/standard,/obj/item/device/t_scanner,/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/storage/box/lights/mixed,/obj/machinery/alarm{dir = 8; pixel_x = 24},/obj/structure/closet/hydrant{pixel_y = -32},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "qWi" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "qWl" = (/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/aftportcentral) -"qXt" = (/obj/effect/floor_decal/techfloor/orange{dir = 8},/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/tiled/techfloor,/area/hallway/primary/thirddeck/stationgateway) +"qXt" = (/obj/effect/floor_decal/techfloor/orange{dir = 8},/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/tiled/techfloor,/area/hallway/primary/thirddeck/stationgateway) "qXC" = (/obj/item/stack/cable_coil/yellow,/turf/simulated/floor/reinforced/airless,/area/thirddeck/roof) "qYh" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/wall/r_wall,/area/maintenance/thirddeck/dormsaft) "qYy" = (/obj/structure/table/standard,/obj/random/soap,/obj/random/soap,/obj/random/soap,/obj/random/soap,/obj/random/soap,/obj/random/soap,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "qYQ" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "qZX" = (/obj/structure/table/glass,/obj/item/toy/eight_ball,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"rbj" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/light_switch{pixel_x = -36; pixel_y = -6},/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) +"rbj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_7) "rbp" = (/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/heads/sc/cmo/quarters) "rbz" = (/obj/structure/closet/firecloset/full,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/security,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "rbF" = (/obj/structure/closet/wardrobe/grey,/obj/item/weapon/storage/backpack,/obj/item/weapon/storage/backpack,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "rcw" = (/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) -"rcR" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/button/remote/airlock{id = "Dorms9"; name = "Bolt Control"; pixel_x = 26; specialfunctions = 4},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) +"rcR" = (/obj/machinery/button/remote/airlock{id = "Dorms9"; name = "Bolt Control"; pixel_x = 26; specialfunctions = 4},/obj/structure/bed/padded,/obj/item/weapon/bedsheet/orange,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) "rcT" = (/obj/effect/decal/cleanable/generic,/obj/item/weapon/implanter,/obj/structure/table/steel,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "rdo" = (/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) -"rdD" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) +"rdD" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_4) "rdO" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/central) "rdY" = (/obj/structure/bed/chair/office/dark{dir = 1},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hor/quarters) "reA" = (/obj/structure/bed/chair/comfy/blue{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet,/area/bridge/meeting_room) -"reP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) "rfg" = (/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/carpet/blue,/area/crew_quarters/heads/sc/cmo/quarters) "rfG" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "rfS" = (/obj/structure/lattice,/obj/structure/grille{density = 0; icon_state = "brokengrille"},/turf/space,/area/space) -"rgj" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/corner/orange/diagonal,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) -"rgO" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"rgj" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/corner/orange/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) +"rgO" = (/obj/structure/table/standard,/obj/item/weapon/lipstick/random,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_13) "rhH" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/hos,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/button/remote/airlock{id = "hosquarters"; name = "Bolt Control"; pixel_y = 30; specialfunctions = 4},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hos/quarters) "rhO" = (/obj/structure/disposalpipe/segment,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "rhR" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "fore_starboard_solar_outer"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) @@ -1606,34 +1592,32 @@ "riN" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "rjS" = (/obj/structure/toilet{dir = 4},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/restroom) "rkU" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) -"rlC" = (/obj/structure/curtain/open/shower,/obj/machinery/shower,/obj/structure/window/basic,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_4) +"rlC" = (/obj/structure/curtain/open/shower,/obj/structure/window/basic,/obj/machinery/shower{pixel_y = 16},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_4) "rng" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_4) "rnG" = (/obj/structure/disposalpipe/segment,/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,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) -"roG" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) +"roG" = (/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) "rpc" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "rpL" = (/obj/structure/displaycase,/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) -"rqT" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"rqT" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Dorms 2"; dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "rrK" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "rsN" = (/obj/structure/bed/chair/office/dark{dir = 1},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hop/quarters) -"rth" = (/obj/structure/table/standard,/obj/item/device/communicator,/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"rth" = (/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/reagent_dispensers/water_cooler/full,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "rtM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/decal/cleanable/greenglow,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) -"rtU" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) +"rtU" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/crew_quarters/coffee_shop) "rul" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "d3_port_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = -26; req_access = null},/turf/simulated/floor/airless,/area/hallway/primary/thirddeck/port) "rvI" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/turf/simulated/floor/grass,/area/crew_quarters/coffee_shop) "rwO" = (/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/turretid/stun{control_area = "\improper AI Upload Chamber"; name = "AI Upload turret control"; pixel_y = 24},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/light_switch{name = "light switch "; pixel_x = 36},/obj/structure/cable/cyan{d2 = 2; icon_state = "0-2"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/flasher{id = "AIFoyer"; pixel_y = 36},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_upload_foyer) "rxj" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "rxM" = (/obj/item/stack/cable_coil/yellow,/obj/random/trash_pile,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "ryq" = (/obj/structure/extinguisher_cabinet{pixel_x = -28},/turf/simulated/floor/bluegrid,/area/ai/ai_upload) -"ryK" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/machinery/button/remote/airlock{id = "Dorms12"; name = "Bolt Control"; pixel_x = -30; specialfunctions = 4},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) -"rzo" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/machinery/atmospherics/unary/vent_pump/on,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) -"rAl" = (/obj/item/weapon/wrapping_paper,/obj/effect/effect/snow,/turf/simulated/floor/outdoors/snow/snow{outdoors = 0},/area/crew_quarters/cafeteria) -"rBe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) +"ryK" = (/obj/machinery/button/remote/airlock{id = "Dorms12"; name = "Bolt Control"; pixel_x = -30; specialfunctions = 4},/obj/structure/closet/secure_closet/personal/cabinet,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_14) +"rzo" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "rBG" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/corner/green/diagonal,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "rBQ" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp/green,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hop/quarters) "rCL" = (/obj/structure/toilet{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/sd) "rDw" = (/turf/simulated/floor/bluegrid,/area/ai/ai_upload) -"rDU" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/machinery/button/remote/airlock{id = "Dorms10"; name = "Bolt Control"; pixel_x = -30; specialfunctions = 4},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) -"rEu" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/white/bordercorner{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 4},/obj/structure/sign/directions/evac{dir = 1; pixel_y = 32},/obj/structure/sign/directions/bridge{dir = 1; pixel_y = 26},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"rDU" = (/obj/machinery/button/remote/airlock{id = "Dorms10"; name = "Bolt Control"; pixel_x = -30; specialfunctions = 4},/obj/structure/closet/secure_closet/personal/cabinet,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_12) +"rEu" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/white/bordercorner{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 4},/obj/structure/sign/directions/evac{dir = 1; pixel_y = 32},/obj/structure/sign/directions/bridge{dir = 1; pixel_y = 26},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "rEB" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled/kafel_full/green,/area/crew_quarters/coffee_shop) "rGf" = (/obj/structure/toilet,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_10) "rGv" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/blue/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) @@ -1646,7 +1630,7 @@ "rJt" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/effect/floor_decal/corner/green/border{dir = 8},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "rKc" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/command{id_tag = "captaindoor"; name = "Station Director's Office"; req_access = list(20)},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/heads/sc/sd) "rLC" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"rMh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/bench/standard,/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"rMh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/bench/standard,/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "rMA" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftstarboardcentral) "rNn" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/starboard) "rNC" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "aft_starboard_solar_outer"; locked = 1; name = "Engineering External Access"; req_access = list(11,13)},/turf/simulated/floor/plating,/area/maintenance/solars/aftstarboardsolar) @@ -1656,65 +1640,67 @@ "rQi" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "rQj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "rQm" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) -"rQK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) +"rQK" = (/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) "rSm" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "rTm" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/sd) -"rTI" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/hosdouble,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) +"rTI" = (/obj/structure/table/standard,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/crunch,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_11) "rUr" = (/obj/machinery/bookbinder,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "rUw" = (/obj/machinery/atmospherics/binary/pump/on{dir = 1; name = "Air to Supply"; target_pressure = 301.325},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "rVl" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "rWM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock{name = "Bathroom"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/heads/sc/sd) -"rXX" = (/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Dorms 6"},/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) -"rYj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) +"rXX" = (/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Dorms 6"},/obj/effect/floor_decal/corner_steel_grid{dir = 10},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"rYj" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_14) "rYu" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/primary/thirddeck/stationgateway) "rYR" = (/turf/simulated/wall/durasteel,/area/ai) "rZl" = (/obj/structure/toilet{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_13) -"saq" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/structure/sign/christmas/lights,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"sbH" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/bench/standard,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"saq" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"saz" = (/obj/random/junk,/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) +"sbH" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/bench/standard,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "scA" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/blast/regular{density = 0; dir = 8; icon_state = "pdoor0"; id = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/bridge) "sdS" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/wall/r_wall,/area/maintenance/thirddeck/dormsaft) "sev" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/bridge) "seR" = (/obj/structure/table/wooden_reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet,/area/bridge/meeting_room) "sgm" = (/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/chief/quarters) "sgq" = (/obj/effect/decal/cleanable/greenglow,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) -"sha" = (/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"sha" = (/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "shU" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) +"shV" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/structure/coatrack,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_11) "siv" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/cyan{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_server_room) "sjb" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "sjL" = (/turf/simulated/wall/r_wall,/area/crew_quarters/sleep/vistor_room_14) "ska" = (/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/red/border{dir = 6},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 6},/obj/item/modular_computer/console/preset/security{dir = 1},/turf/simulated/floor/tiled,/area/bridge) "skO" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/machinery/power/smes/buildable{RCon_tag = "Solar - Aft Starboard"; input_attempt = 1; input_level = 150000; output_level = 100000},/turf/simulated/floor/plating,/area/maintenance/solars/aftstarboardsolar) -"slk" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"slk" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "smc" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/bridge) "smo" = (/turf/simulated/floor/greengrid,/area/ai) "smy" = (/obj/structure/table/steel,/obj/random/tech_supply,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "smF" = (/obj/machinery/power/tracker,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/airless,/area/solar/foreportsolar) "soQ" = (/obj/structure/extinguisher_cabinet{pixel_x = -28},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) -"soZ" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/bed/chair{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"soZ" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/bed/chair{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "spk" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/cyan{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/landmark/start{name = "Cyborg"},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_cyborg_station) "spz" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/stationgateway) "sqj" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "sqk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "sqw" = (/turf/simulated/wall,/area/crew_quarters/coffee_shop) "sra" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/airless,/area/solar/foreportsolar) -"srV" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"srV" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "ssq" = (/obj/structure/grille,/turf/simulated/floor/reinforced/airless,/area/thirddeck/roof) "ssC" = (/obj/structure/table/reinforced,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/folder/red,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/red/border,/turf/simulated/floor/tiled,/area/bridge) "stg" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_14) "sud" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "csblast"; name = "Blast Doors"; opacity = 0},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/bridge/meeting_room) -"suw" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/brown/bordercorner,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"suw" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/brown/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "suQ" = (/obj/machinery/ai_slipper{icon_state = "motion0"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/greengrid,/area/ai) "svm" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "svw" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/restroom) -"svN" = (/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/structure/flora/pottedplant/xmas,/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) +"svN" = (/obj/structure/extinguisher_cabinet{pixel_y = -30},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "sxg" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "sxn" = (/obj/structure/table/rack{dir = 4},/obj/item/clothing/mask/gas,/obj/random/maintenance/engineering,/obj/random/maintenance/clean,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "sxw" = (/obj/structure/table/woodentable,/obj/machinery/keycard_auth{pixel_y = 24},/obj/item/weapon/storage/box/cups,/turf/simulated/floor/wood,/area/bridge/meeting_room) "szN" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) -"sAa" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/corner/blue/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"sAa" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/corner/blue/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "sAc" = (/obj/random/trash_pile,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) -"sAL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/corner/blue/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) -"sAM" = (/obj/structure/closet/wardrobe/suit,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"sAL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/corner/blue/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"sAM" = (/obj/structure/closet/wardrobe/suit,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "sBY" = (/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/foreportsolar) "sEf" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/catwalk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "sEn" = (/obj/machinery/power/tracker,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/airless,/area/solar/forestarboardsolar) @@ -1723,22 +1709,23 @@ "sGT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/effect/floor_decal/corner/beige/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "sGX" = (/obj/machinery/computer/communications,/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "sHv" = (/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/plating,/area/maintenance/substation/dorms) +"sHN" = (/obj/structure/table/standard,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/random/junk,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_4) "sIj" = (/obj/structure/toilet{dir = 1},/obj/machinery/light/small,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) -"sIp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/flora/pottedplant/xmas,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/sd) +"sIp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/sd) "sIA" = (/obj/structure/salvageable/console_broken_os,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "sIL" = (/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "sJA" = (/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aft) -"sJF" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"sJF" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "sJM" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Central Ring 2"; dir = 8},/obj/machinery/ai_status_display{pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"sJU" = (/obj/structure/table/woodentable,/obj/effect/floor_decal/corner/green/diagonal,/obj/item/device/tape,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) +"sJU" = (/obj/structure/table/woodentable,/obj/effect/floor_decal/corner/green/diagonal,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "sKt" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/catwalk,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"sLg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/flora/pottedplant/xmas,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) +"sLg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "sLp" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/airlock/command{name = "Conference Room"; req_access = list(19)},/turf/simulated/floor/tiled/steel_grid,/area/bridge/meeting_room) "sLJ" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/structure/flora/pottedplant/fern,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/central) -"sLM" = (/obj/structure/table/standard,/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/machinery/light,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_10) +"sLM" = (/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/machinery/light,/obj/structure/table/rack/shelf,/obj/random/soap,/obj/item/weapon/towel/random,/obj/item/weapon/towel/random,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_10) "sLU" = (/obj/item/clothing/glasses/meson,/obj/structure/closet/firecloset,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "sLV" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/random/toolbox,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"sMl" = (/obj/structure/closet/wardrobe/xenos,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"sMl" = (/obj/structure/closet/wardrobe/xenos,/obj/effect/floor_decal/corner_steel_grid{dir = 5},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "sMo" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/simulated/floor/tiled,/area/bridge) "sMO" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock{name = "Botanic Shop"; req_one_access = list(25,28)},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/coffee_shop) "sNB" = (/turf/simulated/wall/r_wall,/area/maintenance/thirddeck/dormsport) @@ -1746,17 +1733,18 @@ "sOH" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/port) "sOI" = (/obj/structure/fireaxecabinet{pixel_y = 32},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/bridge) "sQc" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/bridge) +"sRM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) "sSh" = (/turf/simulated/wall,/area/hallway/primary/thirddeck/starboard) "sSm" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "sSn" = (/obj/random/trash_pile,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "sTq" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/starboard) -"sTu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) +"sTu" = (/obj/structure/bed/chair/comfy/black{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_6) "sUf" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) -"sUk" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) -"sUF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"sUk" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"sUF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/obj/machinery/door/firedoor/multi_tile/glass,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "sUG" = (/obj/random/obstruction,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "sUX" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/highsecurity{name = "AI Upload Access"; req_access = list(16)},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_upload_foyer) -"sVR" = (/obj/machinery/firealarm{dir = 8; pixel_x = -26},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"sVR" = (/obj/machinery/firealarm{dir = 8; pixel_x = -26},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "sVX" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "sYk" = (/obj/machinery/door/firedoor/border_only,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/engineering{name = "Command Substation"; req_one_access = list(11,19,24)},/obj/machinery/atmospherics/pipe/simple/hidden/universal,/turf/simulated/floor,/area/maintenance/substation/command) "sYV" = (/obj/item/frame,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) @@ -1773,58 +1761,58 @@ "ted" = (/obj/random/trash,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "tew" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/corner/orange/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/cafeteria) "tfk" = (/turf/simulated/shuttle/wall,/area/shuttle/escape_pod7/station) -"tfQ" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) -"tgc" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) +"tfQ" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"tgc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) "tgj" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; layer = 3.3; master_tag = "fore_starboard_solar_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access = list(); req_one_access = list(11,24)},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/forestarboardsolar) -"tgt" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/brown/bordercorner,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"thM" = (/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Central Civ Hallway 4"},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"tgt" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/brown/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"thM" = (/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Central Civ Hallway 4"},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "thN" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/door/blast/regular{density = 0; dir = 8; icon_state = "pdoor0"; id = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/obj/effect/wingrille_spawn/reinforced/polarized{id = "bridge_center"},/turf/simulated/floor/plating,/area/bridge) "thO" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/wall/r_wall,/area/maintenance/substation/command) "tiC" = (/obj/machinery/camera/network/command{c_tag = "AI - Fore"; dir = 1},/turf/simulated/floor/reinforced/airless,/area/thirddeck/roof) -"tja" = (/obj/machinery/door/airlock{id_tag = "Dorms5"; name = "Room 5"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_7) -"tjK" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/reinforced/airless,/area/hallway/primary/thirddeck/aftportcentral) +"tja" = (/obj/machinery/door/airlock{id_tag = "Dorms5"; name = "Room 5"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_7) "tjZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "tkI" = (/obj/structure/table/wooden_reinforced,/obj/machinery/computer/skills,/obj/machinery/status_display{pixel_y = -32},/turf/simulated/floor/wood,/area/bridge/meeting_room) "tkJ" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Central Ring 4"; dir = 4},/obj/machinery/status_display{pixel_x = -32},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "tle" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "tls" = (/obj/effect/floor_decal/corner/green/diagonal,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = 32},/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) -"tlM" = (/obj/machinery/vending/loadout/gadget,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"tlM" = (/obj/machinery/vending/loadout/gadget,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "tno" = (/turf/simulated/wall,/area/crew_quarters/sleep/vistor_room_5) "tnz" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) "toG" = (/turf/simulated/wall/r_wall,/area/ai/ai_server_room) "tpf" = (/obj/structure/table/wooden_reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen/blue{pixel_y = -5},/obj/item/weapon/pen/red{pixel_y = 5},/obj/item/weapon/pen,/turf/simulated/floor/wood,/area/bridge/meeting_room) +"tqh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) "ttw" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_4) -"ttO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) "tuU" = (/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) "tuV" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "tvm" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/highsecurity{name = "Messaging Server"; req_access = list(16)},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_server_room) -"tvp" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/structure/bed/chair/wood{dir = 1},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) +"tvp" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/structure/bed/chair/wood{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "twr" = (/obj/machinery/gateway,/obj/effect/floor_decal/techfloor/orange,/obj/effect/landmark{name = "JoinLateStationGateway"},/turf/simulated/floor/tiled/techfloor,/area/hallway/primary/thirddeck/stationgateway) -"twu" = (/obj/structure/closet/lasertag/red,/obj/effect/floor_decal/corner/orange/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"twu" = (/obj/structure/closet/lasertag/red,/obj/effect/floor_decal/corner/orange/border{dir = 8},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) "twv" = (/obj/machinery/alarm{pixel_y = 22},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) -"twY" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"twY" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_13) "txl" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Port Hallway 2"; dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "txm" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/portable_atmospherics/canister/air/airlock,/obj/structure/sign/warning/airlock{pixel_y = 32},/turf/simulated/floor/plating,/area/maintenance/solars/aftstarboardsolar) "tyt" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/cee{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "aft_port_solar_pump"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) "tzt" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"tAb" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/effect/floor_decal/corner/blue/bordercorner,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) -"tAX" = (/obj/machinery/vending/loadout/overwear,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"tAb" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/effect/floor_decal/corner/blue/bordercorner,/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"tAX" = (/obj/machinery/vending/loadout/overwear,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "tBw" = (/obj/machinery/power/tracker,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/airless,/area/solar/aftstarboardsolar) -"tCJ" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/machinery/light{dir = 1},/obj/structure/table/standard,/obj/random/plushie,/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) +"tCJ" = (/obj/machinery/light{dir = 1},/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_10) "tCS" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/turf/simulated/wall/r_wall,/area/maintenance/thirddeck/dormsaft) -"tDd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) +"tDd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "tDp" = (/turf/simulated/wall/r_wall,/area/crew_quarters/sleep/vistor_room_12) -"tEm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"tEm" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) "tEC" = (/obj/machinery/portable_atmospherics/powered/scrubber,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/substation/dorms) +"tFI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/structure/disposalpipe/junction{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "tGp" = (/obj/machinery/vending/wallmed1{name = "NanoMed Wall"; pixel_y = -30},/obj/structure/table/rack,/obj/item/weapon/storage/toolbox/emergency,/obj/random/medical/lite,/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/thirddeck) "tGU" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/restroom) "tHb" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/bridge) "tHX" = (/obj/structure/toilet{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_4) -"tId" = (/obj/structure/bed/chair/wood,/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "tIi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) -"tIF" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"tIF" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"tIP" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) "tJG" = (/obj/machinery/light{dir = 1},/obj/item/modular_computer/console/preset/command,/obj/random_multi/single_item/captains_spare_id,/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) -"tJT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/extinguisher_cabinet{pixel_x = -28},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"tJT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/extinguisher_cabinet{pixel_x = -28},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "tKA" = (/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "tKC" = (/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "tMW" = (/obj/structure/flora/ausbushes/brflowers,/turf/simulated/floor/grass,/area/crew_quarters/coffee_shop) @@ -1832,17 +1820,17 @@ "tOS" = (/obj/machinery/atmospherics/pipe/simple/hidden/cyan{dir = 9},/obj/machinery/meter,/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "tOU" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/highsecurity{name = "Synthetic Storage Access"; req_access = list(16)},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_cyborg_station) "tPm" = (/obj/effect/floor_decal/industrial/warning,/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) -"tQk" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) +"tQk" = (/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) "tQo" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/bridge/meeting_room) -"tQW" = (/obj/structure/table/standard,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) +"tQW" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/random/snack,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_7) "tRd" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "tRx" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor/bluegrid,/area/ai/ai_upload) "tSB" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_upload_foyer) "tSO" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_9) -"tTo" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/bed/padded,/obj/item/weapon/bedsheet/orange,/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) +"tTo" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/item/pizzavoucher,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_5) "tTr" = (/obj/structure/table/standard,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/weapon/folder/blue,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/item/device/starcaster_news,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "tUB" = (/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/stationgateway) -"tUY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"tUY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/obj/machinery/door/firedoor/multi_tile/glass,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "tVe" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "tVT" = (/obj/structure/table/wooden_reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/carpet,/area/bridge/meeting_room) "tWe" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) @@ -1859,7 +1847,7 @@ "ubl" = (/obj/effect/wingrille_spawn/reinforced/polarized{id = "bsquarters"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/crew_quarters/heads/sc/bs) "ucr" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/yellow/border{dir = 6},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/yellow/bordercorner2{dir = 6},/obj/machinery/computer/atmos_alert{dir = 1},/turf/simulated/floor/tiled/dark,/area/bridge) "uct" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/visible/universal,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"ucA" = (/obj/machinery/door/firedoor/glass,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/brown/bordercorner,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"ucA" = (/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/cafeteria) "udT" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) "uee" = (/obj/structure/catwalk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "uen" = (/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/airless,/area/solar/forestarboardsolar) @@ -1871,43 +1859,41 @@ "uhf" = (/turf/simulated/floor/grass,/area/crew_quarters/coffee_shop) "uhv" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/reinforced/airless,/area/thirddeck/roof) "uiC" = (/obj/machinery/computer/communications{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/bridge) -"uiK" = (/obj/machinery/computer/arcade,/obj/effect/floor_decal/carpet{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/holofloor/carpet,/area/crew_quarters/cafeteria) +"uiK" = (/obj/machinery/computer/arcade,/obj/effect/floor_decal/carpet{dir = 1},/turf/simulated/floor/holofloor/carpet,/area/crew_quarters/cafeteria) "uiU" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/portable_atmospherics/canister/air/airlock,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) "uju" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"ujw" = (/obj/machinery/door/firedoor/glass,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/obj/effect/floor_decal/corner/beige/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"ujw" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) "ujU" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "uks" = (/obj/structure/catwalk,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "ull" = (/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Starboard Civ Botanical 3"; dir = 8},/obj/machinery/vending/dinnerware{dir = 8; pixel_x = 6},/turf/simulated/floor/tiled/kafel_full/green,/area/crew_quarters/coffee_shop) "umm" = (/turf/simulated/wall/r_wall,/area/crew_quarters/sleep/vistor_room_13) "ump" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/blue/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"umq" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/reddouble,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) +"umq" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) "unk" = (/obj/structure/salvageable/server_os,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "uob" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/corner/green/border{dir = 9},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "uoZ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/obj/effect/floor_decal/corner/beige/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "upp" = (/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/aftstarboardsolar) "upr" = (/obj/structure/bed/chair/office/dark,/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/blue,/area/crew_quarters/heads/sc/bs) "upJ" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/blue/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"urO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/flora/tree/pine/xmas/presents,/obj/effect/effect/snow,/turf/simulated/floor/outdoors/snow/snow{outdoors = 0},/area/crew_quarters/cafeteria) "urV" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) "usi" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/greengrid,/area/ai) "usl" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/carpet/blue,/area/crew_quarters/heads/sc/cmo/quarters) "usq" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/light_switch{pixel_x = 36; pixel_y = -6},/obj/machinery/button/windowtint{id = "rdquarters"; pixel_x = 36; pixel_y = 6},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hor/quarters) "utt" = (/obj/structure/catwalk,/obj/machinery/alarm{dir = 8; pixel_x = 24},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) -"uuq" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/thirddeck/aft) +"uuq" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/obj/machinery/door/airlock/multi_tile/glass{dir = 2; name = "Central Access"},/turf/simulated/floor/tiled/steel_grid,/area/hallway/primary/thirddeck/aft) "uwA" = (/obj/machinery/firealarm{pixel_y = 24},/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/paleblue/border{dir = 1},/obj/machinery/sleeper{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/first_aid_station/thirddeck) -"uxL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"uxL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "uyY" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hos/quarters) -"uzr" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"uzH" = (/obj/item/toy/plushie/box,/obj/effect/effect/snow,/turf/simulated/floor/outdoors/snow/snow{outdoors = 0},/area/crew_quarters/cafeteria) -"uAl" = (/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/effect/floor_decal/corner/orange/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) -"uAL" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/flora/pottedplant/drooping{pixel_x = 1; pixel_y = 10},/obj/structure/table/bench/wooden,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/stationgateway) +"uzH" = (/turf/simulated/floor/tiled/eris/steel/bar_dance,/area/crew_quarters/cafeteria) +"uAl" = (/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/effect/floor_decal/corner/orange/border{dir = 1},/turf/simulated/floor/tiled/dark,/area/crew_quarters/cafeteria) +"uAL" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/flora/pottedplant/drooping{pixel_x = 1; pixel_y = 10},/obj/structure/table/bench/wooden,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/stationgateway) "uBy" = (/turf/simulated/wall,/area/crew_quarters/sleep/vistor_room_13) "uCj" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/light/small{dir = 8},/obj/structure/catwalk,/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) "uEb" = (/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "uEW" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/foreportsolar) "uFi" = (/obj/machinery/computer/power_monitor{dir = 1},/obj/structure/window/reinforced,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/yellow/border,/turf/simulated/floor/tiled/dark,/area/bridge) "uFJ" = (/obj/structure/ladder,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) -"uGK" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"uGK" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "uIm" = (/turf/simulated/floor/wood,/area/bridge/meeting_room) "uIt" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/structure/closet/medical_wall{pixel_y = 31},/obj/item/roller,/obj/item/bodybag/cryobag,/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/pill_bottle/spaceacillin,/turf/simulated/floor/tiled,/area/bridge) "uIU" = (/obj/structure/table/marble,/obj/machinery/door/blast/shutters{dir = 4; id = "botanicshop"; layer = 3.3; name = "Botanic Shutters"},/turf/simulated/floor/tiled/kafel_full/green,/area/crew_quarters/coffee_shop) @@ -1917,19 +1903,20 @@ "uLh" = (/obj/machinery/alarm{dir = 8; pixel_x = 24},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "uLp" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "uLr" = (/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"uMG" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/effect/snow,/turf/simulated/floor/outdoors/snow/snow{outdoors = 0},/area/crew_quarters/cafeteria) -"uNb" = (/obj/effect/floor_decal/techfloor/orange{dir = 10},/obj/machinery/light{dir = 8},/obj/machinery/computer/cryopod/gateway{pixel_x = -32},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled/techfloor,/area/hallway/primary/thirddeck/stationgateway) +"uMG" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/eris/steel/bar_dance,/area/crew_quarters/cafeteria) +"uNb" = (/obj/effect/floor_decal/techfloor/orange{dir = 10},/obj/machinery/light{dir = 8},/obj/machinery/computer/cryopod/gateway{pixel_x = -32},/turf/simulated/floor/tiled/techfloor,/area/hallway/primary/thirddeck/stationgateway) "uNf" = (/obj/structure/catwalk,/turf/simulated/floor/airless,/area/thirddeck/roof) "uNv" = (/obj/structure/sink,/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Starboard Civ Botanical 1"},/obj/effect/floor_decal/corner/green/border{dir = 1},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) +"uNJ" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) "uNL" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "uOo" = (/obj/structure/railing{dir = 4},/obj/structure/railing{dir = 1},/obj/structure/railing{dir = 8},/obj/machinery/light{dir = 1; layer = 3},/turf/simulated/open,/area/hallway/primary/thirddeck/aft) "uPB" = (/turf/simulated/wall/r_wall,/area/maintenance/thirddeck/foreport) "uPG" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/status_display{pixel_x = -32},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "uQd" = (/obj/structure/sink{pixel_y = 16},/obj/structure/mirror{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/sd) -"uQF" = (/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Central Civ Hallway 1"; dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) -"uRF" = (/obj/structure/table/steel,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/item/weapon/storage/briefcase/inflatable{pixel_y = 3},/obj/item/clamp,/obj/item/weapon/storage/briefcase/inflatable{pixel_y = 3},/obj/item/clamp,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) -"uSd" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"uSw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) +"uQF" = (/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Central Civ Hallway 1"; dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"uRF" = (/obj/structure/table/steel,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/item/weapon/storage/briefcase/inflatable{pixel_y = 3},/obj/item/clamp,/obj/item/weapon/storage/briefcase/inflatable{pixel_y = 3},/obj/item/clamp,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) +"uSd" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/structure/disposalpipe/junction{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"uSw" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) "uSF" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "uSU" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Central Ring 1"; dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "uTK" = (/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/power/smes/buildable{RCon_tag = "Substation - Dorms"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/maintenance/substation/dorms) @@ -1939,20 +1926,20 @@ "uUU" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/catwalk,/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "uVF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) "uVO" = (/obj/structure/cable/yellow,/obj/machinery/power/solar_control{auto_start = 2; id = "aftstarboardsolar"; name = "Aft Starboard Solar Control"},/turf/simulated/floor/plating,/area/maintenance/solars/aftstarboardsolar) -"uVP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/floor_decal/corner/green/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) +"uVP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/floor_decal/corner/green/diagonal,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 6},/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "uWq" = (/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes/buildable{RCon_tag = "Substation - Command"},/turf/simulated/floor,/area/maintenance/substation/command) -"uWT" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) -"uXn" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"uWT" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_7) +"uXn" = (/obj/structure/table/standard,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = -24},/obj/structure/cable/green,/obj/random/junk,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_13) "uYk" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"uYm" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) +"uYm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) "uYr" = (/obj/structure/toilet{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_9) "uZs" = (/obj/structure/flora/ausbushes/brflowers,/obj/machinery/light{dir = 1},/turf/simulated/floor/grass,/area/crew_quarters/coffee_shop) "uZK" = (/obj/structure/closet/crate,/obj/item/weapon/storage/box/lights/mixed,/obj/random/maintenance/security,/obj/random/maintenance/security,/obj/random/maintenance/security,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) -"uZX" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/effect/floor_decal/corner/blue/bordercorner,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) -"vae" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) +"uZX" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/effect/floor_decal/corner/blue/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"vae" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) "vag" = (/obj/machinery/door/airlock/glass{name = "Cafeteria"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/cafeteria) "vaD" = (/obj/structure/bed/chair/comfy/blue{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/carpet,/area/bridge/meeting_room) -"vbb" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) +"vbb" = (/obj/structure/table/standard,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = -24},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/random/plushie,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_10) "vbK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "vcl" = (/obj/effect/wingrille_spawn/reinforced/polarized{id = "cmoquarters"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/crew_quarters/heads/sc/cmo/quarters) "vdi" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_7) @@ -1966,12 +1953,11 @@ "vhq" = (/obj/structure/window/reinforced,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/yellow/border,/obj/item/modular_computer/console/preset/engineering{dir = 1},/turf/simulated/floor/tiled/dark,/area/bridge) "vht" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/airless,/area/solar/aftportsolar) "vhS" = (/obj/structure/sign/warning/high_voltage{pixel_y = 32},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) -"vic" = (/obj/structure/table/standard,/obj/random/coin,/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) +"vic" = (/obj/structure/bed/chair/comfy/black{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_7) "vid" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "vik" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "viX" = (/obj/effect/floor_decal/borderfloorblack{dir = 5},/obj/effect/floor_decal/industrial/danger{dir = 5},/turf/simulated/floor/tiled/techfloor/grid,/area/hallway/primary/thirddeck/central) "vjg" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_10) -"vkb" = (/obj/structure/disposalpipe/segment,/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) "vkF" = (/obj/structure/table/rack,/obj/structure/window/reinforced,/obj/item/weapon/tank/jetpack/oxygen,/obj/item/clothing/mask/gas,/obj/structure/window/reinforced{dir = 8; health = null},/obj/structure/window/reinforced{dir = 4},/obj/item/clothing/suit/space/void/captain,/obj/item/clothing/head/helmet/space/void/captain,/obj/machinery/door/window/holowindoor{dir = 1; req_access = list(20)},/turf/simulated/floor/wood,/area/crew_quarters/heads/sc/sd) "vkN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) "vlA" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) @@ -1980,12 +1966,11 @@ "vog" = (/obj/structure/closet/crate{name = "Camera Assembly Crate"},/obj/item/weapon/camera_assembly,/obj/item/weapon/camera_assembly,/obj/item/weapon/camera_assembly,/obj/item/weapon/camera_assembly,/turf/simulated/floor/bluegrid,/area/ai/ai_server_room) "voq" = (/obj/structure/railing{dir = 4},/obj/machinery/ai_status_display{pixel_x = -32},/turf/simulated/open,/area/hallway/primary/thirddeck/central) "voP" = (/obj/structure/table/woodentable,/obj/item/weapon/material/kitchen/utensil/fork,/obj/item/weapon/material/kitchen/utensil/spoon{pixel_x = 2},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"vpu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "vqW" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/landmark/start{name = "Cyborg"},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_cyborg_station) "vsu" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light,/obj/machinery/alarm{dir = 4; pixel_x = -23},/turf/simulated/floor/tiled/techfloor,/area/ai) "vsw" = (/obj/structure/salvageable/console_broken_os,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "vsI" = (/obj/machinery/hologram/holopad,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/bridge/meeting_room) -"vtd" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/machinery/light,/obj/structure/table/standard,/obj/random/drinkbottle,/obj/item/device/starcaster_news,/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) +"vtd" = (/obj/machinery/light,/obj/structure/bed/chair/comfy/black{dir = 8},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_5) "vtf" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/catwalk,/turf/simulated/floor/airless,/area/solar/foreportsolar) "vti" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "vvy" = (/obj/structure/table/steel,/obj/random/maintenance/medical,/obj/random/toolbox,/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) @@ -1994,25 +1979,25 @@ "vvM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "vvN" = (/obj/structure/closet,/obj/item/weapon/storage/backpack,/obj/random/maintenance/clean,/obj/random/maintenance/cargo,/obj/random/maintenance/clean,/obj/random/drinkbottle,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "vwy" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/ai_status_display{pixel_x = 32},/turf/simulated/floor/tiled,/area/bridge) -"vxI" = (/obj/structure/curtain/open/shower,/obj/machinery/shower,/obj/structure/window/basic{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_7) +"vxI" = (/obj/structure/curtain/open/shower,/obj/structure/window/basic{dir = 4},/obj/machinery/shower{pixel_y = 16},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_7) "vyl" = (/obj/machinery/gateway{dir = 10},/obj/effect/landmark{name = "JoinLateStationGateway"},/obj/effect/floor_decal/techfloor/orange,/turf/simulated/floor/tiled/techfloor,/area/hallway/primary/thirddeck/stationgateway) "vyu" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "vyE" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/brown/bordercorner,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "vzv" = (/obj/structure/table/woodentable,/obj/item/device/paicard,/obj/effect/floor_decal/corner/green/diagonal,/turf/simulated/floor/tiled,/area/crew_quarters/coffee_shop) "vzC" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "vAp" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"vAs" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"vAs" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "vBO" = (/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/techfloor,/area/ai) "vDk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) -"vDp" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"vDp" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "vDz" = (/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled/techfloor,/area/ai) "vEP" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1379; id_tag = "d3_starboard_dorms_pump"},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{id_tag = "d3_starboard_dorms_airlock"; pixel_y = -26; req_access = null; tag_airpump = "d3_starboard_dorms_pump"; tag_chamber_sensor = "d3_starboard_dorms_sensor"; tag_exterior_door = "d3_starboard_dorms_outer"; tag_interior_door = "d3_starboard_dorms_inner"},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/simulated/floor/airless,/area/maintenance/thirddeck/dormsaft) "vGZ" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/foreportsolar) "vHp" = (/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/canister/air/airlock,/obj/structure/sign/warning/airlock{pixel_y = -32},/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) "vHM" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/blue/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "vIb" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/heads/sc/hop/quarters) -"vIQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) -"vJc" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_11) +"vIQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_9) +"vJc" = (/obj/structure/closet/secure_closet/personal/cabinet,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_4) "vJf" = (/obj/structure/bed/chair,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/bridge) "vJX" = (/obj/machinery/power/terminal,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/substation/dorms) "vKr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) @@ -2024,26 +2009,26 @@ "vPX" = (/obj/machinery/porta_turret/ai_defense,/obj/effect/floor_decal/industrial/outline/grey,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/ai) "vRg" = (/obj/machinery/computer/guestpass{pixel_y = 28},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/bridge) "vRq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"vRw" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/light,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) +"vRw" = (/obj/machinery/light,/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/random/maintenance/medical,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_14) "vSz" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) "vSI" = (/obj/structure/bed/chair/comfy/blue,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/carpet,/area/bridge/meeting_room) "vSL" = (/obj/machinery/door/airlock/vault/bolted{name = "AI core"; req_access = list(16)},/obj/machinery/door/blast/regular{id = "AICore"; name = "AI core maintenance hatch"},/obj/structure/cable/cyan{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/techfloor,/area/ai) "vTu" = (/obj/structure/curtain/open/shower,/obj/machinery/shower{dir = 1},/obj/structure/window/basic{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_14) "vTE" = (/obj/structure/table/steel,/obj/item/weapon/makeover,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "vUd" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) -"vUC" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/cable/green,/obj/machinery/light_switch{pixel_x = 36; pixel_y = -6},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) +"vUC" = (/obj/structure/table/bench/wooden,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) "vVH" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_upload_foyer) -"vWX" = (/obj/machinery/vending/cola,/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Dorms 3"; dir = 4},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"vWX" = (/obj/machinery/vending/cola{dir = 1},/obj/machinery/camera/network/third_deck{c_tag = "Third Deck - Aft Civ Dorms 3"; dir = 4},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "vXe" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"vXl" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/light_switch{pixel_x = -36; pixel_y = -6},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) +"vXl" = (/obj/structure/bed/chair/comfy/brown{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_14) "vXG" = (/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) "vXU" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/machinery/light{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"vYb" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"vYr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"vYb" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"vYr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "vYC" = (/obj/structure/closet/secure_closet/CMO_wardrobe,/turf/simulated/floor/carpet/blue,/area/crew_quarters/heads/sc/cmo/quarters) "vZb" = (/obj/effect/floor_decal/borderfloorblack{dir = 9},/obj/effect/floor_decal/industrial/danger{dir = 9},/turf/simulated/floor/tiled/techfloor/grid,/area/hallway/primary/thirddeck/central) "wai" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftstarboardcentral) -"wap" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/purpledouble,/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) +"wap" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) "wbl" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "wbm" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/restroom) "wbq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/atmos{name = "Atmospherics Maintenance"; req_access = list(24)},/obj/machinery/door/firedoor/border_only,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) @@ -2053,13 +2038,13 @@ "wdV" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "wfR" = (/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hos/quarters) "wgb" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/cafeteria) -"wgy" = (/obj/structure/table/standard,/obj/machinery/photocopier/faxmachine{department = "Dorms"},/obj/machinery/atm{pixel_x = 30},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"wgy" = (/obj/structure/table/standard,/obj/machinery/photocopier/faxmachine{department = "Dorms"},/obj/machinery/atm{pixel_x = 30},/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "whE" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 1},/obj/machinery/atm{pixel_y = 30},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"wik" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) +"wik" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) "wit" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) -"wiE" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) -"wiR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) -"wjf" = (/obj/structure/table/standard,/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_13) +"wiE" = (/obj/structure/table/bench/wooden,/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) +"wiR" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_10) +"wjf" = (/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/light{dir = 1},/obj/structure/table/rack/shelf,/obj/random/soap,/obj/item/weapon/towel/random,/obj/item/weapon/towel/random,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_13) "wkE" = (/turf/unsimulated/mask,/area/hallway/primary/thirddeck/central) "wle" = (/turf/simulated/wall,/area/crew_quarters/heads/sc/restroom) "wlX" = (/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/machinery/door/firedoor/border_only,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) @@ -2067,16 +2052,16 @@ "woe" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/railing{dir = 8},/turf/simulated/floor/plating,/area/maintenance/thirddeck/forestarboard) "woC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled,/area/bridge) "wpp" = (/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/structure/cable/cyan{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light,/turf/simulated/floor/tiled/techfloor,/area/ai/ai_upload_foyer) -"wpN" = (/obj/structure/table/standard,/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_3) +"wpN" = (/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light,/obj/structure/table/rack/shelf,/obj/random/soap,/obj/item/weapon/towel/random,/obj/item/weapon/towel/random,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_3) "wpU" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/obj/effect/wingrille_spawn/reinforced/polarized{id = "bridge_center"},/turf/simulated/floor/plating,/area/bridge) -"wqb" = (/obj/effect/floor_decal/corner_steel_grid{dir = 10},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) +"wqb" = (/obj/effect/floor_decal/corner_steel_grid{dir = 10},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "wqg" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "wrr" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/hop,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/button/remote/airlock{id = "hopquarters"; name = "Bolt Control"; pixel_y = -30; specialfunctions = 4},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hop/quarters) "wty" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/atmospherics/valve/shutoff{name = "Deck 3 automatic shutoff valve"},/turf/simulated/floor,/area/maintenance/substation/command) -"wtR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"wtR" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "wul" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/sd) "wuI" = (/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled/techfloor,/area/ai) -"wvZ" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/light_switch{pixel_x = 36; pixel_y = -6},/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) +"wvZ" = (/obj/structure/table/bench/wooden,/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) "wwM" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/structure/closet/secure_closet/medical_wall{name = "defibrillator closet"; pixel_y = 31},/obj/item/device/defib_kit/loaded,/turf/simulated/floor/tiled,/area/bridge) "wxU" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/solars/aftstarboardsolar) "wyr" = (/obj/machinery/camera/network/engineering{c_tag = "ENG - Solar Fore Port"},/obj/item/stack/cable_coil/yellow,/turf/simulated/floor/plating,/area/maintenance/solars/foreportsolar) @@ -2085,44 +2070,44 @@ "wzA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftdoorm) "wAH" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled,/area/bridge) "wAN" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access = null; req_one_access = null},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) -"wBR" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"wBR" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-j2"},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "wCi" = (/obj/machinery/porta_turret/ai_defense,/obj/effect/floor_decal/industrial/outline/grey,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled/techfloor,/area/ai) "wCK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"wDV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"wDV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "wEE" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) -"wFk" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/glass{name = "Botanic Shop"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/coffee_shop) -"wFm" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle/wataur,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_6) +"wFk" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/obj/machinery/door/airlock/multi_tile/glass{dir = 2; name = "Botanic Shop"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/coffee_shop) +"wFm" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_6) "wFq" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/structure/cable/cyan{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/techfloor,/area/ai) "wGk" = (/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/structure/cable/green,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) -"wGX" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/random/cash,/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) -"wHk" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/obj/machinery/door/firedoor/border_only,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) -"wHS" = (/obj/machinery/light,/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"wGX" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_7) +"wHk" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"wHS" = (/obj/machinery/light,/obj/effect/floor_decal/corner/brown{dir = 5},/obj/effect/floor_decal/corner/brown{dir = 10},/obj/effect/floor_decal/corner/beige/diagonal,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "wHT" = (/obj/structure/table/standard,/obj/item/weapon/storage/laundry_basket,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/toilet) "wIl" = (/obj/structure/toilet{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_3) -"wJd" = (/obj/item/weapon/towel{color = "#b5651d"; name = "brown towel"},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_5) +"wJd" = (/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_5) "wJl" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/effect/floor_decal/industrial/warning,/obj/structure/cable/cyan{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor,/area/ai) "wJT" = (/obj/random/trash,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) "wJY" = (/obj/item/device/radio/intercom/locked/ai_private{dir = 4; pixel_x = 21},/turf/simulated/floor/bluegrid,/area/ai/ai_upload) "wKm" = (/obj/structure/table/rack,/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/clothing/mask/gas,/obj/item/device/flashlight,/obj/item/clothing/glasses/meson,/obj/random/maintenance/cargo,/turf/simulated/floor,/area/maintenance/thirddeck/aftport) "wKP" = (/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor,/area/ai) "wLB" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/engineering{name = "Aft Port Solar Access"; req_access = list(); req_one_access = list(11,24)},/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) -"wMb" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/random/plushie,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) +"wMb" = (/obj/structure/table/standard,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/random/maintenance/engineering,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_12) "wMi" = (/obj/structure/extinguisher_cabinet{pixel_y = 30},/turf/simulated/floor/wood,/area/bridge/meeting_room) "wMX" = (/obj/random/obstruction,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) "wNN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_9) "wPe" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/machinery/status_display{pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) -"wPv" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/machinery/light{dir = 4},/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) +"wPv" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/machinery/light{dir = 4},/obj/machinery/disposal,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_8) +"wPw" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/sleep/vistor_room_6) "wPR" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/blast/regular{density = 0; dir = 8; icon_state = "pdoor0"; id = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/bridge) "wQd" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_upload) "wQH" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/rd,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/button/remote/airlock{id = "rdquarters"; name = "Bolt Control"; pixel_y = -30; specialfunctions = 4},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hor/quarters) -"wRh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/button/remote/airlock{id = "Dorms8"; name = "Bolt Control"; pixel_y = -30; specialfunctions = 4},/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) -"wRm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/glass,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/obj/effect/floor_decal/corner/beige/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"wSC" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"wRh" = (/obj/machinery/button/remote/airlock{id = "Dorms8"; name = "Bolt Control"; pixel_y = -30; specialfunctions = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_10) +"wRm" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) +"wSC" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "wSI" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) "wSU" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/air/airlock,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsaft) -"wTf" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "wTu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"wUP" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/glass{name = "Botanic Shop"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/coffee_shop) +"wUP" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/coffee_shop) "wUV" = (/obj/structure/toilet{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_14) "wVH" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "wVM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/sd) @@ -2131,35 +2116,35 @@ "wYT" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/sd) "xam" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/door/blast/regular{density = 0; dir = 4; icon_state = "pdoor0"; id = "csblast"; name = "Blast Doors"; opacity = 0},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/bridge/meeting_room) "xbg" = (/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hop/quarters) -"xbI" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/glass,/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"xbI" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "xbW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/corner/green/border,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "xco" = (/obj/machinery/camera/network/command{c_tag = "AI - Port 1"; dir = 8},/turf/simulated/floor/reinforced/airless,/area/thirddeck/roof) "xcw" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/restroom) "xdJ" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/door/blast/regular{density = 0; dir = 8; icon_state = "pdoor0"; id = "directorblast"; name = "Blast Doors"; opacity = 0},/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/heads/sc/sd) "xes" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/structure/cable/cyan{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/techfloor,/area/ai/ai_upload) -"xeL" = (/obj/effect/floor_decal/techfloor/orange{dir = 4},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/sign/christmas/lights{dir = 1},/obj/structure/sign/christmas/lights{dir = 4},/obj/structure/flora/pottedplant/xmas{anchored = 1},/turf/simulated/floor/tiled/techfloor,/area/hallway/primary/thirddeck/stationgateway) +"xeL" = (/obj/effect/floor_decal/techfloor/orange{dir = 4},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/tiled/techfloor,/area/hallway/primary/thirddeck/stationgateway) "xeN" = (/obj/structure/table/wooden_reinforced,/obj/item/weapon/hand_labeler,/obj/item/device/retail_scanner/command,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/wood,/area/bridge/meeting_room) "xgH" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/blue,/area/crew_quarters/heads/sc/cmo/quarters) -"xgK" = (/obj/machinery/door/airlock{id_tag = "Dorms4"; name = "Room 4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_6) +"xgK" = (/obj/machinery/door/airlock{id_tag = "Dorms4"; name = "Room 4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/crew_quarters/sleep/vistor_room_6) "xhm" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/blue/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "xht" = (/turf/simulated/floor/holofloor/carpet,/area/crew_quarters/cafeteria) "xiI" = (/turf/simulated/wall/r_wall,/area/maintenance/solars/forestarboardsolar) "xiT" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/restroom) "xjF" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/glowstick,/obj/item/device/flashlight/glowstick/orange,/obj/item/device/flashlight/glowstick/red,/obj/item/device/flashlight/glowstick/orange,/obj/item/weapon/towel{color = "#90ee90"; name = "green towel"},/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet{dir = 4},/turf/simulated/floor/lino,/area/crew_quarters/cafeteria) -"xkS" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"xkS" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "xkW" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/wall/r_wall,/area/ai) "xld" = (/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) -"xlk" = (/obj/structure/table/standard,/obj/random/drinkbottle,/obj/random/toy,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_3) +"xlk" = (/obj/structure/bed/chair/comfy/black{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_3) "xmb" = (/obj/machinery/firealarm{pixel_y = 24},/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "xmh" = (/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftportcentral) -"xnf" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"xnf" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "xob" = (/obj/machinery/door/airlock/glass_external{frequency = 1379; icon_state = "door_locked"; id_tag = "d3_port_inner"; locked = 1; name = "Internal Airlock Access"; req_access = list(13)},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/port) "xon" = (/obj/machinery/newscaster,/turf/simulated/wall,/area/crew_quarters/cafeteria) -"xpl" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"xpl" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "xpu" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) "xrz" = (/turf/simulated/wall,/area/maintenance/solars/forestarboardsolar) "xsF" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_3) -"xsQ" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"xsQ" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/corner/beige/border{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) "xtj" = (/obj/effect/floor_decal/industrial/warning/cee{dir = 8},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light/small,/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1379; id_tag = "fore_starboard_solar_pump"},/turf/simulated/floor/plating,/area/maintenance/solars/forestarboardsolar) "xtt" = (/obj/structure/bed/chair/office/dark,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark/start{name = "Command Secretary"},/turf/simulated/floor/wood,/area/bridge/meeting_room) "xvg" = (/obj/structure/bed/chair{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/structure/closet/walllocker/emerglocker{pixel_y = 32},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod8/station) @@ -2169,64 +2154,64 @@ "xwQ" = (/obj/structure/table/glass,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/central) "xxD" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "xyc" = (/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/machinery/power/terminal,/obj/effect/floor_decal/industrial/warning,/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor,/area/maintenance/substation/command) -"xyg" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/light,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) -"xyn" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"xyN" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"xyg" = (/obj/machinery/light,/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; layer = 4; pixel_y = -32},/obj/random/contraband,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_12) +"xyn" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"xyN" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "xzs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "xzy" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled,/area/crew_quarters/toilet) "xzO" = (/obj/effect/shuttle_landmark{base_area = /area/space; base_turf = /turf/space; landmark_tag = "d3_near_se"; name = "Near SC - Deck 3 South East"},/turf/space,/area/space) "xAo" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/glass_command{name = "Bridge"; req_access = list(19)},/turf/simulated/floor/tiled/steel_grid,/area/bridge) -"xAy" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/bed/chair{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/obj/structure/sign/christmas/lights,/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) +"xAy" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/bed/chair{dir = 1},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftportcentral) "xAP" = (/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar{id = "aftstarboardsolar"; name = "Starboard Solar Array"},/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/solar/aftstarboardsolar) "xCQ" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/blue/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) "xDw" = (/turf/simulated/open,/area/crew_quarters/cafeteria) "xEs" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftportcentral) "xFu" = (/turf/simulated/wall,/area/maintenance/substation/command) "xFT" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/light,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/blue/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/central) -"xGf" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_9) -"xGh" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/blucarpet,/area/crew_quarters/sleep/vistor_room_12) -"xGn" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/structure/sign/christmas/lights{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) -"xGv" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/machinery/door/firedoor/border_only,/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"xGf" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_9) +"xGh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_12) +"xGn" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"xGv" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "xHV" = (/obj/random/trash_pile,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "xIq" = (/obj/machinery/telecomms/broadcaster,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "xIR" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_13) -"xJn" = (/obj/structure/table/standard,/obj/random/coin,/obj/random/tool,/obj/item/device/starcaster_news,/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) +"xJn" = (/obj/structure/table/standard,/obj/machinery/firealarm{layer = 3.3; pixel_y = 26},/obj/random/coin,/obj/random/snack,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_14) "xJQ" = (/turf/simulated/wall,/area/maintenance/solars/aftportsolar) -"xKh" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"xKh" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "xKS" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled/techfloor,/area/ai) -"xKX" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/turcarpet,/area/crew_quarters/sleep/vistor_room_8) +"xKX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_8) "xLd" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/machinery/camera/network/command{c_tag = "COM - Bridge Port"; dir = 6},/obj/structure/window/reinforced{dir = 8},/obj/structure/closet/secure_closet/guncabinet/sidearm{anchored = 1},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/bridge) -"xLL" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/obj/structure/sign/christmas/lights{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) +"xLL" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aft) "xLP" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/corner_steel_grid{dir = 10},/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/aftportcentral) "xLV" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/bridge/meeting_room) -"xMa" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) +"xMa" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_7) "xMh" = (/obj/machinery/pointdefense{id_tag = "PD Main"},/turf/simulated/floor/reinforced/airless,/area/thirddeck/roof) "xMw" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftstarboardcentral) -"xNr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"xNt" = (/obj/item/weapon/towel{color = "#FFD700"; name = "gold towel"},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_4) +"xNr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/beige/border{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"xNt" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_4) "xNU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/monotile,/area/hallway/primary/thirddeck/aftportcentral) "xPg" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/flora/pottedplant/stoutbush,/turf/simulated/floor/tiled/dark,/area/hallway/primary/thirddeck/central) "xPk" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/effect/floor_decal/corner/green/border{dir = 10},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"xPM" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) -"xQF" = (/obj/structure/table/standard,/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_8) +"xPM" = (/obj/structure/closet/secure_closet/personal/cabinet,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_10) +"xQF" = (/obj/random/soap,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light{dir = 8},/obj/structure/table/rack/shelf,/obj/random/soap,/obj/item/weapon/towel/random,/obj/item/weapon/towel/random,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_8) "xRo" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/catwalk,/obj/random/junk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/foreport) -"xRu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) -"xRv" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_11) +"xRu" = (/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_4) +"xRv" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/iandouble,/turf/simulated/floor/carpet/gaycarpet,/area/crew_quarters/sleep/vistor_room_13) "xRV" = (/obj/structure/sign/warning/secure_area,/turf/simulated/wall/r_wall,/area/hallway/primary/thirddeck/central) -"xSr" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/disposalpipe/segment,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/obj/structure/sign/christmas/lights{dir = 8},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) -"xSC" = (/obj/machinery/light/small{dir = 8},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/effect/floor_decal/industrial/warning/full,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) +"xSr" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 8},/obj/structure/disposalpipe/junction{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftdoorm) +"xSC" = (/obj/machinery/light/small{dir = 8},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftport) "xSX" = (/obj/machinery/floodlight,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsstarboard) -"xTz" = (/obj/structure/railing,/obj/effect/floor_decal/spline/plain,/obj/structure/sign/christmas/lights,/turf/simulated/open,/area/crew_quarters/cafeteria) +"xTz" = (/obj/structure/railing,/obj/effect/floor_decal/spline/plain,/turf/simulated/open,/area/crew_quarters/cafeteria) "xUy" = (/obj/structure/disposalpipe/segment,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/wood,/area/bridge/meeting_room) "xUK" = (/obj/machinery/pointdefense{id_tag = "PD Main"},/turf/simulated/floor/airless,/area/space) "xUL" = (/obj/structure/table/standard,/obj/machinery/light{dir = 4},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/folder/blue_hop,/obj/item/weapon/pen/multi,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = 32},/turf/simulated/floor/carpet,/area/crew_quarters/heads/sc/hop/quarters) "xUR" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet{dir = 10},/obj/effect/floor_decal/carpet{dir = 6},/turf/simulated/floor/lino,/area/crew_quarters/cafeteria) "xUT" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/bridge/meeting_room) "xVf" = (/obj/machinery/alarm{pixel_y = 22},/obj/machinery/power/terminal{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/solars/aftstarboardsolar) -"xVw" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/carpet/blue,/area/crew_quarters/sleep/vistor_room_5) -"xVW" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) +"xVw" = (/obj/structure/bed/chair/comfy/black{dir = 4},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_5) +"xVW" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/sblucarpet,/area/crew_quarters/sleep/vistor_room_10) "xVX" = (/turf/simulated/wall/r_wall,/area/maintenance/thirddeck/forestarboard) -"xWm" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) +"xWm" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) "xWY" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/wood,/area/bridge/meeting_room) "xXp" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless,/area/hallway/primary/thirddeck/port) "xXs" = (/obj/machinery/power/terminal{dir = 4},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/alarm{pixel_y = 22},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/item/stack/cable_coil/yellow,/obj/item/stack/cable_coil/yellow,/obj/item/stack/cable_coil/yellow,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/solars/aftportsolar) @@ -2239,21 +2224,21 @@ "ydi" = (/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/maintenance/thirddeck/aftstarboard) "ydk" = (/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/green{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/primary/thirddeck/central) "ydV" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) -"yfh" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/structure/sign/christmas/lights,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) +"yfh" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/aftstarboardcentral) "yfn" = (/obj/item/device/starcaster_news,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "yfG" = (/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/white/border{dir = 10},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 8},/obj/item/modular_computer/console/preset/medical{dir = 1},/turf/simulated/floor/tiled,/area/bridge) "yhv" = (/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/item/device/radio/intercom/locked/ai_private{dir = 1; pixel_y = 21},/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/machinery/camera/network/command{c_tag = "AI - Upload Foyer"},/turf/simulated/floor/tiled/techfloor,/area/ai/ai_upload_foyer) -"yis" = (/obj/structure/railing{dir = 1},/obj/structure/sign/christmas/lights,/turf/simulated/open,/area/hallway/primary/thirddeck/aft) -"yjj" = (/obj/structure/table/rack,/obj/item/weapon/towel{color = "#00FFFF"; name = "cyan towel"; pixel_x = 2; pixel_y = 4},/obj/item/weapon/towel{color = "#90ee90"; name = "green towel"},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_6) +"yis" = (/obj/structure/railing{dir = 1},/turf/simulated/open,/area/hallway/primary/thirddeck/aft) +"yjj" = (/obj/structure/table/rack/shelf,/obj/random/soap,/obj/random/soap,/obj/item/weapon/towel/random,/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle/wataur,/obj/item/weapon/towel/random,/turf/simulated/floor/tiled/freezer,/area/crew_quarters/sleep/vistor_room_6) "yjm" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/port) -"yjL" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/sleep/vistor_room_11) +"yjL" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_11) "yka" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/zpipe/down/scrubbers,/obj/machinery/atmospherics/pipe/zpipe/down/supply{dir = 8},/obj/structure/disposalpipe/down{dir = 8},/obj/structure/cable{d1 = 32; d2 = 2; icon_state = "32-2"},/obj/structure/railing,/turf/simulated/open,/area/maintenance/substation/command) "ykl" = (/obj/structure/flora/ausbushes/fullgrass,/turf/simulated/floor/grass,/area/crew_quarters/coffee_shop) "yku" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/heads/sc/restroom) -"ykL" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) +"ykL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/carpet/bcarpet,/area/crew_quarters/sleep/vistor_room_14) "ykM" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "d3_port_dorms_outer"; locked = 1; name = "External Airlock Access"; req_access = list(13)},/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "ylw" = (/obj/structure/lattice,/obj/structure/cable{d1 = 32; d2 = 4; icon_state = "32-4"},/obj/machinery/door/firedoor/border_only,/turf/simulated/open,/area/maintenance/thirddeck/forestarboard) -"ylA" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/light{dir = 1},/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/sleep/vistor_room_7) +"ylA" = (/obj/machinery/light{dir = 1},/obj/structure/table/standard,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = 11; pixel_y = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/random/action_figure,/turf/simulated/floor/wood,/area/crew_quarters/sleep/vistor_room_7) "ylL" = (/obj/effect/wingrille_spawn/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/maintenance/thirddeck/dormsport) "ylX" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled,/area/hallway/primary/thirddeck/starboard) @@ -2349,47 +2334,47 @@ apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgapcapcapcapcjh apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcaqjapcapcapcapcapcapcapcapcaqjapcapcapcapcjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgoTPjhgjhgjhgoTPjhgjhgjhgoTPjhgjhgjhgoTPjhgjhgjhgoTPjhgjhgjhgjhgaciaciacioReckHdvDnSMxJQxSCiBngXZfozrbFkFgovxuhvuhvuhvuhvmNwjhgjhgjhgjhgjhgovxuhvuhvuhvuhvuhvmNwcITjhgjhgjhgjhgovxuhvuhvuhvuhvmNwaSWaJyrcweXgrcwcYlijtaaMdQiuVOwzyuppuppuppjhgjhgjhgjhgnBdjhgjhgjhgnBdjhgjhgjhgnBdjhgjhgjhgnBdjhgjhgjhgnBdjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgavHaqjaqjapcapcapcapcapcaqjapcapcapcapcjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgjhgjhgjhgjhgjhgoReffHffHffHffHuRFmkbhlnrbzwKmkFgjhgjhgjhgjhgjhgjhgqWlqWlqWljhgjhgtUBorYorYorYorYorYtUBjhgjhgnwFnwFnwFjhgjhgjhgjhgjhgjhgaSWfUNmsercwmnqfEIcrAcrAcrAcrAwzyjhgjhgjhgjhgjhgjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgaqjaqjaqjepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcaqjapcapcapcapcjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgjhgjhgjhgjhgjhgqWlqWlxLPqWlqWlkFgkFglTVkFgkFgkFgqWlqjPqjPqjPqjPqWlqWlxLPqWljZfqWltUBqXtycNiApdgtxeLtUBnwFtNVnwFclBnwFnwFtNVtNVnwFtNVtNVaSWaSWaSWjtXaSWaSWnwFnwFclBnwFnwFjhgjhgjhgjhgjhgjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcapcapcapcapcfXnapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcavHepgepgfXnepgepgapcapcapcnSNnSNnSNnSNjhgjhgjhgjhgjhgjhgjhgjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgjhgjhgjhgjhgjhgtjKizOvyueeAkBueeApmYrnGqQvmGOkBuiYlkBueeAoSLeeAshaxyNrdofxzhjcojztUBuNbvyltwrgXSaUttUBoNYlTscEwmglnPHlAxrzolTshihlTshihlTsxGvjGOrkUrEuhihthMhihcOcobFdxNjhgjhgjhgjhgjhgjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcrfSaqjaqjaqjaqjapcapcapcjhgjhgjhgjhgjhgjhgjhgjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgjhgjhgjhgjhgjhgtjKhmixmhxmhxmhqtxlZqpXmgkFggFggFxNUggFggFeQJggFaNHggFggFggFggFxEsicviSElTPmSMgDecklicvavYiOYiOYiOYiOYiOYxMwiOYiEbiOYiOYiOYwainaWaggrMAdYodYodYodYoeQQdxNjhgjhgjhgjhgjhgjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcfXnapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgapcapcapcaqjapcapcapcapcjhgjhgjhgjhgjhgjhgjhgqIjaIVhWkjhgqIjaIVhWkjhgqIjaIVhWkjhgqIjaIVhWkjhgqIjaIVhWkjhgjhgjhgjhgjhgjhgtjKxAymhnuQFclfxzsfWgjulsbHkwclJNoRHpIInwUrMhlTWxplihluGKlJNuGKniIflMkixspzlFieaNuALrYuodByfhnWDyfhdYvdmhdYvyfhqHUnxFsxglVhwHkcVlpFOuZXgSdxnfgSdnxYsoZdxNjhgjhgjhgjhgjhgjhgnGlcTzxAPjhgnGlcTzxAPjhgnGlcTzxAPjhgnGlcTzxAPjhgnGlcTzxAPjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgaqjaqjaqjfXnapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcavHepgepgfXnepgepgapcapcapcnSNnSNnSNnSNjhgjhgjhgjhgjhgjhgjhgjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgjhgjhgjhgjhgjhgqjPizOvyueeAvyueeApmYrnGqQvmGOvyuiYlvyueeAoSLeeAshaxyNrdofxzhjcojztUBuNbvyltwrgXSaUttUBoNYcOccEwmglnPHlAxrzocOchihcOchihcOcxGvjGOrkUrEuhihthMhihcOcobFtNVjhgjhgjhgjhgjhgjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcrfSaqjaqjaqjaqjapcapcapcjhgjhgjhgjhgjhgjhgjhgjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgqIjqpohWkjhgjhgjhgjhgjhgjhgqjPhmixmhxmhxmhqtxlZqpXmgkFggFggFxNUggFggFeQJggFaNHggFggFggFggFxEsicviSElTPmSMgDecklicvavYiOYiOYiOYiOYiOYxMwiOYiEbiOYiOYiOYwainaWaggrMAdYodYodYodYoeQQtNVjhgjhgjhgjhgjhgjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgnGldyXxAPjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcfXnapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgapcapcapcaqjapcapcapcapcjhgjhgjhgjhgjhgjhgjhgqIjaIVhWkjhgqIjaIVhWkjhgqIjaIVhWkjhgqIjaIVhWkjhgqIjaIVhWkjhgjhgjhgjhgjhgjhgqjPxAymhnuQFclfxzsfWgjulsbHkwclJNoRHpIInwUrMhlTWxplihluGKlJNuGKniIflMkixspzlFieaNuALrYuodByfhnWDyfhdYvdmhdYvyfhqHUnxFsxglVhwHkcVlpFOuZXgSdxnfgSdnxYsoZtNVjhgjhgjhgjhgjhgjhgnGlcTzxAPjhgnGlcTzxAPjhgnGlcTzxAPjhgnGlcTzxAPjhgnGlcTzxAPjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgaqjaqjaqjfXnapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapckTmapcapcapcapcapcapcapcepgepgapcapcaqjapcapcapcapcaqjapcapcapcapcapcaqjapcapcapcapcapcaqjapcapcapcapcapcjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcqWlqWlsNBsNBsNBktnsNBsNBfiSkLYkLYkLYkLYkLYbFEvagbFEkLYcCekLYcCekLYkLYkLYhyPlCgtWXsqwsqwsqwkSnsqwkSnsqwsqwsqwsqwsqwrtUjcErtUsqwsqwsMOqwDaeadFkaeaaeanwFnwFjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcavHapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcavHepgepgepgapcapcapcapcaqjapcapcapcapcapcaqjapcapcapcapcapcaqjapcapcapcapcapcapcjhgjhgjhgjhgjhgjhgjhgjhgnSNnSNnSNapcapcapcapcsNBpmNvdmvRqrQimgFfiSnkFuiKkGhuiKpHwgsifBRbhamgvmXZfAMmXZbhatIdkLYchrfuCcGTsqwrvIaBWrvIhZDrvIlcMuNvqUsrvIuZsrvIlBirvIsqweaeiSKqwDtWerIplTqaeajhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcavHepgepgepgapcapcapcapcaqjapcapcapcapcapcaqjapcapcapcapcapcaqjapcapcapcapcapcapcjhgjhgjhgjhgjhgjhgjhgjhgnSNnSNnSNapcapcapcapcsNBpmNvdmvRqrQimgFfiSnkFuiKkGhuiKpHwgsidSNnytmgvfBRfAMfBRnytnytkLYchrfuCcGTsqwrvIaBWrvIhZDrvIlcMuNvqUsrvIuZsrvIlBirvIsqweaeiSKqwDtWerIplTqaeajhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgepgapcapcapcapcaqjapcapcapcapcapcaqjapcapcapcapcapcaqjapcapcapcapcapcapcapcaqjapcapcapcapcapcapcapcaqjapcapcapcapcapcylLuLroeXlwYuLruLrqoinqgxhtxhtxhtdQhmWqfBRfACnEDfBReiKfBRvoPnlqfiEsAabXWcSSkSnuhftMWykluhfuhfnzqaehtMWuhfykluhfbcitMWvLAkcYrEBqwDtRduSFrIpaeajhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcepgepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgavHepgepgepgavHfXnavHavHepgepgepgepgaqjdfZapcaqjavHepgepgepgepgepgapcapcaqjapcapcapcapcapcapcapcaqjapcapcapcapcapcylLuLrvRqfiSfiSfiSfiSnCzkiZkiZkiZdanmCVoktnYAnYAgXDffTrrKnYAtvpkLYxkSjhvkIIsqwoIluobaQEaQEaQEkVtbRNpXOpXOpXOpXOfZcpXOgzflDiwmnqwDqwDqwDapLaeanSNnSNnSNapcapcaqjapcapcjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcaqjaqjapcaqjapcapcapcapcapcapcapcaqjapcapcapcapcapcsNBxHVvbKfiSjxIuAldsPbxLihCihCgNIaexbqBvlAmmzmmzmmzjdEvKrmmzmgfepwhBGcaifCXwUPhcPmCInxoccvdAzpGFlUtecRecRecRecRfdadMkuIUoeWgIzlVDqzOqwDwJTaeaapcapcapcapcapcaqjapcapcjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcaqjaqjaqjepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcaqjfXnavHepgaqjapcapcapcepgepgepgapcapcapcapcapcsNBfPGpOUfiSasbfRBqOCuMGfRBbggnAZdVgoaLfBRdVCcpsdBxoCpdBxomcfTwvagqLftadtfQwFkuVPrJtnEgaChajMpGFlUtqaWvzvmXNhwafdalUtpjrielielielullqwDapLvtiapcapcapcapcapcaqjapcapcjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcapcapcepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgepgapcapcapcapcylLcEXpOUfiSfaubggrAluMGqOCfRBnAZcfsoaLfBRqZXpdzxDwxDwxDwhxbaXokLYqmcuOoaMhsqwmZpoupnEgaChajMpGFlUtsJUaJHbdAfDGfdafKIsqwcXWnhXgNNbeuqwDapLvtiapcapcapcapcapcaqjapcapcjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcapcapcaqjapcapcapckTmapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgaqjaqjaqjaqjylLeXUpOUfiSgwJfRBuzHurOexEfRBmdTpWMoaLfBRdVCeJaxTzljZxTzgctvkbfiExKhpDzwDVkSnlUtoupeRQmvdhACpGFmlWkMEkMEkMEkMEfdatlssqwsqwsqwsqwsqwqwDwJTvtiapcapcapcapcapcaqjaqjaqjjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcaqjapcapcapcapcapcapcapcaqjapcapcapcapcavHfXnapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapckTmapcapcepgapcapcapcapcylLlUSpOUfiSglwbggqOCqzvfvSqOCnAZcfsoaLfBRfBRfBRwgbevAevAevAsrVfiEsAapDzsALkSnlUtxPkxbWxbWxbWmlVikicegcegcegcegmpurBGpAtsLUriNxSXqeYaeauttaeaapcapcapcapcepgavHapcapcjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcaqjapcapcapcapcapcapcapcaqjapcapcapcepgepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapclhtapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcsNBsUGpOUfiStwufRBfRBpALfRBfRBnAZxjFoaLnytnytfBRsaqjYjoIQauXqbVkLYpUPpeVoxBsqwcFYaeheWLuhftMWuhfuhfaehuhfuhftMWffduhfdEhrIprIpapLrIpdFkrIpaeaapcapcapcavHepgapcapcapcapcapcapcapcapcapcaqjapcapcapcaqjapcapcapcaqjapcapcapcapcapcaqjapcapcapcapcapcapcapcaqjapcapcepgepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcaqjfXnavHepgaqjapcapcapcepgepgepgapcapcapcapcapcsNBfPGpOUfiSasbuzHuzHuMGuzHuzHnAZdVgoaLfBRdVCcpsoCpoCpoCpomceNJkAAqLftadtfQwFkuVPrJtnEgaChajMpGFlUtqaWvzvmXNhwafdalUtpjrielielielullqwDapLvtiapcapcapcapcapcaqjapcapcjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcapcapcepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgepgapcapcapcapcylLcEXpOUfiSfauuzHuzHuMGuzHuzHnAZcfsoaLfBRqZXpdzxDwxDwxDwhxbaXokLYqmcuOoaMhsqwmZpoupnEgaChajMpGFlUtsJUaJHbdAfDGfdafKIsqwcXWnhXgNNbeuqwDapLvtiapcapcapcapcapcaqjapcapcjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcapcapcaqjapcapcapckTmapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgaqjaqjaqjaqjylLeXUpOUfiSgwJuzHuzHuMGuzHuzHmdTpWMoaLfBRdVCeJaxTzxTzxTzgctfTwfiExKhpDzwDVkSnlUtoupeRQmvdhACpGFmlWkMEkMEkMEkMEfdatlssqwsqwsqwsqwsqwqwDwJTvtiapcapcapcapcapcaqjaqjaqjjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcaqjapcapcapcapcapcapcapcaqjapcapcapcapcavHfXnapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapckTmapcapcepgapcapcapcapcylLlUSpOUfiSglwuzHuzHuMGuzHuzHnAZcfsoaLfBRfBRfBRwgbevAevAevAsrVfiEsAapDzsALkSnlUtxPkxbWxbWxbWmlVikicegcegcegcegmpurBGpAtsLUriNxSXqeYaeauttaeaapcapcapcapcepgavHapcapcjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgapcapcapcaqjapcapcapcapcapcapcapcaqjapcapcapcepgepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapclhtapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcsNBsUGpOUfiStwuuzHuzHuMGuzHuzHnAZxjFoaLnytnytfBRsaqjYjoIQauXqbVkLYpUPpeVoxBsqwcFYaeheWLuhftMWuhfuhfaehuhfuhftMWffduhfdEhrIprIpapLrIpdFkrIpaeaapcapcapcavHepgapcapcapcapcapcapcapcapcapcaqjapcapcapcaqjapcapcapcaqjapcapcapcapcapcaqjapcapcapcapcapcapcapcaqjapcapcepgepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcfXnapcapcapcapcsNBuJgvRqfiSeVHhVqhqrqFypmDlenevccfsoaLfsMdmHezDkLYkLYkLYkLYkLYkLYdrtnilhoSsqwrvIeQArvIjubrvIbGGqlGiAZrvIizzrvIfeqbzQpAtptVhtrqeYqVXaearIpaeaaqjaqjaqjepgapcapcapcapcapcapcapcapcapcapcaqjapcapcapcaqjapcapcapcaqjapcapcaqjaqjepgepgepgaqjdfZavHepgepgepgepgepgepgepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcavHaqjaqjaqjaqjylLuJgvRqfiSkLYkLYkLYkLYkLYddqfUMvgGoaLnYAnYAiVBxonxLLfeCneunQBhOksJFsJAlHlaKjaKjaKjaKjaKjaKjilFilFilFilFilFilFxzyilFilFilFilFilFilForcrIpaeaapcapcapcepgapcapcapcapcapcapcapcapcapcapcaqjapcapcapcaqjapcepgepgaqjepgepgavHapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgapcapcapcapcsNBxHVvRqsNBlOesHvtECeNbeNbfMVcQQvgGoaLfBRfBRfBRvaguxLniljqdwtRqwGsUkcrbgJucAdmhChDiuwAlaAaKjcPXamzlsroHfmiCfYVoQywHTngVilFbObbObbOborctKCvtiapcapcapcepgapcapcapcapcapcapcapcapcapcapcepgepgavHepgepgepgepgapcapcapcapcapcapcapcapcapcapcapcapckTmapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgapcapcapcapcsNBqkAsKtiosjXavJXabXaYxeGwdjVtewxURoGhqKZqKZqKZpblpYasqjsSmgSVuuqfmMfbTniMomJnjjqzslSghMoaKjsoQbUpbTrbUpbTrenzsNDlkhkZkfopjxPuLpjjBorccLHaeaapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgaqjaqjaqjaqjsNBhpeukssNBueIuTKnUXfIGczbfMVgQargjfcvdSNfBRolykLYcGKyisyistAbaavflencIxGncAdtGpveolungxtaKjbnBilFiSZilFiSZilFeaQbUpdVOilFjTNbUpfCnorcrOtvtiapcapcapcepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcavHaqjaqjaqjaqjylLuJgvRqfiSkLYkLYkLYkLYkLYddqfUMvgGoaLnYAnYAfBRxonxLLfeCneunQBhOksJFsJAlHlaKjaKjaKjaKjaKjaKjilFilFilFilFilFilFxzyilFilFilFilFilFilForcrIpaeaapcapcapcepgapcapcapcapcapcapcapcapcapcapcaqjapcapcapcaqjapcepgepgaqjepgepgavHapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgapcapcapcapcsNBxHVvRqsNBlOesHvtECeNbeNbfMVcQQvgGoaLfBRfBRfjKucAuxLniljqdwtRqwGsUkcrbgJucAdmhChDiuwAlaAaKjcPXamzlsroHfmiCfYVoQywHTngVilFbObbObbOborctKCvtiapcapcapcepgapcapcapcapcapcapcapcapcapcapcepgepgavHepgepgepgepgapcapcapcapcapcapcapcapcapcapcapcapckTmapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgapcapcapcapcsNBqkAsKtiosjXavJXabXaYxeGwdjVtewxURoGhqKZqKZiDQpblpYasqjsSmgSVuuqfmMfbTniMomJnjjqzslSghMoaKjsoQbUpbTrbUpbTrenzsNDlkhkZkfopjxPuLpjjBorccLHaeaapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgaqjaqjaqjaqjsNBhpeukssNBueIuTKnUXfIGczbfMVgQargjfcvfBRfBRolykLYcGKyisyistAbaavflencIxGncAdtGpveolungxtaKjbnBilFiSZilFiSZilFeaQbUpdVOilFjTNbUpfCnorcrOtvtiapcapcapcepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcaqjapcapcapcapcsNBxldujusNBjqOjqOfMVfMVfMVfMVkLYkLYkLYkLYpGpjEjkLYhOklCglCghOkhOkluchOkgVlaKjaKjaKjaKjaKjaKjdCgilFsIjilFsIjilFewUqYyewUilFncancancaorcuLhaeaaqjaqjaqjepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgapcapcapcapcylLmrObvrdzQvMBsNBnsotlMgbueHptAXaWgcEGnnGnnGnnGnnGrthcCtcCtcCtlZWiuZoGvmFOdWgcCtcCtcCtwgynnGnnGnnGnnGnnGnnGnnGnnGnnGnnGnnGnnGorcorcorcmEGaeaapcapcapcepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcaaaaaaepgapcapcapcapcsNBuJgbdCueehFyaMsmzLsjbsjbsjbpGWsjbsjbmxYfVJuzrujwoUTdUZoUTdUZpDXggZaabwdCmZVuoZaJquoZaJqwRmpWtfVJwTfcEuwqbqdjrXXeAraKvoNTeMdaeacppqRFapLaeaapcapcapcepgepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcaaaaaaepgapcapcapcapcsNBuJgbdCueehFyaMsmzLsjbsjbsjbpGWsjbsjbqzwfVJoUTdUZoUTdUZoUTdUZpDXggZaabwdCmZVuoZaJquoZaJquoZpWtfVJpDXcEuwqbqdjrXXeArwqboNTeMdaeacppqRFapLaeaapcapcapcepgepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcaaaxUKaqjaqjaqjaqjaqjsNBaoFuLruLrlVMsNBacSbjgicZwblkqNjgejgejnHagdvyEeodcQFsGTcQFsGTiKCnkgtTrlMOmmPemdeeVoLAnuZdyJdbmcKnjnHtjZtjZrQjwzAuLgfGpkWhgPUkGNkMUrIpapLaeaapcapcapcapcepgepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcaaaaaaepgapcaqjapcjhgsNBfSxsUGuLrwTusNBeLKeLKdFrkTzfameLKmKsnnGvpupeNnnGvWXcHngLSwHSloOgdliPVqKUvDpaejnNwpkCfxxnnGsVRtgtnnGjQGlsGsMlpzHgUAfvysAMgbHaeaqQgwJTuSFaeaapcapcapcapcapcepgaaaaaaapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgapcdZUsNBsNBkqqoOxfHnmyXfpljXwnjSnjSnjSnjSnjSnjSnjSnjStUYxbIjgOjgOjgOjgOjgOjgOjgOjPAjPAjPAjPAjPAjPAjPAjPAsUFkAAffkffkffkffkffkffkffkffktDpaeaafcaeaaeaaeajhgjhgaqjaqjaqjaqjxUKaaaapcapckTmapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcdZUpYqykMkCdbWJolfeyisZujXwjOCxlkpqTivBjHYivBlChnjSfSzfDgxgKcDqsTuosRawyfjKdImjPAkgGrTIhzPbhyyjLbuwprowBRqzwffkmuvbfcwMbkeOfmCpuUoCEtDphJjgKCaeajhgjhgjhgjhgapcapcapcaqjaaaaaaapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcdZUqnzykMybjlRiolfvPuwCKjXwoRRwiRjdRvaevaevaeqpliEpjbOkNFjgOmwZpHUroGroGpfciaRjPAbPCdBtozwkWZtQkvUCjPAxSrqzGcLtcmwhBebOEfbAojqkRwakKtDpvfQtedvtijhgjhgjhgjhgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcdZUsNBsNBcihppffHnwqguctjXweqCcjcrePieLhAomSQeotnjSfTedpBjgObbViUNpASnpicaddImjPAkgGrTIprXqLHljgnPojPAeCItgtffkrDUiRxxGhxyghHHdHaoCEtDpqaUiFpvtijhgjhgjhgjhgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcaqjjhgsNBewBxldrHtnLXeIEjXwnjSnjSckonjSnlInlInlInlIvYrdpFjgOjgOjkXjgOjgOjgOjgOptqptqptqptqjPAvJcjPAjPAlYanmBffkffkffkesFffkffkffkffktDpqaUfzraeajhgjhgjhgjhgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgjhgjhgjhgsNBgRplCGjUjfmRvXejXwwIlbGLxsFnjSjgoxNtrlCnlIvYrdpFjgObOSdVRyjjeLAvxIivoptqrGffygptqlbOxRvjMJjPAlYanmBffkpobjySomeffkwjfkZfkZIummgLFpAtaeaaeaaeajhgjhgjhgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgjhgsNBsNBsNBsNBsNBsNBqwlqzTvXejXwibqkfLwpNnjSrngggptHXnlIvYrdpFjgOaWsdfCwFmeLAcnTcbkptqobCfrhptqflbmQsjoCjPAlYanmBffkugeitZqPRffkfboxIRrZlummfywpAtvswpWIaeaaeajhgjhgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcaaaaaaepgapcaqjapcjhgsNBfSxsUGuLrwTusNBmKsmKsdFrkTzfammKsmKsnnGfTepeNnnGvWXcHngLSwHSloOgdliPVqKUvDpaejnNwpkCfxxnnGsVRtgtnnGjQGlsGsMlpzHgUAfvysAMgbHaeaqQgwJTuSFaeaapcapcapcapcapcepgaaaaaaapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcepgapcdZUsNBsNBkqqoOxfHnmyXfpljXwnjSnjSnjSnjSnjSnjSnjSnjStUYxbIjgOjgOjgOjgOjgOjgOjgOjPAjPAjPAjPAjPAjPAjPAjPAsUFnmBffkffkffkffkffkffkffkffktDpaeaafcaeaaeaaeajhgjhgaqjaqjaqjaqjxUKaaaapcapckTmapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcdZUpYqykMkCdbWJolfeyisZujXwjOCxlkpqTkAtjHYvaelChbUefSzfDgxgKcDqsTuosRawyroGdImjPAkgGrTIhzPbhyyjLbuwprowBRqzwffkmuvbfcwMbkeOfmCdHaoCEtDphJjgKCaeajhgjhgjhgjhgapcapcapcaqjaaaaaaapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcdZUqnzykMybjlRiolfvPuwCKjXwkRwpuUpxxtgccpEmSQqplnjSiEpkNFjgOmwZoQZkcViUNroGiaRjPAqLHdBtujwkWZtQkvUCjPAxSrqzGcLtcmwhBebOEfbAojqdHaakKtDpvfQtedvtijhgjhgjhgjhgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcdZUsNBsNBcihppffHnwqguctjXweqCqrueMxieLhAomSQeotnjSjdRdpBjgObbVnjvpASnpiwPwdImjPAloushVprXawgljgnPojPAeCItgtffkrDUiRxxGhxyghHHdHaoCEtDpqaUiFpvtijhgjhgjhgjhgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcaqjjhgsNBewBxldrHtnLXeIEjXwnjSnjSckonjSnlInlInlInlIvYrdpFjgOjgOjkXjgOjgOjgOjgOptqptqptqptqmQsjPAjPAjPAlYanmBffkffkffkesFdMfffkffkffktDpqaUfzraeajhgjhgjhgjhgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgjhgjhgjhgsNBgRplCGjUjfmRvXejXwwIlbGLxsFnjSjgoxNtrlCnlIvYrdpFjgObOSdVRyjjeLAvxIivoptqrGffygptqlbOjrajMJjPAlYanmBffkpobjySomeffkwjfkZfkZIummgLFpAtaeaaeaaeajhgjhgjhgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgjhgsNBsNBsNBsNBsNBsNBqwlqzTvXejXwibqkfLwpNnjSrngggptHXnlIvYrdpFjgOaWsdfCwFmeLAcnTcbkptqobCfrhptqflbjoCjoCjPAlYanmBffkugeitZqPRffkfboxIRrZlummfywpAtvswpWIaeaaeajhgjhgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgsNBsNBxIqsIAunkrUrhVLqwljXlmmpjXwnjSnjSnjSnjSttwnlInlInlIrqTxsQjgOguncaSnTheLAvdiaKLptqsLMfvhptqpJfdpOaBejPAhQujTTffkffkffkffkffkaUouByuByummqaUpAtsgqdmxjmevtijhgjhgapcapcapcdfZapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgylLsYVyfnuLraAfyfnhVLcfpdClcuzpfEfPjaPzhdJiKsmKLlwCckUnlIbkCkbBjgOjgOjgOjgOeLAbiMeLAptqptqvjgptqptqptqptqptqtJTesKuByjPRclrnWVlRxdJurgOdcTummqaUpAtqLrbOlblkaeajhgjhgapcapcapcavHapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgsNBjtvuLryfnfCWuLrhVLeXUuLrgerpfEmnottOxRuaFNdpToFVwiEbUejbOslkeLAxMavicylAkABuYmpESptqxPMiBftCJoZisZgooGptquSdqzGjjlblDwikwiktEmaXNkAtlzXummrtMpAtkolsgqjSSvtijhgjhgaqjaqjaqjepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgylLvTEuLraAfuLryfnhVLxHVuLrpOUpfEfPjhowrdDbgEelBpEUfUEnlIpGVxbIeLArbjhKrhKrgqTgvCfRdptqhguxVWpxxtgctgcwvZptqsUFucAuByfhritIuXntwYmaEjIkdcTummqaUpAtrcTnMnfWzaeajhgapcapcapcapcepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgsNBsNBhfmaHxfhgihnhVLfSxsLVpOUpfEnlInlInlInlInlInlInlInlIvYbfDgtjaketuWTwGXtQWoUdpESptqkQovbbfJDbJohlOwRhgAnwBRnmBuByuByuByuByuByuByuByuByummwlXcqzcvCcvCcvCcvCcvCapcapcapcepgepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgjhgsNBsNBsNBsNBsNBsNBsNBsNBaFnpldeJkgPmcbziaYmKveNJnbotnoxNrsuweLAeLAeLAeLAeLAeLAeLAptqptqiYCiYCiYCiYCiYCiYCqrzdTReJFvXlxJnpXCaVjlINlouabVsjLwYOkWBkWBcvCelzvvysVXapcapcapcepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgcvCcfypldcbziARohSrQKqLDrBeeaWoKAeMPtIFhoZiVEcOxqRadmbbLcopniHLhoZlpZiXseJCiDQqffiYCbqSqzGkNrfmxykLxWmuSwrYjvXGkaLsjLwYOnAteQUnIuhSUhdMsVXapcapcapcepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgjhgjhgjhgjhgjhgjhgcvCcvCcfypldxVwtTocbzvtdfqVeCsfEDtnoxynfDgaeejnbxKXkTshoZxQFjZoaZQhoZgcQiXsmLTiXsumqiYClYatgteJFryKfgjjDgvRwhgNlouabVsjLwYOeQUrHDcvCwMXeQUsVXaqjaqjaqjepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgcvCcvCcqzcfypldpldpldpldpldhGTtnotnotnoffQkNFhoZkVgfrGwPvhoZhoZhoZhoZhoZiYCbGQmLTiXsrcRiYCdYfnmBeJFeJFeJFstgsjLsjLsjLsjLsjLwYOeQUjUfcvCcvCcvCcvCapcapcapcavHapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgcvChSUcqzcfyvvNiDwkWBkWBpldaAAhnKjVAtnoffQdpFhoZalAprPidDoROiYCuYrpMPbdGiYCdxlklUdAfvIQpocaVvoKMeJFwUVjjYoUSsjLfJRooUtIimEkgGhhSUhSUcvCapcaqjapcapcapcapcaqjapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc -apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgcvChSUcqztafwyHwyHfbncBtpldhIhwJdqjxtnojKowSChoZpeffGawapoROiYCiMMidAwNNtSOxGflJneTWeyriYCvAsoIFeJFvTunrscMksjLkFvvvMsdSfMEtCScvCcvCcvCjhgdZUapcapcapcapcaqjapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgylLsYVyfnuLraAfyfnhVLcfpdClcuzpfEfPjhowsHNiKsmKLjHDckUoKAbkCkbBjgOjgOjgOjgOeLAbiMeLAptqptqvjgptqptqptqptqptqtJTesKuByjPRclrnWVlRxdJurgOdcTummqaUpAtqLrbOlblkaeajhgjhgapcapcapcavHapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgsNBjtvuLryfnfCWuLrhVLeXUuLrgerpfEmnoolxwRmolxhxMxRuwiEnlIjbOslkeLAxMavicylAkABuYmpESptqxPMiBftCJoZisZgooGptquSdqzGjjlblDwikjOytEmaXNuNJlzXummrtMpAtkolsgqjSSvtijhgjhgaqjaqjaqjepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgylLvTEuLraAfuLryfnhVLxHVuLrpOUpfEvJcmcQrdDbgEelBxRufUEnlIpGVxbIeLArbjhKrsazgqThKrfRdptqhguxVWanhwiRsZgwvZptqsUFtgtuByfhritIuXntwYmaEjIkxRvummqaUpAtrcTnMnfWzaeajhgapcapcapcapcepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgsNBsNBhfmaHxfhgihnhVLfSxsLVpOUpfEnlInlInlInlInlInlInlInlIvYbtFItjaketuWTwGXtQWoUdpESptqkQovbbpzbbJohlOwRhgAnwBRnmBuByuByuByuByuByuByuByuByummwlXcqzcvCcvCcvCcvCcvCapcapcapcepgepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgjhgsNBsNBsNBsNBsNBsNBsNBsNBaFnpldeJkgPmqLDtTodRNrQKnbotnoxNrsuweLAeLAeLAeLAeLAeLAeLAptqptqiYCiYCiYCiYCiYCiYCqrzdTReJFvXlxJnpXCaVjlINpKHabVsjLwYOkWBkWBcvCelzvvysVXapcapcapcepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgjhgjhgjhgjhgjhgjhgjhgjhgcvCcfypldbTysRMtqhkrZeQxrQKeaWtnoeMPtIFhoZiVEcOxqRadmbbLcopniHLhoZlpZtIPeJCiXsqffiYCbqSqzGkNrfmxykLxWmuSwrYjvXGkaLsjLwYOnAteQUnIuhSUhdMsVXapcapcapcepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgjhgjhgjhgjhgjhgjhgcvCcvCcfypldxVweYgfnnvtdgcWeCsfEDaFqxynfDgaeejnbxKXkTshoZxQFjZoaZQhoZgcQaKmmLTiXsumqiYClYatgteJFryKfgjjDgvRwhgNvXGabVsjLwYOeQUrHDcvCwMXeQUsVXaqjaqjaqjepgapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgcvCcvCcqzcfypldpldpldpldpldhGTtnotnotnofBAtgthoZkVgfrGwPvhoZhoZhoZhoZhoZiYCbGQmLTiXsrcRiYCdYfnmBeJFeJFeJFstgsjLsjLsjLsjLsjLwYOeQUjUfcvCcvCcvCcvCapcapcapcavHapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgcvChSUcqzcfyvvNiDwkWBkWBpldaAAhnKjVAtnoffQnmBhoZalAprPidDoROiYCuYrpMPbdGiYCdxlklUdAfvIQpocaVvoKMeJFwUVjjYoUSsjLfJRooUtIimEkgGhhSUhSUcvCapcaqjapcapcapcapcaqjapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc +apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgcvChSUcqztafwyHwyHfbncBtpldhIhwJdqjxtnojKowSChoZpeffGawaphNRiYCiMMidAwNNtSOxGflJneTWeyriYCvAsoIFeJFvTunrscMksjLkFvvvMsdSfMEtCScvCcvCcvCjhgdZUapcapcapcapcaqjapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgcvCeQUcqzcqzcqzrHDcvCahppldpldpldpldpldmpscvCmiHmiHmiHmiHmiHfbpfbpfbpfbpfbpfbpfbpfbpfbpfbpcvCmpssjLsjLsjLsjLsjLouEkFYjcJnuNhNhgGwtXEbFIbFIdZUapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgcvCeQUkrOiIXcvCcvCcvCvidwyHeBywyHfFqfFqsEfdOIfLvdOIbDSnfFlwadOIdOIajCdOIuTTbDSnfFlwadOIfLvdOIiJcfFqfFqppKwyHvDkejhelFliIeTAvEPgGwhIzbFIbFIdZUapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc apcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcjhgjhgcvCcvCcvCcvCcvCjhgcvCcvCcvCcvCgQAkWBrHDhSUmmBiIXwMXcvCcvCcvCjdpujUbvAlFAcEpcvCcvCcvCeQUxXQhSUlRRlMSkWBkWBwMXofNwSUwSUfdqoQlqYhcvCcvCjhgjhgdZUapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapcapc diff --git a/maps/southern_cross/southern_cross-5.dmm b/maps/southern_cross/southern_cross-5.dmm index dbb0a03256..012ade5f42 100644 --- a/maps/southern_cross/southern_cross-5.dmm +++ b/maps/southern_cross/southern_cross-5.dmm @@ -1,36 +1,51 @@ "aa" = (/obj/effect/overmap/visitable/planet/Sif,/turf/simulated/mineral/sif,/area/surface/outside/plains/mountains) +"ab" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"ac" = (/turf/simulated/wall/r_wall,/area/surface/outpost/engineering/atmos_room) "ad" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "ae" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "af" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "ag" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/tools) -"ah" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/catwalk,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"ah" = (/obj/structure/sign/warning/radioactive,/turf/simulated/wall/r_wall,/area/surface/outpost/engineering/atmos_room) "ai" = (/obj/machinery/mineral/stacking_machine,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/refinery) +"aj" = (/obj/effect/wingrille_spawn/reinforced_phoron,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/blast/radproof{id = "EngineReactor"; rad_resistance = 150},/turf/simulated/floor/reinforced,/area/surface/outpost/engineering/reactor_smes) "ak" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "al" = (/obj/effect/floor_decal/borderfloor,/obj/structure/table/standard,/obj/item/clothing/under/shorts/blue,/obj/item/clothing/gloves/boxing/blue,/obj/effect/floor_decal/corner/black{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) "am" = (/obj/item/weapon/stool/padded,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "an" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/main/search_and_rescue) "ao" = (/turf/unsimulated/wall/planetary/sif,/area/surface/outside/ocean) -"ap" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"ap" = (/obj/structure/closet/emcloset,/obj/machinery/camera/network/engineering_outpost{c_tag = "ENG - Mining Outpost Power 2"},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"aq" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "ar" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "as" = (/obj/effect/floor_decal/borderfloorblack,/obj/effect/floor_decal/industrial/danger,/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "at" = (/obj/effect/floor_decal/steeldecal/steel_decals_central1{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/mining_main) "au" = (/obj/machinery/light,/turf/simulated/shuttle/floor/voidcraft/external,/area/surface/outpost/wall) -"av" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/obj/structure/catwalk,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"av" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "aw" = (/obj/machinery/door/firedoor/multi_tile/glass,/obj/machinery/door/airlock/multi_tile/metal{name = "Sauna"},/obj/effect/floor_decal/steeldecal/steel_decals_central1{dir = 8},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/civilian/sauna) +"ax" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "ay" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/right_three) "az" = (/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/white/border{dir = 10},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) +"aA" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"aB" = (/obj/effect/floor_decal/industrial/warning{dir = 5},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 0; external_pressure_bound_default = 0; frequency = null; icon_state = "map_vent_in"; initialize_directions = 1; internal_pressure_bound = 4000; internal_pressure_bound_default = 4000; pressure_checks = 2; pressure_checks_default = 2; pump_direction = 0; use_power = 1},/turf/simulated/floor/reinforced/airless,/area/surface/outpost/engineering/reactor_smes) "aC" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/plating{icon_state = "asteroidplating2"},/area/surface/outpost/mining_main/exterior) +"aD" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan{dir = 1},/obj/machinery/meter,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"aE" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 8; start_pressure = 4559.63},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "aF" = (/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "aG" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/storage) -"aH" = (/obj/machinery/atmospherics/binary/pump/on,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"aH" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "aI" = (/obj/machinery/space_heater,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) +"aJ" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"aK" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) "aL" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/purple/border,/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) "aM" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/main/corridor/right_lower) "aN" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Long Range Teleporter Access"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/gateway) "aO" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "aP" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/effect/floor_decal/corner/blue/border{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) +"aQ" = (/obj/effect/overlay/snow/floor,/obj/structure/grille,/turf/simulated/floor/plating/sif/planetuse,/area/surface/outpost/engineering/atmos_room) +"aR" = (/obj/effect/overlay/snow/floor,/turf/simulated/floor/plating/sif/planetuse,/area/surface/outpost/engineering/atmos_room) "aS" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) +"aT" = (/obj/machinery/atmospherics/pipe/tank/phoron{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "aU" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) +"aV" = (/obj/machinery/atmospherics/omni/atmos_filter{tag_east = 5; tag_north = 2; tag_south = 1; tag_west = 6},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "aW" = (/obj/structure/disposaloutlet{dir = 8},/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/refinery) "aX" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_south) "aY" = (/turf/simulated/wall,/area/surface/outpost/mining_main/uxstorage) @@ -40,10 +55,14 @@ "bc" = (/obj/structure/closet/secure_closet/guncabinet{req_access = list(43,67); req_one_access = newlist()},/obj/effect/floor_decal/corner/purple{dir = 5},/obj/effect/floor_decal/corner/purple{dir = 10},/obj/item/weapon/gun/energy/locked/frontier,/obj/item/weapon/gun/energy/locked/frontier,/obj/item/weapon/gun/energy/locked/frontier,/obj/item/weapon/gun/energy/locked/frontier,/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9,/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/exploration) "bd" = (/obj/effect/floor_decal/corner/white{dir = 9},/obj/effect/floor_decal/corner/white{dir = 6},/obj/structure/bed/chair,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "be" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/storage) +"bf" = (/obj/structure/table/steel,/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/red/border{dir = 10},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 8},/obj/item/weapon/storage/box/nifsofts_security,/turf/simulated/floor/tiled,/area/surface/outpost/security) "bg" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) +"bh" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4},/obj/machinery/atmospherics/pipe/simple/visible/cyan,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"bi" = (/obj/machinery/atmospherics/pipe/tank/carbon_dioxide{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "bj" = (/obj/machinery/conveyor{id = "mining_north"},/obj/machinery/mineral/output,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/exterior) "bk" = (/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/obj/structure/bed/chair,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "bl" = (/obj/structure/fence,/turf/simulated/floor/outdoors/snow/sif/planetuse,/area/surface/outside/plains/outpost) +"bm" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security) "bn" = (/obj/machinery/disposal,/obj/effect/floor_decal/corner/white{dir = 9},/obj/effect/floor_decal/corner/white{dir = 6},/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "bo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "bp" = (/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) @@ -54,16 +73,20 @@ "bu" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/industrial/danger{dir = 1},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/gateway) "bv" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/door/blast/shutters{dir = 8; id = "garage2"; name = "Garage Shutters"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/airlock/right_one) "bw" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) +"bx" = (/obj/machinery/door/firedoor/border_only,/obj/structure/grille,/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "by" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "bz" = (/turf/simulated/floor/water/shoreline{dir = 9},/area/surface/outside/ocean) "bA" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) +"bB" = (/obj/structure/closet/secure_closet/guncabinet,/obj/effect/floor_decal/corner/red{dir = 6},/obj/effect/floor_decal/corner/red{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "bC" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "bD" = (/obj/structure/table/standard,/obj/item/weapon/soap/syndie,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_6) "bE" = (/obj/effect/floor_decal/corner/purple{dir = 10},/obj/effect/floor_decal/corner/purple{dir = 5},/obj/machinery/portable_atmospherics/canister/oxygen,/obj/effect/floor_decal/steeldecal/steel_decals9,/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/industrial/outline,/obj/machinery/alarm{dir = 1; pixel_y = -25},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/exploration) "bF" = (/obj/machinery/light,/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_one) "bG" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) -"bH" = (/obj/machinery/atmospherics/pipe/manifold/visible/yellow{dir = 8},/obj/machinery/meter,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"bH" = (/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "bI" = (/obj/effect/floor_decal/steeldecal/steel_decals_central1{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/exploration/containment) +"bJ" = (/obj/machinery/atmospherics/omni/atmos_filter{tag_east = 7; tag_north = 2; tag_south = 1},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"bK" = (/obj/machinery/atmospherics/pipe/tank/nitrous_oxide{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "bL" = (/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) "bM" = (/obj/structure/table/rack,/obj/structure/window/basic{dir = 8},/obj/structure/window/basic,/obj/item/clothing/shoes/boots/winter,/obj/item/clothing/suit/storage/hooded/wintercoat,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/status_display{pixel_x = -32},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/left_one) "bN" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 1},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) @@ -72,38 +95,62 @@ "bQ" = (/obj/machinery/conveyor{dir = 4; id = "mining_internal"},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/refinery) "bR" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/catwalk,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating/sif/planetuse,/area/surface/outside/path/plains) "bS" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/machinery/light,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) +"bT" = (/obj/effect/overlay/snow/floor,/obj/machinery/light/small,/turf/simulated/floor/plating/sif/planetuse,/area/surface/outpost/engineering/atmos_room) "bU" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_three) +"bV" = (/obj/machinery/atmospherics/pipe/manifold/visible/yellow{dir = 8},/obj/machinery/meter,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "bW" = (/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/surface/outpost/civilian/emergency_storage) "bX" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green,/obj/machinery/light_switch{pixel_x = 22},/turf/simulated/floor/carpet/oracarpet,/area/surface/outpost/main/dorms/dorm_1) "bY" = (/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/brown/border{dir = 10},/obj/structure/table/rack,/obj/item/device/suit_cooling_unit,/obj/item/device/suit_cooling_unit,/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner2{dir = 8},/obj/machinery/light,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "bZ" = (/turf/simulated/floor/water/shoreline{dir = 8},/area/surface/outside/ocean) +"ca" = (/obj/machinery/atmospherics/binary/pump{dir = 4; name = "Air Tank Bypass Pump"},/obj/machinery/atmospherics/pipe/simple/visible/cyan,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"cb" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/obj/effect/floor_decal/industrial/outline,/obj/machinery/portable_atmospherics/canister/empty,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"cc" = (/obj/effect/overlay/snow/floor,/obj/structure/disposaloutlet{dir = 1},/obj/structure/disposalpipe/trunk,/turf/simulated/floor/plating/sif/planetuse,/area/surface/outpost/engineering/atmos_room) +"cd" = (/obj/machinery/disposal,/obj/machinery/light_construct{dir = 4},/obj/effect/floor_decal/corner/red{dir = 9},/obj/effect/floor_decal/corner/red{dir = 6},/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "ce" = (/obj/structure/table/steel,/obj/random/maintenance/engineering,/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) "cf" = (/obj/machinery/door/firedoor/glass/hidden,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) "cg" = (/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/obj/structure/table/glass,/obj/machinery/newscaster{pixel_x = -30},/obj/item/weapon/reagent_containers/food/drinks/britcup,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "ch" = (/obj/structure/table/rack,/obj/item/weapon/shovel,/obj/item/weapon/tool/wrench,/obj/item/weapon/pickaxe,/obj/item/weapon/tool/crowbar,/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/brown/border{dir = 6},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "ci" = (/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/obj/structure/table/glass,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "cj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_external/public{name = "Airlock Access"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/airlock/right_one) +"ck" = (/obj/machinery/portable_atmospherics/powered/scrubber,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"cl" = (/obj/machinery/atmospherics/binary/pump{dir = 8},/obj/effect/floor_decal/industrial/warning/corner,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) "cm" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_6) "cn" = (/obj/effect/zone_divider,/turf/unsimulated/wall/planetary/sif,/area/surface/outside/plains/mountains) "co" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/junction{dir = 8},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) +"cp" = (/obj/machinery/atmospherics/binary/pump/on{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"cq" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/reinforced/airless,/area/surface/outpost/engineering/reactor_smes) +"cr" = (/obj/machinery/atmospherics/binary/pump/on,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "cs" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "ct" = (/obj/structure/table/rack,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/structure/window/basic,/obj/structure/window/basic{dir = 4},/obj/item/weapon/mining_scanner,/obj/item/clothing/mask/breath,/obj/item/clothing/suit/space/void/mining,/obj/item/clothing/head/helmet/space/void/mining,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "cu" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "cv" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/firealarm{dir = 1; pixel_y = -25},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_south) "cw" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) "cx" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) +"cy" = (/obj/machinery/pipedispenser,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"cz" = (/obj/effect/overlay/snow/floor,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating/sif/planetuse,/area/surface/outpost/engineering/atmos_room) "cA" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) +"cB" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/reinforced/airless,/area/surface/outpost/engineering/reactor_smes) +"cC" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "cD" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) +"cE" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/maintenance_hatch{name = "Outpost SMES Room"; req_one_access = list(11)},/turf/simulated/floor/tiled/techfloor/grid,/area/surface/outpost/engineering/reactor_smes) +"cF" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/engineering/atmos_room) "cG" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "cH" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "cI" = (/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/right_two) +"cJ" = (/obj/machinery/atmospherics/pipe/manifold4w/visible,/obj/effect/floor_decal/industrial/warning,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) +"cK" = (/obj/machinery/atmospherics/pipe/simple/visible/universal,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "cL" = (/obj/machinery/conveyor{dir = 9; id = "mining_internal"},/obj/machinery/mineral/output,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/refinery) "cM" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/structure/table/steel,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/item/weapon/extinguisher/mini,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "cN" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_three) "cO" = (/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_two) +"cP" = (/obj/machinery/pipedispenser/disposal,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "cQ" = (/turf/simulated/wall,/area/surface/outpost/main/showers) +"cR" = (/obj/effect/overlay/snow/floor,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plating/sif/planetuse,/area/surface/outpost/engineering/atmos_room) "cS" = (/obj/machinery/door/airlock/multi_tile/glass{name = "Exploration Prep"; req_access = null; req_one_access = list(43,67)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/steeldecal/steel_decals_central1{dir = 8},/obj/machinery/door/firedoor/multi_tile/glass,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/exploration) +"cT" = (/obj/machinery/door/firedoor/border_only,/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"cU" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security) "cV" = (/obj/machinery/vending/loadout/accessory,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) +"cW" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/security) "cX" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) "cY" = (/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 6},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "cZ" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) @@ -112,6 +159,7 @@ "dc" = (/obj/structure/table/bench/steel,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "dd" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/industrial/danger{dir = 1},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/teleporter) "de" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/purple/border,/obj/structure/closet/secure_closet/pilot,/obj/item/device/cataloguer/compact,/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) +"df" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "dg" = (/obj/structure/janitorialcart,/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/purple/border{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/main/janitor) "dh" = (/obj/effect/floor_decal/borderfloorblack{dir = 4},/obj/effect/floor_decal/industrial/danger{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "di" = (/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) @@ -120,16 +168,25 @@ "dl" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/corner/blue/border,/obj/effect/floor_decal/borderfloor/corner2{dir = 9},/obj/effect/floor_decal/corner/blue/bordercorner2{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) "dm" = (/obj/effect/shuttle_landmark{base_area = /area/surface/outside/plains/normal; base_turf = /turf/simulated/floor/outdoors/snow/sif/planetuse; landmark_tag = "outpost_nw"; name = "Northwest Outpost Perimiter"},/turf/simulated/floor/outdoors/snow/sif/planetuse,/area/surface/outside/plains/normal) "dn" = (/turf/simulated/floor/tiled/monofloor,/area/surface/outpost/main/landing) +"do" = (/obj/machinery/computer/gyrotron_control{id_tag = "Reactor Gyrotron"},/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/yellow/border{dir = 9},/obj/machinery/button/remote/blast_door/radproof{id = "EngineReactor"; name = "Reactor Blast Doors"; pixel_x = -25},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/reactor_smes) "dp" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) +"dq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/catwalk,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"dr" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/catwalk,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"ds" = (/obj/machinery/cablelayer,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "dt" = (/obj/structure/fence{dir = 8},/turf/simulated/floor/outdoors/snow/sif/planetuse,/area/surface/outside/plains/outpost) "du" = (/obj/item/weapon/stool/padded,/obj/machinery/camera/network/civilian{c_tag = "CO - Pool 1"; dir = 8},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) +"dv" = (/turf/simulated/wall/r_wall{cached_rad_resistance = 150},/area/surface/outpost/engineering/atmos_room) "dw" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) "dx" = (/turf/simulated/wall,/area/surface/outpost/main/gym) +"dy" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"dz" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "dA" = (/obj/machinery/vending/loadout/clothing,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "dB" = (/obj/effect/floor_decal/steeldecal/steel_decals6,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) "dC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) +"dD" = (/obj/structure/disposalpipe/segment,/obj/structure/catwalk,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "dE" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_one) "dF" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/firealarm{pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) +"dG" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "dH" = (/obj/effect/floor_decal/stairs{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/gym) "dI" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "dJ" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_2) @@ -139,7 +196,8 @@ "dN" = (/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/obj/structure/bed/chair{dir = 4},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "dO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "dP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) -"dQ" = (/obj/item/modular_computer/console/preset/security{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"dQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/light/small{dir = 4},/obj/machinery/light_switch{pixel_x = -11; pixel_y = 22},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/cyan{d2 = 2; icon_state = "0-2"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) +"dR" = (/obj/machinery/power/port_gen/pacman,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "dS" = (/turf/simulated/wall,/area/surface/outpost/civilian/sauna) "dT" = (/obj/effect/floor_decal/steeldecal/steel_decals_central1{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/search_and_rescue) "dU" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) @@ -147,6 +205,7 @@ "dW" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/airlock/left_three) "dX" = (/obj/effect/zone_divider,/turf/unsimulated/wall/planetary/sif{icon_state = "rock-dark"},/area/surface/outside/plains/mountains) "dY" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) +"dZ" = (/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/disposal,/obj/machinery/light,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/yellow/border{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "ea" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/main/exploration) "eb" = (/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_north) "ec" = (/obj/effect/decal/cleanable/dirt,/obj/random/trash,/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/right_two) @@ -154,7 +213,7 @@ "ee" = (/obj/effect/zone_divider,/turf/simulated/floor/water,/area/surface/outside/ocean) "ef" = (/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/white/border{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "eg" = (/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/effect/floor_decal/steeldecal/steel_decals_central7,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) -"eh" = (/obj/structure/flora/pottedplant/stoutbush,/obj/machinery/camera/network/security{c_tag = "SO - Security Checkpoint"; dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"eh" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/disposal,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/yellow/border,/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "ei" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera/network/main_outpost{c_tag = "MO - Landing Zone 3"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) "ej" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "ek" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) @@ -163,6 +222,8 @@ "en" = (/obj/effect/floor_decal/spline/plain{dir = 1},/turf/simulated/floor/water/pool,/area/surface/outpost/civilian/pool) "eo" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/right_one) "ep" = (/obj/structure/table/rack,/obj/structure/window/basic{dir = 4},/obj/structure/window/basic,/obj/item/clothing/shoes/boots/winter,/obj/item/clothing/suit/storage/hooded/wintercoat,/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/right_one) +"eq" = (/obj/structure/closet/crate,/obj/item/stack/material/phoron{amount = 25},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"er" = (/obj/structure/bed/chair/office/dark{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/security) "es" = (/obj/structure/toilet{dir = 1},/obj/structure/window/basic{dir = 4},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_6) "et" = (/obj/structure/table/standard,/obj/item/weapon/towel{color = "#3fc0ea"; name = "light blue towel"; pixel_x = 2; pixel_y = 4},/obj/item/weapon/towel{color = "#3fc0ea"; name = "light blue towel"; pixel_x = 2; pixel_y = 4},/obj/item/weapon/towel{color = "#3fc0ea"; name = "light blue towel"; pixel_x = 2; pixel_y = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/machinery/light{dir = 8},/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle{pixel_x = -4; pixel_y = 6},/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) "eu" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) @@ -171,19 +232,24 @@ "ex" = (/obj/machinery/mineral/input,/obj/machinery/conveyor{id = "mining_internal"},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/refinery) "ey" = (/obj/machinery/firealarm{dir = 1; pixel_y = -25},/turf/simulated/floor/holofloor/wood,/area/surface/outpost/main/gym) "ez" = (/obj/structure/closet/crate/secure/gear{name = "explorer crate"; req_access = list(43)},/obj/item/weapon/storage/belt/utility/full,/obj/item/weapon/storage/belt/utility/full,/obj/effect/floor_decal/industrial/outline,/obj/item/clothing/head/welding,/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/corridor/right_upper) +"eA" = (/obj/structure/table/steel,/obj/random/tool,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "eB" = (/obj/effect/floor_decal/borderfloorblack{dir = 8},/obj/effect/floor_decal/industrial/danger{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) +"eC" = (/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "eD" = (/obj/effect/floor_decal/borderfloorblack/corner{dir = 4},/obj/effect/floor_decal/industrial/danger/corner{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "eE" = (/obj/machinery/light/spot{dir = 8},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) "eF" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) +"eG" = (/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/engineering/atmos_room) "eH" = (/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light,/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_three) "eI" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/tools) "eJ" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/landing_north) +"eK" = (/obj/structure/disposalpipe/segment,/obj/structure/catwalk,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "eL" = (/obj/item/clothing/under/bathrobe,/obj/item/clothing/under/bathrobe,/obj/item/clothing/under/bathrobe,/obj/structure/closet/cabinet,/obj/item/clothing/shoes/sandal,/obj/item/clothing/shoes/sandal,/obj/item/clothing/shoes/sandal,/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) "eM" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_south) "eN" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_one) "eO" = (/obj/effect/step_trigger/teleporter/bridge/north_to_south,/obj/structure/railing,/turf/simulated/floor/water,/area/surface/outside/river/indalsalven) "eP" = (/obj/structure/boxingrope{dir = 1},/obj/structure/boxingrope{dir = 4},/obj/structure/boxingrope{dir = 6},/turf/simulated/floor/boxing,/area/surface/outpost/main/gym) "eQ" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) +"eR" = (/obj/structure/catwalk,/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "eS" = (/obj/structure/fence/corner{dir = 9},/obj/effect/zone_divider,/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/plains/outpost) "eT" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/engineering{name = "SMES Access"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/civilian/smes) "eU" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/purpledouble,/turf/simulated/floor/carpet/purcarpet,/area/surface/outpost/main/dorms/dorm_2) @@ -194,40 +260,53 @@ "eZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "fa" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/sauna) "fb" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/gym) +"fc" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/reinforced/airless,/area/surface/outpost/engineering/reactor_smes) "fd" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_two) -"fe" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/red/border{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) -"ff" = (/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"fe" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) +"ff" = (/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "fg" = (/obj/structure/closet/lasertag/blue,/obj/item/stack/flag/blue,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "fh" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/drinks/bottle/wine,/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_6) "fi" = (/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) +"fj" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/disposalpipe/junction{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "fk" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = -32},/obj/structure/flora/pottedplant/flower,/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_2) "fl" = (/obj/structure/bed/chair/comfy/black,/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_3) "fm" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) "fn" = (/obj/structure/closet,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) +"fo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/catwalk,/obj/machinery/light/small,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "fp" = (/turf/simulated/wall,/area/surface/outpost/mining_main/exterior) "fq" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "fr" = (/obj/effect/floor_decal/industrial/outline/red,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/civilian/sauna) "fs" = (/obj/machinery/telecomms/relay/preset/southerncross/wild,/turf/simulated/floor/tiled/techmaint,/area/surface/outpost/main/tcomm) "ft" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "fu" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_north) +"fv" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/terminal,/obj/effect/floor_decal/industrial/warning,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/catwalk,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "fw" = (/obj/effect/overlay/snow/floor,/obj/machinery/disposal,/obj/machinery/light{dir = 1},/obj/structure/disposalpipe/trunk,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/civilian/smes) +"fx" = (/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/catwalk,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "fy" = (/obj/random/trash,/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room) "fz" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/purple/border{dir = 8},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) +"fA" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/light/small{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "fB" = (/obj/structure/dispenser/oxygen,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/landing_south) "fC" = (/obj/structure/table/standard,/obj/item/weapon/soap/deluxe,/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_1) -"fE" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/security) +"fD" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/catwalk,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"fE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/steel_reinforced,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/obj/effect/floor_decal/borderfloor/corner,/obj/item/weapon/extinguisher/mini,/obj/effect/floor_decal/corner/yellow/bordercorner,/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) +"fF" = (/obj/structure/table/rack/shelf/steel,/obj/item/stack/material/lead{amount = 30},/obj/fiftyspawner/plastic,/obj/fiftyspawner/plasteel,/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "fG" = (/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/white/border{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "fH" = (/obj/effect/landmark/start{name = "Search and Rescue"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) +"fI" = (/obj/structure/table/rack/shelf/steel,/obj/fiftyspawner/phoronglass,/obj/fiftyspawner/rglass,/obj/fiftyspawner/rods,/obj/fiftyspawner/steel,/obj/machinery/camera/network/engineering_outpost{c_tag = "ENG - Mining Outpost Power 1"; dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"fJ" = (/obj/machinery/light/small{dir = 1},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) +"fK" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/industrial/warning,/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/table/steel,/obj/machinery/cell_charger,/obj/random/powercell,/obj/machinery/camera/network/engineering_outpost{c_tag = "SUBS - Security Checkpoint"},/turf/simulated/floor/plating,/area/surface/outpost/security/smes) "fL" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_1) "fM" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_three) "fN" = (/obj/effect/floor_decal/spline/plain{dir = 10},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "fO" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/effect/floor_decal/industrial/danger{dir = 8},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/teleporter) "fP" = (/obj/machinery/light/spot,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) "fQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_6) +"fR" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "fS" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/blue,/area/surface/outpost/main/dorms/dorm_5) "fT" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "main5_airlock_control"; name = "Internal Access Button"; pixel_x = 5; pixel_y = -26},/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "main5_airlock_interior"; locked = 1; name = "Main Outpost Internal"},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/main/airlock/right_three) "fU" = (/obj/machinery/recharge_station,/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/white/border{dir = 6},/obj/machinery/camera/network/main_outpost{c_tag = "MO - Laundry 2"; dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "fV" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/black{dir = 5},/obj/structure/reagent_dispensers/water_cooler/full,/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) +"fW" = (/obj/structure/table/steel,/obj/machinery/cell_charger,/obj/structure/disposalpipe/segment,/obj/random/powercell,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "fX" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) "fY" = (/obj/structure/table/steel,/obj/random/junk,/obj/random/maintenance/engineering,/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room) "fZ" = (/obj/machinery/space_heater,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) @@ -237,9 +316,10 @@ "gd" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_one) "ge" = (/turf/simulated/wall/r_wall,/area/surface/outpost/mining_main) "gf" = (/obj/effect/step_trigger/teleporter/bridge/south_to_north,/obj/structure/railing{dir = 1},/turf/simulated/floor/water,/area/surface/outside/river/indalsalven) -"gg" = (/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/power/smes/buildable{RCon_tag = "Outpost - Main Power Unit 2"; charge = 1.5e+007; cur_coils = 3; input_attempt = 1; input_level = 750000; input_level_max = 750000; output_level = 750000; output_level_max = 750000},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"gg" = (/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/power/smes/buildable/outpost_substation{RCon_tag = "Outpost - Mining"; charge = 5e+006; input_attempt = 1; input_level = 150000; output_level = 150000},/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "gh" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/gen_room/smes_left) "gi" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 8},/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) +"gj" = (/obj/structure/cable/cyan{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes/buildable{RCon_tag = "Outpost Parallel - Main 1"; charge = 2e+007; cur_coils = 4; input_attempt = 1; input_level = 750000; output_level = 750000},/obj/structure/cable,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "gk" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/table/rack,/obj/machinery/camera/network/main_outpost{c_tag = "MO Left Wing - Airlock 2"},/obj/item/weapon/melee/umbrella{color = "#7c0d0d"},/obj/item/weapon/melee/umbrella{color = "#7c0d0d"},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/left_two) "gl" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/tools) "gm" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) @@ -250,23 +330,27 @@ "gr" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "gs" = (/obj/effect/floor_decal/spline/plain{dir = 5},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "gt" = (/turf/simulated/wall/r_wall,/area/surface/outpost/civilian/emergency_storage) +"gu" = (/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/closet/toolcloset,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) "gv" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_5) "gw" = (/obj/effect/overlay/snow/floor,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/civilian/fishing) "gx" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/structure/extinguisher_cabinet{pixel_x = -25},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "gy" = (/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "gz" = (/obj/effect/step_trigger/teleporter/bridge/west_to_east,/obj/structure/railing{dir = 4},/turf/simulated/floor/water,/area/surface/outside/river/indalsalven) "gA" = (/obj/effect/floor_decal/borderfloorwhite{dir = 10},/obj/effect/floor_decal/corner/paleblue/border{dir = 10},/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/firealarm{dir = 1; pixel_y = -25},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) +"gB" = (/obj/structure/table/steel,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = -12; pixel_y = -22},/obj/structure/cable/blue,/obj/item/weapon/storage/toolbox/electrical,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"gC" = (/obj/structure/catwalk,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/plating,/area/surface/outpost/engineering/storage) "gD" = (/obj/structure/bed/chair/comfy/black,/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_4) -"gE" = (/obj/effect/overlay/snow/floor,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/security/smes) -"gG" = (/obj/structure/catwalk,/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/power/terminal{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/surface/outpost/security/smes) +"gE" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/engineering/smes) +"gF" = (/obj/machinery/door/firedoor/border_only,/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/heavyduty{d2 = 2; icon_state = "0-2"},/obj/structure/cable,/obj/structure/window/reinforced/full,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/engineering/atmos_room) +"gG" = (/obj/machinery/power/smes/buildable/outpost_substation{RCon_tag = "Outpost - Engineering Outpost"; charge = 5e+006; input_attempt = 1; input_level = 150000; output_level = 150000},/obj/structure/cable/blue,/turf/simulated/floor/plating,/area/surface/outpost/engineering/smes) "gH" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "gI" = (/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "main8_airlock_exterior"; locked = 1; name = "Main Outpost External"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "main8_airlock_control"; name = "External Access Button"; pixel_x = -26},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/main/airlock/left_three) "gJ" = (/obj/structure/boxingropeenter{dir = 8},/turf/simulated/floor/boxing,/area/surface/outpost/main/gym) "gK" = (/turf/simulated/wall,/area/surface/outpost/main/gateway) "gL" = (/obj/machinery/light/spot{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) -"gM" = (/obj/machinery/power/terminal,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/structure/cable/yellow,/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "gO" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "gP" = (/obj/effect/floor_decal/borderfloor/cee{dir = 1},/obj/effect/floor_decal/industrial/danger/cee{dir = 1},/obj/machinery/door/window/brigdoor/westright{name = "Containment Pen"; req_one_access = list(43,1)},/obj/machinery/door/window/brigdoor/eastleft{name = "Containment Pen"; req_one_access = list(43,1)},/obj/machinery/door/blast/regular/open{id = "pen"; name = "Containment Lockdown Blast Doors"},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) +"gR" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/security/maa) "gS" = (/obj/effect/floor_decal/industrial/outline/red,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/mining_main/storage) "gT" = (/obj/effect/floor_decal/industrial/outline/red,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/airlock/landing_south) "gU" = (/obj/effect/floor_decal/techfloor/orange{dir = 10},/obj/structure/extinguisher_cabinet{pixel_x = -25},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/main/gateway) @@ -278,14 +362,16 @@ "hb" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/borderfloor/corner2{dir = 9},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "hc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) "hd" = (/turf/simulated/wall,/area/surface/outpost/civilian/pool) +"he" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/light_construct{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/security/maa) "hf" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_north) "hg" = (/obj/machinery/washing_machine,/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "hh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) -"hi" = (/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "sec1_airlock_exterior"; locked = 1; name = "Security Outpost External"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "sec1_airlock_control"; name = "External Access Button"; pixel_y = 26; req_one_access = list(1)},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/security) +"hi" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/camera/emp_proof{c_tag = "ENG - Outpost Reactor Core"; dir = 4; name = "Reactor Core"; network = list("Engine")},/turf/simulated/floor/reinforced/airless,/area/surface/outpost/engineering/reactor_smes) "hj" = (/obj/random/junk,/obj/random/junk,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/surface/outpost/main/laundry) "hk" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_one) "hm" = (/obj/structure/table/steel,/obj/structure/closet/secure_closet/medical_wall/pills{pixel_y = 32},/obj/item/weapon/storage/pill_bottle/spaceacillin,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -22; pixel_y = 12},/obj/random/medical/pillbottle,/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/tiled,/area/surface/outpost/main/search_and_rescue) "hn" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/bar) +"ho" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/surface/outpost/security) "hp" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_south) "hr" = (/obj/item/weapon/towel{color = "#b5651d"; name = "brown towel"},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_4) "hs" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) @@ -294,14 +380,16 @@ "hw" = (/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "main6_airlock_exterior"; locked = 1; name = "Main Outpost External"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "main6_airlock_control"; name = "External Access Button"; pixel_x = 26},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/main/airlock/left_one) "hx" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_north) "hz" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/right_one) -"hA" = (/obj/structure/bed/chair/office/dark{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"hA" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/glass_engineering{name = "Reactor Monitoring Room"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/engineering/monitoring) "hB" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/borderfloor/corner2{dir = 9},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 9},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/gateway) "hC" = (/obj/effect/overlay/snow/floor,/obj/machinery/vending/cola,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/civilian/smes) +"hD" = (/obj/structure/table/bench/standard,/obj/random/maintenance/engineering,/turf/simulated/floor/tiled/dark,/area/surface/outpost/security/maa) "hE" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/light,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) "hG" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_north) "hH" = (/obj/structure/table/steel,/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/brown/bordercorner{dir = 4},/obj/machinery/recharger,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) +"hI" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/security) "hJ" = (/turf/simulated/floor/wood{outdoors = 1},/area/surface/outside/path/plains) -"hK" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 10},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"hK" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "hM" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/restroom) "hN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "hO" = (/obj/structure/table/standard,/obj/effect/floor_decal/borderfloor{dir = 6},/obj/item/weapon/storage/laundry_basket,/obj/effect/floor_decal/corner/white/border{dir = 6},/obj/structure/extinguisher_cabinet{pixel_x = 25},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = -32},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) @@ -318,10 +406,11 @@ "ia" = (/obj/structure/table/standard,/obj/item/stack/material/steel{amount = 10},/obj/item/weapon/storage/toolbox/mechanical,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/orange/border,/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "ib" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals_central1{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/laundry) "ic" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled,/area/surface/outpost/main/gateway) -"if" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 6},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/extinguisher_cabinet{pixel_x = 25},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"if" = (/obj/structure/closet/secure_closet/engineering_personal,/obj/random/maintenance/engineering,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/yellow/border{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "ig" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) "ih" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/light_construct{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) "ii" = (/turf/simulated/wall/dungeon{icon = 'icons/obj/doors/shuttledoors.dmi'; icon_state = "door_locked"; name = "Wall Gate"},/area/surface/outpost/wall) +"ij" = (/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security) "ik" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "il" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall,/area/surface/outpost/mining_main/exterior) "im" = (/obj/structure/table/glass,/obj/item/weapon/storage/firstaid/adv{pixel_x = 5; pixel_y = 5},/obj/item/weapon/storage/firstaid/o2,/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/camera/network/main_outpost{c_tag = "MO - Search and Rescue Starboard"; dir = 8},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) @@ -330,21 +419,22 @@ "ip" = (/obj/effect/floor_decal/techfloor/orange{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/main/gateway) "iq" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_6) "ir" = (/obj/structure/ore_box,/obj/effect/floor_decal/corner/brown{dir = 9},/turf/simulated/floor/tiled/steel_dirty,/area/surface/outpost/mining_main/uxstorage) -"iu" = (/obj/structure/catwalk,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating,/area/surface/outpost/security/smes) +"it" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"iu" = (/obj/structure/catwalk,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/engineering/smes) "iv" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/machinery/light,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "ix" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/civilian/fishing) "iy" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/heavyduty{icon_state = "1-2"},/turf/simulated/wall/r_wall,/area/surface/outpost/mining_main/refinery) "iz" = (/obj/machinery/door/firedoor/border_only,/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/heavyduty,/obj/structure/cable{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/surface/outpost/civilian/smes) "iA" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/purple/border,/obj/effect/floor_decal/borderfloor/corner2,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/effect/floor_decal/corner/purple/bordercorner2,/obj/structure/table/rack,/obj/item/weapon/weldingtool,/obj/item/weapon/weldingtool,/obj/item/clothing/head/welding,/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) "iB" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Laundry"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/laundry) -"iC" = (/obj/structure/closet/secure_closet/guncabinet/phase{req_one_access = null},/obj/item/clothing/accessory/holster/hip,/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/red/border{dir = 5},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"iC" = (/obj/effect/wingrille_spawn/reinforced_phoron,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/radproof{dir = 4; rad_resistance = 150},/turf/simulated/floor/plating,/area/surface/outpost/engineering/monitoring) "iD" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/cable/heavyduty{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "iE" = (/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "civ1_airlock_exterior"; locked = 1; name = "Civilian Outpost External"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "civ1_airlock_control"; name = "External Access Button"; pixel_x = -26},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/civilian/fishing) "iF" = (/obj/structure/table/steel,/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/path/plains) "iH" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/search_and_rescue) "iI" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/surface/outpost/main/bar) "iJ" = (/obj/effect/decal/cleanable/dirt,/obj/effect/floor_decal/corner/brown{dir = 5},/obj/machinery/firealarm{pixel_y = 24},/turf/simulated/floor/tiled/steel_dirty,/area/surface/outpost/mining_main/uxstorage) -"iK" = (/obj/machinery/vending/security,/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/red/border{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"iK" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/closet/secure_closet/engineering_personal,/obj/machinery/light{dir = 4},/obj/random/maintenance/engineering,/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/yellow/border{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "iL" = (/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/purple/border{dir = 5},/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/corner/purple/bordercorner2{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) "iM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) "iN" = (/obj/structure/closet/hydrant{pixel_y = 32},/turf/simulated/floor/plating,/area/surface/outpost/civilian/emergency_storage) @@ -355,6 +445,7 @@ "iS" = (/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/plating,/area/surface/outpost/main/bar) "iT" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/right_one) "iU" = (/obj/structure/table/glass,/obj/item/inflatable{pixel_x = 6; pixel_y = 6},/obj/item/inflatable{pixel_x = 2; pixel_y = 2},/obj/item/inflatable{pixel_x = -2; pixel_y = -3},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) +"iV" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/engineering{name = "SMES Access"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/security/smes) "iW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/catwalk,/obj/machinery/power/terminal{dir = 4},/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room) "iX" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/sauna) "iY" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/machinery/computer/timeclock/premade/east,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) @@ -368,6 +459,8 @@ "jh" = (/obj/item/weapon/banner/nt,/turf/simulated/floor/outdoors/grass/sif/planetuse,/area/surface/outside/plains/normal) "ji" = (/obj/structure/sink{dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/restroom) "jj" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) +"jk" = (/obj/machinery/vending/security,/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/red/border{dir = 6},/obj/machinery/light,/turf/simulated/floor/tiled,/area/surface/outpost/security) +"jl" = (/turf/simulated/wall/r_wall{cached_rad_resistance = 150},/area/surface/outpost/engineering/auxiliary_storage) "jm" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "jn" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/junction/yjunction{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "jo" = (/obj/structure/fence,/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/plains/outpost) @@ -381,16 +474,20 @@ "jw" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_2) "jx" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 8},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "jz" = (/obj/structure/closet/wardrobe/xenos,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 6},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/gateway) +"jA" = (/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "jB" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) -"jC" = (/obj/structure/table/steel,/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/red/border{dir = 10},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 8},/obj/item/weapon/storage/box/nifsofts_security,/turf/simulated/floor/tiled,/area/surface/outpost/security) +"jC" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/camera/emp_proof{c_tag = "ENG - Outpost Foyeur"; dir = 10; name = "Engineering Outpost"; network = list("Engineering")},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/yellow/border,/obj/machinery/light_switch{pixel_x = -21; pixel_y = -21},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "jD" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/structure/railing,/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) +"jE" = (/turf/simulated/wall/r_wall,/area/surface/outpost/engineering/smes) "jF" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/main/corridor/left_lower) "jG" = (/obj/effect/floor_decal/techfloor/orange{dir = 5},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/main/gateway) "jH" = (/obj/machinery/teleport/hub,/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled/techmaint,/area/surface/outpost/main/teleporter) "jI" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) +"jK" = (/turf/simulated/wall/r_wall,/area/surface/outpost/security) "jL" = (/obj/machinery/door/firedoor/border_only,/obj/structure/grille,/obj/structure/window/reinforced/polarized/full{id = "dorm_tint6"},/obj/structure/window/reinforced/polarized{dir = 8; id = "dorm_tint6"},/turf/simulated/floor/plating,/area/surface/outpost/main/dorms/dorm_6) "jM" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/corner/blue/border,/obj/effect/floor_decal/borderfloor/corner2,/obj/effect/floor_decal/corner/blue/bordercorner2,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) "jN" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/reinforced,/area/surface/outpost/main/exploration/containment) +"jO" = (/obj/structure/table/reinforced,/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/item/device/gps/security,/turf/simulated/floor/holofloor/tiled/dark,/area/surface/outpost/security/maa) "jP" = (/obj/effect/floor_decal/spline/plain,/turf/simulated/floor/water/pool,/area/surface/outpost/civilian/pool) "jQ" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "2-4"},/obj/structure/cable/heavyduty{icon_state = "2-8"},/obj/structure/disposalpipe/junction{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "jR" = (/obj/machinery/door/firedoor/border_only,/obj/structure/grille,/obj/structure/window/reinforced/polarized/full{id = "sauna_tint1"},/turf/simulated/floor/plating,/area/surface/outpost/civilian/sauna) @@ -399,16 +496,17 @@ "jV" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green,/obj/machinery/light_switch{pixel_x = 22},/turf/simulated/floor/carpet/bcarpet,/area/surface/outpost/main/dorms/dorm_4) "jW" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/structure/table/steel,/obj/machinery/firealarm{dir = 1; pixel_y = -25},/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "jX" = (/obj/effect/floor_decal/borderfloorblack{dir = 4},/obj/effect/floor_decal/industrial/danger{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/turf/simulated/floor/tiled/steel,/area/surface/outpost/main/landing) -"jY" = (/obj/machinery/disposal,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/red/border,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"jY" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "jZ" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) +"ka" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/security) "kb" = (/turf/simulated/floor/water/deep,/area/surface/outside/lake/romsele) "kc" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/borderfloor/corner2,/obj/effect/floor_decal/corner/white/bordercorner2,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "kd" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_6) +"ke" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/surface/outpost/security) "kg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) "kh" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/path/plains) "kj" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_external/public{name = "Airlock Access"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/airlock/left_one) "kk" = (/obj/structure/boxingrope{dir = 4},/turf/simulated/floor/boxing,/area/surface/outpost/main/gym) -"kl" = (/obj/effect/floor_decal/rust,/turf/simulated/floor/plating,/area/surface/outpost/security/maa) "kn" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/airlock/landing_north) "ko" = (/obj/structure/table/standard,/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/white/border{dir = 9},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/structure/extinguisher_cabinet{pixel_x = -25},/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor/tiled,/area/surface/outpost/main/teleporter) "kp" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/refinery) @@ -416,13 +514,14 @@ "kr" = (/obj/effect/floor_decal/spline/plain{dir = 8},/turf/simulated/floor/water/pool,/area/surface/outpost/civilian/pool) "ks" = (/obj/structure/table/reinforced,/obj/item/weapon/tool/crowbar/red,/obj/item/device/flashlight,/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/left_two) "kt" = (/obj/item/weapon/reagent_containers/glass/bucket/wood,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = -12; pixel_y = 22},/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) -"ku" = (/obj/structure/table/reinforced,/obj/effect/floor_decal/borderfloor,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/effect/floor_decal/corner/red/border,/obj/machinery/alarm{dir = 1; pixel_y = -25},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"ku" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/disposalpipe/junction{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "kv" = (/obj/structure/undies_wardrobe,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "kw" = (/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/obj/machinery/light_switch{pixel_x = 22; pixel_y = -10},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "ky" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "kz" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/corridor/right_upper) "kA" = (/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) "kB" = (/obj/structure/cable/blue,/obj/machinery/power/apc{dir = 8; name = "west bump"; operating = 0; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -22; pixel_y = -10},/turf/simulated/floor/plating,/area/surface/outpost/main/bar) +"kC" = (/obj/structure/closet/crate{name = "Tritium Storage"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/cyan{d2 = 2; icon_state = "0-2"},/obj/item/weapon/fuel_assembly/tritium,/obj/item/weapon/fuel_assembly/tritium,/obj/item/weapon/fuel_assembly/tritium,/obj/machinery/light_switch{pixel_x = -11; pixel_y = 21},/turf/simulated/floor/plating,/area/surface/outpost/engineering/storage) "kD" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "main7_airlock_control"; name = "Internal Access Button"; pixel_x = 6; pixel_y = -26},/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "main7_airlock_interior"; locked = 1; name = "Main Outpost Internal"},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/main/airlock/left_two) "kE" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/left_two) "kF" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) @@ -432,10 +531,10 @@ "kJ" = (/obj/structure/bed/chair,/obj/effect/landmark/start{name = "Explorer"},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) "kL" = (/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_south) "kN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) -"kO" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/heavyduty{d2 = 2; icon_state = "0-2"},/obj/structure/cable,/turf/simulated/floor/plating,/area/surface/outpost/security/smes) "kP" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "1-2"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "kQ" = (/turf/simulated/wall,/area/surface/outpost/main/laundry) "kS" = (/obj/structure/table/standard,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = -12; pixel_y = 22},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/obj/random_multi/single_item/hand_tele,/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/teleporter) +"kT" = (/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/power/fusion_core/mapped{id_tag = "Outpost Fusion Core"},/turf/simulated/floor/reinforced/airless,/area/surface/outpost/engineering/reactor_smes) "kU" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_external/public{name = "Outpost Access"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/corridor/right_lower) "kX" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "kY" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_two) @@ -444,8 +543,9 @@ "ld" = (/obj/structure/table/glass,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/item/weapon/backup_implanter{pixel_y = -6},/obj/item/weapon/backup_implanter{pixel_y = 6},/obj/item/weapon/backup_implanter{pixel_y = 12},/obj/item/weapon/backup_implanter,/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "le" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "mining1_airlock_control"; name = "External Access Button"; pixel_y = -26; req_one_access = list(48)},/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "mining1_airlock_exterior"; locked = 1; name = "Mining Outpost External"},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/mining_main/storage) "lf" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/orange/border{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) +"lg" = (/obj/effect/floor_decal/corner/red{dir = 9},/obj/effect/floor_decal/corner/red{dir = 6},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "lh" = (/obj/structure/table/standard,/obj/item/weapon/soap/nanotrasen,/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_5) -"lj" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"li" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "lk" = (/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/white/border{dir = 9},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "ll" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "main1_airlock_control"; name = "Internal Access Button"; pixel_x = -6; pixel_y = -26},/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "main1_airlock_interior"; locked = 1; name = "Main Outpost Internal"},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/main/airlock/right_two) "lm" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) @@ -459,15 +559,18 @@ "lv" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/surface/outpost/civilian/emergency_storage) "lw" = (/turf/simulated/floor/holofloor/wood,/area/surface/outpost/main/gym) "lx" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/industrial/danger{dir = 1},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/gateway) -"ly" = (/obj/effect/floor_decal/industrial/outline/red,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/security) +"ly" = (/obj/machinery/light{dir = 8},/obj/effect/floor_decal/industrial/outline/red,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/engineering/monitoring) +"lA" = (/obj/structure/sign/electricshock,/turf/simulated/wall/r_wall,/area/surface/outpost/security/smes) "lB" = (/obj/machinery/door/airlock{id_tag = "dorm2"; name = "Dorm 2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/dorms/dorm_2) "lC" = (/obj/structure/table/bench/wooden,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) "lD" = (/obj/machinery/disposal,/obj/effect/floor_decal/corner/orange{dir = 9},/obj/effect/floor_decal/corner/orange{dir = 6},/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) +"lE" = (/obj/machinery/power/thermoregulator,/obj/structure/catwalk,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) "lF" = (/obj/effect/overlay/snow/floor,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/gen_room) "lH" = (/obj/effect/floor_decal/borderfloorblack/corner{dir = 1},/obj/effect/floor_decal/industrial/danger/corner{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "lI" = (/turf/simulated/wall/r_wall,/area/surface/outpost/civilian/pool) "lJ" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "lK" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_2) +"lL" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "2-4"},/obj/structure/disposalpipe/junction{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/cable/heavyduty{icon_state = "2-8"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "lM" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/structure/extinguisher_cabinet{pixel_x = -25},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) "lN" = (/obj/structure/fitness/weightlifter,/turf/simulated/floor/holofloor/wood,/area/surface/outpost/main/gym) "lO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) @@ -477,6 +580,7 @@ "lT" = (/obj/structure/table/bench/steel,/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/landing) "lU" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "lV" = (/obj/machinery/atmospherics/unary/cryo_cell{layer = 3.3},/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/surface/outpost/main/search_and_rescue) +"lW" = (/obj/item/clothing/suit/caution,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "lX" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_external/public{name = "Outpost Access"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/corridor/left_lower) "lZ" = (/obj/effect/floor_decal/borderfloorblack/corner,/obj/effect/floor_decal/industrial/danger/corner,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "ma" = (/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/obj/structure/symbol/lo{pixel_x = -32},/obj/structure/bed/chair,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) @@ -494,6 +598,7 @@ "mo" = (/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "mp" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 1},/obj/machinery/door/window/westleft{name = "Medical Supplies"; req_access = null; req_one_access = list(5,43)},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 8},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "mq" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/white/bordercorner{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) +"mr" = (/obj/structure/table/bench/standard,/obj/item/device/radio/intercom/department/security{dir = 1; pixel_y = 21},/turf/simulated/floor/tiled/dark,/area/surface/outpost/security/maa) "ms" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/gen_room/smes_right) "mt" = (/obj/structure/table/woodentable,/obj/structure/flora/pottedplant/small,/obj/machinery/light{dir = 8},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_3) "mu" = (/obj/machinery/conveyor{dir = 4; id = "mining_north"},/obj/machinery/mineral/input,/turf/simulated/floor/plating/sif/planetuse,/area/surface/outpost/mining_main/exterior) @@ -502,9 +607,9 @@ "mx" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_4) "my" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/machinery/door/firedoor/glass/hidden,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "mz" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 6},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) -"mB" = (/obj/machinery/atmospherics/omni/atmos_filter{tag_east = 7; tag_north = 2; tag_south = 1},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "mC" = (/obj/structure/closet/crate,/obj/effect/floor_decal/corner/brown{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled/steel_dirty,/area/surface/outpost/mining_main/uxstorage) -"mD" = (/obj/effect/overlay/snow/floor,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/mining_main/gen_room) +"mD" = (/obj/structure/closet/radiation,/obj/item/clothing/head/radiation,/obj/item/clothing/head/radiation,/obj/item/clothing/suit/radiation,/obj/item/clothing/suit/radiation,/obj/item/device/geiger,/obj/item/device/geiger,/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/engineering/atmos_room) +"mE" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/security) "mF" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/obj/machinery/light,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "mG" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) "mH" = (/turf/simulated/wall/r_wall,/area/surface/outpost/mining_main/tools) @@ -512,6 +617,7 @@ "mK" = (/obj/random/junk,/obj/random/junk,/obj/random/contraband,/turf/simulated/floor/plating,/area/surface/outpost/main/laundry) "mL" = (/obj/structure/closet/athletic_mixed,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "mM" = (/obj/effect/floor_decal/industrial/outline/red,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/mining_main/tools) +"mN" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "mO" = (/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/plains/mountains) "mP" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/gen_room) "mQ" = (/obj/structure/table/steel,/obj/machinery/cell_charger,/obj/item/weapon/cell/high,/turf/simulated/floor/tiled/dark,/area/surface/outpost/mining_main) @@ -531,16 +637,16 @@ "nf" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atm{pixel_y = 30},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "nh" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "nj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/machinery/door/blast/shutters{dir = 8; id = "production1"; name = "Production Shutters"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/mining_main/refinery) -"nk" = (/obj/effect/overlay/snow/floor,/turf/simulated/floor/plating/sif/planetuse,/area/surface/outpost/mining_main/gen_room) +"nk" = (/obj/structure/closet/crate{name = "Deuterium Storage"},/obj/item/weapon/fuel_assembly/deuterium,/obj/item/weapon/fuel_assembly/deuterium,/obj/item/weapon/fuel_assembly/deuterium,/obj/item/weapon/fuel_assembly/deuterium,/obj/item/weapon/fuel_assembly/deuterium,/obj/item/weapon/fuel_assembly/deuterium,/obj/item/weapon/fuel_assembly/deuterium,/obj/item/weapon/fuel_assembly/deuterium,/obj/item/weapon/fuel_assembly/deuterium,/obj/item/weapon/fuel_assembly/deuterium,/obj/item/weapon/fuel_assembly/deuterium,/obj/item/weapon/fuel_assembly/deuterium,/turf/simulated/floor/plating,/area/surface/outpost/engineering/storage) "nl" = (/obj/effect/floor_decal/steeldecal/steel_decals_central4,/obj/machinery/conveyor_switch/oneway{id = "mining_internal"; name = "mining conveyor"},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/refinery) "nm" = (/obj/machinery/recharge_station,/obj/machinery/light/small{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/restroom) "nn" = (/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "no" = (/obj/structure/table/steel,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/recharger,/obj/structure/disposalpipe/segment,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) -"np" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/catwalk,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "nq" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) +"nr" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/reinforced/airless,/area/surface/outpost/engineering/reactor_smes) "ns" = (/obj/structure/closet/toolcloset,/obj/item/device/flashlight/maglight,/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) "nt" = (/obj/effect/overlay/snow/floor,/obj/structure/table/bench/steel,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/civilian/smes) -"nv" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/red/border,/obj/effect/floor_decal/borderfloor/corner2{dir = 9},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) +"nv" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/maintenance_hatch{name = "Reactor Room Internal Access"; req_one_access = list(11)},/turf/simulated/floor/tiled/techfloor/grid,/area/surface/outpost/engineering/reactor_smes) "nw" = (/obj/structure/fence,/obj/effect/zone_divider,/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/plains/outpost) "nx" = (/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/obj/structure/table/steel,/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "ny" = (/turf/simulated/floor/water/deep/pool,/area/surface/outpost/civilian/pool) @@ -551,6 +657,7 @@ "nD" = (/obj/item/device/universal_translator,/obj/structure/table/reinforced,/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) "nE" = (/obj/structure/cable/heavyduty{icon_state = "1-2"},/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{d2 = 2; icon_state = "0-2"},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/path/plains) "nF" = (/obj/structure/snowman{name = "Frosty"},/turf/simulated/floor/outdoors/snow/sif/planetuse,/area/surface/outside/plains/outpost) +"nG" = (/obj/effect/overlay/snow/floor,/obj/machinery/light/small{dir = 8},/obj/structure/disposalpipe/segment,/obj/structure/cable/heavyduty{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/security) "nH" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/machinery/door/firedoor/glass/hidden{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "nI" = (/obj/structure/table/rack/shelf,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/item/weapon/gun/energy/phasegun/rifle{pixel_y = 3},/obj/item/weapon/gun/energy/phasegun/rifle{pixel_y = -4},/obj/effect/floor_decal/corner/brown/border{dir = 1},/obj/machinery/camera/network/mining{c_tag = "PO - Mining Hallway 1"},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "nJ" = (/obj/effect/floor_decal/steeldecal/steel_decals10,/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/paleblue/border{dir = 1},/obj/structure/window/reinforced{dir = 1; health = 1e+006; req_access = list(5)},/obj/structure/table/rack,/obj/item/weapon/storage/belt/medical/emt,/obj/item/weapon/storage/belt/medical/emt,/obj/item/weapon/storage/belt/medical/emt,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/brigdoor/southleft{req_access = list(5); req_one_access = list(5,43)},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) @@ -563,7 +670,8 @@ "nS" = (/obj/effect/floor_decal/spline/plain{dir = 5},/turf/simulated/floor/water/deep/pool,/area/surface/outpost/civilian/pool) "nT" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/heavyduty{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room/smes_left) "nU" = (/obj/structure/table/standard,/obj/item/weapon/soap/deluxe,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_2) -"nW" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/security) +"nV" = (/obj/effect/floor_decal/rust,/turf/simulated/floor/plating,/area/surface/outpost/security/maa) +"nW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/steel_reinforced,/obj/machinery/microwave{pixel_x = -2; pixel_y = 5},/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/yellow/border,/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "nX" = (/obj/effect/step_trigger/teleporter/bridge/west_to_east,/obj/structure/railing{dir = 4},/turf/simulated/floor/water,/area/surface/outside/river/faxalven) "nY" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/structure/dogbed,/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_1) "oa" = (/obj/structure/closet/secure_closet/personal,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) @@ -572,23 +680,26 @@ "og" = (/obj/effect/overlay/snow/floor,/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/industrial/warning/dust,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "oh" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "oj" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) +"ok" = (/obj/machinery/embedded_controller/radio/airlock/access_controller{id_tag = "ENG_Outpost_airlock_control"; pixel_x = 26; pixel_y = 26; tag_exterior_door = "ENG_Outpost_airlock_exterior"; tag_interior_door = "ENG_Outpost_airlock_interior"},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "ol" = (/obj/effect/landmark{name = "bluespacerift"},/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/path/plains) "om" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "on" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "oo" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "op" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) "oq" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) -"or" = (/obj/structure/disposalpipe/segment,/obj/structure/catwalk,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "os" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "ot" = (/obj/effect/floor_decal/corner/brown{dir = 9},/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/tiled/steel_dirty,/area/surface/outpost/mining_main/uxstorage) "ou" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/teleporter) +"ov" = (/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/red/border{dir = 9},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) +"ow" = (/obj/structure/bed/chair/office/dark,/turf/simulated/floor/tiled,/area/surface/outpost/security) "ox" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_one) "oy" = (/turf/simulated/floor/plating{icon_state = "asteroidplating2"},/area/surface/outpost/mining_main/exterior) "oz" = (/turf/simulated/wall/solidrock,/area/surface/outside/plains/mountains) "oA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) +"oC" = (/obj/structure/table/steel,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light/small{dir = 4},/obj/structure/cable/blue,/obj/item/weapon/storage/toolbox/electrical,/turf/simulated/floor/plating,/area/surface/outpost/security/smes) "oD" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) "oF" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/structure/closet/emcloset,/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) -"oG" = (/obj/structure/table/reinforced,/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/item/device/gps/security,/turf/simulated/floor/holofloor/tiled/dark,/area/surface/outpost/security/maa) +"oH" = (/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals3,/obj/machinery/camera/network/security{c_tag = "SO - Airlock Access"; dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/security) "oI" = (/obj/machinery/door/airlock/multi_tile/glass{dir = 1; name = "Gym"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals_central1,/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/gym) "oJ" = (/obj/effect/floor_decal/borderfloorblack{dir = 4},/obj/effect/floor_decal/industrial/danger{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/steel,/area/surface/outpost/main/landing) "oK" = (/obj/machinery/vending/loadout/loadout_misc,/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/white/border{dir = 9},/obj/machinery/camera/network/main_outpost{c_tag = "MO - Laundry 1"; dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) @@ -602,14 +713,16 @@ "oS" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/firealarm{dir = 1; pixel_y = -25},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_two) "oU" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) "oV" = (/obj/machinery/door/airlock{id_tag = "dorm5"; name = "Dorm 5"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/dorms/dorm_5) -"oW" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/mining_main/gen_room) +"oW" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable/heavyduty{icon_state = "1-8"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/engineering/atmos_room) "oY" = (/obj/structure/closet/crate/freezer/rations,/obj/effect/floor_decal/industrial/outline,/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/corridor/right_upper) "oZ" = (/obj/structure/ore_box,/obj/effect/floor_decal/corner/brown/full{dir = 8},/turf/simulated/floor/tiled/steel_dirty,/area/surface/outpost/mining_main/uxstorage) "pa" = (/obj/machinery/light{dir = 4},/turf/simulated/floor/plating{icon_state = "asteroidplating2"},/area/surface/outpost/mining_main/exterior) "pb" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_5) "pc" = (/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/plains/normal) "pd" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) +"pe" = (/obj/structure/sign/electricshock,/turf/simulated/wall/r_wall{cached_rad_resistance = 150},/area/surface/outpost/engineering/reactor_smes) "pf" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/airlock/left_two) +"pg" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "ph" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/firealarm{pixel_y = 24},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "pi" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) "pj" = (/obj/machinery/door/blast/shutters{dir = 8; id = "production1"; name = "Production Shutters"},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/mining_main/refinery) @@ -622,7 +735,7 @@ "pq" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/corridor/left_lower) "pr" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_6) "ps" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) -"pv" = (/turf/simulated/wall/r_wall,/area/surface/outpost/security) +"pv" = (/turf/simulated/wall/r_wall,/area/surface/outpost/engineering/monitoring) "pw" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock{name = "Showers"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/showers) "px" = (/turf/simulated/floor/plating{icon_state = "asteroidplating2"},/area/surface/outside/path/plains) "py" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals_central1{dir = 1},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/corridor/right_lower) @@ -638,7 +751,6 @@ "pI" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "pJ" = (/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "main5_airlock_exterior"; locked = 1; name = "Main Outpost External"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "main5_airlock_control"; name = "External Access Button"; pixel_y = -26},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/main/airlock/right_three) "pK" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) -"pL" = (/obj/machinery/atmospherics/pipe/simple/visible/universal,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "pM" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/junction{dir = 2; icon_state = "pipe-j2"},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) "pN" = (/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_north) "pP" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_two) @@ -665,6 +777,7 @@ "ql" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/bar) "qm" = (/obj/item/stack/material/wood,/obj/machinery/alarm{dir = 1; pixel_y = -25},/turf/simulated/floor/plating,/area/surface/outpost/main/bar) "qn" = (/obj/machinery/camera/network/main_outpost{c_tag = "MO Left Wing - Airlock Access 1"},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_one) +"qp" = (/obj/structure/catwalk,/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/maintenance_hatch{name = "Fuel Storage Room"; req_one_access = list(11)},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/surface/outpost/engineering/storage) "qq" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/gym) "qr" = (/obj/machinery/conveyor{dir = 8; id = "mining_internal"},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/refinery) "qs" = (/obj/effect/overlay/snow/floor,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/gen_room/smes_right) @@ -684,18 +797,22 @@ "qH" = (/obj/structure/table/steel,/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/light/small{dir = 1},/obj/item/weapon/storage/toolbox/electrical,/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room) "qJ" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) "qK" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_two) +"qL" = (/obj/structure/sign/warning/radioactive,/turf/simulated/wall/r_wall{cached_rad_resistance = 150},/area/surface/outpost/engineering/auxiliary_storage) "qM" = (/obj/structure/table/steel,/obj/random/junk,/obj/random/tool,/obj/machinery/camera/network/engineering_outpost{c_tag = "SUBS - Main Outpost"; dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room) "qN" = (/obj/structure/closet/crate,/obj/item/weapon/tool/crowbar/red,/obj/item/frame/light,/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) "qO" = (/obj/effect/map_effect/portal/line/side_a,/turf/unsimulated/wall/planetary/sif{icon_state = "rock-dark"},/area/surface/outside/plains/mountains) -"qQ" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/red/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security) -"qR" = (/obj/machinery/shower{dir = 1},/obj/structure/curtain/open/shower,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/main/dorms/dorm_4) +"qP" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"qR" = (/obj/machinery/shower{dir = 1},/obj/structure/curtain/open/shower,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_4) "qS" = (/obj/structure/boxingrope{dir = 8},/obj/structure/boxingrope,/obj/structure/boxingrope{dir = 9; layer = 4.1},/turf/simulated/floor/boxing,/area/surface/outpost/main/gym) "qT" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) -"qU" = (/obj/structure/table/reinforced,/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/red/border{dir = 10},/obj/item/weapon/storage/box/donut/empty,/obj/machinery/light_construct,/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) +"qU" = (/obj/machinery/atmospherics/binary/pump{dir = 8},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) +"qV" = (/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "qW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera/network/main_outpost{c_tag = "MO - Landing Zone 1"; dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) "qX" = (/obj/effect/shuttle_landmark{docking_controller = "surface_dock_1"; landmark_tag = "shuttle1_planet"; name = "Outpost West Pad"},/turf/simulated/floor/reinforced,/area/shuttle/shuttle1/planet) +"qY" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/engineering/atmos_room) "ra" = (/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/portable_atmospherics/powered/scrubber,/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room/smes_right) "rb" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "main3_airlock_control"; name = "External Access Button"},/turf/simulated/wall/r_wall,/area/surface/outpost/main/airlock/landing_south) +"rc" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) "rd" = (/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "re" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) "rf" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/ender{icon_state = "1-2"; id = "surface_cave"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/path/plains) @@ -710,34 +827,38 @@ "rq" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "rr" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/right_two) "rt" = (/obj/effect/floor_decal/steeldecal/steel_decals6,/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) -"ru" = (/obj/effect/floor_decal/corner/red{dir = 6},/obj/effect/floor_decal/corner/red{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals9,/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) -"rv" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) -"rw" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"rv" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "rx" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/landing) -"ry" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"rz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) +"rB" = (/obj/effect/wingrille_spawn/reinforced_phoron,/obj/machinery/door/blast/radproof{rad_resistance = 150},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "rC" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/light/small{dir = 4},/obj/effect/decal/cleanable/blood/oil,/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/right_two) "rD" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/machinery/recharger,/obj/effect/floor_decal/corner/purple/border{dir = 8},/obj/structure/table/reinforced,/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/item/weapon/tool/wrench,/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) +"rE" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "rF" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 6},/obj/structure/extinguisher_cabinet{pixel_x = 25},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "rG" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/teleporter) +"rH" = (/obj/item/modular_computer/console/preset/security,/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/red/border{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/security) "rI" = (/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "mining2_airlock_exterior"; locked = 1; name = "Mining Outpost External"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "mining2_airlock_control"; name = "External Access Button"; pixel_x = -26; req_one_access = list(48,10)},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/mining_main/tools) "rJ" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "rK" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/tools) "rL" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "rM" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "rN" = (/obj/structure/table/marble,/obj/random/tech_supply,/turf/simulated/floor/plating,/area/surface/outpost/main/bar) +"rO" = (/obj/structure/flora/pottedplant/stoutbush,/obj/machinery/camera/network/security{c_tag = "SO - Security Checkpoint"; dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/security) "rP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/refinery) "rR" = (/turf/simulated/wall,/area/surface/outpost/mining_main/emergencystorage) "rS" = (/obj/structure/table/rack,/obj/structure/window/basic{dir = 8},/obj/structure/window/basic{dir = 1},/obj/item/clothing/mask/gas,/obj/item/clothing/shoes/boots/winter,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/item/weapon/tank/emergency/oxygen/engi,/obj/item/clothing/suit/storage/hooded/wintercoat,/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/landing_south) "rT" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_3) "rV" = (/obj/structure/table,/obj/machinery/light_construct{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) "rW" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) -"rX" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/structure/bed/chair/office/dark{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"rX" = (/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/light_switch{pixel_x = -21; pixel_y = -21},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "rY" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/restroom) "rZ" = (/obj/effect/overlay/snow/floor,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/civilian/sauna) "sa" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "sb" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/orange/border{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "sc" = (/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/main/gateway) -"se" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/security/maa) +"se" = (/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/machinery/light/small{dir = 4},/obj/machinery/air_sensor{frequency = 1443; id_tag = "air_sensor"; output = 7},/turf/simulated/floor/reinforced/airless,/area/surface/outpost/engineering/reactor_smes) +"sf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"sg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/closet/toolcloset,/obj/item/weapon/storage/belt,/obj/item/weapon/storage/belt,/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "sh" = (/obj/effect/floor_decal/stairs{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/civilian/fishing) "si" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "sj" = (/obj/structure/table/bench/marble,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) @@ -747,17 +868,15 @@ "sp" = (/obj/structure/undies_wardrobe,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) "sq" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "sr" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; operating = 0; pixel_x = -24},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/light_switch{pixel_x = -22; pixel_y = -10},/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) -"ss" = (/obj/structure/table/bench/standard,/obj/random/maintenance/engineering,/turf/simulated/floor/tiled/dark,/area/surface/outpost/security/maa) +"ss" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "sv" = (/turf/simulated/floor/boxing,/area/surface/outpost/main/gym) "sw" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) -"sx" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/table/steel,/obj/machinery/cell_charger,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/disposalpipe/segment,/obj/random/powercell,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "sy" = (/obj/machinery/light,/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) -"sz" = (/obj/machinery/pipedispenser/disposal,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"sz" = (/obj/structure/sign/electricshock,/turf/simulated/wall/r_wall,/area/surface/outpost/engineering/smes) "sA" = (/obj/machinery/disposal,/obj/effect/floor_decal/borderfloor{dir = 6},/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/effect/floor_decal/corner/purple/border{dir = 6},/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/janitor) "sB" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/machinery/embedded_controller/radio/airlock/access_controller{id_tag = "mining2_airlock_control"; pixel_x = -26; pixel_y = -26; req_one_access = list(48,10); tag_exterior_door = "mining2_airlock_exterior"; tag_interior_door = "mining2_airlock_interior"},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/tools) "sC" = (/obj/structure/table/steel,/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) "sD" = (/obj/structure/closet/firecloset,/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) -"sE" = (/obj/structure/closet/secure_closet/guncabinet,/obj/effect/floor_decal/corner/red{dir = 6},/obj/effect/floor_decal/corner/red{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "sG" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/civilian/sauna) "sH" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/left_three) "sI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) @@ -767,7 +886,6 @@ "sN" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/junction{dir = 2; icon_state = "pipe-j2"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) "sO" = (/obj/structure/closet/secure_closet/guncabinet/phase{name = "phase weapon cabinet"; req_access = list(43,67); req_one_access = newlist()},/obj/item/clothing/accessory/holster/hip,/obj/effect/floor_decal/corner/purple{dir = 5},/obj/effect/floor_decal/corner/purple{dir = 10},/obj/machinery/camera/network/main_outpost{c_tag = "MO - Exploration Prep"; dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9,/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/exploration) "sP" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_south) -"sQ" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/security/maa) "sR" = (/turf/simulated/floor/water/shoreline{dir = 5},/area/surface/outside/ocean) "sS" = (/obj/effect/overlay/snow/floor,/obj/effect/floor_decal/industrial/warning/dust/corner,/obj/structure/cable/heavyduty{icon_state = "2-4"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "sT" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 4},/obj/effect/floor_decal/corner/white/bordercorner,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) @@ -783,26 +901,29 @@ "td" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "tg" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/refinery) "th" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) +"ti" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/security) +"tj" = (/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = "engine_access_hatch"; locked = 1; name = "Reactor Core"; rad_resistance = 150; req_access = list(11)},/turf/simulated/floor/reinforced,/area/surface/outpost/engineering/reactor_smes) "tk" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/main/bar) "tl" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/plating,/area/surface/outpost/main/bar) "tm" = (/obj/structure/closet/crate/secure/gear{name = "explorer crate"; req_access = list(43)},/obj/item/bodybag/cryobag,/obj/item/bodybag/cryobag,/obj/item/weapon/storage/firstaid/regular,/obj/effect/floor_decal/industrial/outline,/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/corridor/right_upper) "tp" = (/obj/effect/overlay/snow/floor,/obj/effect/floor_decal/industrial/warning/dust{dir = 4},/obj/structure/cable/heavyduty{icon_state = "1-2"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "tq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) +"tr" = (/obj/effect/floor_decal/corner/red{dir = 6},/obj/effect/floor_decal/corner/red{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals9,/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "ts" = (/obj/machinery/newscaster{pixel_x = -30},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "tt" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) "tu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/camera/network/main_outpost{c_tag = "MO - Landing Zone 4"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) "tv" = (/obj/structure/fence/end{dir = 8},/turf/simulated/floor/outdoors/snow/sif/planetuse,/area/surface/outside/plains/outpost) -"tw" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/security/smes) "tx" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/machinery/door/firedoor/glass/hidden{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "ty" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/sauna) "tA" = (/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "civ2_airlock_exterior"; locked = 1; name = "Civilian Outpost External"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "civ2_airlock_control"; name = "External Access Button"; pixel_x = 26},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/civilian/sauna) "tB" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "tC" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/obj/machinery/computer/guestpass{pixel_y = 28},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "tD" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) -"tE" = (/obj/structure/catwalk,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/surface/outpost/security/smes) +"tE" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable/heavyduty{d2 = 2; dir = 4; icon_state = "0-4"},/obj/effect/wingrille_spawn/reinforced_phoron,/obj/machinery/door/firedoor/border_only,/obj/structure/cable/cyan{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "tF" = (/turf/unsimulated/wall/planetary/sif,/area/surface/outside/plains/mountains) "tG" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) "tH" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) +"tI" = (/obj/machinery/power/terminal{dir = 4},/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow,/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/engineering/reactor_smes) "tJ" = (/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/obj/machinery/lapvend,/obj/effect/floor_decal/steeldecal/steel_decals9,/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "tK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_2) "tL" = (/turf/simulated/floor/outdoors/grass/sif/planetuse,/area/surface/outside/path/plains) @@ -815,7 +936,7 @@ "tT" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "tU" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "mining2_airlock_control"; name = "Internal Access Button"; pixel_x = -26; pixel_y = -6; req_one_access = list(48,10)},/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "mining2_airlock_interior"; locked = 1; name = "Mining Outpost Internal"},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/mining_main/tools) "tV" = (/turf/simulated/wall/r_wall,/area/surface/outpost/civilian/fishing) -"tW" = (/obj/machinery/atmospherics/pipe/tank/carbon_dioxide{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"tX" = (/obj/machinery/door/airlock/glass_security{name = "Master at Arms"},/obj/machinery/door/firedoor/glass,/obj/item/tape/engineering,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/security/maa) "tY" = (/obj/effect/overlay/snow/floor,/obj/effect/floor_decal/industrial/warning/dust{dir = 1},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "tZ" = (/obj/effect/floor_decal/corner/white{dir = 9},/obj/effect/floor_decal/corner/white{dir = 6},/obj/structure/flora/pottedplant,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "ua" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/button/remote/blast_door{id = "garage1"; name = "Garage Shutter Control"; pixel_x = -6; pixel_y = 22},/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/right_two) @@ -825,13 +946,15 @@ "ue" = (/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/table/steel,/obj/item/weapon/handcuffs/fuzzy,/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room/smes_left) "uf" = (/turf/simulated/floor/reinforced,/area/shuttle/shuttle1/planet) "ug" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/search_and_rescue) -"uh" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) +"uh" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/maintenance_hatch{name = "Outpost SMES Room"; req_one_access = list(11)},/turf/simulated/floor/tiled/techfloor/grid,/area/surface/outpost/engineering/reactor_smes) "ui" = (/obj/structure/flora/pottedplant/fern,/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "uj" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "uk" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "ul" = (/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_two) +"um" = (/obj/machinery/fusion_fuel_injector/mapped{dir = 8; id_tag = "Reactor Fuel Injectors"},/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "un" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "uo" = (/turf/simulated/floor/outdoors/grass/sif/planetuse,/area/surface/outside/plains/normal) +"ur" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/reinforced/airless,/area/surface/outpost/engineering/reactor_smes) "us" = (/obj/item/weapon/towel{color = "#800080"; name = "purple towel"},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_2) "ut" = (/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/white/border{dir = 9},/obj/machinery/computer/timeclock/premade/north,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "uu" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/embedded_controller/radio/airlock/access_controller{id_tag = "main2_airlock_control"; pixel_x = -26; pixel_y = -26; tag_exterior_door = "main2_airlock_exterior"; tag_interior_door = "main2_airlock_interior"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_one) @@ -840,7 +963,7 @@ "ux" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) "uy" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/right_three) "uz" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_external/public{name = "Airlock Access"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/airlock/left_two) -"uB" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/terminal,/obj/effect/floor_decal/industrial/warning,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/catwalk,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"uA" = (/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/reinforced/airless,/area/surface/outpost/engineering/reactor_smes) "uC" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/machinery/camera/network/main_outpost{c_tag = "MO Right Wing - Hallway 4"; dir = 1; name = "MO Right Wing - Hallway Three"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "uD" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) "uE" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/civilian/pool) @@ -849,22 +972,21 @@ "uI" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/machinery/vending/loadout/gadget,/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "uJ" = (/obj/machinery/light{dir = 8},/turf/simulated/shuttle/floor/voidcraft/external,/area/surface/outpost/wall) "uK" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/table/reinforced,/obj/item/device/radio{pixel_x = -5; pixel_y = 5},/obj/item/device/radio{pixel_x = 5; pixel_y = 5},/obj/machinery/camera/network/main_outpost{c_tag = "MO Right Wing - Airlock 3"},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/right_three) +"uL" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/junction,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/surface/outpost/security) "uO" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_5) "uP" = (/turf/simulated/wall,/area/surface/outpost/mining_main/storage) "uQ" = (/obj/machinery/vending/nifsoft_shop,/obj/effect/floor_decal/corner/white{dir = 9},/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "uS" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "uU" = (/obj/item/weapon/stock_parts/motor,/turf/simulated/floor/plating,/area/surface/outpost/main/bar) -"uW" = (/obj/structure/sign/electricshock,/turf/simulated/wall/r_wall,/area/surface/outpost/security/smes) +"uW" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/structure/closet/secure_closet/engineering_electrical,/obj/machinery/light{dir = 8},/obj/random/maintenance/engineering,/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/yellow/border{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "uX" = (/obj/structure/table/steel,/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/brown/border{dir = 5},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/machinery/light{dir = 4},/obj/machinery/light_switch{pixel_x = -12; pixel_y = 22},/obj/item/weapon/pickaxe,/obj/item/device/gps/mining,/obj/item/clothing/head/hardhat/orange,/obj/machinery/vending/wallmed1{pixel_x = 25},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "uY" = (/obj/structure/table/rack,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/turf/simulated/floor/tiled,/area/surface/outpost/main/teleporter) "uZ" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/dorms/dorm_3) "va" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/tools) -"vb" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "sec1_airlock_control"; name = "Internal Access Button"; pixel_x = 5; pixel_y = 26; req_one_access = list(1)},/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "sec1_airlock_interior"; locked = 1; name = "Security Outpost Internal"},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/security) "vc" = (/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/white/border{dir = 5},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 5},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "vd" = (/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_one) "vf" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_one) "vg" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/borderfloor/corner2,/obj/effect/floor_decal/corner/white/bordercorner2,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) -"vh" = (/obj/structure/closet/emcloset,/obj/machinery/camera/network/engineering_outpost{c_tag = "ENG - Mining Outpost Power 2"},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "vi" = (/obj/item/weapon/stool/padded,/obj/machinery/camera/network/civilian{c_tag = "CO - Pool 2"; dir = 4},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "vj" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) "vk" = (/turf/unsimulated/wall/planetary/sif{icon_state = "rock-dark"},/area/surface/outside/plains/mountains) @@ -874,13 +996,17 @@ "vo" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_two) "vp" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "vq" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_north) +"vr" = (/obj/effect/floor_decal/industrial/outline/red,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/security) "vs" = (/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/refinery) +"vt" = (/obj/structure/cable/cyan{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/fusion_fuel_injector/mapped{dir = 8; id_tag = "Reactor Fuel Injectors"},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "vu" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/borderfloor/corner2{dir = 9},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "vv" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) +"vw" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 10},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/tiled,/area/surface/outpost/security) "vx" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) "vy" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "vz" = (/obj/effect/floor_decal/borderfloorblack{dir = 1},/obj/effect/floor_decal/industrial/danger{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "vA" = (/obj/effect/floor_decal/industrial/outline/red,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/airlock/right_one) +"vB" = (/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced_phoron,/obj/machinery/door/blast/radproof{dir = 4; rad_resistance = 150},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/surface/outpost/engineering/monitoring) "vC" = (/obj/structure/fence/end{dir = 4},/turf/simulated/floor/outdoors/snow/sif/planetuse,/area/surface/outside/plains/outpost) "vD" = (/obj/structure/table/standard,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/light_switch{pixel_x = -22; pixel_y = -10},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "vE" = (/obj/structure/ore_box,/obj/effect/floor_decal/corner/brown/full{dir = 1},/turf/simulated/floor/tiled/steel_dirty,/area/surface/outpost/mining_main/uxstorage) @@ -894,18 +1020,17 @@ "vN" = (/obj/structure/bed/chair/comfy/black{dir = 1},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_6) "vO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "vP" = (/turf/simulated/wall,/area/surface/outpost/main/gen_room/smes_left) -"vQ" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) -"vR" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"vR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "vS" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/airlock/left_one) "vT" = (/obj/structure/closet,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/orange/border{dir = 1},/obj/item/clothing/gloves/duty,/obj/item/clothing/gloves/duty,/obj/item/clothing/under/serviceoveralls,/obj/item/clothing/under/serviceoveralls,/obj/item/clothing/accessory/storage/webbing,/obj/item/clothing/accessory/storage/webbing,/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "vU" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_1) -"vV" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/item/clothing/suit/caution,/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) +"vV" = (/obj/machinery/camera/emp_proof{c_tag = "ENG - Outpost Reactor Room South"; dir = 4; name = "Reactor_Room"; network = list("Engine")},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "vW" = (/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "vX" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green,/obj/machinery/light_switch{pixel_x = 22},/turf/simulated/floor/carpet/purcarpet,/area/surface/outpost/main/dorms/dorm_2) "vY" = (/obj/machinery/mineral/equipment_vendor/survey,/obj/effect/floor_decal/corner/purple{dir = 5},/obj/effect/floor_decal/corner/purple{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals9,/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/exploration) "vZ" = (/obj/effect/floor_decal/spline/plain{dir = 6},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "wa" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/carpet,/area/surface/outpost/main/dorms/dorm_6) -"wb" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) +"wb" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/cyan{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold4w/visible/supply,/obj/machinery/atmospherics/pipe/manifold4w/visible/scrubbers,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "wc" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/catwalk,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room/smes_left) "wd" = (/obj/structure/table/glass,/obj/effect/floor_decal/borderfloorwhite{dir = 4},/obj/effect/floor_decal/corner/paleblue/border{dir = 4},/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/machinery/atmospherics/pipe/simple/visible,/obj/item/weapon/reagent_containers/blood/OPlus,/obj/item/weapon/reagent_containers/blood/OPlus,/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "we" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) @@ -914,6 +1039,7 @@ "wi" = (/obj/machinery/door/airlock/multi_tile/glass{name = "Laundry"},/obj/effect/floor_decal/steeldecal/steel_decals_central1{dir = 8},/obj/machinery/door/firedoor/multi_tile/glass,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/laundry) "wj" = (/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "main3_airlock_interior"; locked = 1; name = "Landing South Internal"},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/main/airlock/landing_south) "wk" = (/obj/effect/floor_decal/borderfloorblack{dir = 8},/obj/effect/floor_decal/industrial/danger{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) +"wl" = (/obj/structure/catwalk,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/plating,/area/surface/outpost/security/smes) "wm" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/left_one) "wn" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/plaque,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/corridor/right_upper) "wp" = (/obj/structure/closet/hydrant{pixel_y = 32},/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room) @@ -926,6 +1052,7 @@ "ww" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/brown/bordercorner2{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/tools) "wx" = (/obj/effect/overlay/snow/floor,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/airlock/landing_south) "wy" = (/obj/structure/table/rack,/obj/structure/window/basic{dir = 4},/obj/structure/window/basic,/obj/item/clothing/mask/gas,/obj/item/clothing/shoes/boots/winter,/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/item/weapon/tank/emergency/oxygen/engi,/obj/item/clothing/suit/storage/hooded/wintercoat,/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/landing_south) +"wz" = (/obj/machinery/atmospherics/unary/freezer{icon_state = "freezer_1"; power_setting = 20; set_temperature = 73; use_power = 1},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) "wA" = (/turf/simulated/floor/water/shoreline{dir = 1},/area/surface/outside/ocean) "wB" = (/obj/machinery/disposal,/obj/effect/floor_decal/corner/white{dir = 9},/obj/effect/floor_decal/corner/white{dir = 6},/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/light,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "wC" = (/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) @@ -934,12 +1061,14 @@ "wF" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_two) "wG" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_3) "wH" = (/obj/structure/table/rack,/obj/structure/window/basic{dir = 4},/obj/structure/window/basic,/obj/item/clothing/mask/gas,/obj/item/clothing/shoes/boots/winter,/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/item/weapon/tank/emergency/oxygen/engi,/obj/item/clothing/suit/storage/hooded/wintercoat,/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/landing_north) +"wI" = (/obj/machinery/floodlight,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) "wJ" = (/obj/structure/table/glass,/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/item/weapon/tool/wrench,/obj/item/bodybag/cryobag,/obj/item/bodybag/cryobag,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "wL" = (/obj/structure/toilet,/obj/structure/window/basic{dir = 4},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_1) "wM" = (/obj/structure/bed/chair{dir = 1},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) "wN" = (/obj/effect/overlay/snow/floor,/obj/machinery/light/small,/obj/structure/cable/heavyduty{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/airlock/landing_north) "wP" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "wQ" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/civilian/smes) +"wR" = (/obj/effect/floor_decal/industrial/warning,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "wS" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/civilian/fishing) "wT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/catwalk,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room) "wU" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/civilian/fishing) @@ -948,31 +1077,30 @@ "wY" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_1) "xa" = (/turf/simulated/mineral/sif,/area/surface/outside/plains/mountains) "xb" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) -"xc" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) -"xd" = (/obj/effect/zone_divider,/obj/effect/zone_divider,/turf/simulated/floor/outdoors/snow/sif/planetuse,/area/surface/outside/plains/outpost) "xe" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock{name = "Restroom"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/restroom) "xf" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "xg" = (/obj/structure/closet/jcloset,/obj/item/weapon/soap/nanotrasen,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/purple/border{dir = 8},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/janitor) +"xh" = (/turf/simulated/floor/tiled,/area/surface/outpost/security) "xi" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/symbol/es{pixel_y = 32},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) "xj" = (/obj/effect/floor_decal/spline/plain{dir = 4},/turf/simulated/floor/water/deep/pool,/area/surface/outpost/civilian/pool) -"xm" = (/obj/machinery/atmospherics/binary/pump{dir = 4; name = "Air Tank Bypass Pump"},/obj/machinery/atmospherics/pipe/simple/visible/cyan,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "xn" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/turcarpet,/area/surface/outpost/main/dorms/dorm_3) -"xo" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"xo" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "xp" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "xq" = (/obj/structure/table/steel,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/item/weapon/packageWrap,/obj/item/weapon/packageWrap,/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/brown/bordercorner2{dir = 5},/obj/machinery/button/remote/blast_door{id = "production1"; name = "Production Shutters"; pixel_x = 22; req_one_access = list(48)},/obj/item/weapon/hand_labeler,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "xs" = (/obj/machinery/mineral/processing_unit_console,/turf/simulated/wall/r_wall,/area/surface/outpost/mining_main/refinery) "xt" = (/obj/effect/floor_decal/spline/plain,/obj/machinery/hologram/holopad,/obj/machinery/light/spot,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "xu" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/right_one) +"xv" = (/obj/structure/sign/warning/radioactive,/turf/simulated/wall/r_wall,/area/surface/outpost/engineering/reactor_smes) "xw" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/junction,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "xz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "xA" = (/turf/simulated/floor/water/shoreline{dir = 6},/area/surface/outside/ocean) "xC" = (/obj/machinery/camera/network/main_outpost{c_tag = "MO Right Wing - Airlock Access 2"; dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_two) -"xD" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/red/bordercorner{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/obj/machinery/light_construct{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "xF" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_south) "xG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "xH" = (/obj/structure/fence{dir = 8},/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/plains/outpost) "xI" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/emergencystorage) "xJ" = (/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 4},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) +"xL" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/surface/outpost/security) "xM" = (/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "main4_airlock_interior"; locked = 1; name = "Landing North Internal"},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/main/airlock/landing_north) "xN" = (/obj/effect/floor_decal/steeldecal/steel_decals_central1{dir = 8},/obj/machinery/door/firedoor/multi_tile/glass,/obj/machinery/door/airlock/multi_tile/glass{name = "Production Area"; req_one_access = list(48)},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/mining_main) "xO" = (/obj/structure/table/steel,/obj/item/weapon/storage/box/lights/mixed,/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/light/small,/turf/simulated/floor/plating,/area/surface/outpost/main/emergency_storage/one) @@ -1000,13 +1128,17 @@ "ym" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_one) "yn" = (/obj/structure/table/rack,/obj/item/clothing/shoes/boots/winter,/obj/item/clothing/suit/storage/hooded/wintercoat,/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/window/basic{dir = 4},/obj/structure/window/basic{dir = 1},/obj/structure/window/basic,/obj/machinery/status_display{pixel_x = 32},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/left_three) "yo" = (/obj/effect/overlay/snow/floor,/obj/machinery/light/small,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/civilian/fishing) -"yp" = (/obj/structure/table/reinforced,/obj/effect/floor_decal/borderfloor,/obj/item/weapon/material/ashtray/plastic,/obj/machinery/recharger,/obj/effect/floor_decal/corner/red/border,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"yp" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "yq" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "yr" = (/obj/machinery/door/airlock/multi_tile/glass{dir = 1; name = "Construction Area"},/obj/effect/floor_decal/steeldecal/steel_decals_central1,/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/corridor/right_lower) "yt" = (/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) +"yu" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "yv" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) +"yx" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "yz" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/light,/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/vending/wallmed1{name = "NanoMed Wall"; pixel_y = -30},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) +"yA" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/security) "yB" = (/obj/effect/floor_decal/borderfloor,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/obj/effect/floor_decal/corner/purple/border,/obj/item/clothing/suit/caution,/turf/simulated/floor/tiled,/area/surface/outpost/main/janitor) +"yD" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 2; d2 = 4; dir = 4; icon_state = "2-4"},/obj/structure/cable/cyan{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/cyan{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/structure/table/steel_reinforced,/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/effect/floor_decal/industrial/warning,/obj/item/clothing/gloves/yellow,/obj/item/device/multitool{pixel_x = 5},/obj/machinery/light{dir = 4},/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/engineering/reactor_smes) "yE" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "yG" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/machinery/door/firedoor/glass/hidden,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "yH" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_three) @@ -1018,11 +1150,12 @@ "yO" = (/obj/effect/overlay/snow/floor,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "yP" = (/obj/effect/floor_decal/corner_steel_grid{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "yQ" = (/obj/effect/decal/cleanable/dirt,/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/steel_dirty,/area/surface/outpost/mining_main/uxstorage) -"yR" = (/obj/machinery/disposal,/obj/effect/floor_decal/corner/red{dir = 9},/obj/effect/floor_decal/corner/red{dir = 6},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) +"yR" = (/obj/machinery/power/terminal{dir = 4},/obj/structure/cable/yellow,/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/camera/emp_proof{c_tag = "ENG - Outpost SMES Room"; dir = 10; name = "Engineering_Outpost"; network = list("Engineering")},/obj/machinery/light_switch{pixel_x = -21; pixel_y = -11},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/engineering/reactor_smes) "yS" = (/turf/simulated/floor/water{outdoors = 0},/area/surface/outside/ocean) "yT" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_3) "yU" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/mining_main/exterior) -"yV" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/security/maa) +"yV" = (/obj/item/modular_computer/console/preset/engineering,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/reactor_smes) +"yW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/door/airlock/maintenance_hatch{name = "Reactor Room Internal Access"; req_one_access = list(11)},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/techfloor/grid,/area/surface/outpost/engineering/reactor_smes) "yX" = (/obj/effect/floor_decal/borderfloor,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) "yY" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "za" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) @@ -1035,7 +1168,6 @@ "zi" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock{name = "Restroom"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/dorms/dorm_5) "zj" = (/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/white/border{dir = 10},/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/tiled,/area/surface/outpost/main/gateway) "zk" = (/obj/structure/table/rack,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/structure/window/basic,/obj/structure/window/basic{dir = 8},/obj/item/weapon/mining_scanner,/obj/item/clothing/mask/breath,/obj/item/clothing/suit/space/void/mining,/obj/item/clothing/head/helmet/space/void/mining,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) -"zl" = (/obj/effect/overlay/snow/floor,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating/sif/planetuse,/area/surface/outpost/mining_main/gen_room) "zm" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) "zn" = (/obj/machinery/embedded_controller/radio/airlock/access_controller{id_tag = "main4_airlock_control"; pixel_x = -5; tag_exterior_door = "main4_airlock_exterior"; tag_interior_door = "main4_airlock_interior"},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "main4_airlock_control"; name = "Internal Access Button"; pixel_x = 5},/turf/simulated/wall/r_wall,/area/surface/outpost/main/airlock/landing_north) "zo" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) @@ -1051,22 +1183,22 @@ "zC" = (/obj/effect/floor_decal/steeldecal/steel_decals_central1{dir = 1},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/gym) "zF" = (/obj/machinery/mineral/unloading_machine,/obj/structure/plasticflaps/mining,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/exterior) "zG" = (/turf/simulated/shuttle/wall/voidcraft,/area/surface/outside/lake/romsele) -"zH" = (/obj/machinery/portable_atmospherics/powered/scrubber,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) -"zI" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/security) +"zI" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "ENG_Outpost_airlock_control"; name = "Internal Access Button"; pixel_x = 5; pixel_y = 26; req_one_access = list(10)},/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "ENG_Outpost_airlock_interior"; locked = 1; name = "Engineering Outpost Internal"},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/engineering/monitoring) "zJ" = (/obj/effect/overlay/snow/floor,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "zK" = (/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/brown/border{dir = 5},/obj/structure/reagent_dispensers/watertank,/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/tools) "zL" = (/obj/structure/table/steel,/obj/item/weapon/storage/belt/utility/full,/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/brown/border{dir = 9},/obj/structure/extinguisher_cabinet{pixel_x = -25},/obj/machinery/firealarm{pixel_y = 24},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/tools) -"zM" = (/obj/machinery/atmospherics/omni/atmos_filter{tag_east = 5; tag_north = 2; tag_south = 1; tag_west = 6},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "zN" = (/obj/machinery/telecomms/relay/preset/southerncross/planet,/turf/simulated/floor/tiled/techmaint,/area/surface/outpost/main/tcomm) "zO" = (/obj/structure/table/steel,/obj/random/tool,/obj/random/tool,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner2{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/tools) "zP" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/left_two) "zQ" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "zS" = (/obj/effect/map_effect/portal/line/side_a,/turf/simulated/wall/solidrock,/area/surface/outside/plains/mountains) +"zT" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled,/area/surface/outpost/security) "zV" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/door/firedoor/glass/hidden{dir = 2},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "zW" = (/obj/effect/floor_decal/corner/white{dir = 9},/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9,/obj/machinery/vending/coffee,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "zX" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light/small,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/airlock/left_one) "zY" = (/obj/machinery/door/window/westleft{name = "Medical Supplies"; req_access = null; req_one_access = list(5,43)},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 8},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "Aa" = (/obj/structure/table/rack,/obj/structure/window/basic{dir = 4},/obj/structure/window/basic{dir = 1},/obj/item/clothing/mask/gas,/obj/item/clothing/shoes/boots/winter,/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/item/weapon/tank/emergency/oxygen/engi,/obj/item/clothing/suit/storage/hooded/wintercoat,/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/landing_north) +"Ac" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/machinery/alarm{dir = 1; pixel_y = -25},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/engineering/atmos_room) "Ad" = (/turf/simulated/floor/water{outdoors = 0},/area/surface/outside/plains/mountains) "Ae" = (/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "main1_airlock_exterior"; locked = 1; name = "Main Outpost External"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "main1_airlock_control"; name = "External Access Button"; pixel_y = -26},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/main/airlock/right_two) "Af" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) @@ -1082,12 +1214,12 @@ "As" = (/obj/structure/table/woodentable,/obj/machinery/light{dir = 8},/obj/item/weapon/material/ashtray,/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_4) "Av" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_one) "Ax" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/civilian/sauna) -"Az" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/obj/effect/floor_decal/industrial/outline,/obj/machinery/portable_atmospherics/canister/empty,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "AA" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/borderfloor/corner2{dir = 9},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "AB" = (/obj/structure/table/rack,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/obj/structure/window/basic{dir = 1},/obj/structure/window/basic{dir = 8},/obj/item/weapon/mining_scanner,/obj/item/clothing/mask/breath,/obj/item/clothing/suit/space/void/mining,/obj/item/clothing/head/helmet/space/void/mining,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "AC" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/highsecurity{name = "Telecommunication Hub"; req_one_access = list(61)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/tcomm) "AF" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "AG" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) +"AI" = (/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/red/border{dir = 5},/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "north bump"; operating = 0; pixel_y = 24},/obj/effect/decal/cleanable/blood/oil,/obj/machinery/light_switch{pixel_x = -12; pixel_y = 22},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "AJ" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/item/frame/extinguisher_cabinet,/obj/item/weapon/extinguisher,/turf/simulated/floor/plating,/area/surface/outpost/main/bar) "AK" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/obj/structure/flora/pottedplant/bamboo,/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_3) "AL" = (/obj/machinery/fitness/heavy/lifter,/turf/simulated/floor/holofloor/wood,/area/surface/outpost/main/gym) @@ -1102,18 +1234,17 @@ "AV" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_two) "AX" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 8},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) "AY" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 0; external_pressure_bound_default = 0; icon_state = "map_vent_in"; initialize_directions = 1; internal_pressure_bound = 4000; internal_pressure_bound_default = 4000; pressure_checks = 2; pressure_checks_default = 2; pump_direction = 0; use_power = 1},/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) -"AZ" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/security) -"Ba" = (/obj/machinery/pipedispenser,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"AZ" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/camera/emp_proof{c_tag = "ENG - Outpost Reactor Room Access"; dir = 10; name = "Engineering_Outpost"; network = list("Engineering")},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/engineering/monitoring) "Bc" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/airlock/left_three) "Be" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "Bg" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/tools) -"Bh" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/mining_main/gen_room) -"Bi" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan{dir = 1},/obj/machinery/meter,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"Bh" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "Bj" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "Bk" = (/turf/simulated/wall,/area/surface/outpost/main/dorms/dorm_2) "Bl" = (/obj/effect/floor_decal/borderfloorblack{dir = 8},/obj/effect/floor_decal/industrial/danger{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "Bo" = (/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "main2_airlock_exterior"; locked = 1; name = "Main Outpost External"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "main2_airlock_control"; name = "External Access Button"; pixel_x = -26},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/main/airlock/right_one) "Bp" = (/obj/effect/overlay/snow/floor,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/civilian/smes) +"Bq" = (/obj/structure/table/reinforced,/obj/effect/floor_decal/borderfloor,/obj/item/weapon/material/ashtray/plastic,/obj/machinery/recharger,/obj/effect/floor_decal/corner/red/border,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled,/area/surface/outpost/security) "Br" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 5},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "Bs" = (/obj/effect/floor_decal/steeldecal/steel_decals6,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "Bt" = (/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "main7_airlock_exterior"; locked = 1; name = "Main Outpost External"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "main7_airlock_control"; name = "External Access Button"; pixel_y = -26},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/main/airlock/left_two) @@ -1122,6 +1253,7 @@ "Bw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/engineering{name = "SMES Access"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/gen_room/smes_left) "Bx" = (/turf/simulated/floor/outdoors/rocks/sif/planetuse,/area/surface/outside/plains/normal) "By" = (/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = 32},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) +"Bz" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/engineering/atmos_room) "BA" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals6,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "BB" = (/turf/simulated/wall,/area/surface/outside/path/plains) "BC" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) @@ -1129,12 +1261,16 @@ "BE" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock{name = "Restroom"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/dorms/dorm_1) "BF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_external/public{name = "Airlock Access"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/airlock/landing_north) "BG" = (/obj/effect/floor_decal/corner/brown{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/light,/turf/simulated/floor/tiled/steel_dirty,/area/surface/outpost/mining_main/uxstorage) +"BH" = (/obj/structure/table/bench/standard,/turf/simulated/floor/plating,/area/surface/outpost/security/maa) "BI" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_1) "BJ" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "BK" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_two) -"BL" = (/obj/structure/table/reinforced,/obj/effect/floor_decal/corner/red{dir = 9},/obj/effect/floor_decal/corner/red{dir = 6},/obj/item/weapon/storage/box,/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) +"BL" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/industrial/warning/corner,/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/engineering/reactor_smes) +"BM" = (/obj/effect/floor_decal/industrial/warning{dir = 9},/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/unary/outlet_injector{dir = 1; frequency = null; id = "air_in"; use_power = 1},/turf/simulated/floor/reinforced/airless,/area/surface/outpost/engineering/reactor_smes) "BN" = (/obj/structure/table/rack/shelf,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/item/device/gps/mining{pixel_x = -5},/obj/effect/floor_decal/corner/brown/border{dir = 1},/obj/item/device/gps/mining{pixel_x = 5},/obj/item/device/gps/mining{pixel_x = -5},/obj/item/device/gps/mining{pixel_x = 5},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) +"BO" = (/obj/structure/catwalk,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/surface/outpost/security/smes) "BQ" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 140; external_pressure_bound_default = 140; icon_state = "map_vent_out"; pressure_checks = 0; pressure_checks_default = 0; use_power = 1},/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) +"BR" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera/emp_proof{c_tag = "ENG - Outpost Reactor Room East"; dir = 4; name = "Reactor_Room"; network = list("Engine")},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "BS" = (/obj/machinery/light/spot{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) "BT" = (/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) "BU" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/machinery/embedded_controller/radio/airlock/access_controller{id_tag = "mining1_airlock_control"; pixel_x = 26; pixel_y = -26; req_one_access = list(48); tag_exterior_door = "mining1_airlock_exterior"; tag_interior_door = "mining1_airlock_interior"},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) @@ -1144,10 +1280,10 @@ "BY" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "Ca" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_north) "Cb" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/exploration/containment) +"Cc" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/meter,/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) "Cd" = (/obj/effect/map_effect/portal/master/side_a/plains_to_caves/river,/turf/simulated/wall/solidrock,/area/surface/outside/plains/mountains) "Ce" = (/turf/simulated/floor/reinforced,/area/surface/outpost/main/landing) "Cg" = (/obj/structure/table/steel,/obj/machinery/light/small{dir = 4},/obj/item/weapon/storage/toolbox/electrical,/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room/smes_left) -"Ch" = (/obj/machinery/atmospherics/pipe/manifold/visible/cyan{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "Cj" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/brown/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/brown/bordercorner2{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "Ck" = (/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/obj/machinery/lapvend,/obj/effect/floor_decal/steeldecal/steel_decals9,/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "Cl" = (/turf/simulated/wall/r_wall,/area/surface/outpost/mining_main/refinery) @@ -1168,6 +1304,7 @@ "CB" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "CC" = (/obj/machinery/camera/network/main_outpost{c_tag = "MO Left Wing - Airlock Access 3"; dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_three) "CD" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/gen_room) +"CE" = (/obj/machinery/power/sensor{name = "Powernet Sensor - Outpost Reactor Power"; name_tag = "Outpost Reactor Power"},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/structure/catwalk,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "CF" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/light/small{dir = 1},/obj/machinery/camera/network/telecom{c_tag = "Tcoms - Main Outpost"; dir = 4},/turf/simulated/floor/tiled/techmaint,/area/surface/outpost/main/tcomm) "CG" = (/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera/network/main_outpost{c_tag = "MO Right Wing - Hallway 5"; dir = 1},/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "CI" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_two) @@ -1177,27 +1314,30 @@ "CM" = (/obj/structure/table/reinforced,/obj/item/weapon/tool/crowbar/red,/obj/item/device/flashlight,/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/alarm{dir = 1; pixel_y = -25},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/left_three) "CN" = (/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/purple/border{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) "CO" = (/obj/structure/flora/pottedplant/dead,/turf/simulated/floor/plating,/area/surface/outpost/main/bar) -"CP" = (/obj/machinery/shower,/obj/structure/curtain/open/shower,/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/main/dorms/dorm_1) +"CP" = (/obj/machinery/shower,/obj/structure/curtain/open/shower,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_1) "CQ" = (/obj/machinery/floodlight,/turf/simulated/floor/plating,/area/surface/outpost/main/emergency_storage/two) "CR" = (/obj/machinery/vending/coffee,/obj/effect/floor_decal/corner/white{dir = 9},/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) -"CS" = (/turf/simulated/wall/r_wall,/area/surface/outpost/security/maa) +"CS" = (/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/reinforced/airless,/area/surface/outpost/engineering/reactor_smes) "CV" = (/obj/structure/closet/firecloset,/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "CW" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/obj/effect/floor_decal/corner/brown/bordercorner2{dir = 10},/obj/machinery/light_switch{pixel_x = -22; pixel_y = -10},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/tools) "CX" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "CY" = (/obj/structure/table/marble,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/turf/simulated/floor/plating,/area/surface/outpost/main/bar) -"CZ" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "Da" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "Dc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_3) "Dd" = (/obj/structure/table/standard,/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/industrial/danger/corner{dir = 8},/obj/machinery/computer/cryopod/gateway{pixel_y = 30},/obj/machinery/newscaster{pixel_x = 29},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/gateway) "De" = (/obj/structure/toilet,/obj/structure/window/basic{dir = 4},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_3) +"Df" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/machinery/light/small{brightness_color = "#DA0205"; brightness_power = 1; brightness_range = 5; dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) "Dg" = (/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) +"Di" = (/obj/effect/overlay/snow/floor,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable/heavyduty{icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "Dj" = (/obj/effect/floor_decal/steeldecal/steel_decals1,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/refinery) +"Dk" = (/obj/machinery/disposal,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/red/border,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security) "Dl" = (/obj/structure/table/steel,/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light/small{dir = 4},/obj/item/weapon/storage/toolbox/electrical,/obj/item/clothing/shoes/galoshes,/turf/simulated/floor/plating,/area/surface/outpost/civilian/smes) "Dm" = (/obj/effect/overlay/snow/floor,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "Dn" = (/obj/effect/zone_divider,/turf/simulated/floor/wood{outdoors = 1},/area/surface/outside/path/plains) "Do" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/glass_external/public{name = "Airlock Access"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/airlock/right_three) "Dq" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/main/corridor/left_lower) "Ds" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) +"Dt" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/wingrille_spawn/reinforced_phoron,/obj/machinery/door/blast/radproof{id = "EngineReactor"; rad_resistance = 150},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "Du" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/restroom) "Dv" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "Dw" = (/obj/structure/closet/l3closet/janitor,/obj/effect/floor_decal/borderfloor{dir = 9},/obj/machinery/firealarm{pixel_y = 24},/obj/effect/floor_decal/corner/purple/border{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/janitor) @@ -1211,6 +1351,7 @@ "DG" = (/obj/effect/shuttle_landmark{docking_controller = "surface_dock_2"; landmark_tag = "shuttle2_planet"; name = "Outpost East Pad"},/turf/simulated/floor/reinforced,/area/shuttle/shuttle2/planet) "DH" = (/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/refinery) "DJ" = (/obj/effect/overlay/snow/floor,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) +"DK" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/effect/floor_decal/industrial/warning,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "DL" = (/obj/structure/catwalk,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/machinery/power/terminal{dir = 8},/obj/structure/cable,/turf/simulated/floor/plating,/area/surface/outpost/civilian/smes) "DM" = (/obj/effect/zone_divider,/turf/simulated/floor/water,/area/surface/outside/river/indalsalven) "DN" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/embedded_controller/radio/airlock/access_controller{id_tag = "main5_airlock_control"; pixel_x = 26; pixel_y = -26; tag_exterior_door = "main5_airlock_exterior"; tag_interior_door = "main5_airlock_interior"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_three) @@ -1226,7 +1367,7 @@ "DX" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/corridor/right_lower) "DZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/status_display{pixel_y = 32},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) "Ea" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) -"Ed" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/disposalpipe/junction,/turf/simulated/floor/tiled,/area/surface/outpost/security) +"Eb" = (/turf/simulated/floor/plating,/area/surface/outpost/security/maa) "Ee" = (/obj/structure/closet/hydrant{pixel_x = -32},/obj/item/clothing/glasses/meson,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/emergencystorage) "Ef" = (/obj/effect/overlay/snow/floor,/obj/structure/symbol/gu{pixel_x = -32},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "Eg" = (/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/white/border{dir = 6},/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) @@ -1238,25 +1379,24 @@ "Ep" = (/obj/machinery/cryopod/robot/door/gateway,/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/main/gateway) "Eq" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 8},/obj/structure/table/standard,/obj/random/action_figure,/obj/item/weapon/coin/silver,/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "Er" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/tiled,/area/surface/outpost/main/teleporter) -"Es" = (/obj/machinery/power/terminal,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "Et" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/table/rack,/obj/item/weapon/tank/emergency/oxygen/double,/obj/item/weapon/tank/emergency/oxygen/double,/obj/machinery/camera/network/main_outpost{c_tag = "MO Right Wing - Airlock 2"},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/right_two) -"Ev" = (/obj/machinery/shower{dir = 1},/obj/structure/curtain/open/shower,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/main/dorms/dorm_2) -"Ey" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"Ev" = (/obj/machinery/shower{dir = 1},/obj/structure/curtain/open/shower,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_2) "Ez" = (/obj/effect/floor_decal/corner/white{dir = 9},/obj/effect/floor_decal/corner/white{dir = 6},/obj/structure/table/glass,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "EA" = (/obj/machinery/floodlight,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/orange/border{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "EB" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) +"EC" = (/obj/machinery/button/remote/blast_door/radproof{name = "Engine Monitoring Room Blast Doors"; pixel_x = 23},/obj/machinery/computer/security/engineering,/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/yellow/border{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/reactor_smes) "ED" = (/obj/structure/table/glass,/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/obj/item/roller,/obj/item/roller{pixel_y = 8},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "EE" = (/obj/structure/table/rack,/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/window/basic{dir = 1},/obj/structure/window/basic{dir = 4},/obj/item/clothing/shoes/boots/winter,/obj/item/clothing/suit/storage/hooded/wintercoat,/obj/item/clothing/mask/gas,/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/right_two) "EG" = (/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_south) "EH" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "main2_airlock_control"; name = "Internal Access Button"; pixel_x = -26; pixel_y = -6},/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "main2_airlock_interior"; locked = 1; name = "Main Outpost Internal"},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/main/airlock/right_one) +"EI" = (/obj/machinery/portable_atmospherics/canister,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) "EJ" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/machinery/mineral/equipment_vendor,/obj/effect/floor_decal/borderfloor/corner2{dir = 9},/obj/effect/floor_decal/corner/brown/bordercorner2{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "EK" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/orange/bordercorner{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "EL" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/obj/structure/extinguisher_cabinet{pixel_y = 30},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "EM" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/structure/window/reinforced{dir = 8},/obj/structure/table/glass,/obj/item/clothing/accessory/stethoscope,/obj/item/device/defib_kit/loaded,/obj/item/device/defib_kit/compact,/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "EN" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "EO" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) -"EP" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/table/steel,/obj/machinery/camera/network/engineering_outpost{c_tag = "ENG - Mining Outpost Power 1"; dir = 4},/obj/random/tech_supply,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) -"EQ" = (/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/catwalk,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"EP" = (/obj/effect/wingrille_spawn/reinforced_phoron,/obj/machinery/door/blast/radproof{dir = 4; id = "EngineReactor"; rad_resistance = 150},/turf/simulated/floor/reinforced,/area/surface/outpost/engineering/reactor_smes) "ER" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock{name = "Locker Room"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/showers) "ES" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/corridor/left_upper) "ET" = (/obj/machinery/sleeper{dir = 4},/obj/effect/floor_decal/borderfloorwhite{dir = 1},/obj/effect/floor_decal/corner/paleblue/border{dir = 1},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/search_and_rescue) @@ -1268,9 +1408,11 @@ "Fb" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "Fc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "Fd" = (/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/obj/structure/bed/chair{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) +"Fe" = (/obj/machinery/computer/fusion_core_control{id_tag = "Outpost Fusion Core"},/obj/machinery/camera/emp_proof{c_tag = "ENG - Outpost Reactor Monitoring"; name = "Engineering_Outpost"; network = list("Engineering")},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/reactor_smes) "Ff" = (/obj/effect/floor_decal/borderfloorblack{dir = 8},/obj/effect/floor_decal/industrial/danger{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "Fg" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_two) "Fh" = (/obj/structure/table/standard,/obj/structure/extinguisher_cabinet{pixel_x = 25},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/random/soap,/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/machinery/light_switch{pixel_x = -12; pixel_y = 22},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) +"Fi" = (/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/red/border{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "Fj" = (/obj/machinery/light{dir = 1},/obj/structure/flora/pottedplant/minitree,/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) "Fk" = (/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 8},/obj/machinery/camera/network/main_outpost{c_tag = "MO - Landing South Airlock Access"; dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_south) "Fl" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) @@ -1284,16 +1426,18 @@ "Fw" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/engineering{name = "SMES Access"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/gen_room/smes_right) "Fy" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "Fz" = (/obj/structure/table/rack,/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/window/basic{dir = 1},/obj/structure/window/basic{dir = 8},/obj/item/clothing/shoes/boots/winter,/obj/item/clothing/suit/storage/hooded/wintercoat,/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/right_three) +"FA" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "FB" = (/obj/machinery/conveyor{id = "mining_north"},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/exterior) "FC" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/main/corridor/right_lower) "FD" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/blast/shutters{dir = 8; id = "production1"; name = "Production Shutters"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/mining_main/refinery) "FF" = (/turf/simulated/floor/water,/area/surface/outside/plains/mountains) "FG" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "FH" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) -"FI" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled,/area/surface/outpost/security) "FK" = (/obj/structure/table/bench/steel,/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/path/plains) -"FL" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) +"FL" = (/obj/effect/floor_decal/industrial/warning,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/catwalk,/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "FM" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/gateway) +"FO" = (/obj/structure/table/reinforced,/obj/effect/floor_decal/borderfloor{dir = 10},/obj/item/device/flashlight/lamp,/obj/effect/floor_decal/corner/red/border{dir = 10},/obj/machinery/vending/wallmed1{name = "NanoMed Wall"; pixel_y = -30},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"FP" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/red/border,/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "FQ" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "FR" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) "FS" = (/obj/structure/catwalk,/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room/smes_right) @@ -1302,7 +1446,7 @@ "FW" = (/obj/effect/overlay/snow/floor,/obj/machinery/light/small{dir = 4},/obj/machinery/conveyor_switch/oneway{id = "mining_north"; name = "mining conveyor"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/mining_main/exterior) "FX" = (/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outpost/main/airlock/right_two) "FY" = (/obj/machinery/hologram/holopad,/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_y = 28},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) -"Ga" = (/turf/simulated/floor/tiled,/area/surface/outpost/security) +"Ga" = (/obj/machinery/light,/obj/item/weapon/book/manual/rust_engine,/obj/structure/table/steel_reinforced,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/yellow/border{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "Gb" = (/obj/structure/table/steel,/obj/machinery/cell_charger,/obj/random/powercell,/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/machinery/camera/network/engineering_outpost{c_tag = "SUBS - Left Wing"; dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room/smes_left) "Gc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) "Ge" = (/obj/machinery/button/remote/blast_door{id = "garage1"; name = "Garage Shutter Control"; pixel_x = 22; req_one_access = list(48,43)},/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outpost/main/airlock/right_two) @@ -1318,7 +1462,7 @@ "Gp" = (/turf/simulated/wall,/area/surface/outpost/main/exploration) "Gq" = (/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/obj/machinery/power/smes/buildable/outpost_substation{RCon_tag = "Outpost - Civilian"; charge = 500000; input_attempt = 1; input_level = 150000; output_level = 150000},/turf/simulated/floor/plating,/area/surface/outpost/civilian/smes) "Gr" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) -"Gs" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/security) +"Gs" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/engineering/monitoring) "Gt" = (/obj/machinery/light,/turf/simulated/floor/tiled,/area/surface/outpost/civilian/sauna) "Gu" = (/obj/structure/table/glass,/obj/item/weapon/inflatable_duck,/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "Gv" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/bar) @@ -1327,14 +1471,14 @@ "Gy" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/alarm{dir = 1; pixel_y = -25},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/landing_south) "Gz" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) "GB" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_three) -"GC" = (/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals3,/obj/machinery/camera/network/security{c_tag = "SO - Airlock Access"; dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"GC" = (/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals3,/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "GD" = (/obj/structure/table/bench/steel,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "GE" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/main/exploration) "GF" = (/obj/effect/floor_decal/steeldecal/steel_decals6,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "GG" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "GH" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/sauna) +"GJ" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/reinforced/airless,/area/surface/outpost/engineering/reactor_smes) "GK" = (/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_south) -"GL" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/security) "GM" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "surface_dock_2"; name = "shuttle bay controller"; pixel_x = 26; tag_door = "surface_dock_2_door"},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) "GN" = (/obj/structure/table/bench/wooden,/obj/machinery/light{dir = 8},/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) "GO" = (/obj/effect/overlay/snow/floor,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/airlock/right_one) @@ -1344,19 +1488,23 @@ "GS" = (/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) "GT" = (/obj/effect/floor_decal/borderfloorblack{dir = 4},/obj/effect/floor_decal/industrial/danger{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/steel,/area/surface/outpost/main/landing) "GU" = (/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 10},/obj/machinery/camera/network/main_outpost{c_tag = "MO - Landing North Airlock Access"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_north) +"GV" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/security/maa) "GW" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "GX" = (/obj/structure/table/steel,/obj/random/tech_supply,/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) "GY" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/dorms/dorm_5) "Ha" = (/obj/effect/overlay/snow/floor,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/airlock/right_two) +"Hb" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "sec1_airlock_control"; name = "Internal Access Button"; pixel_x = 5; pixel_y = 26; req_one_access = list(1)},/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "sec1_airlock_interior"; locked = 1; name = "Security Outpost Internal"},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/security) "Hc" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "He" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "Hf" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "Hi" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/surface/outpost/main/emergency_storage/one) "Hj" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) +"Hk" = (/turf/simulated/floor/outdoors/snow,/area/surface/outside/plains/outpost) "Hl" = (/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/purple/border{dir = 6},/obj/machinery/washing_machine,/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) "Hm" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/tools) "Hn" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "1-8"},/obj/structure/cable/heavyduty{icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/disposalpipe/junction/yjunction{dir = 8},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "Ho" = (/obj/machinery/mineral/unloading_machine,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/refinery) +"Hp" = (/obj/machinery/status_display{pixel_y = 32},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/security) "Hq" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) "Hr" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "Hs" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/junction/yjunction{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) @@ -1366,18 +1514,16 @@ "Hx" = (/obj/structure/table/standard,/obj/effect/floor_decal/borderfloor{dir = 10},/obj/effect/floor_decal/corner/orange/border{dir = 10},/obj/machinery/light{dir = 8},/obj/item/weapon/storage/box/wormcan/sickly{pixel_x = -3; pixel_y = 3},/obj/item/weapon/storage/box/wormcan/sickly{pixel_x = 3},/obj/machinery/camera/network/civilian{c_tag = "CO - Fishing 2"; dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "Hy" = (/obj/structure/table/rack,/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/window/basic{dir = 1},/obj/structure/window/basic{dir = 8},/obj/item/weapon/tank/emergency/oxygen/double,/obj/item/clothing/mask/gas,/obj/item/clothing/shoes/boots/winter,/obj/item/clothing/suit/storage/hooded/wintercoat,/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/left_two) "Hz" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/highsecurity{name = "Teleporter Access"; req_access = newlist(); req_one_access = list(17)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/teleporter) -"HA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/catwalk,/obj/machinery/light/small,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "HC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) "HD" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/refinery) "HE" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_two) "HF" = (/obj/effect/zone_divider,/turf/simulated/floor/outdoors/snow/sif/planetuse,/area/surface/outside/plains/normal) "HG" = (/obj/effect/floor_decal/borderfloor,/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) -"HH" = (/obj/effect/overlay/snow/floor,/obj/structure/disposaloutlet{dir = 8},/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/plating/sif/planetuse,/area/surface/outpost/mining_main/gen_room) "HJ" = (/obj/effect/overlay/snow/floor,/obj/effect/floor_decal/industrial/warning/dust,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "HK" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/exploration) "HL" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "1-8"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) -"HM" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/tiled,/area/surface/outpost/security) -"HN" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/surface/outpost/security/maa) +"HM" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) +"HN" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable/cyan{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "HO" = (/obj/machinery/vending/fitness,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9,/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) "HP" = (/obj/structure/table/steel,/obj/item/weapon/storage/box/lights/mixed,/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/main/emergency_storage/two) "HQ" = (/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outpost/main/airlock/right_one) @@ -1391,16 +1537,15 @@ "HZ" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/brown/border{dir = 8},/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/brown/bordercorner2{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "Ia" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "Ic" = (/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/emergencystorage) -"Ie" = (/obj/machinery/door/firedoor/border_only,/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "If" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "Ig" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) -"Ii" = (/obj/machinery/shower{dir = 1},/obj/structure/curtain/open/shower,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/main/dorms/dorm_6) +"Ih" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/red/border{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) +"Ii" = (/obj/machinery/shower{dir = 1},/obj/structure/curtain/open/shower,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_6) "Ij" = (/obj/machinery/mineral/unloading_machine{icon_state = "unloader-corner"},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/refinery) "Ik" = (/obj/structure/closet/emcloset,/obj/machinery/light,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "Il" = (/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "Im" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/table/reinforced,/obj/item/device/radio{pixel_x = -5; pixel_y = 5},/obj/item/device/radio{pixel_x = 5; pixel_y = 5},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/left_three) -"Io" = (/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/red/border{dir = 9},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) -"Ip" = (/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/red/border{dir = 5},/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "north bump"; operating = 0; pixel_y = 24},/obj/effect/decal/cleanable/blood/oil,/obj/machinery/light_switch{pixel_x = -12; pixel_y = 22},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) +"Ip" = (/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/engineering/atmos_room) "Iq" = (/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/light,/obj/random/soap,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_4) "Ir" = (/obj/structure/table/woodentable,/turf/simulated/floor/plating,/area/surface/outpost/main/bar) "Is" = (/obj/structure/table/bench/steel,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) @@ -1421,12 +1566,15 @@ "IK" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "IL" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/laundry) "IM" = (/obj/effect/floor_decal/steeldecal/steel_decals_central1{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/civilian/sauna) +"IN" = (/turf/simulated/wall/r_wall{cached_rad_resistance = 150},/area/surface/outpost/engineering/monitoring) "IP" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_1) "IQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/stairs{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/civilian/fishing) "IT" = (/obj/structure/dispenser{phorontanks = 0},/turf/simulated/floor/tiled,/area/surface/outpost/main/teleporter) "IU" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/airlock/left_two) +"IV" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/light/small,/obj/effect/floor_decal/industrial/warning/corner,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "IW" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) -"IX" = (/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/machinery/power/smes/buildable{RCon_tag = "Outpost - Main Power Unit 1"; charge = 1.5e+007; cur_coils = 3; input_attempt = 1; input_level = 750000; input_level_max = 750000; output_level = 750000; output_level_max = 750000},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"IX" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/surface/outpost/security/maa) +"IY" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/cyan{d2 = 4; icon_state = "0-4"},/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/machinery/light_switch{pixel_x = -21; pixel_y = -11},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "IZ" = (/obj/structure/ore_box,/obj/effect/floor_decal/corner/brown{dir = 4},/turf/simulated/floor/tiled/steel_dirty,/area/surface/outpost/mining_main/uxstorage) "Ja" = (/turf/simulated/floor/water/shoreline{dir = 10},/area/surface/outside/ocean) "Jb" = (/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_north) @@ -1434,24 +1582,26 @@ "Je" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "Jf" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_north) "Jg" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/plating,/area/surface/outpost/main/emergency_storage/two) -"Jj" = (/obj/structure/table/reinforced,/obj/effect/floor_decal/borderfloor{dir = 9},/obj/machinery/photocopier/faxmachine,/obj/effect/floor_decal/corner/red/border{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"Jj" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "Jk" = (/obj/machinery/conveyor{dir = 4; id = "mining_external"},/turf/simulated/floor/plating/sif/planetuse,/area/surface/outpost/mining_main/refinery) +"Jl" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) "Jm" = (/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/structure/cable/blue,/obj/machinery/light_switch{pixel_x = -12; pixel_y = -22},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) -"Jn" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/engineering{name = "SMES Access"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/security/smes) +"Jn" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/closet/secure_closet/engineering_welding,/obj/random/maintenance/engineering,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/yellow/border{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "Jo" = (/obj/effect/floor_decal/spline/plain{dir = 1; icon_state = "spline_plain_full"},/obj/structure/showcase{desc = "It looks almost lifelike."; icon = 'icons/obj/statue.dmi'; icon_state = "hos"; name = "Statue"; pixel_y = 2},/obj/item/device/gps/internal/base,/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/main/landing) "Jp" = (/obj/effect/floor_decal/borderfloorwhite,/obj/effect/floor_decal/corner/paleblue/border,/obj/effect/floor_decal/borderfloorwhite/corner2,/obj/effect/floor_decal/corner/paleblue/bordercorner2,/obj/structure/closet/l3closet/scientist,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "Jq" = (/obj/effect/map_effect/portal/line/side_a,/turf/simulated/wall/r_wall,/area/surface/outpost/mining_main/exterior) "Jr" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 10},/obj/machinery/camera/network/main_outpost{c_tag = "MO Right Wing - Hallway 3"; dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "Js" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/borderfloor/corner2,/obj/effect/floor_decal/corner/white/bordercorner2,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "Ju" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/camera/network/main_outpost{c_tag = "ATV Garage 2"; dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/right_one) -"Jw" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/engineering{name = "Generator Room"; req_one_access = list(12)},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/mining_main/tools) +"Jv" = (/obj/structure/sign/electricshock,/turf/simulated/wall/r_wall{cached_rad_resistance = 150},/area/surface/outpost/engineering/monitoring) +"Jw" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/engineering{name = "Atmos Room"; req_one_access = list(12)},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/mining_main/tools) "Jy" = (/turf/simulated/floor/water/shoreline,/area/surface/outside/ocean) "Jz" = (/obj/effect/overlay/snow/floor,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "JA" = (/obj/machinery/alarm{dir = 1; pixel_y = -25},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/surface/outpost/main/emergency_storage/one) "JB" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/janitor) "JC" = (/obj/structure/table/steel,/obj/random/junk,/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) "JD" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/glass{name = "Laundry"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/laundry) -"JE" = (/obj/effect/overlay/snow/floor,/obj/structure/grille,/turf/simulated/floor/plating/sif/planetuse,/area/surface/outpost/mining_main/gen_room) +"JI" = (/turf/simulated/wall/r_wall,/area/surface/outpost/security/maa) "JK" = (/obj/machinery/disposal,/obj/machinery/button/remote/airlock{id = "dorm2"; name = "Door Lock Control"; pixel_y = 25; specialfunctions = 4},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_2) "JL" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "JM" = (/turf/unsimulated/wall/planetary/sif{icon_state = "rock-dark"},/area/surface/outpost/wall) @@ -1463,20 +1613,24 @@ "JS" = (/obj/effect/map_effect/portal/master/side_a/plains_to_caves,/turf/unsimulated/wall/planetary/sif{icon_state = "rock-dark"},/area/surface/outside/plains/mountains) "JW" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/gateway) "JX" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/machinery/door/firedoor/glass/hidden{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) +"JZ" = (/obj/structure/catwalk,/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/power/terminal{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/surface/outpost/security/smes) "Ka" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/refinery) +"Kb" = (/obj/structure/bed/chair/office/dark{dir = 1},/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security) "Kc" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "Kd" = (/obj/structure/sign/electricshock,/turf/simulated/wall/r_wall,/area/surface/outpost/main/gen_room) "Kf" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) +"Kg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "Kh" = (/obj/structure/table/rack,/obj/structure/window/basic{dir = 8},/obj/structure/window/basic{dir = 1},/obj/item/clothing/shoes/boots/winter,/obj/item/clothing/suit/storage/hooded/wintercoat,/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/left_one) "Ki" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "Kj" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/gen_room/smes_right) +"Kk" = (/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "Km" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "Kn" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "Kp" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock{name = "Restroom"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/restroom) "Kq" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/tools) "Kr" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_three) "Ks" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_external/public{name = "Airlock Access"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/airlock/landing_south) -"Kt" = (/obj/effect/decal/cleanable/dirt,/obj/structure/closet,/obj/random/toolbox,/turf/simulated/floor/plating,/area/surface/outpost/security/maa) +"Kt" = (/obj/machinery/power/emitter/gyrotron/anchored{dir = 1; id = "Reactor Gyrotron"; id_tag = "Reactor Gyrotron"},/obj/structure/cable/cyan{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "Ku" = (/obj/structure/fence/end,/turf/simulated/floor/outdoors/snow/sif/planetuse,/area/surface/outside/plains/outpost) "Kv" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_one) "Kw" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) @@ -1499,16 +1653,17 @@ "KP" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/showers) "KQ" = (/turf/simulated/floor/water/deep,/area/surface/outside/river/indalsalven) "KR" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/surface/outpost/main/emergency_storage/one) +"KS" = (/obj/structure/table/rack/shelf,/turf/simulated/floor/holofloor/tiled/dark,/area/surface/outpost/security/maa) "KT" = (/obj/structure/sign/electricshock,/turf/simulated/wall,/area/surface/outpost/main/gen_room/smes_right) "KU" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_two) "KV" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock{name = "Restroom"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/dorms/dorm_6) "KW" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/borderfloor/corner2{dir = 9},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 9},/obj/machinery/suit_storage_unit/standard_unit,/turf/simulated/floor/tiled,/area/surface/outpost/main/teleporter) +"KX" = (/obj/effect/decal/cleanable/dirt,/obj/structure/closet,/obj/random/toolbox,/turf/simulated/floor/plating,/area/surface/outpost/security/maa) "KY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) "KZ" = (/obj/machinery/disposal,/obj/machinery/firealarm{dir = 1; pixel_y = -25},/obj/structure/disposalpipe/trunk{dir = 1},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "La" = (/turf/simulated/wall,/area/surface/outpost/mining_main/refinery) "Lb" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/machinery/recharger/wallcharger{pixel_x = 4; pixel_y = -26},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "Lc" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/structure/symbol/em{pixel_x = 32},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) -"Ld" = (/turf/simulated/wall/r_wall,/area/surface/outpost/mining_main/gen_room) "Le" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/orange/border,/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "Lg" = (/obj/effect/mist,/turf/simulated/floor/water/pool,/area/surface/outpost/civilian/sauna) "Lh" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/bluedouble,/turf/simulated/floor/carpet/blue,/area/surface/outpost/main/dorms/dorm_5) @@ -1531,10 +1686,12 @@ "LC" = (/obj/structure/mopbucket,/obj/item/weapon/mop,/obj/item/weapon/reagent_containers/glass/bucket,/obj/effect/floor_decal/borderfloor{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = 25},/obj/effect/floor_decal/corner/purple/border{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/janitor) "LD" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "LE" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_4) -"LF" = (/obj/effect/floor_decal/corner/red{dir = 6},/obj/effect/floor_decal/corner/red{dir = 9},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) +"LF" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "LG" = (/obj/machinery/vending/snack,/obj/effect/floor_decal/corner/white{dir = 9},/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9,/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) +"LH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "LI" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/left_three) "LK" = (/obj/effect/zone_divider,/turf/simulated/floor/outdoors/snow/sif/planetuse,/area/surface/outside/plains/outpost) +"LM" = (/obj/machinery/fusion_fuel_compressor,/obj/structure/cable/cyan{d2 = 2; icon_state = "0-2"},/obj/machinery/camera/emp_proof{c_tag = "ENG - Outpost Fuel Storage"; dir = 6; name = "Engineering_Outpost"; network = list("Engineering")},/turf/simulated/floor/plating,/area/surface/outpost/engineering/storage) "LN" = (/obj/machinery/conveyor{id = "mining_internal"},/obj/machinery/mineral/output,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/refinery) "LO" = (/obj/effect/floor_decal/borderfloor{dir = 5},/obj/structure/closet,/obj/effect/floor_decal/corner/white/border{dir = 5},/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "LP" = (/turf/simulated/floor/water/shoreline/corner{dir = 4},/area/surface/outside/ocean) @@ -1542,6 +1699,7 @@ "LS" = (/obj/structure/table,/turf/simulated/floor/plating,/area/surface/outpost/main/bar) "LT" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/firealarm{pixel_y = 24},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_north) "LU" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/orange/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/orange/bordercorner2{dir = 8},/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) +"LV" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/engineering/monitoring) "LW" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/surface/outpost/main/emergency_storage/two) "LX" = (/obj/effect/floor_decal/industrial/loading{dir = 4},/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/light{dir = 8},/obj/machinery/mineral/input,/obj/structure/sign/warning/moving_parts{pixel_y = 32},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/mining_main/refinery) "LY" = (/obj/effect/floor_decal/industrial/outline/red,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/civilian/fishing) @@ -1554,12 +1712,12 @@ "Mh" = (/obj/machinery/vending/snack,/obj/effect/floor_decal/corner/white{dir = 9},/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9,/obj/machinery/camera/network/main_outpost{c_tag = "MO Left Wing - Hallway 2"; dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "Mi" = (/obj/effect/zone_divider,/turf/simulated/floor/water/shoreline{dir = 8},/area/surface/outside/ocean) "Mk" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/purple/border,/obj/machinery/camera/network/main_outpost{c_tag = "MO - Custodial Closet"; dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/janitor) -"Mm" = (/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/power/port_gen/pacman,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "Mn" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "Mo" = (/obj/effect/floor_decal/spline/plain{dir = 10},/turf/simulated/floor/water/pool,/area/surface/outpost/civilian/pool) "Mp" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/atmospherics/pipe/simple/visible{dir = 5},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "Mq" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "Mt" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-j2"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) +"Mu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) "Mv" = (/obj/effect/landmark/start{name = "Explorer"},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) "Mw" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/right_three) "My" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/airlock/landing_south) @@ -1569,11 +1727,11 @@ "ME" = (/obj/effect/landmark/start{name = "Search and Rescue"},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "MF" = (/obj/machinery/button/windowtint{id = "sauna_tint1"; pixel_x = -5; pixel_y = 22},/obj/machinery/button/windowtint{id = "sauna_tint2"; pixel_x = 6; pixel_y = 22},/obj/effect/floor_decal/spline/fancy/wood/corner{dir = 8},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 4},/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) "MG" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "main8_airlock_control"; name = "Internal Access Button"; pixel_x = -26; pixel_y = -6},/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "main8_airlock_interior"; locked = 1; name = "Main Outpost Internal"},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/main/airlock/left_three) -"MH" = (/obj/machinery/atmospherics/binary/pump/on{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "MI" = (/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "MJ" = (/obj/machinery/teleport/station,/obj/machinery/status_display{pixel_y = 32},/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled/techmaint,/area/surface/outpost/main/teleporter) "ML" = (/obj/structure/table/steel,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/machinery/light/small{dir = 4},/obj/item/weapon/storage/toolbox/electrical,/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room/smes_right) "MM" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green,/obj/machinery/light_switch{pixel_x = 22},/turf/simulated/floor/carpet/turcarpet,/area/surface/outpost/main/dorms/dorm_3) +"MN" = (/obj/structure/sign/warning/radioactive,/turf/simulated/wall/r_wall,/area/surface/outpost/engineering/monitoring) "MO" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/table/rack,/obj/machinery/camera/network/main_outpost{c_tag = "MO Right Wing - Airlock 1"; dir = 8},/obj/item/weapon/melee/umbrella{color = "#7c0d0d"},/obj/item/weapon/melee/umbrella{color = "#7c0d0d"},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/right_one) "MP" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/orange/bordercorner{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "MQ" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/landing) @@ -1583,8 +1741,9 @@ "MV" = (/turf/simulated/wall/r_wall,/area/surface/outpost/civilian/sauna) "MW" = (/obj/effect/floor_decal/steeldecal/steel_decals6,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "MX" = (/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/purple/bordercorner{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) -"MY" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/security/smes) +"MY" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/engineering/smes) "Na" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) +"Nb" = (/obj/structure/cable/blue,/obj/machinery/power/smes/buildable/outpost_substation{RCon_tag = "Outpost - Security"; charge = 5e+006; input_attempt = 1; input_level = 150000; output_level = 150000},/turf/simulated/floor/plating,/area/surface/outpost/security/smes) "Nc" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_4) "Nd" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock{name = "Emergency Storage"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/civilian/emergency_storage) "Ne" = (/obj/structure/closet/secure_closet{name = "hunting locker"; req_one_access = list(43)},/obj/item/weapon/gun/energy/netgun,/obj/item/weapon/beartrap/hunting,/obj/item/weapon/material/knife/tacknife/survival,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/item/clothing/shoes/boots/jungle,/obj/effect/floor_decal/corner/purple/border{dir = 8},/obj/machinery/camera/network/main_outpost{c_tag = "MO - Containment Pen"; dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) @@ -1592,16 +1751,21 @@ "Ng" = (/obj/structure/closet/hydrant{pixel_x = -32},/turf/simulated/floor/plating,/area/surface/outpost/main/emergency_storage/two) "Nh" = (/obj/machinery/door/firedoor/glass/hidden{dir = 2},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "Ni" = (/obj/machinery/camera/network/main_outpost{c_tag = "MO Left Wing - Airlock Access 2"; dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals3,/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_two) +"Nk" = (/obj/structure/closet/secure_closet/guncabinet/phase{req_one_access = null},/obj/item/clothing/accessory/holster/hip,/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/red/border{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/security) "Nl" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) +"Nm" = (/turf/simulated/floor/holofloor/tiled/dark,/area/surface/outpost/security/maa) "Nn" = (/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/purple/border{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) "Np" = (/obj/effect/floor_decal/industrial/outline/red,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/airlock/left_three) +"Nq" = (/obj/structure/table/reinforced,/obj/machinery/photocopier/faxmachine,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/red/border{dir = 1},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = -12; pixel_y = 22},/turf/simulated/floor/tiled,/area/surface/outpost/security) "Ns" = (/obj/effect/floor_decal/steeldecal/steel_decals_central1{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/corridor/left_upper) "Nt" = (/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_one) "Nu" = (/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/orange/border{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "Nv" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/machinery/firealarm{pixel_y = 24},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/restroom) "Nw" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/carpet/purcarpet,/area/surface/outpost/main/dorms/dorm_2) "Nx" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) +"Ny" = (/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "Nz" = (/obj/effect/overlay/snow/floor,/obj/effect/floor_decal/industrial/warning/dust{dir = 6},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable/heavyduty{icon_state = "1-2"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/mining_main/refinery) +"NA" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "NB" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Long Range Teleporter Access"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/gateway) "NC" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/carpet/bcarpet,/area/surface/outpost/main/dorms/dorm_4) "ND" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/table/rack,/obj/machinery/camera/network/main_outpost{c_tag = "MO Left Wing - Airlock 1"; dir = 4},/obj/item/weapon/melee/umbrella{color = "#7c0d0d"},/obj/item/weapon/melee/umbrella{color = "#7c0d0d"},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/left_one) @@ -1615,6 +1779,7 @@ "NN" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/machinery/camera/network/main_outpost{c_tag = "MO Left Wing - Hallway 4"; dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "NO" = (/obj/effect/overlay/snow/floor,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "NP" = (/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_one) +"NQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance_hatch{name = "Reactor Auxiliary Room"; req_one_access = list(11)},/obj/machinery/door/firedoor/glass,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "NR" = (/obj/structure/table/reinforced,/obj/item/weapon/tool/crowbar/red,/obj/item/device/flashlight,/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/right_three) "NT" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/symbol/da{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "NU" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = -32},/obj/structure/dogbed,/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_4) @@ -1622,6 +1787,7 @@ "NW" = (/obj/machinery/vending/cola,/obj/effect/floor_decal/corner/white{dir = 9},/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "NX" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/tools) "NY" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/machinery/embedded_controller/radio/airlock/access_controller{id_tag = "civ1_airlock_control"; pixel_x = -26; pixel_y = 26; tag_exterior_door = "civ1_airlock_exterior"; tag_interior_door = "civ1_airlock_interior"},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) +"NZ" = (/obj/effect/floor_decal/borderfloor{dir = 6},/obj/effect/floor_decal/corner/red/border{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "Oa" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "Ob" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/newscaster{pixel_x = -30},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "Oc" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/landing_south) @@ -1633,29 +1799,26 @@ "Oi" = (/obj/effect/floor_decal/corner_steel_grid{dir = 5},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "Ok" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) "Ol" = (/obj/effect/floor_decal/steeldecal/steel_decals_central6,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/airlock/landing_north) -"Om" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) +"Om" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "On" = (/obj/machinery/door/airlock{id_tag = "dorm3"; name = "Dorm 3"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/dorms/dorm_3) -"Oo" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) -"Op" = (/obj/structure/table/steel,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light/small{dir = 4},/obj/structure/cable/blue,/obj/item/weapon/storage/toolbox/electrical,/turf/simulated/floor/plating,/area/surface/outpost/security/smes) -"Or" = (/obj/structure/table/bench/standard,/obj/item/device/radio/intercom/department/security{dir = 1; pixel_y = 21},/turf/simulated/floor/tiled/dark,/area/surface/outpost/security/maa) +"Or" = (/obj/machinery/fusion_fuel_injector/mapped{dir = 1; id_tag = "Reactor Fuel Injectors"},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "Os" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/borderfloor/corner2,/obj/effect/floor_decal/corner/white/bordercorner2,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "Ot" = (/obj/machinery/mineral/stacking_unit_console,/turf/simulated/wall/r_wall,/area/surface/outpost/mining_main/refinery) "Ou" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/carpet/bcarpet,/area/surface/outpost/main/dorms/dorm_4) "Ov" = (/obj/structure/extinguisher_cabinet{pixel_x = -25},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "Ow" = (/obj/structure/table/reinforced,/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/item/weapon/tool/crowbar/red,/obj/item/device/flashlight,/obj/machinery/camera/network/main_outpost{c_tag = "MO - Landing North Airlock"},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/landing_north) -"Ox" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/catwalk,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "Oy" = (/obj/machinery/disposal,/obj/machinery/button/remote/airlock{id = "dorm3"; name = "Door Lock Control"; pixel_y = -25; specialfunctions = 4},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_3) -"Oz" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "OA" = (/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/power/smes/buildable/outpost_substation{RCon_tag = "Outpost - Left Wing"; charge = 5e+006; input_attempt = 1; input_level = 150000; output_level = 150000},/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room/smes_left) "OB" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/gateway) "OC" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) -"OD" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 8; start_pressure = 4559.63},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "OE" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "OF" = (/obj/structure/closet/lasertag/red,/obj/item/stack/flag/red,/obj/machinery/light,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "OG" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/alarm{dir = 8; pixel_x = 22},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_6) "OH" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_south) +"OI" = (/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "OJ" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "OK" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) +"OL" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/camera/emp_proof{c_tag = "ENG - Outpost Auxiliary Room"; dir = 10; name = "Engineering_Outpost"; network = list("Engineering")},/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) "ON" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/structure/closet/crate/large,/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "OO" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/gateway) "OP" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) @@ -1671,8 +1834,9 @@ "Pc" = (/obj/machinery/atmospherics/unary/freezer{icon_state = "freezer"},/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/surface/outpost/main/search_and_rescue) "Pd" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/sauna) "Pe" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/device/radio/beacon,/turf/simulated/floor/tiled,/area/surface/outpost/main/teleporter) -"Pf" = (/obj/structure/fence/post{dir = 8},/turf/simulated/floor/outdoors/snow/sif/planetuse,/area/surface/outside/plains/outpost) +"Ph" = (/obj/machinery/door/firedoor/border_only,/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/heavyduty{d2 = 2; icon_state = "0-2"},/obj/structure/cable,/obj/structure/window/reinforced/full,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/engineering/smes) "Pi" = (/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) +"Pj" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "Pk" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/alarm{dir = 1; pixel_y = -25},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "Pl" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "Pm" = (/obj/structure/closet/hydrant{pixel_y = 32},/turf/simulated/floor/plating,/area/surface/outpost/main/emergency_storage/one) @@ -1685,9 +1849,9 @@ "Pu" = (/obj/machinery/light/spot{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) "Pv" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "Pw" = (/obj/effect/floor_decal/borderfloor/full,/obj/effect/floor_decal/industrial/danger/full,/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/machinery/shieldwallgen{req_access = list(43)},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) +"Px" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/cyan{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "Py" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "PA" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/structure/extinguisher_cabinet{pixel_x = -25},/turf/simulated/floor/tiled/dark,/area/surface/outpost/mining_main/refinery) -"PB" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 4},/obj/machinery/atmospherics/pipe/simple/visible/cyan,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "PC" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_4) "PD" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "PE" = (/obj/machinery/floodlight,/turf/simulated/floor/plating,/area/surface/outpost/civilian/emergency_storage) @@ -1697,11 +1861,15 @@ "PI" = (/obj/effect/overlay/snow/floor,/obj/structure/ore_box,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "PJ" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "PK" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) +"PM" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "PO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_5) -"PQ" = (/obj/structure/table/reinforced,/obj/effect/floor_decal/borderfloor{dir = 10},/obj/item/device/flashlight/lamp,/obj/effect/floor_decal/corner/red/border{dir = 10},/obj/machinery/vending/wallmed1{name = "NanoMed Wall"; pixel_y = -30},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"PP" = (/obj/structure/closet/secure_closet/security,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/item/clothing/glasses/hud/security,/obj/effect/floor_decal/corner/red/border{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"PQ" = (/obj/structure/closet/radiation,/obj/item/clothing/head/radiation,/obj/item/clothing/head/radiation,/obj/item/clothing/suit/radiation,/obj/item/clothing/suit/radiation,/obj/item/device/geiger,/obj/item/device/geiger,/obj/machinery/light{dir = 8},/obj/effect/floor_decal/corner/yellow{dir = 9},/obj/effect/floor_decal/corner/yellow{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "PS" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/mining_main) "PT" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/main/exploration/containment) "PU" = (/obj/effect/floor_decal/techfloor/orange{dir = 8},/obj/machinery/camera/network/main_outpost{c_tag = "MO - Gateway"; dir = 4},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/main/gateway) +"PV" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/machinery/power/smes/buildable{RCon_tag = "Outpost Parallel - Main 2"; charge = 2e+007; cur_coils = 4; input_attempt = 1; input_level = 750000; output_level = 100},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) +"PW" = (/obj/structure/catwalk,/obj/structure/cable/cyan{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/light/small,/turf/simulated/floor/plating,/area/surface/outpost/engineering/storage) "PX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled/techmaint,/area/surface/outpost/main/tcomm) "PY" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green,/obj/machinery/light_switch{pixel_x = 22},/turf/simulated/floor/carpet,/area/surface/outpost/main/dorms/dorm_6) "Qa" = (/obj/structure/fence/end{dir = 1},/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/plains/outpost) @@ -1709,39 +1877,42 @@ "Qc" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "4-8"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "Qd" = (/obj/structure/dispenser/oxygen,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/landing_north) "Qf" = (/obj/structure/bed/chair/comfy/black,/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_5) +"Qg" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/reinforced/airless,/area/surface/outpost/engineering/reactor_smes) "Qh" = (/obj/structure/fence/corner,/turf/simulated/floor/outdoors/snow/sif/planetuse,/area/surface/outside/plains/outpost) "Qi" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "Qj" = (/obj/structure/bed/chair/comfy/black{dir = 1},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_4) "Qk" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/tools) "Ql" = (/obj/machinery/vending/nifsoft_shop,/obj/effect/floor_decal/corner/white{dir = 9},/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) +"Qm" = (/obj/machinery/computer/fusion_fuel_control{id_tag = "Reactor Fuel Injectors"},/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/reactor_smes) "Qo" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/status_display{pixel_y = 32},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "Qp" = (/obj/structure/closet/emcloset,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "Qq" = (/obj/structure/boxingrope{layer = 4.1},/turf/simulated/floor/boxing,/area/surface/outpost/main/gym) "Qr" = (/obj/structure/table/standard,/obj/effect/floor_decal/borderfloor,/obj/structure/bedsheetbin,/obj/effect/floor_decal/corner/white/border,/obj/machinery/status_display{pixel_y = -32},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) -"Qs" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/red/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 1},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 1},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = -12; pixel_y = 22},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"Qs" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/maintenance_hatch{name = "Reactor Room External Access"; req_one_access = list(11)},/turf/simulated/floor/tiled/techfloor/grid,/area/surface/outpost/engineering/monitoring) "Qt" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_three) -"Qu" = (/obj/structure/table/steel,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/random/tool,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "Qv" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/main/laundry) "Qw" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/heavyduty{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room/smes_right) "Qx" = (/obj/machinery/light_construct{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/bar) +"Qy" = (/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "sec1_airlock_exterior"; locked = 1; name = "Security Outpost External"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "sec1_airlock_control"; name = "External Access Button"; pixel_y = 26; req_one_access = list(1)},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/security) "Qz" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) "QB" = (/obj/effect/step_trigger/teleporter/bridge/west_to_east,/obj/structure/railing{dir = 4},/turf/simulated/floor/water/deep,/area/surface/outside/river/indalsalven) "QC" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_three) "QD" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/landing_north) "QE" = (/obj/effect/floor_decal/industrial/loading{dir = 8},/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/light{dir = 8},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/mining_main/refinery) "QF" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_three) -"QG" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/security) +"QG" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/engineering/monitoring) "QH" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "QI" = (/obj/machinery/vending/medical,/obj/effect/floor_decal/steeldecal/steel_decals9,/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/machinery/status_display{pixel_x = -32},/obj/machinery/camera/network/main_outpost{c_tag = "MO - Search and Rescue Port"},/turf/simulated/floor/tiled,/area/surface/outpost/main/search_and_rescue) "QJ" = (/obj/structure/table/standard,/obj/machinery/light{dir = 8},/obj/item/device/starcaster_news,/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "QK" = (/obj/machinery/alarm{dir = 1; pixel_y = -22},/obj/structure/table/steel,/obj/machinery/cell_charger,/obj/random/powercell,/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room) "QL" = (/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/brown/border{dir = 9},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/corner/brown/bordercorner2{dir = 10},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "QP" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) +"QQ" = (/obj/machinery/computer/guestpass{pixel_y = 28},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/machinery/embedded_controller/radio/airlock/access_controller{id_tag = "sec1_airlock_control"; pixel_x = 26; pixel_y = 26; req_one_access = list(1); tag_exterior_door = "sec1_airlock_exterior"; tag_interior_door = "sec1_airlock_interior"},/turf/simulated/floor/tiled,/area/surface/outpost/security) "QR" = (/obj/structure/fence/corner{dir = 4},/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/plains/outpost) "QS" = (/obj/structure/bed/chair/comfy/black{dir = 1},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_2) "QT" = (/obj/structure/cable/heavyduty{icon_state = "1-2"},/obj/effect/overlay/snow/floor,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/path/plains) "QU" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) -"QV" = (/obj/structure/table/bench/standard,/turf/simulated/floor/plating,/area/surface/outpost/security/maa) +"QV" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "QW" = (/obj/effect/overlay/snow/floor,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/airlock/right_one) "QX" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/left_two) "QY" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_4) @@ -1763,18 +1934,16 @@ "Rq" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/civilian/sauna) "Rr" = (/obj/effect/zone_divider,/turf/simulated/mineral/sif,/area/surface/outside/plains/mountains) "Rs" = (/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/obj/machinery/gear_painter,/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) -"Rt" = (/obj/structure/closet/crate,/obj/item/stack/material/phoron{amount = 25},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "Ru" = (/obj/structure/fitness/punchingbag,/turf/simulated/floor/holofloor/wood,/area/surface/outpost/main/gym) "Rv" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/white/bordercorner,/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) "Rx" = (/obj/structure/table/woodentable,/obj/item/weapon/deck/cards,/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_2) "Ry" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/oracarpet,/area/surface/outpost/main/dorms/dorm_1) "Rz" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light_switch{pixel_x = -12; pixel_y = 22},/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) "RA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) -"RB" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "RC" = (/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) "RD" = (/obj/effect/overlay/snow/floor,/obj/effect/floor_decal/industrial/warning/dust{dir = 6},/obj/structure/cable/heavyduty{icon_state = "1-8"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "RF" = (/obj/effect/overlay/snow/floor,/obj/effect/floor_decal/industrial/warning/dust,/obj/machinery/light/small{dir = 8},/obj/structure/cable/heavyduty{icon_state = "2-4"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/mining_main/storage) -"RG" = (/obj/machinery/shower,/obj/structure/curtain/open/shower,/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/main/dorms/dorm_5) +"RG" = (/obj/machinery/shower,/obj/structure/curtain/open/shower,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_5) "RI" = (/obj/structure/curtain/open/shower,/obj/machinery/shower{dir = 4; pixel_x = 5},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) "RJ" = (/turf/simulated/floor/water/deep,/area/surface/outside/ocean) "RK" = (/obj/structure/table/steel,/obj/item/weapon/storage/box/lights/mixed,/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/emergencystorage) @@ -1787,42 +1956,45 @@ "RU" = (/obj/machinery/conveyor{dir = 8; id = "mining_internal"},/obj/machinery/mineral/output,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/refinery) "RV" = (/obj/structure/table/rack,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/obj/structure/window/basic{dir = 1},/obj/structure/window/basic{dir = 4},/obj/item/weapon/mining_scanner,/obj/machinery/status_display{pixel_y = 32},/obj/item/clothing/mask/breath,/obj/item/clothing/suit/space/void/mining,/obj/item/clothing/head/helmet/space/void/mining,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "RW" = (/obj/structure/sink{dir = 4; pixel_x = 11},/obj/structure/mirror{pixel_x = 28},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) -"RY" = (/obj/structure/closet/secure_closet/security,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/item/clothing/glasses/hud/security,/obj/effect/floor_decal/corner/red/border{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"RY" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/yellow/border{dir = 4},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "RZ" = (/obj/structure/table/rack,/obj/item/stack/cable_coil/silver,/obj/item/stack/cable_coil/silver,/obj/item/stack/cable_coil/silver,/obj/item/stack/cable_coil/silver,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/orange/border,/obj/machinery/firealarm{dir = 1; pixel_y = -25},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "Sa" = (/obj/structure/table/rack,/obj/structure/window/basic{dir = 8},/obj/structure/window/basic,/obj/item/clothing/mask/gas,/obj/item/clothing/shoes/boots/winter,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/item/weapon/tank/emergency/oxygen/engi,/obj/item/clothing/suit/storage/hooded/wintercoat,/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/landing_south) "Sb" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/gen_room) +"Sd" = (/obj/effect/wingrille_spawn/reinforced_phoron,/obj/machinery/door/blast/radproof{id = "EngineReactor"; rad_resistance = 150},/turf/simulated/floor/reinforced,/area/surface/outpost/engineering/reactor_smes) "Se" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "Sf" = (/obj/structure/table/rack/shelf,/obj/effect/floor_decal/corner/purple{dir = 10},/obj/effect/floor_decal/corner/purple{dir = 5},/obj/item/weapon/tank/oxygen{pixel_x = -2; pixel_y = 3},/obj/item/weapon/tank/oxygen{pixel_x = 1; pixel_y = -5},/obj/machinery/light,/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/exploration) "Sg" = (/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) "Sh" = (/obj/effect/floor_decal/borderfloor,/obj/machinery/fitness/punching_bag/clown,/obj/effect/floor_decal/corner/black{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) "Si" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/main/tcomm) +"Sj" = (/obj/machinery/door/airlock/maintenance_hatch{name = "Reactor Room External Access"; req_one_access = list(11)},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/tiled/techfloor/grid,/area/surface/outpost/engineering/atmos_room) "Sk" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/button/remote/blast_door{id = "garage2"; name = "Garage Shutter Control"; pixel_x = -6; pixel_y = -22},/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/right_one) -"Sm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "Sn" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/main/bar) "So" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/camera/network/main_outpost{c_tag = "MO Left Wing - Airlock 3"},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/airlock/left_three) "Sp" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) +"Sq" = (/obj/effect/floor_decal/corner/red{dir = 9},/obj/effect/floor_decal/corner/red{dir = 6},/obj/structure/table/reinforced,/obj/item/weapon/storage/box,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "Sr" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/junction{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) -"Ss" = (/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/red/bordercorner{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"Ss" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "Su" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "Sw" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_south) "Sx" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/browndouble,/turf/simulated/floor/carpet/bcarpet,/area/surface/outpost/main/dorms/dorm_4) "Sz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) -"SB" = (/obj/machinery/atmospherics/pipe/tank/nitrous_oxide{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"SA" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "SD" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/main/gateway) "SG" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "SI" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) "SJ" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/brown/border{dir = 1},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/tools) "SK" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/structure/table/standard,/obj/item/weapon/storage/pill_bottle/dice_nerd,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) -"SL" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"SM" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "4-8"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/engineering/atmos_room) "SN" = (/obj/effect/floor_decal/borderfloor/corner,/obj/effect/floor_decal/corner/orange/bordercorner,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "SO" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/blue,/area/surface/outpost/main/dorms/dorm_5) "SP" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "SQ" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "SR" = (/obj/structure/table/standard,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/item/weapon/storage/fancy/markers,/obj/random/toy,/turf/simulated/floor/tiled,/area/surface/outpost/main/laundry) +"SS" = (/turf/simulated/wall/r_wall{cached_rad_resistance = 150},/area/surface/outpost/engineering/storage) "ST" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/refinery) "SV" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/white/border{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 9},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "SW" = (/obj/structure/catwalk,/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor/plating,/area/surface/outpost/civilian/smes) -"SX" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"SZ" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/security) "Tb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "Tc" = (/obj/machinery/vending/fishing,/obj/effect/floor_decal/corner/orange{dir = 6},/obj/effect/floor_decal/corner/orange{dir = 9},/obj/machinery/light,/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "Td" = (/obj/structure/boxingrope{dir = 1},/turf/simulated/floor/boxing,/area/surface/outpost/main/gym) @@ -1831,7 +2003,6 @@ "Tg" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/machinery/light,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "Th" = (/obj/machinery/embedded_controller/radio/airlock/access_controller{id_tag = "main3_airlock_control"; pixel_x = -5; tag_exterior_door = "main3_airlock_exterior"; tag_interior_door = "main3_airlock_interior"},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "main3_airlock_control"; name = "Internal Access Button"; pixel_x = 5},/turf/simulated/wall/r_wall,/area/surface/outpost/main/airlock/landing_south) "Tj" = (/obj/machinery/disposal,/obj/machinery/button/remote/airlock{id = "dorm6"; name = "Door Lock Control"; pixel_y = 25; specialfunctions = 4},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_6) -"Tk" = (/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/power/smes/buildable/outpost_substation{RCon_tag = "Outpost - Mining"; charge = 5e+006; input_attempt = 1; input_level = 150000; output_level = 150000},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "Tn" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/main/search_and_rescue) "To" = (/obj/structure/table/rack,/obj/structure/window/basic{dir = 4},/obj/structure/window/basic{dir = 1},/obj/item/clothing/shoes/boots/winter,/obj/item/clothing/suit/storage/hooded/wintercoat,/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/status_display{pixel_x = 32},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/right_one) "Tp" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) @@ -1839,7 +2010,7 @@ "Tr" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main) "Ts" = (/obj/machinery/washing_machine,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/effect/floor_decal/borderfloor/corner2{dir = 9},/obj/effect/floor_decal/corner/brown/bordercorner2{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/tools) "Tt" = (/obj/structure/bed/chair/comfy/black,/obj/machinery/button/windowtint{id = "dorm_tint6"; pixel_x = -22},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_6) -"Tu" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/glass_security{name = "Master at Arms"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/obj/item/tape/engineering,/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/security/maa) +"Tu" = (/obj/machinery/alarm{dir = 8; pixel_x = 22},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/engineering/monitoring) "Tv" = (/obj/effect/floor_decal/borderfloorblack/corner{dir = 8},/obj/effect/floor_decal/industrial/danger/corner{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "Tw" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 1},/obj/effect/floor_decal/spline/fancy/wood,/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 4},/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) "Tx" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_one) @@ -1848,6 +2019,7 @@ "TA" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/power/terminal,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/catwalk,/obj/effect/floor_decal/industrial/warning,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room/smes_left) "TB" = (/obj/effect/decal/cleanable/dirt,/obj/vehicle/train/engine/quadbike{dir = 2},/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/right_two) "TD" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock{name = "Showers"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/showers) +"TF" = (/obj/structure/table/reinforced,/obj/effect/floor_decal/borderfloor,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/effect/floor_decal/corner/red/border,/obj/machinery/alarm{dir = 1; pixel_y = -25},/obj/machinery/light,/turf/simulated/floor/tiled,/area/surface/outpost/security) "TG" = (/turf/simulated/floor/reinforced,/area/shuttle/shuttle2/planet) "TH" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/main/search_and_rescue) "TJ" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/dorms/dorm_1) @@ -1871,17 +2043,15 @@ "Ud" = (/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/exterior) "Ue" = (/turf/simulated/wall,/area/surface/outpost/main/restroom) "Uf" = (/turf/simulated/wall,/area/surface/outpost/main/emergency_storage/one) -"Ug" = (/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/closet/toolcloset,/obj/random/maintenance/clean,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "Uh" = (/obj/structure/table/rack,/obj/item/weapon/shovel,/obj/item/weapon/tool/wrench,/obj/item/weapon/pickaxe,/obj/item/weapon/tool/crowbar,/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/brown/border{dir = 5},/obj/machinery/light{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/brown/bordercorner2{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "Uk" = (/obj/structure/showcase/sign{desc = "This appears to be a sign warning people that it is dangerous outside. Further reading suggests being properly equipped or acquiring an umbrella."; name = "WARNING: HAIL STORMS"},/turf/simulated/floor/outdoors/snow/sif/planetuse,/area/surface/outside/plains/outpost) "Ul" = (/obj/effect/floor_decal/steeldecal/steel_decals_central1{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/civilian/pool) "Um" = (/obj/effect/overlay/snow/floor,/obj/machinery/light/small{dir = 1},/obj/structure/cable/heavyduty{icon_state = "4-8"},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/mining_main/tools) "Un" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/surface/outpost/main/construction_area) "Uo" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_three) -"Up" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/structure/catwalk,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/disposalpipe/junction{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "Ur" = (/obj/structure/table/bench/standard,/obj/item/device/radio/intercom/department/medbay{pixel_y = -21},/turf/simulated/floor/tiled,/area/surface/outpost/main/search_and_rescue) "Us" = (/turf/simulated/wall/r_wall,/area/surface/outpost/civilian/smes) -"Ut" = (/obj/machinery/shower,/obj/structure/curtain/open/shower,/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals10{dir = 5},/turf/simulated/floor/tiled,/area/surface/outpost/main/dorms/dorm_3) +"Ut" = (/obj/machinery/shower,/obj/structure/curtain/open/shower,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_3) "Uu" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/teleporter) "Uv" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/machinery/alarm{dir = 1; pixel_y = -25},/turf/simulated/floor/tiled/techmaint,/area/surface/outpost/main/tcomm) "Uw" = (/obj/structure/table/reinforced,/obj/item/weapon/tool/crowbar/red,/obj/item/device/flashlight,/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/right_two) @@ -1890,11 +2060,12 @@ "Uz" = (/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "UA" = (/obj/structure/table/rack,/obj/structure/window/basic{dir = 8},/obj/structure/window/basic{dir = 1},/obj/item/clothing/mask/gas,/obj/item/clothing/shoes/boots/winter,/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/item/weapon/tank/emergency/oxygen/engi,/obj/item/clothing/suit/storage/hooded/wintercoat,/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/landing_north) "UB" = (/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) -"UC" = (/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/effect/floor_decal/industrial/warning,/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/table/steel,/obj/machinery/cell_charger,/obj/random/powercell,/obj/machinery/camera/network/engineering_outpost{c_tag = "SUBS - Security Checkpoint"},/turf/simulated/floor/plating,/area/surface/outpost/security/smes) +"UC" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_y = 24},/obj/structure/catwalk,/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/blue{d2 = 2; icon_state = "0-2"},/obj/machinery/camera/emp_proof{c_tag = "SUBS - Eng Outpost"; dir = 4; name = "Engineering_Outpost"; network = list("Engineering Outpost")},/obj/machinery/light_switch{pixel_x = -11; pixel_y = 21},/turf/simulated/floor/plating,/area/surface/outpost/engineering/smes) "UD" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "UE" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "UF" = (/obj/effect/floor_decal/borderfloor/corner,/turf/simulated/floor/tiled,/area/surface/outpost/main/gym) "UG" = (/obj/structure/table/steel,/obj/machinery/cell_charger,/obj/random/powercell,/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/civilian/smes) +"UH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) "UI" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/emergencystorage) "UJ" = (/obj/structure/closet,/obj/effect/floor_decal/borderfloor{dir = 5},/obj/effect/floor_decal/corner/orange/border{dir = 5},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/orange/bordercorner2{dir = 5},/obj/item/weapon/storage/backpack/dufflebag,/obj/item/clothing/shoes/boots/winter/climbing,/obj/item/clothing/shoes/boots/winter/climbing,/obj/machinery/camera/network/civilian{c_tag = "CO - Fishing 1"; dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "UK" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) @@ -1902,19 +2073,20 @@ "UM" = (/turf/simulated/wall,/area/surface/outpost/main/dorms/dorm_1) "UN" = (/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals9{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals9,/obj/machinery/vending/fitness,/obj/machinery/light,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_upper) "UO" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle{pixel_x = -4; pixel_y = 6},/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle{pixel_x = 5; pixel_y = 6},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/civilian/sauna) +"UP" = (/obj/machinery/computer/secure_data,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/red/border{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/security) "UQ" = (/turf/simulated/wall/r_wall,/area/surface/outpost/mining_main/uxstorage) "UR" = (/turf/simulated/wall,/area/surface/outpost/mining_main/cave) "UT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "UU" = (/obj/effect/floor_decal/industrial/hatch/yellow,/obj/machinery/firealarm{dir = 8; pixel_x = -24; pixel_y = 8},/obj/machinery/button/remote/blast_door{id = "production1"; name = "Production Shutters"; pixel_x = -20; pixel_y = -10; req_one_access = list(48)},/turf/simulated/floor/tiled/dark,/area/surface/outpost/mining_main/refinery) "UV" = (/obj/structure/table/glass,/obj/item/clothing/mask/snorkel,/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) -"UW" = (/obj/machinery/computer/guestpass{pixel_y = 28},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/machinery/embedded_controller/radio/airlock/access_controller{id_tag = "sec1_airlock_control"; pixel_x = 26; pixel_y = 26; req_one_access = list(1); tag_exterior_door = "sec1_airlock_exterior"; tag_interior_door = "sec1_airlock_interior"},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"UW" = (/obj/structure/closet/radiation,/obj/item/clothing/head/radiation,/obj/item/clothing/head/radiation,/obj/item/clothing/suit/radiation,/obj/item/clothing/suit/radiation,/obj/item/device/geiger,/obj/item/device/geiger,/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/yellow/border{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "UX" = (/turf/simulated/floor/outdoors/snow/sif/planetuse,/area/surface/outside/plains/outpost) "UY" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/main/corridor/left_upper) "UZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/carpet,/area/surface/outpost/main/dorms/dorm_6) -"Va" = (/obj/structure/table/steel,/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = -12; pixel_y = -22},/obj/structure/cable/blue,/obj/item/weapon/storage/toolbox/electrical,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "Vb" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7,/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/obj/machinery/alarm{frequency = 1441; pixel_y = 22},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "Vc" = (/obj/effect/floor_decal/borderfloorblack/corner{dir = 8},/obj/effect/floor_decal/industrial/danger/corner{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "Ve" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/alarm{dir = 4; pixel_x = -22},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) +"Vf" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 21},/turf/simulated/floor/tiled,/area/surface/outpost/security) "Vh" = (/obj/effect/floor_decal/spline/plain{dir = 1},/turf/simulated/floor/water/deep/pool,/area/surface/outpost/civilian/pool) "Vi" = (/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor/voidcraft/external,/area/surface/outpost/wall) "Vj" = (/obj/effect/floor_decal/steeldecal/steel_decals_central1,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/multi_tile/glass{dir = 1},/obj/machinery/door/airlock/multi_tile/glass{dir = 1; name = "Mining Storage"; req_one_access = list(48)},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/mining_main/uxstorage) @@ -1928,6 +2100,7 @@ "Vr" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/embedded_controller/radio/airlock/access_controller{id_tag = "main8_airlock_control"; pixel_x = -26; pixel_y = -26; tag_exterior_door = "main8_airlock_exterior"; tag_interior_door = "main8_airlock_interior"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_three) "Vs" = (/turf/simulated/floor/water,/area/surface/outside/ocean) "Vu" = (/obj/structure/table/marble,/obj/machinery/chemical_dispenser/bar_alc,/turf/simulated/floor/plating,/area/surface/outpost/main/bar) +"Vv" = (/obj/effect/floor_decal/corner/red{dir = 6},/obj/effect/floor_decal/corner/red{dir = 9},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) "Vw" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green,/obj/machinery/light_switch{pixel_x = 22},/turf/simulated/floor/carpet/blue,/area/surface/outpost/main/dorms/dorm_5) "Vx" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/junction/yjunction{dir = 8},/obj/machinery/hologram/holopad,/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "Vy" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/main/corridor/left_lower) @@ -1937,14 +2110,16 @@ "VC" = (/obj/structure/sign/electricshock,/turf/simulated/wall,/area/surface/outpost/main/gen_room/smes_left) "VD" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/civilian/pool) "VE" = (/obj/structure/fence/cut/large,/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/plains/outpost) +"VG" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/reinforced/airless,/area/surface/outpost/engineering/reactor_smes) "VH" = (/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "VI" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/embedded_controller/radio/airlock/access_controller{id_tag = "main1_airlock_control"; pixel_x = -26; pixel_y = -26; tag_exterior_door = "main1_airlock_exterior"; tag_interior_door = "main1_airlock_interior"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_two) +"VJ" = (/obj/effect/overlay/snow/floor,/obj/structure/disposalpipe/segment,/obj/structure/cable/heavyduty{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/security) "VK" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "VL" = (/turf/simulated/floor/water/shoreline{dir = 4},/area/surface/outside/ocean) "VM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "VN" = (/obj/effect/zone_divider,/turf/simulated/wall,/area/surface/outside/path/plains) "VO" = (/obj/item/weapon/stool/padded,/obj/structure/boxingrope{dir = 8},/turf/simulated/floor/boxing,/area/surface/outpost/main/gym) -"VP" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/security) +"VP" = (/obj/machinery/light{dir = 1},/obj/effect/floor_decal/borderfloor/corner{dir = 4},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 4},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "VQ" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "civ2_airlock_control"; name = "Internal Access Button"; pixel_x = 26; pixel_y = 5},/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "civ2_airlock_interior"; locked = 1; name = "Civilian Outpost Internal"},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/civilian/sauna) "VR" = (/obj/structure/fence/cut/large,/obj/effect/zone_divider,/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/plains/outpost) "VS" = (/obj/structure/table/woodentable,/obj/item/weapon/material/kitchen/utensil/fork/plastic{pixel_x = 7},/obj/item/weapon/reagent_containers/food/snacks/pastatomato,/obj/machinery/light{dir = 8},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_6) @@ -1952,16 +2127,20 @@ "VV" = (/turf/simulated/wall/r_wall,/area/surface/outpost/security/smes) "VW" = (/turf/simulated/floor/water,/area/surface/outside/river/indalsalven) "VX" = (/obj/effect/floor_decal/corner/white{dir = 9},/obj/effect/floor_decal/corner/white{dir = 6},/obj/structure/bed/chair{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) +"VY" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 6},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 6},/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/extinguisher_cabinet{pixel_x = 25},/turf/simulated/floor/tiled,/area/surface/outpost/security) "VZ" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/main/corridor/right_lower) -"Wa" = (/obj/effect/overlay/snow/floor,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/security) +"Wa" = (/obj/effect/overlay/snow/floor,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/engineering/monitoring) "Wb" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/landing_south) +"Wc" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "Wd" = (/obj/effect/overlay/snow/floor,/obj/structure/cable/heavyduty{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light/small,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/civilian/smes) "We" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "Wf" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "surface_dock_1"; name = "shuttle bay controller"; pixel_x = -26; tag_door = "surface_dock_1_door"},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) "Wg" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/surface/outpost/main/airlock/right_two) "Wh" = (/obj/structure/table/rack/shelf,/obj/item/weapon/storage/backpack/parachute{pixel_x = -6; pixel_y = 6},/obj/item/weapon/storage/backpack/parachute{pixel_x = 6; pixel_y = 6},/obj/item/weapon/storage/backpack/parachute{pixel_x = -6; pixel_y = -6},/obj/item/weapon/storage/backpack/parachute{pixel_x = 6; pixel_y = -6},/obj/effect/floor_decal/corner/purple{dir = 10},/obj/effect/floor_decal/corner/purple{dir = 5},/obj/structure/extinguisher_cabinet{pixel_x = 25},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/exploration) "Wi" = (/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) +"Wk" = (/obj/structure/catwalk,/obj/structure/cable/cyan{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/alarm{dir = 1; pixel_y = -25},/obj/structure/cable/cyan{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/surface/outpost/engineering/storage) "Wl" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/borderfloor/corner2,/obj/effect/floor_decal/corner/white/bordercorner2,/obj/machinery/light,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) +"Wm" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/obj/structure/catwalk,/turf/simulated/floor/plating,/area/surface/outpost/engineering/auxiliary_storage) "Wn" = (/obj/effect/zone_divider,/turf/simulated/floor/outdoors/rocks/sif/planetuse,/area/surface/outside/plains/normal) "Wo" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/table/rack,/obj/machinery/light{dir = 4},/obj/item/weapon/melee/umbrella{color = "#7c0d0d"},/obj/item/weapon/melee/umbrella{color = "#7c0d0d"},/obj/item/weapon/melee/umbrella{color = "#7c0d0d"},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/landing_south) "Wp" = (/obj/machinery/light/spot{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) @@ -1975,26 +2154,31 @@ "Wx" = (/obj/structure/table/steel,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration) "Wy" = (/turf/simulated/wall,/area/surface/outpost/main/bar) "Wz" = (/obj/structure/toilet{dir = 8},/obj/machinery/light/small{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/restroom) -"WA" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/security) +"WA" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "ENG_Outpost_airlock_control"; name = "External Access Button"; pixel_y = 26; req_one_access = list(10)},/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "ENG_Outpost_airlock_exterior"; locked = 1; name = "Engineering Outpost External"},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/engineering/monitoring) "WB" = (/obj/item/stack/flag/green{pixel_x = -4},/obj/item/stack/flag/red,/obj/item/stack/flag/yellow{pixel_x = 4},/obj/structure/table/rack,/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/brown/border{dir = 9},/obj/effect/floor_decal/borderfloor/corner2{dir = 1},/obj/effect/floor_decal/corner/brown/bordercorner2{dir = 1},/obj/structure/extinguisher_cabinet{pixel_x = -25},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "WC" = (/turf/simulated/wall/r_wall,/area/surface/outpost/main/airlock/left_three) +"WD" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/surface/outpost/security/maa) "WE" = (/obj/machinery/disposal,/obj/machinery/button/remote/airlock{id = "dorm1"; name = "Door Lock Control"; pixel_y = -25; specialfunctions = 4},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_1) "WF" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "WG" = (/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/obj/structure/bed/chair{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "WI" = (/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/obj/structure/table/glass,/obj/machinery/status_display{pixel_y = -32},/obj/item/weapon/material/ashtray/plastic,/obj/random/cigarettes,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) -"WJ" = (/obj/machinery/computer/secure_data{dir = 4},/obj/effect/floor_decal/borderfloor{dir = 9},/obj/effect/floor_decal/corner/red/border{dir = 9},/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/surface/outpost/security) +"WJ" = (/obj/machinery/power/apc{name = "south bump"; pixel_y = -24},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/steel_reinforced,/obj/item/weapon/storage/box/donkpockets,/obj/effect/floor_decal/borderfloor/corner{dir = 8},/obj/effect/floor_decal/corner/yellow/bordercorner{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "WK" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock{name = "Restroom"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/dorms/dorm_2) +"WL" = (/obj/structure/closet/crate/radiation,/obj/item/clothing/glasses/meson,/obj/item/clothing/glasses/meson,/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor,/area/surface/outpost/engineering/auxiliary_storage) "WM" = (/obj/effect/overlay/snow/floor,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/mining_main/storage) +"WN" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/reinforced/airless,/area/surface/outpost/engineering/reactor_smes) "WO" = (/obj/structure/bed/chair/comfy/black,/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_2) "WP" = (/obj/effect/floor_decal/industrial/outline/red,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/airlock/right_two) "WQ" = (/obj/machinery/vending/boozeomat,/turf/simulated/floor/plating,/area/surface/outpost/main/bar) "WR" = (/turf/simulated/floor/water/shoreline/corner{dir = 8},/area/surface/outside/ocean) -"WS" = (/obj/structure/cable/blue,/obj/machinery/power/smes/buildable/outpost_substation{RCon_tag = "Outpost - Security"; charge = 5e+006; input_attempt = 1; input_level = 150000; output_level = 150000},/turf/simulated/floor/plating,/area/surface/outpost/security/smes) +"WS" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/machinery/power/terminal{dir = 4},/obj/structure/catwalk,/obj/structure/table/steel,/obj/machinery/cell_charger,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/obj/random/powercell,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor/plating,/area/surface/outpost/engineering/smes) "WT" = (/obj/structure/boxingrope{dir = 8},/turf/simulated/floor/boxing,/area/surface/outpost/main/gym) +"WU" = (/obj/effect/floor_decal/borderfloor{dir = 4},/obj/effect/floor_decal/corner/red/border{dir = 4},/obj/effect/floor_decal/borderfloor/corner2{dir = 5},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 5},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/security) "WV" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/junction{dir = 2; icon_state = "pipe-j2"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) "WW" = (/obj/effect/zone_divider,/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/plains/normal) "WX" = (/obj/structure/toilet{dir = 1},/obj/structure/window/basic{dir = 4},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_4) "WY" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/landing_south) +"WZ" = (/obj/machinery/light_construct,/obj/structure/table/reinforced,/obj/item/weapon/storage/box/donut/empty,/turf/simulated/floor/holofloor/tiled/dark,/area/surface/outpost/security/maa) "Xa" = (/turf/unsimulated/wall/planetary/sif,/area/surface/outside/river/indalsalven) "Xb" = (/turf/simulated/floor/outdoors/snow/sif/planetuse,/area/surface/outside/plains/normal) "Xc" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) @@ -2002,14 +2186,13 @@ "Xf" = (/obj/effect/floor_decal/corner/white{dir = 6},/obj/effect/floor_decal/corner/white{dir = 9},/obj/structure/bed/chair{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "Xi" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "Xj" = (/turf/simulated/floor/outdoors/dirt/sif/planetuse,/area/surface/outside/plains/outpost) -"Xk" = (/obj/structure/table/rack/shelf,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/red/border,/turf/simulated/floor/tiled,/area/surface/outpost/security/maa) +"Xk" = (/turf/simulated/wall/r_wall{cached_rad_resistance = 150},/area/surface/outpost/engineering/reactor_smes) "Xl" = (/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 4},/obj/effect/floor_decal/spline/fancy/wood,/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 4},/turf/simulated/floor/wood,/area/surface/outpost/civilian/sauna) "Xm" = (/obj/machinery/camera/network/main_outpost{c_tag = "MO Right Wing - Airlock Access 1"; dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals3{dir = 9},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_one) "Xn" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -21},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) "Xo" = (/obj/effect/floor_decal/borderfloorblack/corner{dir = 1},/obj/effect/floor_decal/industrial/danger/corner{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/surface/outpost/main/landing) "Xp" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "Xs" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_2) -"Xt" = (/obj/machinery/atmospherics/pipe/tank/phoron{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) "Xw" = (/obj/structure/catwalk,/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room/smes_right) "Xx" = (/turf/simulated/floor/outdoors/rocks/sif/planetuse,/area/surface/outside/plains/mountains) "Xy" = (/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_y = -32},/obj/structure/coatrack,/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_6) @@ -2033,23 +2216,28 @@ "XX" = (/obj/effect/floor_decal/borderfloor/corner{dir = 1},/obj/effect/floor_decal/corner/white/bordercorner{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "XY" = (/obj/effect/floor_decal/borderfloorwhite{dir = 8},/obj/effect/floor_decal/corner/paleblue/border{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "XZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/industrial/warning/corner,/obj/structure/catwalk,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room) +"Ya" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/engineering/monitoring) "Yb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "Yc" = (/obj/structure/stasis_cage,/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/exploration/containment) "Ye" = (/obj/structure/table/glass,/obj/item/weapon/storage/firstaid/toxin{pixel_x = 5; pixel_y = 5},/obj/item/weapon/storage/firstaid/fire,/obj/effect/floor_decal/borderfloorwhite{dir = 6},/obj/effect/floor_decal/corner/paleblue/border{dir = 6},/turf/simulated/floor/tiled/white,/area/surface/outpost/main/search_and_rescue) "Yf" = (/obj/structure/table/marble,/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker,/turf/simulated/floor/plating,/area/surface/outpost/main/bar) +"Yg" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/heavyduty{d2 = 2; icon_state = "0-2"},/obj/structure/cable,/turf/simulated/floor/plating,/area/surface/outpost/security/smes) "Yi" = (/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_lower) "Yj" = (/obj/machinery/light,/turf/simulated/floor/holofloor/wood,/area/surface/outpost/main/gym) "Yk" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/firealarm{pixel_y = 24},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_three) +"Yl" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/fusion_fuel_injector/mapped{dir = 8; id_tag = "Reactor Fuel Injectors"},/obj/structure/cable/cyan{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "Ym" = (/obj/item/weapon/towel{color = "#FF8C00"; name = "orange towel"},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/dorms/dorm_1) "Yo" = (/obj/structure/table/bench/marble,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) -"Yq" = (/turf/simulated/wall/r_wall,/area/surface/outpost/mining_main/cave) +"Yq" = (/obj/effect/overlay/snow/floor,/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"},/obj/structure/cable/heavyduty{icon_state = "2-8"},/obj/structure/cable/heavyduty{icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "Yr" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/junction{dir = 4; icon_state = "pipe-j2"},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "Ys" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_3) +"Yt" = (/obj/machinery/door/firedoor/border_only,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/engineering{name = "Engineering Outpost Substation"; req_access = list(11)},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/engineering/smes) "Yu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock{name = "Restroom"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/dorms/dorm_3) "Yv" = (/obj/effect/floor_decal/techfloor/orange{dir = 9},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/surface/outpost/main/gateway) "Yw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/catwalk,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/surface/outpost/main/gen_room) "Yx" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/structure/cable/blue{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/freezer,/area/surface/outpost/main/showers) -"YA" = (/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/surface/outpost/security) +"YA" = (/obj/structure/sign/warning/radioactive,/turf/simulated/wall/r_wall{cached_rad_resistance = 150},/area/surface/outpost/engineering/monitoring) +"YB" = (/obj/structure/sign/warning/radioactive,/turf/simulated/wall/r_wall{cached_rad_resistance = 150},/area/surface/outpost/engineering/reactor_smes) "YC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_external/public{name = "Airlock Access"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/airlock/landing_north) "YD" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_1) "YE" = (/obj/effect/floor_decal/borderfloor/cee,/obj/effect/floor_decal/industrial/danger/cee,/obj/machinery/door/window/brigdoor/westleft{name = "Containment Pen"; req_access = newlist(); req_one_access = list(43,1)},/obj/machinery/door/window/brigdoor/eastright{name = "Containment Pen"; req_access = newlist(); req_one_access = list(43,1)},/obj/machinery/door/blast/regular/open{id = "pen"; name = "Containment Lockdown Blast Doors"},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) @@ -2064,6 +2252,7 @@ "YN" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/sauna) "YO" = (/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_two) "YQ" = (/obj/effect/floor_decal/steeldecal/steel_decals_central1{dir = 4},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/exploration) +"YR" = (/obj/effect/overlay/snow/floor,/obj/structure/disposalpipe/segment,/obj/structure/cable/heavyduty{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outside/plains/outpost) "YT" = (/obj/effect/step_trigger/teleporter/bridge/south_to_north,/obj/structure/railing{dir = 1},/turf/simulated/floor/water/deep,/area/surface/outside/river/indalsalven) "YU" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_3) "YV" = (/obj/structure/table/woodentable,/obj/item/toy/bouquet,/turf/simulated/floor/wood,/area/surface/outpost/main/dorms/dorm_3) @@ -2071,7 +2260,7 @@ "YX" = (/obj/machinery/mineral/processing_unit,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/refinery) "YY" = (/obj/structure/closet/secure_closet{name = "hunting locker"; req_one_access = list(43)},/obj/item/weapon/gun/energy/netgun,/obj/item/weapon/beartrap/hunting,/obj/item/weapon/material/knife/tacknife/survival,/obj/effect/floor_decal/borderfloor{dir = 8},/obj/item/clothing/shoes/boots/jungle,/obj/effect/floor_decal/corner/purple/border{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) "YZ" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/embedded_controller/radio/airlock/access_controller{id_tag = "main6_airlock_control"; pixel_x = 26; pixel_y = 26; tag_exterior_door = "main6_airlock_exterior"; tag_interior_door = "main6_airlock_interior"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_one) -"Za" = (/obj/machinery/door/firedoor/border_only,/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/heavyduty{d2 = 2; icon_state = "0-2"},/obj/structure/cable,/obj/structure/window/reinforced/full,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"Zb" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/red/border{dir = 8},/obj/effect/floor_decal/borderfloor/corner2{dir = 10},/obj/effect/floor_decal/corner/red/bordercorner2{dir = 10},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/security) "Zc" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/junction/yjunction{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) "Ze" = (/obj/structure/table/rack,/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/window/basic{dir = 1},/obj/structure/window/basic{dir = 4},/obj/item/weapon/tank/emergency/oxygen/double,/obj/item/clothing/mask/gas,/obj/item/clothing/shoes/boots/winter,/obj/item/clothing/suit/storage/hooded/wintercoat,/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/left_two) "Zf" = (/obj/machinery/door/airlock{id_tag = "dorm1"; name = "Dorm 1"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/dorms/dorm_1) @@ -2085,26 +2274,29 @@ "Zq" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/junction{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "Zr" = (/obj/effect/overlay/snow/floor,/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/main/airlock/right_two) "Zs" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled/monotile,/area/surface/outpost/main/landing) +"Zt" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/catwalk,/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "Zu" = (/obj/structure/table/steel,/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/effect/floor_decal/borderfloor{dir = 5},/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/effect/floor_decal/corner/purple/border{dir = 5},/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/corner/purple/bordercorner2{dir = 4},/obj/machinery/light_switch{pixel_x = 22; pixel_y = -10},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/surface/outpost/main/janitor) "Zv" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "main6_airlock_control"; name = "Internal Access Button"; pixel_x = 26; pixel_y = 5},/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "main6_airlock_interior"; locked = 1; name = "Main Outpost Internal"},/turf/simulated/floor/tiled/steel_ridged,/area/surface/outpost/main/airlock/left_one) "Zw" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/orange/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/corner/orange/bordercorner2{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/civilian/fishing) "Zx" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/right_one) "Zy" = (/obj/effect/floor_decal/steeldecal/steel_decals6{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/corner/brown{dir = 8},/obj/machinery/camera/network/mining{c_tag = "PO - Mining Storage"; dir = 1},/turf/simulated/floor/tiled/steel_dirty,/area/surface/outpost/mining_main/uxstorage) -"Zz" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/turf/simulated/floor/tiled,/area/surface/outpost/security) +"Zz" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/machinery/camera/emp_proof{c_tag = "ENG - Outpost Airlock"; dir = 9; name = "Engineering_Outpost"; network = list("Engineering")},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "ZA" = (/obj/effect/floor_decal/borderfloor{dir = 1},/obj/effect/floor_decal/corner/white/border{dir = 1},/obj/effect/floor_decal/borderfloor/corner2{dir = 4},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) "ZB" = (/obj/effect/decal/remains/ribcage,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/outdoors/dirt,/area/surface/outside/plains/outpost) "ZD" = (/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/camera/network/mining{c_tag = "PO - Mining Production Room"; dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/refinery) "ZF" = (/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/white/border,/obj/effect/floor_decal/borderfloor/corner2{dir = 9},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 9},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/dorms) "ZG" = (/turf/simulated/wall,/area/surface/outpost/main/search_and_rescue) -"ZH" = (/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating,/area/surface/outpost/mining_main/gen_room) +"ZI" = (/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced/full,/obj/structure/grille,/turf/simulated/floor/plating,/area/surface/outpost/security) "ZK" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/item/glass_jar,/obj/structure/table/reinforced,/obj/structure/extinguisher_cabinet{pixel_x = 25},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled,/area/surface/outpost/main/exploration/containment) -"ZM" = (/obj/effect/overlay/snow/floor,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/security) +"ZM" = (/obj/effect/overlay/snow/floor,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/tiled/steel/sif/planetuse,/area/surface/outpost/engineering/monitoring) "ZN" = (/obj/structure/table/reinforced,/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/item/weapon/tool/crowbar/red,/obj/item/device/flashlight,/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 24},/obj/machinery/alarm{dir = 1; pixel_y = -25},/obj/structure/cable/blue{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/airlock/right_one) "ZO" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled/steel_dirty,/area/surface/outpost/mining_main/uxstorage) "ZQ" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock{name = "Locker Room"},/turf/simulated/floor/tiled/steel_grid,/area/surface/outpost/main/showers) "ZR" = (/obj/structure/closet/secure_closet/miner,/obj/effect/floor_decal/borderfloor,/obj/effect/floor_decal/corner/brown/border,/obj/machinery/light,/turf/simulated/floor/tiled,/area/surface/outpost/mining_main/storage) "ZS" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 10},/obj/effect/floor_decal/steeldecal/steel_decals4,/obj/structure/cable/blue{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/embedded_controller/radio/airlock/access_controller{id_tag = "main7_airlock_control"; pixel_x = 26; pixel_y = -26; tag_exterior_door = "main7_airlock_exterior"; tag_interior_door = "main7_airlock_interior"},/turf/simulated/floor/tiled,/area/surface/outpost/main/airlock/left_two) +"ZT" = (/obj/machinery/light/small,/turf/simulated/floor/plating,/area/surface/outpost/engineering/reactor_smes) "ZU" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/white/border{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals7{dir = 6},/obj/effect/floor_decal/borderfloor/corner2{dir = 8},/obj/effect/floor_decal/corner/white/bordercorner2{dir = 8},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/right_upper) +"ZV" = (/obj/effect/floor_decal/borderfloor{dir = 8},/obj/effect/floor_decal/corner/yellow/border{dir = 8},/obj/machinery/light{dir = 8},/obj/structure/cable/blue{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/surface/outpost/engineering/monitoring) "ZX" = (/obj/effect/step_trigger/teleporter/bridge/east_to_west,/obj/structure/railing{dir = 8},/turf/simulated/floor/water,/area/surface/outside/river/faxalven) "ZY" = (/obj/structure/closet/secure_closet/explorer,/obj/item/weapon/pickaxe,/obj/machinery/light{dir = 1},/obj/item/device/cataloguer,/turf/simulated/floor/tiled/dark,/area/surface/outpost/main/exploration) "ZZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled,/area/surface/outpost/main/corridor/left_lower) @@ -2128,35 +2320,35 @@ tFxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXb tFxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXeSxHxHdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdttvUXUXUXQTinininUXUXUXUXvCdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtxHQRGkGkGkGkGkGkGkGkGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaFFFFFFxaxaXxxaXxXxXxXxtF tFxaxaxaxaxaxaxaxaXbXbXbXbXbXbxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXnwXjXjUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXQTinininUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXjoGkGkGkGkGkGkGkGkGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxdKVsVsVsXCXxXxXxXxXxXxXxtF tFxaxaxaxaxaxaxaxaxaxaXbXbXbxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXnwUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXQTinininUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXblGkGkGkGkGkGkGkGkGkxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxbZVsVsVsVLXxXxXxXxdKJyJyao -tFxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXVRXjUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXLdLdLdLdLdUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXrnQTinininUXrnUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXblGkGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxdKxAVsVsVsVLXxXxXxXxbZVsVsao -tFxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXnwUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXLdLdvhOoEyLdUQUQUQUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXQTinininUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXblGkGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxdKxAVsVsVsVsJaJyJyJyJyxAVsVsao -tFxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXXjXjUXUXUXUXUXUXUXUXUXUXUXUXLdljChBiODLdoZvEUQUQUQUXgePSPSPSgeUXUXUXUXUXClClClCltYtYtYtYtYtYiyininininUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXblGkGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJVsVsVsVsVsVsVsVsao -tFxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbdmXbXbUXUXUXUXUXwsUXUXXjUXUXUXUXUXUXUXUXUXUXUXUXLdljxcryODLdirIZiJJNUQgegeXKmQXKgeClClClClClClsYaWICogogogHJogogNzinininininGenMnMnMnMnMUXUXUXUXUXUXiHiHTnTnTnTniHiHOOUXUXUXUXUXCbCbPTPTPTCbCbUXUXUXUXUXUXjoGkGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJao -tFxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXLdljxcryODLdotzwZOyQelsZtCooooikuXLaLXHoOhDRbQcLIjDDJkJkJkJkJkJkxUinininininZrbPuawqrCnMUXUXUXUXUXiHiHKInJgpETItlVPcOOOOAoAoAoOOCbYcYcMznDZKCbCbUXUXUXUXUXjoGkGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaxaxaxaxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXLdXtzMPBtWLdDUmCBGZyVjXVqkHcHcdCxqLaUUtgtgCltgTzClCltYtYtYtYsJtYPqinininininZrbPwqTBwqcIUXUXUXUXiHiHhmedxJOiyPmpMpzvgKYvipipipjGCbYcYcoAopqBPwCbCbCbCbUXUXKuXjGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxbZVsVsRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaxaxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXUXUXUXUXUXUXUXLdLdLdZHmBPBSBLdaYaYaYaYaYHZFcydydSzBAFDvsHDEimYtgexClDmDmDmDmDmDmDmtpinininininZrbPecwqVpnMUXUXUXUXiHQIUyXYthMEMIEMMIwdgKPUEpscEpCLCbiAAXXFPiaUpDTOrljNCbUXUXUXUXGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxdKxAVsVsRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXUXUXUXUXUXJEJEJEJELdLdbHxmAzLdBWRKrRQLhVbNTrydydrWxznjKarPkpZDxsYXClEfDmDmDmDmDmDmtpinininUXinFXnMnMnMnMnMUXUXUXUXanwvUyVHldythhwJwPuggKgUhQhQhQUcCbCbNeiMHqlngPrlrlrlCbUXUXUXUXGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXUXUXUXUXUXJEnknkzlLdzHMHaHBaLdxIIcOTHrRLmoZmmocsZhBApjDHSTnlDjtgLNClDmDmDmDmDmDmDmtpinininUXUXUXUXUXUXUXUXUXUXUXUXanwvUyVlDCMdfHzYEoimRibububuRdlxDdCbYYiMMzlnYErlrlrlCbUXUXUXUXGkGkmOmOmOmOmOxaxaxaxaxaxaxaxaxaxaxaXxXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXUXUXUXUXUXJEnknknkLdOzpLpLszLdEeUIrRrmNVcMjWEJvyTKjrLaPAtgtgOttgTzClPIDmDmDmDmDmDmtpinininUXUXUXUXUXUXUXUXUXUXUXUXanRnUrgAJcPvrtJpEDYeRipTicFMPGqdjzCbrDslmGpEpDTOrljNCbUXUXUXUXUXUXUXUXmOmOmOmOxaxaxaxaxaxaxaxaxaxaXxXxXxbZVsVsRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXUXUXUXUXUXJEnknkHHIeSmOxnpffLdLdLdmHWtWtWtWtCqxNatCKURQELBqrRUaizcYqlplpvGDmDmDmsSRDolininUXUkUXUXUXnMCtCtnMnMnMnMnMnMZGZGTHBVdTTHTHTHgKzjhBJWOZOBpUCbIwtGdBxWPwWwWwWwWwWwWwuyuyWwUXUXUXmOmOmOmOxaxaxaxaxaxaxaxaxaxaXxXxdKxAVsVsRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXUXUXUXUXUXJEJEJEJELdQuCZorRBMmRtMmmHzLSJzKWtWBxfLwTNuPuPvGvGvGvGvGvGgSbwvGWMsSIyRDininininUXUXUXUXHanMpPWPnMUwWrEEEtnMtNpntNEZsTeztmoYgKRiRiaNSDNBRiCbCbAQbICbCbWwuKFzYLNRWwsXyHWwgoUXmOmOmOGkxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXUXUXUXUXUXUXUXLdLdLdEPvQavvQSXvQSLmHCWNXwwglxZFlXchHnxCrBNnIABRVUhbePsNJnajStpininininininininininZrWgxCulrrRPKUcOqDrrlkRoRojnmqKcKcKcnfKconYrTWHjZAdFonxpAfpAvcMwluIAwtbUMwWsMAjqYKUXmOmOmOGkxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXCSseseseCSUXUXUXUXUXUXLdgMEsUpHAuBEQahJwaggYeInRZqMnJeyvdOwuTbTbTbVMBUoRUDOJlejStpininininininininininZrAeHECIllVIBKjeoSHRbSdkAAUEMWkcLbLbTgVqlmaFwnaFcHVqVqarsisiCGDoplQCwfDNfTfMWvpJYKXjmOxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXCSCSCSsEruLFCSCSUXUXUXUXUXLdIXggsxLdTkUgVaYJzOkHKqEmXSaOvWUBJmGhvWvWvWaOCjvGaGaGvGRFRDininininininininininHanMdbdbnMdbdbdbnMnMGpGpGEcSYQGEGpGpGpGpfGgOubekEgUzKJWGUuUuUuWwWwWwWwayWwayayWwgoXjmOxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXsQKtOrIofefeIpCSCSUXUXUXUXLdLdLdZaLdLdLdLdmHYGTssBWtwXIGZRLovGbYGrMTzkctchvGmSQcQcHLUXUXUXinininininUXUXUXBYJLJLJLJLJLJLhsnNZYeVAPTXcwreiLvYbcsOGptZGGkGCXkzUuUuUuUukokSzsCFzNzsUXUXUXUXUXXjXjmOxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxXxbZVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXsQHNssrvklwbuhBLCSUXUXUXUXUXUXmDoWBhJLJLhsmHmHmHtUmHvGvGvGvGvGvGaGaGvGaGaGvGkPUXUXUXUXUXUXUXinininUXUXUXUXgmUXUXUXUXUXUXgmnNVADTLtkJORqJMXbbbbCNGEbdTLuSCXDQUuASMJjHfOATACPXVTzsUXUXXjXjXjXjmOmOxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxdKxAVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXsQHNQVrvOmFLvVyRCSUXUXUXUXUXUXUXUXUXUXUXpsJLhsrKmVGnmMBgmSQcQcQcQcQcQcQcQcQcHLUXUXUXUXUXBYwNXTXTXTwNJLJLJLcGUXUXUXUXUXUXgmnNuwDTLtoQnoSgMvMvuDBuGEEzPJNaCXLGUuoOhTddLmuYSiUvfszsUXUXXjXjXjXjxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXCSCSoGqUXknvxDCSCSUXUXUXUXUXUXUXUXXjUXUXUXUXgmrKvapXQkBgkPUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgmknjdgajdknUXUXUXUXUXUXUXUXUXUXgmHKxVDTLtEYWxULjaaLaLNnGEVXWFLiCXCRUuErrGPeouITzszszszsUXUXXjXjUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXCSyVyVCSCSTuCSUXUXUXUXUXUXUXUXUXUXUXUXUXUXgmmHrIHmmHmHkPUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgmvLfuGUfuQDUXUXUXUXUXUXUXUXUXUXgmHKHKoLfzwMLAzyvmbESfWhGpwBxwWeCXuQUuygKWlbUuUuUuUXUXUXUXUXQaXjUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXpvpvJjRYiCpvAZpvUXUXUXUXUXUXUXUXUXUXUXUXUXBYiDUmIIIIUmQcHLUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgmvLhfOlhfQDUXUXUXUXUXUXUXUXUXUXpshsHKHKmJdeaLaLHlMUMUMUMUMUTLvOaSkzUuUuUuHzUuCkkzkzUXUXUXUXjoXjUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxbZVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXnWWJrXGaqQQsYApvpvGsGspvZMinUXUXUXUXinininIJinininininUXUXUXUXUXUXUXnFUXUXUXUXUXUXUXBYJLcGvLmnFamnQDUXUXUXUXUXUXUXUXUXUXUXpshsHKHKeaeaeaeamspFAqTPMUJrQUmgzVSPqiNTzaTqeQucARUXUXUXUXjoXjUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxdKxAVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXnWdQhAFIGavRVPUWvbxoZzhiWaininininininininIJininininUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgmknknknxMznxMknknknUXUXUXUXUXUXUXUXUXUXpsJLJLJLJLJLKjQwWuFSXwFwyqVxPanHvuweWluClmWeBCARUXUXUXUXjoUXUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXnwUXUXnWPQkuypjYSsEdapzIGLGCWAWainininUXUXinininIJininUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgmvLeJZiJfebOgLTOwQDUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXqsmsxYraMLKTZUNaCXUfUfRjUfUffGVqpkARUXUXUXUXblUXUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXVRXjUXVVVVVVVVVVhKfEehpvlyHMpvZMininininininininIJinUXUXUXUXUXUXUXUXUXUXUXBYJLJLJLJLJLhsUXgmvLUAJbhGJbCaJbAaQDXjUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXmmmsMUMUMUMUmyNhtxUfRRHiPmUfdNWIVzkzUXUXUXUXblUXUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXVVUCiutEJnrwifpvpvQGQGpvDmininininininininIJUXUXUXXjUXUXUXBYJLJLJLJLcGMQMQMQMQMQpsJLcGvLDOJbhGvqCaJbwHQDXjXjUXMQMQMQMQMQUXUXUXUXUXUXUXUXUXKPRIEnykcQUbQipIUfxOJAKRUfdxdxdxqqqqqqUXUXblUXUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXnwXjUXVVWSgGOpuWjCiKpvBYJLJLJLJLjQJLzXvSvSzXjQJLcGUXUXUXUXUXUXBYcGMQMQMQMQMQMQMQMQMQMQMQMQMQknQdKNmhpNhxqcKMknMQMQMQMQMQMQMQMQMQMQMQMQMQUXUXUXUXKPcXaZGSpwzQaeiYUfUfUfUfUfzhTdFUTdePqqUXUXblUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxbZVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsXjUXVVVVkOVVVVpvpvpvgmUXUXUXUXgmnznzIHhwnzgmUXUXUXUXUXUXUXUXgmMQMQMQMQMQMQMQlTlTlTrxMQMQMQknXIXIYCknBFXIXIknMQMQMQrxlTlTlTMQMQMQMQMQMQMQUXUXUXKPRIojykcQpWdpSudxIDdjRzlrVOsvsvsvkkqqUXUXblUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxbZVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXgEMYtwJLJLJLJLcGUXUXUXUXgmBvmZqnvftPgmUXUXUXUXUXUXUXUXgmMQMQoFybDZmlPumlmlmlcoeimlmlmlmlmlYMkNrpkNkNkNxikNtuvjsIsIsIBSsIwgybvFMQMQUXUXKPKPcQTDcQcQomEaTRzCoDEOjZjDWTsvsvsvkkqqUXUXblUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxdKxAVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXVRXjUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXacacacacahUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXrnQTinininUXrnUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXblGkGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxdKxAVsVsVsVLXxXxXxXxbZVsVsao +tFxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXnwUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXacacapaqavacUQUQUQUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXQTinininUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXblGkGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxdKxAVsVsVsVsJaJyJyJyJyxAVsVsao +tFxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXXjXjUXUXUXUXUXUXUXUXUXUXUXUXacaxaAaDaEacoZvEUQUQUQUXgePSPSPSgeUXUXUXUXUXClClClCltYtYtYtYtYtYiyininininUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXblGkGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJVsVsVsVsVsVsVsVsao +tFxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbdmXbXbUXUXUXUXUXwsUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXacaxaHaJaEacirIZiJJNUQgegeXKmQXKgeClClClClClClsYaWICogogogHJogogNzinininininGenMnMnMnMnMUXUXUXUXUXUXiHiHTnTnTnTniHiHOOUXUXUXUXUXCbCbPTPTPTCbCbUXUXUXUXUXUXjoGkGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJao +tFxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXjljljlqLjljljlUXUXaQaQaQaQaQacaxaHaJaEacotzwZOyQelsZtCooooikuXLaLXHoOhDRbQcLIjDDJkJkJkJkJkJkxUinininininZrbPuawqrCnMUXUXUXUXUXiHiHKInJgpETItlVPcOOOOAoAoAoOOCbYcYcMznDZKCbCbUXUXUXUXUXjoGkGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaxaxaxaxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsjljlEIwzWLwIlEjlUXUXaQaRaRaRaRacaTaVbhbiacDUmCBGZyVjXVqkHcHcdCxqLaUUtgtgCltgTzClCltYtYtYtYsJtYPqinininininZrbPwqTBwqcIUXUXUXUXiHiHhmedxJOiyPmpMpzvgKYvipipipjGCbYcYcoAopqBPwCbCbCbCbUXUXKuXjGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxbZVsVsRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaxaxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsjlDfclcJqUWmJljljljlaQaRaRaRaRbxbHbJbhbKacaYaYaYaYaYHZFcydydSzBAFDvsHDEimYtgexClDmDmDmDmDmDmDmtpinininininZrbPecwqVpnMUXUXUXUXiHQIUyXYthMEMIEMMIwdgKPUEpscEpCLCbiAAXXFPiaUpDTOrljNCbUXUXUXUXGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxdKxAVsVsRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsjlCcrcOLMuaKrzUHdQjlaQaRbTaRaRacacbVcacbacBWRKrRQLhVbNTrydydrWxznjKarPkpZDxsYXClEfDmDmDmDmDmDmtpinininUXinFXnMnMnMnMnMUXUXUXUXanwvUyVHldythhwJwPuggKgUhQhQhQUcCbCbNeiMHqlngPrlrlrlCbUXUXUXUXGkxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsXkDtXkYBXkDtXkXkNQSSSSSSSSSSccacckcpcrcyacxIIcOTHrRLmoZmmocsZhBApjDHSTnlDjtgLNClDmDmDmDmDmDmDmtpinininUXUXUXUXUXUXUXUXUXUXUXUXanwvUyVlDCMdfHzYEoimRibububuRdlxDdCbYYiMMzlnYErlrlrlCbUXUXUXUXGkGkmOmOmOmOmOxaxaxaxaxaxaxaxaxaxaxaXxXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsXkBMGJGJGJaBXkwRpgSSkCLMnkSSczaccCcKcKcPacEeUIrRrmNVcMjWEJvyTKjrLaPAtgtgOttgTzClPIDmDmDmDmDmDmtpinininUXUXUXUXUXUXUXUXUXUXUXUXanRnUrgAJcPvrtJpEDYeRipTicFMPGqdjzCbrDslmGpEpDTOrljNCbUXUXUXUXUXUXUXUXmOmOmOmOxaxaxaxaxaxaxaxaxaxaXxXxXxbZVsVsRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsXkcBuACSfcnrSdvtPxqpWkPWgCSScRcTdfdqdrdsacacacmHWtWtWtWtCqxNatCKURQELBqrRUaizcvGlplpvGDmDmDmsSRDolininUXUkUXUXUXnMCtCtnMnMnMnMnMnMZGZGTHBVdTTHTHTHgKzjhBJWOZOBpUCbIwtGdBxWPwWwWwWwWwWwWwuyuyWwUXUXUXmOmOmOmOxaxaxaxaxaxaxaxaxaxaXxXxdKxAVsVsRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsYBhinrkTurQgajYlFASSSSSSSSSSdvacdydzdDdGdReqdRmHzLSJzKWtWBxfLwTNuPuPvGvGvGvGvGvGgSbwvGWMsSIyRDininininUXUXUXUXHanMpPWPnMUwWrEEEtnMtNpntNEZsTeztmoYgKRiRiaNSDNBRiCbCbAQbICbCbWwuKFzYLNRWwsXyHWwgoUXmOmOmOGkxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsXkcBcqGJWNnrSdummNKkWcxveGmDdveAeCeCeKeCeCeCeCmHCWNXwwglxZFlXchHnxCrBNnIABRVUhbePsNJnajStpininininininininininZrWgxCulrrRPKUcOqDrrlkRoRojnmqKcKcKcnfKconYrTWHjZAdFonxpAfpAvcMwluIAwtbUMwWsMAjqYKUXmOmOmOGkxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsXkVGCSCSCSseYBBRIVDKCEyWBzcFSjeRfffffjfofvfxfDJwaggYeInRZqMnJeyvdOwuTbTbTbVMBUoRUDOJlejStpininininininininininZrAeHECIllVIBKjeoSHRbSdkAAUEMWkcLbLbTgVqlmaFwnaFcHVqVqarsisiCGDoplQCwfDNfTfMWvpJYKXjmOxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsXktjEPEPEPYBXkLFpecEXkXkAcIpdvfFfIfRfWacgggugBYJzOkHKqEmXSaOvWUBJmGhvWvWvWaOCjvGaGaGvGRFRDininininininininininHanMdbdbnMdbdbdbnMnMGpGpGEcSYQGEGpGpGpGpfGgOubekEgUzKJWGUuUuUuWwWwWwWwayWwayayWwgoXjmOxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsXkfAOrKtOrQVfJZtXktIPVXkdvdvdvacacacgFacacacacmHYGTssBWtwXIGZRLovGbYGrMTzkctchvGmSQcQcHLUXUXUXinininininUXUXUXBYJLJLJLJLJLJLhsnNZYeVAPTXcwreiLvYbcsOGptZGGkGCXkzUuUuUuUukokSzsCFzNzsUXUXUXUXUXXjXjmOxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxXxbZVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsXkIYyuHNssOIrvwbuhBLyDtEQcQcQcQcQcSMoWqYJLJLhsmHmHmHtUmHvGvGvGvGvGvGaGaGvGaGaGvGkPUXUXUXUXUXUXUXinininUXUXUXUXgmUXUXUXUXUXUXgmnNVADTLtkJORqJMXbbbbCNGEbdTLuSCXDQUuASMJjHfOATACPXVTzsUXUXXjXjXjXjmOmOxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxdKxAVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsXkvVKkZTKkKkOmFLXkyRgjXkDmDmDmDmDmDmDmDmDmDmpsJLhsrKmVGnmMBgmSQcQcQcQcQcQcQcQcQcHLUXUXUXUXUXBYwNXTXTXTwNJLJLJLcGUXUXUXUXUXUXgmnNuwDTLtoQnoSgMvMvuDBuGEEzPJNaCXLGUuoOhTddLmuYSiUvfszsUXUXXjXjXjXjxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsYBrBrBYBrBrBXknvYBXkXkpeDmDmDmDmDmDmDmDmDmDmDmDmgmrKvapXQkBgkPUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgmknjdgajdknUXUXUXUXUXUXUXUXUXUXgmHKxVDTLtEYWxULjaaLaLNnGEVXWFLiCXCRUuErrGPeouITzszszszsUXUXXjXjUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsXkdoQmFeyVECINLVTuINDmDmDmUXUXUXUXUXUXUXUXUXUXUXgmmHrIHmmHmHkPUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgmvLfuGUfuQDUXUXUXUXUXUXUXUXUXUXgmHKHKoLfzwMLAzyvmbESfWhGpwBxwWeCXuQUuygKWlbUuUuUuUXUXUXUXUXQaXjUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsvBZVNASAJjRYiCYaAZINDmDmDmDmDmUXUXUXUXUXUXUXUXBYiDUmIIIIUmQcHLUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgmvLhfOlhfQDUXUXUXUXUXUXUXUXUXUXpshsHKHKmJdeaLaLHlMUMUMUMUMUTLvOaSkzUuUuUuHzUuCkkzkzUXUXUXUXjoXjUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxbZVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsJvdZnWWJrXGaINQsYAINpvGsGspvZMinUXUXUXUXinininIJinininininUXUXUXUXUXUXUXnFUXUXUXUXUXUXUXBYJLcGvLmnFamnQDUXUXUXUXUXUXUXUXUXUXUXpshsHKHKeaeaeaeamspFAqTPMUJrQUmgzVSPqiNTzaTqeQucARUXUXUXUXjoXjUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxdKxAVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsININININhAYAINvRVPUWpvxoZzpvWaininininininininIJininininUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgmknknknxMznxMknknknUXUXUXUXUXUXUXUXUXUXpsJLJLJLJLJLKjQwWuFSXwFwyqVxPanHvuweWluClmWeBCARUXUXUXUXjoUXUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXnwUXUXpvPQkuypjYSsqVokzIPMGCWAWainininUXUXinininIJininUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgmvLeJZiJfebOgLTOwQDUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXqsmsxYraMLKTZUNaCXUfUfRjUfUffGVqpkARUXUXUXUXblUXUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXVRXjUXjEjEYtszsghKfEehpvlyHMpvZMininininininininIJinUXUXUXUXUXUXUXUXUXUXUXBYJLJLJLJLJLhsUXgmvLUAJbhGJbCaJbAaQDXjUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXmmmsMUMUMUMUmyNhtxUfRRHiPmUfdNWIVzkzUXUXUXUXblUXUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXjEUCiujEJnqVifpvpvQGQGpvWaininininininininIJUXUXUXXjUXUXUXBYJLJLJLJLcGMQMQMQMQMQpsJLcGvLDOJbhGvqCaJbwHQDXjXjUXMQMQMQMQMQUXUXUXUXUXUXUXUXUXKPRIEnykcQUbQipIUfxOJAKRUfdxdxdxqqqqqqUXUXblUXUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXnwXjUXjEWSgGjEuWjCiKpvBYJLJLJLJLlLJLzXvSvSzXjQJLcGUXUXUXUXUXUXBYcGMQMQMQMQMQMQMQMQMQMQMQMQMQknQdKNmhpNhxqcKMknMQMQMQMQMQMQMQMQMQMQMQMQMQUXUXUXUXKPcXaZGSpwzQaeiYUfUfUfUfUfzhTdFUTdePqqUXUXblUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxbZVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsXjUXjEPhjEjEpvpvpvMNgmHkHkHkHkgmnznzIHhwnzgmUXUXUXUXUXUXUXUXgmMQMQMQMQMQMQMQlTlTlTrxMQMQMQknXIXIYCknBFXIXIknMQMQMQrxlTlTlTMQMQMQMQMQMQMQUXUXUXKPRIojykcQpWdpSudxIDdjRzlrVOsvsvsvkkqqUXUXblUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxbZVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXgEMYMYJLJLJLJLcGHkHkHkHkgmBvmZqnvftPgmUXUXUXUXUXUXUXUXgmMQMQoFybDZmlPumlmlmlcoeimlmlmlmlmlYMkNrpkNkNkNxikNtuvjsIsIsIBSsIwgybvFMQMQUXUXKPKPcQTDcQcQomEaTRzCoDEOjZjDWTsvsvsvkkqqUXUXblUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxdKxAVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJao tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgmBvudbFoxtPgmUXUXXjUXUXUXUXUXgmMQMQoFOPDSasasasasasasasasasasasVcybybyblZasasasasasasasasasasasTvZsvFMQMQUXUXKPdUFYYxFhcQyNyMkyoIdwkgNKdHgJsvsvsvCvqqUXUXblUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJao tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXPoUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgmnznzwmZvnzgmUXUXXjUXUXUXUXUXgmMQMQsaybgqCeCeCeufufufufufCeCeCeeBybppybdhCeTGTGCeCeCeCeCeTGTGCewkyblPMQMQXjUXKPUKbpIFRWcQLrQiiZRlKFKwDPHOqSQqQqQqVmqqUXUXblUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJao tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgmnzRhNtYZtPgmUXXjUXUXUXUXUXUXgmMQMQsaNfgqCeCeufufufufufufufCeCeeBybMQybdhCeTGTGTGCeCeCeTGTGTGCewkNfIgMQMQUXUXKPVebpsjoUcQObeZpIRlIsUFyXHGfVYIalShBXqqUXUXblUXUXxaxaxaxaxaxaxaxaxaxaxaxaxaXxXxXxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJao @@ -2194,21 +2386,21 @@ tFxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXb tFxaxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXgmTZzgCCUoWCihigqNmTFHBThtrVndndBYJLJLJLcGUXUXgmUXUXUXUXUXUXinininininininUXinUXUXyOyogwgwyoGjNOUXUXUXyOGjGjGjzJlIuEuElIuEuElIUXUXUXUXUXUXUXXjUXUXGgrZrZGgUXUXUXUXUXUXUXUXUXUXUXUXUXUXblUXUXgcgcgcuouopcpcpcBxBxBxbZVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJao tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXgmWCgIsHWCWCndfmfmndndndfmfmndBYcGUXUXUXUXUXUXgmUXUXUXUXXjUXinininininUXUXUXUXUXUXDJtViENMtVtVDJUXUXyOzJlIuEuElIlIvHamGuamvHlIlIuEuElIUXUXUXUXUXMVMVHTtAMVUXUXUXUXUXUXUXUXUXUXUXUXUXUXblUXUXgcgcgcuouopcpcBxBxBxBxbZVsRJRJRJVsVsVsVsVsVsVsVsRJRJRJRJRJRJRJRJRJRJRJao tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXpsdWBcBcdWJLJLJLJLJLJLJLJLJLJLcGUXUXUXUXUXUXUXgmUXUXUXUXXjUXininininUXUXUXUXUXUXUXDJwUTpxTCsixDJUXUXDJlIlIamiUamDgamIlIlIlamByamUVdulIlIUXUXUXUXRqtyNGGHsGUXUXUXUXUXUXUXUXUXUXUXUXUXUXblUXUXgcgcgcuouopcpcBxBxBxBxbZVsRJRJVsVsVsVsVsVsVsVsVsVsRJRJRJRJRJRJRJRJRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXininininininininininininUXUXXjUXUXUXUXUXUXUXpsJLJLJLJLJLJLbRbRbRbRJLJLJLJLJLWdwQBpwUSQsyLYixJzGjGjzJlImLcxHfMqMqMqMqMqMqMqMqMqmdsWfZlIUXUXUXUXRqfrGtPdsGUXUXUXUXUXUXUXUXUXUXUXUXUXUXblUXUXgcgcgcuouopcpcBxBxBxdKxAVsRJySVsVsVsbzwAwAwAsRVsVsVsVsRJRJRJRJRJRJRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXininininininininininininUXUXUXUXUXUXQaUXUXUXUXUXUXUXUXUXininininUXUXUXUXUsUsizUsUsiPXHtVtVtVtVNMNMlIpYIlcApGenenenenenVhVhnScAIlaIlIHTHTMVMVMVMVArVQgtgtgtgtgtUXUXUXUXUXUXUXUXUXUXblUXUXgcgcgcuouopcpcBxBxBxbZVsVsySySySVsbzLPBxBxBxWRwAsRVsVsVsVsRJRJRJRJRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXininininininininininininUXUXUXUXUXjoUXUXUXUXUXUXUXUXinininininUXUXUXUXUsGqDLDloNNYZwEAvTUJHvQJuihdtsIlcAkrLsLsLsLsLsnynyxjcAIlkwhdLkLpdSlMbteLFjjpANoPiNPEgtUXUXUXUXUXUXUXUXUXUXblUXUXgcgcgcuouopcpcBxBxBxbZVsVsySySySVsVLBxpcpcBxBxBxWRwAsRVsVsVsVsRJRJRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXinininininininininininUXUXUXUXUXblUXUXUXUXUXUXUXinininininUXUXUXUXUXUsUGSWdaeTZkhNCmhNhNIQIaXphZaksUKykrLsLszzmegsnynyxjENafJPUlYNiXvJGcQzskdibLNdbWOflvgtUXUXUXUXUXUXUXUXUXUXblUXUXgcgcgcuopcpcpcBxBxBxbZVsVsySVsVsVsVLBxBxpcpcpcBxBxBxWRsRVsVsVsVsRJRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXXjUXUXinininininininininininUXUXUXUXUXblUXUXUXUXUXUXUXinininininUXUXUXUXUXUsUseWeWeWLUnbSNLelRshadjjgbmzIlvpkrLsLsfNxtvZnynyxjvpIlPDgbYWfaFpXeGzkAgiAiANANANgtgtUXUXUXUXUXUXUXUXUXUXblUXgcgcgcgcpcpcpcpcBxBxBxbZVsVsVsVsVsbzLPBxBxpcpcpcpcpcBxBxWRwAsRVsVsRJRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXXjUXinininininininininininUXUXUXUXUXjoUXUXUXUXUXUXUXininininininUXUXUXUXUXwUVBHYlfEKtcpCXHXHtVwSwSlIOvIlvpkrLsLsnynynynynyxjvpIlnClIAxAxMVdSjRjRawIMdSktUOnAUXUXUXUXUXUXUXUXUXUXUXblUXgcgcgcgcpcpcpcBxBxBxdKxAVsVsVsVsbzLPBxBxpcpcuououopcBxBxBxBxbZVsVsVsRJRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXXjUXinininininininininininUXUXUXUXUXblUXUXUXUXUXUXUXUXUXininininUXUXUXUXUXwUlDLQcDxGrMMPNuAmtVUXUXlIQpIlvpMojPjPtMtMtMtMtMpVvpIlfglIUXUXMViRHUDWTwXlMFCAjvnAUXUXUXUXUXUXUXUXUXUXUXblUXgcgcgcgcpcpcpcBxBxBxbZVsVsVsVsVsVLBxBxpcpcuouououopcpcpcpcBxWRsRVsVsVsRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXinininininininininininUXUXUXUXXjblUXUXUXUXUXUXUXUXUXininininUXUXUXUXUXtVtVzAnbnbPrnbsbTctVUXUXlIIkpdhYtqtqtqtqkXtqtqtqtqqTVDOFlIUXUXMViRBQjTLgLgqbAYMVMVUXUXUXUXUXUXUXUXUXUXUXblUXgcgcgcXjpcpcBxBxBxBxbZVsVsVsySVsJaXCBxpcpcpcuouououopcpcpcpcBxWRsRVsVsRJao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXinininininininininininUXUXUXXjXjblUXUXUXUXUXUXUXUXUXininininUXUXUXUXUXUXtVHxZoBDRZiagntVtVUXUXlIlIviQbamIlIlIlApIlIlIlamLlamlIlIUXUXMVMVGNjTLgLgqblCMVUXUXUXUXUXUXUXUXUXUXUXUXblUXgcgcgcXjpcpcBxBxBxBxbZVsVsVsRJySVsJaXCBxpcpcpcpcuouououopcpcpcBxWRsRVsVsao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXinininininininininUXUXUXUXUXUXblUXUXUXUXUXUXUXUXUXinininUXUXUXUXUXUXUXtVtVwSwStVwSwStVUXUXUXUXlIbabalIlIlUlUKZlUlUlIlIbabalIUXUXUXUXMVDyDyMVMVDyDyMVUXUXUXUXUXUXUXUXUXUXUXUXblUXgcgcgcXjpcpcBxBxBxBxbZVsVsVsRJySVsVsJaXCBxBxpcpcpcpcpcpcpcpcpcBxBxbZVsVsao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXXjUXUXinininininininUXUXXjUXUXUXUXblUXUXUXUXUXUXUXUXrninininUXrnUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXlIbabalIbabalIUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXblUXgcgcgcXjpcpcBxBxBxBxbZVsVsVsRJRJVsVsVsJaXCBxBxpcpcpcpcpcpcBxBxBxBxbZVsVsao -tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXblUXUXUXUXUXUXUXUXUXUXininUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXblUXgcgcgcXjpcpcBxBxBxBxbZVsVsVsRJRJRJVsVsVsJaJyXCBxBxBxBxBxBxBxdKJyJyxAVsVsao -tFxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXblUXUXUXUXUXUXUXUXUXUXininUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXblUXgcgcgcXjpcpcpcBxBxBxbZVsVsVsRJRJRJRJVsVsVsVsJaJyJyJyJyJyJyJyxAVsVsVsVsRJao -tFxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXtQdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtPfdtdtdtdtdttvUXUXUXUXininUXUXUXUXvCdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtQhUXgcgcgcgcpcpcpcBxBxBxWRsRVsVsRJRJRJRJRJRJVsVsVsVsVsVsVsVsVsVsVsVsVsVsVsRJao -cnRrHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFLKLKLKLKLKxdLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKVNDnDnVNLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKqxqxqxqxqxyLWWWWWnWnWnWnMieeeetatatatatatataeeeeeeeeeeeeeeeeeeeeeeeetatataHX +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXininininininininininininUXUXXjUXUXUXUXUXUXUXpsJLJLYqJLJLJLbRbRbRbRJLJLJLJLJLWdwQBpwUSQsyLYixJzGjGjzJlImLcxHfMqMqMqMqMqMqMqMqMqmdsWfZlIUXUXUXUXRqfrGtPdsGUXUXUXUXUXUXUXUXUXUXUXUXUXUXblUXUXgcgcgcuouopcpcBxBxBxdKxAVsRJySVsVsVsbzwAwAwAsRVsVsVsVsRJRJRJRJRJRJRJRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXininininininJIWDWDWDJIinUXjKyAyAjKyAyAjKUXUXUXUXYRUXUXUXininininUXUXUXUXUsUsizUsUsiPXHtVtVtVtVNMNMlIpYIlcApGenenenenenVhVhnScAIlaIlIHTHTMVMVMVMVArVQgtgtgtgtgtUXUXUXUXUXUXUXUXUXUXblUXUXgcgcgcuouopcpcBxBxBxbZVsVsySySySVsbzLPBxBxBxWRwAsRVsVsVsVsRJRJRJRJRJRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXinininJIJIJIbBtrVvJIJIinjKNkPPNqUPrHjKUXUXUXUXYRUXUXinininininUXUXUXUXUsGqDLDloNNYZwEAvTUJHvQJuihdtsIlcAkrLsLsLsLsLsnynyxjcAIlkwhdLkLpdSlMbteLFjjpANoPiNPEgtUXUXUXUXUXUXUXUXUXUXblUXUXgcgcgcuouopcpcBxBxBxbZVsVsySySySVsVLBxpcpcBxBxBxWRwAsRVsVsVsVsRJRJRJRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXininGVKXmrovIhIhAIJIJIjKZbkexherKbjKUXUXUXUXYRUXinininininUXUXUXUXUXUsUGSWdaeTZkhNCmhNhNIQIaXphZaksUKykrLsLszzmegsnynyxjENafJPUlYNiXvJGcQzskdibLNdbWOflvgtUXUXUXUXUXUXUXUXUXUXblUXUXgcgcgcuopcpcpcBxBxBxbZVsVsySVsVsVsVLBxBxpcpcpcBxBxBxWRsRVsVsVsVsRJRJRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXXjUXUXininGVhehDfenVLHjAlitXHpsfzTbmitWUjKjKyAyAjKnGininininininUXUXUXUXUXUsUseWeWeWLUnbSNLelRshadjjgbmzIlvpkrLsLsfNxtvZnynyxjvpIlPDgbYWfaFpXeGzkAgiAiANANANgtgtUXUXUXUXUXUXUXUXUXUXblUXgcgcgcgcpcpcpcpcBxBxBxbZVsVsVsVsVsbzLPBxBxpcpcpcpcpcBxBxWRwAsRVsVsRJRJRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXXjUXininGVIXBHfeyxKglWlgJIqPowxhxhSZhoQQHbhIxLQyVJinininininininUXUXUXUXUXwUVBHYlfEKtcpCXHXHtVwSwSlIOvIlvpkrLsLsnynynynynyxjvpIlnClIAxAxMVdSjRjRawIMdSktUOnAUXUXUXUXUXUXUXUXUXUXUXblUXgcgcgcgcpcpcpcBxBxBxdKxAVsVsVsVsbzLPBxBxpcpcuououopcBxBxBxBxbZVsVsVsRJRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXXjUXininJIJINmfeNyPjrESqJIFOTFBqDkabuLijZIkaoHtiVJinininininininUXUXUXUXUXwUlDLQcDxGrMMPNuAmtVUXUXlIQpIlvpMojPjPtMtMtMtMtMpVvpIlfglIUXUXMViRHUDWTwXlMFCAjvnAUXUXUXUXUXUXUXUXUXUXUXblUXgcgcgcgcpcpcpcBxBxBxbZVsVsVsVsVsVLBxBxpcpcuouououopcpcpcpcBxWRsRVsVsVsRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXinininJIjOFiFPFPNZcdVVVVVVVVVVvwmErOjKvrVfjKnGininUXininininUXUXUXUXUXtVtVzAnbnbPrnbsbTctVUXUXlIIkpdhYtqtqtqtqkXtqtqtqtqqTVDOFlIUXUXMViRBQjTLgLgqbAYMVMVUXUXUXUXUXUXUXUXUXUXUXblUXgcgcgcXjpcpcBxBxBxBxbZVsVsVsySVsJaXCBxpcpcpcuouououopcpcpcpcBxWRsRVsVsRJao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXinininJIJIWZKSEbJIJIVVfKwlBOiVcUVYjKjKcWcWjKVJinUXUXininininUXUXUXUXUXUXtVHxZoBDRZiagntVtVUXUXlIlIviQbamIlIlIlApIlIlIlamLlamlIlIUXUXMVMVGNjTLgLgqblCMVUXUXUXUXUXUXUXUXUXUXUXUXblUXgcgcgcXjpcpcBxBxBxBxbZVsVsVsRJySVsJaXCBxpcpcpcpcuouououopcpcpcBxWRsRVsVsao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXinininJIgRgRgRJIinVVNbJZoClAbfjkjKBYJLJLJLDiUXUXUXinininUXUXUXUXUXUXUXtVtVwSwStVwSwStVUXUXUXUXlIbabalIlIlUlUKZlUlUlIlIbabalIUXUXUXUXMVDyDyMVMVDyDyMVUXUXUXUXUXUXUXUXUXUXUXUXblUXgcgcgcXjpcpcBxBxBxBxbZVsVsVsRJySVsVsJaXCBxBxpcpcpcpcpcpcpcpcpcBxBxbZVsVsao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXXjUXUXininininininininVVVVYgVVVVcWjKjKgmUXUXUXUXUXUXrninininUXrnUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXlIbabalIbabalIUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXblUXgcgcgcXjpcpcBxBxBxBxbZVsVsVsRJRJVsVsVsJaXCBxBxpcpcpcpcpcpcBxBxBxBxbZVsVsao +tFxaxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXinDmpsBhJLJLJLJLcGUXUXUXUXUXUXUXUXininUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXblUXgcgcgcXjpcpcBxBxBxBxbZVsVsVsRJRJRJVsVsVsJaJyXCBxBxBxBxBxBxBxdKJyJyxAVsVsao +tFxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXwsUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXininUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXblUXgcgcgcXjpcpcpcBxBxBxbZVsVsVsRJRJRJRJVsVsVsVsJaJyJyJyJyJyJyJyxAVsVsVsVsRJao +tFxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXtQdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdttvUXUXUXUXininUXUXUXUXvCdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtdtQhUXgcgcgcgcpcpcpcBxBxBxWRsRVsVsRJRJRJRJRJRJVsVsVsVsVsVsVsVsVsVsVsVsVsVsVsRJao +cnRrHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFHFLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKVNDnDnVNLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKqxqxqxqxqxyLWWWWWnWnWnWnMieeeetatatatatatataeeeeeeeeeeeeeeeeeeeeeeeetatataHX tFxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXLKUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgzhJhJmvVWVWVWUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgcgcgcgcgcgcuopcpcBxBxBxBxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJao tFxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXLKUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXVWVWgzhJhJocKQVWVWVWVWVWVWVWVWVWVWVWVWVWVWVWVWVWVWUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgcgcgcgcgcgcgcgcgcuopcpcBxBxBxBxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJao tFxaXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbXbUXUXUXUXUXLKUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXVWVWVWQBhJhJocKQKQKQKQVWVWVWVWVWVWVWVWVWVWVWVWVWVWVWVWUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXgcgcgcgcgcgcgcgcgcgcgcgcuopcpcBxBxBxBxbZVsVsVsRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJRJao diff --git a/maps/southern_cross/southern_cross-6.dmm b/maps/southern_cross/southern_cross-6.dmm index a15c3efc6f..a41b21263f 100644 --- a/maps/southern_cross/southern_cross-6.dmm +++ b/maps/southern_cross/southern_cross-6.dmm @@ -131,7 +131,7 @@ "oe" = (/obj/effect/floor_decal/corner/purple/full{dir = 8},/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/floor/tiled,/area/surface/outpost/research/xenoarcheology/exp_prep) "om" = (/obj/machinery/space_heater,/obj/effect/floor_decal/corner/purple{dir = 6},/turf/simulated/floor/tiled/white,/area/surface/outpost/research/xenoarcheology) "oo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/corner/purple{dir = 10},/turf/simulated/floor/tiled/white,/area/surface/outpost/research/xenoarcheology) -"os" = (/obj/structure/table/steel,/obj/machinery/cell_charger,/obj/effect/floor_decal/industrial/warning/dust{dir = 1},/obj/item/weapon/cell/high,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000; pixel_x = 2; pixel_y = 4},/turf/simulated/floor/tiled/asteroid_steel,/area/surface/outpost/mining_main/cave) +"os" = (/obj/structure/table/steel,/obj/machinery/cell_charger,/obj/effect/floor_decal/industrial/warning/dust{dir = 1},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000; pixel_x = 2; pixel_y = 4},/turf/simulated/floor/tiled/asteroid_steel,/area/surface/outpost/mining_main/cave) "ow" = (/obj/machinery/door/firedoor/glass,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/research/xenoarcheology/anomaly) "oB" = (/obj/effect/floor_decal/industrial/outline/yellow,/turf/simulated/floor/tiled,/area/surface/outpost/research/xenoarcheology/anomaly) "oJ" = (/obj/effect/floor_decal/corner/purple{dir = 5},/turf/simulated/floor/tiled/white,/area/surface/outpost/research/xenoarcheology) @@ -175,7 +175,7 @@ "tc" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_research{name = "Sample Preparation"; req_access = list(65)},/obj/structure/cable/blue{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/white,/area/surface/outpost/research/xenoarcheology/analysis) "td" = (/obj/machinery/floodlight,/turf/simulated/floor/tiled,/area/surface/outpost/research/xenoarcheology/exp_prep) "tf" = (/obj/item/weapon/reagent_containers/glass/bottle/toxin,/obj/item/weapon/reagent_containers/glass/beaker/sulphuric{name = "beaker 'sulphuric acid'"},/obj/structure/table/glass,/obj/effect/floor_decal/corner/beige{dir = 9},/obj/machinery/power/apc{dir = 8; name = "west bump"; pixel_x = -24},/obj/machinery/light_switch{pixel_x = -36},/obj/structure/cable/blue{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/tiled/white,/area/surface/outpost/research/xenoarcheology/analysis) -"tl" = (/obj/structure/table/steel,/obj/effect/floor_decal/industrial/warning/dust{dir = 1},/obj/machinery/cell_charger,/obj/item/weapon/cell/high,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000; pixel_x = 2; pixel_y = 4},/turf/simulated/floor/tiled/asteroid_steel,/area/surface/outpost/mining_main/cave) +"tl" = (/obj/structure/table/steel,/obj/effect/floor_decal/industrial/warning/dust{dir = 1},/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000; pixel_x = 2; pixel_y = 4},/turf/simulated/floor/tiled/asteroid_steel,/area/surface/outpost/mining_main/cave) "tp" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/effect/floor_decal/industrial/outline/yellow,/obj/structure/window/reinforced,/turf/simulated/floor/tiled,/area/surface/outpost/research/xenoarcheology/anomaly) "tu" = (/obj/effect/floor_decal/industrial/warning/dust{dir = 1},/obj/machinery/floodlight,/turf/simulated/floor/tiled/asteroid_steel,/area/surface/outpost/mining_main/cave) "tw" = (/obj/machinery/atmospherics/omni/atmos_filter{tag_east = 1; tag_north = 2; tag_west = 3},/obj/structure/window/reinforced,/turf/simulated/floor/tiled,/area/surface/outpost/research/xenoarcheology/anomaly) @@ -358,7 +358,7 @@ "Pt" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/corner/purple{dir = 1},/turf/simulated/floor/tiled/white,/area/surface/outpost/research/xenoarcheology) "Px" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/device/camera,/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/effect/floor_decal/corner/purple{dir = 9},/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/tiled,/area/surface/outpost/research/xenoarcheology/anomaly) "PC" = (/obj/structure/table/reinforced,/obj/item/weapon/folder,/obj/item/weapon/pen,/obj/item/weapon/tape_roll,/obj/structure/window/reinforced,/obj/effect/floor_decal/industrial/warning,/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 4},/obj/item/device/geiger,/turf/simulated/floor/tiled,/area/surface/outpost/research/xenoarcheology/anomaly) -"PD" = (/obj/machinery/mining/drill,/turf/simulated/floor/tiled/asteroid_steel,/area/surface/outpost/mining_main/cave) +"PD" = (/obj/machinery/mining/drill/loaded,/turf/simulated/floor/tiled/asteroid_steel,/area/surface/outpost/mining_main/cave) "PE" = (/obj/item/stack/nanopaste,/obj/item/stack/nanopaste,/obj/item/stack/nanopaste,/obj/item/weapon/reagent_containers/glass/bucket,/obj/structure/closet/crate/secure/science{req_access = list(65)},/turf/simulated/floor/tiled/dark,/area/surface/outpost/research/xenoarcheology/analysis) "PF" = (/obj/structure/table/rack,/obj/machinery/firealarm{pixel_y = 24},/obj/item/bodybag/cryobag,/obj/item/bodybag/cryobag,/obj/item/weapon/storage/toolbox/emergency,/obj/item/weapon/storage/firstaid/regular,/obj/random/medical/lite,/obj/structure/extinguisher_cabinet{pixel_x = 28},/turf/simulated/floor/tiled/white,/area/surface/outpost/research/xenoarcheology/medical) "PO" = (/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/structure/cable/heavyduty{d2 = 8; icon_state = "0-8"},/obj/machinery/door/firedoor/border_only,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/surface/outpost/research/xenoarcheology/smes) diff --git a/maps/southern_cross/southern_cross-8.dmm b/maps/southern_cross/southern_cross-8.dmm index 47d441776d..c24eae6338 100644 --- a/maps/southern_cross/southern_cross-8.dmm +++ b/maps/southern_cross/southern_cross-8.dmm @@ -24,6 +24,7 @@ "akg" = (/obj/structure/table/rack,/obj/item/weapon/rig/ert/assetprotection,/obj/item/weapon/rig/ert/assetprotection,/obj/item/weapon/rig/ert/assetprotection,/obj/item/weapon/rig/ert/assetprotection,/obj/item/weapon/rig/ert/assetprotection,/obj/item/weapon/rig/ert/assetprotection,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "akj" = (/obj/structure/table/rack,/obj/item/weapon/storage/briefcase/inflatable,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_station) "akO" = (/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet{dir = 1},/obj/effect/floor_decal/carpet{dir = 9},/obj/structure/holostool,/turf/simulated/floor/holofloor/carpet,/area/holodeck/source_theatre) +"ala" = (/obj/item/toy/chess/rook_black,/turf/simulated/floor/holofloor/bmarble,/area/holodeck/source_chess) "alt" = (/obj/effect/floor_decal/corner/red{dir = 1},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "alZ" = (/obj/structure/table/steel_reinforced,/obj/item/stack/telecrystal,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) "amV" = (/obj/item/stack/material/steel{amount = 50},/turf/simulated/shuttle/floor/red,/area/shuttle/administration) @@ -85,6 +86,7 @@ "aQb" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) "aQu" = (/obj/structure/flora/ausbushes/palebush,/turf/unsimulated/floor{icon = 'icons/turf/snow_new.dmi'; icon_state = "snow"; name = "snow"},/area/ninja_dojo/dojo) "aQA" = (/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = -30},/obj/structure/table/standard,/obj/item/device/defib_kit,/obj/item/device/defib_kit,/obj/machinery/recharger,/obj/item/weapon/tool/screwdriver,/turf/simulated/shuttle/floor/white,/area/centcom/evac) +"aQI" = (/obj/item/toy/chess/bishop_black,/turf/simulated/floor/holofloor/wmarble,/area/holodeck/source_chess) "aQM" = (/obj/structure/toilet,/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor/white,/area/shuttle/merchant) "aQR" = (/obj/machinery/light{dir = 4},/obj/structure/table/rack,/turf/simulated/shuttle/floor/voidcraft,/area/shuttle/syndicate) "aSL" = (/obj/structure/bed/chair/wood/wings{dir = 1},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) @@ -102,6 +104,7 @@ "aWW" = (/obj/structure/table/steel_reinforced,/obj/item/organ/internal/stack,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/wizard_station) "aYN" = (/obj/structure/shuttle/engine/heater{dir = 4},/obj/machinery/turretid{pixel_x = 32; req_access = list(150)},/obj/machinery/turretid{pixel_x = 32; req_access = list(150)},/turf/simulated/floor/airless,/area/shuttle/syndicate) "aZj" = (/obj/machinery/door/airlock/voidcraft/vertical{frequency = null; id_tag = null; name = "Ship External Hatch"; req_access = null},/obj/machinery/door/blast/regular{density = 0; dir = 8; icon_state = "pdoor0"; id = "blastninja"; name = "Outer Airlock"; opacity = 0},/obj/effect/map_helper/airlock/door/ext_door,/obj/effect/map_helper/airlock/button/ext_button,/turf/simulated/shuttle/floor/voidcraft/dark,/area/shuttle/ninja) +"aZo" = (/obj/item/toy/chess/king_black,/turf/simulated/floor/holofloor/wmarble,/area/holodeck/source_chess) "aZH" = (/obj/machinery/teleport/hub,/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/specops) "aZL" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/bar) "bay" = (/obj/machinery/vending/medical,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) @@ -180,6 +183,7 @@ "bIR" = (/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/structure/window/reinforced{dir = 1; health = 1e+006},/obj/structure/table/rack,/obj/item/weapon/storage/backpack/ert/medical,/obj/item/weapon/storage/backpack/ert/medical,/obj/item/weapon/storage/backpack/ert/medical,/obj/item/weapon/storage/backpack/ert/medical,/obj/item/weapon/storage/backpack/ert/medical,/obj/item/weapon/storage/backpack/ert/medical,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/specops) "bJb" = (/obj/item/pizzabox/meat,/turf/unsimulated/floor{icon_state = "asteroid"},/area/skipjack_station) "bJi" = (/obj/structure/table/marble,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"bJs" = (/obj/effect/floor_decal/sign/small_7{icon = 'icons/turf/flooring/decals.dmi'},/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "bKg" = (/obj/structure/table/standard,/obj/item/weapon/towel{color = "#ff0000"; name = "red towel"},/obj/item/weapon/towel{color = "#ff0000"; name = "red towel"},/obj/item/weapon/towel{color = "#ff0000"; name = "red towel"},/obj/item/weapon/towel{color = "#ff0000"; name = "red towel"},/obj/item/weapon/towel{color = "#ff0000"; name = "red towel"},/obj/item/weapon/soap/syndie,/obj/item/weapon/soap/syndie,/turf/unsimulated/floor{icon_state = "freezerfloor"},/area/syndicate_station) "bKr" = (/obj/structure/shuttle/engine/propulsion{dir = 1; icon_state = "propulsion_r"},/turf/simulated/shuttle/plating/airless/carry,/area/shuttle/syndicate_elite/mothership) "bKC" = (/obj/item/weapon/ore,/turf/unsimulated/floor{icon_state = "steel"},/area/skipjack_station) @@ -219,9 +223,11 @@ "cay" = (/turf/unsimulated/wall,/area/shuttle/trade) "caN" = (/obj/structure/closet/emcloset,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/terminal) "ccn" = (/obj/machinery/computer/shuttle_control/multi/heist{icon_keyboard = "flight_center_key"; icon_screen = "flight_center"; icon_state = "flightcomp_center"},/turf/simulated/shuttle/floor/darkred,/area/shuttle/skipjack) +"cdv" = (/obj/effect/floor_decal/sign/small_h{icon = 'icons/turf/flooring/decals.dmi'},/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "cdW" = (/obj/machinery/media/jukebox,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) "cen" = (/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/obj/structure/curtain/open/shower/medical,/turf/unsimulated/floor{icon_state = "freezerfloor"},/area/ninja_dojo/dojo) "cer" = (/obj/structure/holostool,/turf/simulated/floor/holofloor/carpet,/area/holodeck/source_theatre) +"cfi" = (/obj/effect/floor_decal/sign/small_f{icon = 'icons/turf/flooring/decals.dmi'},/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "cfJ" = (/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/security) "cfK" = (/turf/unsimulated/beach/water,/area/beach) "cfM" = (/obj/structure/mirror{pixel_y = 28},/turf/simulated/shuttle/floor/white,/area/shuttle/merchant) @@ -251,7 +257,7 @@ "cuh" = (/obj/effect/shuttle_landmark/southern_cross/cryostorage_offsite,/turf/simulated/shuttle/plating,/area/shuttle/cryo/centcom) "cui" = (/obj/effect/floor_decal/corner/yellow{dir = 8},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "cuP" = (/turf/simulated/shuttle/floor/voidcraft/light,/area/shuttle/syndicate) -"cuV" = (/obj/effect/step_trigger/thrower{affect_ghosts = 1; 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,/turf/space,/area/space) +"cuV" = (/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,/turf/space,/area/space) "cvx" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/unsimulated/floor{icon_state = "freezerfloor"},/area/centcom/specops) "cwv" = (/obj/machinery/embedded_controller/radio/docking_port_multi{child_names_txt = "Airlock One;Airlock Two"; child_tags_txt = "arrivals_dock_north_airlock;arrivals_dock_south_airlock"; frequency = 1380; id_tag = "arrivals_dock"; pixel_y = -32},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) "cxK" = (/obj/structure/table/standard,/turf/simulated/shuttle/floor/black,/area/shuttle/merchant) @@ -283,6 +289,7 @@ "cJr" = (/obj/structure/bed/chair/wood/wings,/obj/machinery/newscaster{layer = 3.3; pixel_y = 30},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) "cJE" = (/obj/structure/table/rack,/obj/item/taperoll/police,/obj/item/taperoll/police,/obj/item/taperoll/police,/obj/item/taperoll/police,/obj/item/taperoll/police,/obj/item/taperoll/police,/obj/item/device/flash,/obj/item/device/flash,/obj/item/device/flash,/obj/item/device/flash,/obj/item/device/flash,/obj/item/device/flash,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/melee/baton/loaded,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/specops) "cJG" = (/obj/machinery/door/window{dir = 8; name = "Cell"; req_access = list(150)},/turf/simulated/shuttle/floor/voidcraft,/area/shuttle/syndicate) +"cJI" = (/obj/effect/floor_decal/sign/small_1{icon = 'icons/turf/flooring/decals.dmi'},/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "cJV" = (/obj/machinery/the_singularitygen,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/wizard_station) "cKC" = (/obj/structure/bed/chair,/turf/simulated/shuttle/floor/black,/area/centcom/evac) "cKD" = (/obj/effect/landmark/start{name = "wizard"},/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) @@ -430,6 +437,7 @@ "emG" = (/obj/machinery/computer/card,/turf/simulated/shuttle/floor{icon_state = "floor_red"},/area/centcom/evac) "emH" = (/obj/structure/table/reinforced,/obj/item/weapon/gun/energy/gun/nuclear,/obj/item/weapon/hand_tele,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/specops) "emV" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/syndie_kit/chameleon,/obj/item/weapon/storage/box/syndie_kit/clerical,/turf/unsimulated/floor{icon_state = "steel"},/area/shuttle/trade) +"enM" = (/obj/item/toy/chess/king_white{color = "teal"},/turf/simulated/floor/holofloor/bmarble,/area/holodeck/source_chess) "enV" = (/obj/structure/table/rack,/obj/item/weapon/gun/projectile/automatic/wt550,/obj/item/weapon/gun/projectile/automatic/wt550,/obj/item/weapon/gun/projectile/automatic/wt550,/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/specops) "epW" = (/obj/vehicle/train/trolley,/turf/simulated/shuttle/floor/black,/area/shuttle/merchant) "eqQ" = (/obj/structure/curtain/open/shower/security,/obj/machinery/shower{dir = 8; pixel_x = -5; pixel_y = -1},/turf/unsimulated/floor{icon_state = "freezerfloor"},/area/syndicate_station) @@ -551,6 +559,7 @@ "fME" = (/obj/structure/table/rack,/obj/item/clothing/suit/armor/vest/ert/command,/obj/item/clothing/head/helmet/ert/command,/obj/item/weapon/storage/backpack/ert/commander,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/specops) "fMS" = (/obj/structure/table/steel_reinforced,/obj/item/taperoll/atmos,/obj/item/taperoll/atmos,/obj/item/taperoll/atmos,/obj/item/weapon/pickaxe/drill,/obj/item/weapon/pickaxe/drill,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/specops) "fNJ" = (/turf/simulated/shuttle/floor/red,/area/shuttle/skipjack) +"fOZ" = (/obj/effect/floor_decal/sign/small_b{icon = 'icons/turf/flooring/decals.dmi'},/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "fQK" = (/obj/structure/table/reinforced,/obj/item/weapon/tool/crowbar,/obj/item/weapon/tool/crowbar,/obj/item/weapon/tool/crowbar,/obj/item/weapon/tool/crowbar,/obj/item/weapon/tool/crowbar,/obj/item/weapon/tool/crowbar,/obj/item/device/radio/off,/obj/item/device/radio/off,/obj/item/device/radio/off,/obj/item/device/radio/off,/obj/item/device/radio/off,/obj/item/device/radio/off,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/flashlight,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops) "fRj" = (/turf/unsimulated/wall,/area/centcom/security) "fRw" = (/obj/machinery/door/airlock/glass_security{name = "Security Processing"; req_access = list(1)},/turf/simulated/shuttle/floor{icon_state = "floor_red"},/area/centcom/evac) @@ -609,6 +618,7 @@ "gwC" = (/obj/structure/bed,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/prison/solitary) "gwE" = (/obj/machinery/teleport/hub,/turf/simulated/shuttle/floor/voidcraft/dark,/area/shuttle/syndicate) "gwF" = (/obj/structure/table/rack,/obj/item/weapon/tank/vox,/turf/unsimulated/floor{icon_state = "asteroid"},/area/skipjack_station) +"gwQ" = (/obj/effect/floor_decal/sign/small_3{icon = 'icons/turf/flooring/decals.dmi'},/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "gwZ" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/bar) "gxT" = (/obj/machinery/teleport/station,/turf/simulated/shuttle/plating,/area/shuttle/ninja) "gyw" = (/obj/machinery/vending/coffee,/turf/simulated/shuttle/floor/yellow,/area/centcom/evac) @@ -667,6 +677,7 @@ "hdj" = (/obj/structure/table/bench/wooden,/obj/effect/landmark{name = "ninjastart"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/ninja_dojo/dojo) "hdC" = (/obj/machinery/access_button{master_tag = null; pixel_x = 27; pixel_y = -7; req_one_access = null},/obj/machinery/door/airlock/external{frequency = null; icon_state = "door_locked"; id_tag = null; locked = 1; name = "Ship Hatch"; req_access = null},/obj/effect/map_helper/airlock/button/ext_button,/obj/effect/map_helper/airlock/door/ext_door,/turf/simulated/shuttle/floor/black,/area/shuttle/merchant) "heI" = (/obj/structure/table/glass,/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/structure/window/reinforced{dir = 1; health = 1e+006},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"heQ" = (/obj/item/toy/chess/bishop_white{color = "teal"},/turf/simulated/floor/holofloor/bmarble{color = "teal"},/area/holodeck/source_chess) "hft" = (/obj/structure/shuttle/engine/heater{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/shuttle/plating/airless,/area/shuttle/administration) "hfQ" = (/obj/effect/floor_decal/carpet{dir = 1},/obj/structure/window/reinforced/holowindow{dir = 1},/obj/structure/table/woodentable/holotable,/turf/simulated/floor/holofloor/carpet,/area/holodeck/source_courtroom) "hfU" = (/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/main_hall) @@ -717,7 +728,7 @@ "hyO" = (/obj/machinery/door/window/holowindoor{dir = 2; name = "Red Team"},/turf/simulated/floor/holofloor/tiled/dark,/area/holodeck/source_emptycourt) "hzc" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/terminal) "hzD" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/pill_bottle/dice,/obj/item/weapon/deck/cards,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/security) -"hzI" = (/obj/effect/step_trigger/thrower{affect_ghosts = 1; 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/simulated/mineral,/area/space) +"hzI" = (/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/simulated/mineral,/area/space) "hAc" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/largecrate/animal/cow,/turf/simulated/shuttle/floor/black,/area/shuttle/merchant) "hAG" = (/obj/structure/table/standard,/turf/simulated/shuttle/floor/red,/area/shuttle/administration) "hAJ" = (/obj/structure/closet{name = "custodial"},/obj/item/weapon/reagent_containers/spray/cleaner,/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/weapon/mop,/turf/simulated/shuttle/floor/black,/area/shuttle/merchant) @@ -738,8 +749,10 @@ "hKH" = (/obj/item/weapon/tray{pixel_y = 5},/obj/structure/table/standard,/obj/item/weapon/material/knife/butch,/turf/unsimulated/floor{icon_state = "white"},/area/skipjack_station) "hKM" = (/turf/simulated/shuttle/floor/yellow,/area/centcom/evac) "hKV" = (/turf/simulated/shuttle/wall,/area/shuttle/supply) +"hKW" = (/obj/item/toy/chess/pawn_black,/turf/simulated/floor/holofloor/wmarble,/area/holodeck/source_chess) "hLt" = (/obj/structure/holohoop{dir = 8},/obj/effect/floor_decal/corner/green{dir = 6},/turf/simulated/floor/holofloor/tiled,/area/holodeck/source_basketball) "hMe" = (/obj/structure/bed/chair/comfy/black{dir = 1},/turf/simulated/floor/carpet,/area/shuttle/merchant) +"hMz" = (/obj/item/toy/chess/bishop_black,/turf/simulated/floor/holofloor/bmarble,/area/holodeck/source_chess) "hMB" = (/obj/machinery/light,/turf/simulated/shuttle/floor/voidcraft,/area/shuttle/syndicate) "hNb" = (/turf/simulated/shuttle/floor,/area/centcom/evac) "hNi" = (/obj/machinery/microwave{pixel_x = -1; pixel_y = 8},/obj/structure/table/marble,/turf/unsimulated/floor{icon_state = "white"},/area/wizard_station) @@ -774,15 +787,17 @@ "iaT" = (/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) "iaZ" = (/obj/machinery/door/airlock/voidcraft/vertical{req_access = list(150)},/turf/simulated/shuttle/floor/voidcraft/dark,/area/shuttle/syndicate) "ibc" = (/obj/machinery/computer/power_monitor,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/wizard_station) +"ica" = (/obj/item/toy/chess/rook_white{color = "teal"},/turf/simulated/floor/holofloor/wmarble,/area/holodeck/source_chess) "idf" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Subversive Intercom"; pixel_x = -32; subspace_transmission = 1; syndie = 1},/obj/item/target,/obj/effect/floor_decal/industrial/outline/yellow,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/wizard_station) "idg" = (/obj/effect/landmark{name = "prisonwarp"},/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/prison/solitary) "idu" = (/obj/effect/landmark{name = "Trader"},/turf/unsimulated/floor{icon_state = "dark"},/area/shuttle/trade) "idX" = (/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/skipjack_station) "ieC" = (/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/terminal) +"ieX" = (/obj/effect/floor_decal/sign/small_2{icon = 'icons/turf/flooring/decals.dmi'},/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "ifX" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod5/centcom) "ifY" = (/obj/effect/floor_decal/corner/paleblue{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) "igi" = (/obj/machinery/door/blast/shutters{density = 0; dir = 8; icon_state = "shutter0"; id = "tradebridgeshutters"; name = "Blast Shutters"; opacity = 0},/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced/full,/turf/simulated/shuttle/plating,/area/shuttle/merchant) -"ihi" = (/obj/effect/step_trigger/thrower{affect_ghosts = 1; name = "thrower_throwdown"; tiles = 0},/turf/space,/area/space) +"ihi" = (/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "ihH" = (/obj/machinery/light{dir = 8},/turf/simulated/shuttle/floor/red,/area/shuttle/administration) "iiH" = (/obj/machinery/computer/communications,/obj/structure/window/reinforced,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/command) "ijG" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/simulated/shuttle/floor/yellow,/area/shuttle/transport1/centcom) @@ -794,6 +809,7 @@ "inZ" = (/obj/machinery/porta_turret/crescent,/obj/effect/floor_decal/industrial/hatch/yellow,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) "ioe" = (/obj/structure/table/glass,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) "ion" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "syndieshutters_infirmary"; name = "Blast Shutters"; opacity = 0},/obj/structure/window/reinforced/full,/turf/simulated/shuttle/plating,/area/shuttle/syndicate) +"ioF" = (/obj/item/toy/chess/knight_black,/turf/simulated/floor/holofloor/wmarble,/area/holodeck/source_chess) "ipT" = (/obj/machinery/vending/security,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/specops) "irb" = (/turf/simulated/floor/holofloor/carpet,/area/holodeck/source_courtroom) "iro" = (/obj/structure/shuttle/engine/propulsion{dir = 1},/turf/simulated/shuttle/plating/airless/carry,/area/centcom/evac) @@ -801,6 +817,7 @@ "irM" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/command) "iti" = (/obj/structure/table/rack,/obj/item/clothing/suit/space/vox/medic,/obj/item/clothing/suit/space/vox/medic,/obj/item/clothing/head/helmet/space/vox/medic,/obj/item/clothing/head/helmet/space/vox/medic,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/skipjack_station) "itN" = (/obj/structure/table/standard,/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"itW" = (/obj/item/toy/chess/rook_black,/turf/simulated/floor/holofloor/wmarble,/area/holodeck/source_chess) "iut" = (/obj/structure/table/standard,/obj/item/device/radio/headset/syndicate/alt,/obj/item/device/radio/headset/syndicate/alt,/obj/item/device/radio/headset/syndicate/alt,/obj/item/device/radio/headset/syndicate/alt,/turf/unsimulated/floor{icon_state = "lino"},/area/syndicate_station) "iuw" = (/obj/machinery/iv_drip,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) "iuK" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/marble,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bar) @@ -941,6 +958,7 @@ "jLL" = (/obj/item/device/radio/intercom{broadcasting = 1; dir = 1; frequency = 1213; name = "Syndicate Ops Intercom"; pixel_y = 26; subspace_transmission = 1; syndie = 1},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_station) "jMP" = (/obj/structure/undies_wardrobe,/turf/unsimulated/floor{icon_state = "freezerfloor"},/area/syndicate_station) "jNd" = (/obj/machinery/door/airlock/external,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"jNE" = (/obj/item/toy/chess/knight_black,/turf/simulated/floor/holofloor/bmarble,/area/holodeck/source_chess) "jOK" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/turf/simulated/shuttle/floor/voidcraft/light,/area/shuttle/syndicate) "jPl" = (/obj/machinery/vending/assist{contraband = null; name = "Old Vending Machine"; products = list(/obj/item/device/assembly/prox_sensor = 5, /obj/item/device/assembly/signaler = 4, /obj/item/device/assembly/infra = 4, /obj/item/device/assembly/prox_sensor = 4, /obj/item/weapon/handcuffs = 8, /obj/item/device/flash = 4, /obj/item/weapon/cartridge/signal = 4, /obj/item/clothing/glasses/sunglasses = 4)},/turf/simulated/shuttle/floor/black,/area/shuttle/merchant) "jPL" = (/obj/effect/floor_decal/industrial/warning,/obj/structure/closet/crate/internals,/turf/simulated/shuttle/floor/black,/area/shuttle/merchant) @@ -970,6 +988,7 @@ "kaS" = (/obj/structure/shuttle/engine/propulsion{dir = 4; icon_state = "propulsion_r"},/turf/simulated/shuttle/plating/airless/carry,/area/shuttle/syndicate) "kbr" = (/obj/effect/decal/cleanable/cobweb2{icon_state = "spiderling"; name = "dead spider"},/turf/unsimulated/floor{icon_state = "steel_dirty"},/area/skipjack_station) "kbv" = (/obj/structure/window/reinforced{dir = 1; health = 1e+006},/turf/simulated/shuttle/plating,/area/centcom/evac) +"kcp" = (/turf/simulated/floor/holofloor/bmarble,/area/holodeck/source_chess) "kcu" = (/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/simulated/floor/holofloor/tiled,/area/holodeck/source_emptycourt) "kcX" = (/obj/machinery/mech_recharger,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/specops) "ker" = (/obj/structure/sink{pixel_y = 16},/obj/structure/mirror{pixel_y = 32},/turf/unsimulated/floor{icon_state = "freezerfloor"},/area/centcom/bar) @@ -977,6 +996,7 @@ "khE" = (/obj/structure/closet/secure_closet/security,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/security) "khJ" = (/obj/structure/table/wooden_reinforced,/obj/machinery/recharger,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/ninja_dojo/dojo) "kiA" = (/turf/simulated/shuttle/wall/hard_corner,/area/centcom/evac) +"kjj" = (/obj/effect/floor_decal/sign/small_e{icon = 'icons/turf/flooring/decals.dmi'},/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "kjC" = (/obj/structure/sink{dir = 8; pixel_x = -12; pixel_y = 2},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) "kkH" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/wall,/area/space) "klk" = (/obj/structure/table/rack,/obj/effect/floor_decal/industrial/warning,/obj/item/device/kit/paint/gygax/darkgygax,/obj/item/device/kit/paint/gygax/recitence,/obj/item/device/kit/paint/durand,/obj/item/device/kit/paint/durand/phazon,/obj/item/device/kit/paint/durand/seraph,/turf/simulated/shuttle/floor/black,/area/shuttle/merchant) @@ -1071,6 +1091,7 @@ "lbF" = (/turf/simulated/shuttle/plating,/area/shuttle/large_escape_pod2/centcom) "lbH" = (/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_station) "lcF" = (/obj/structure/bed/chair/comfy/black,/turf/simulated/shuttle/floor/voidcraft/dark,/area/shuttle/ninja) +"ldM" = (/obj/item/toy/chess/rook_white{color = "teal"},/turf/simulated/floor/holofloor/bmarble,/area/holodeck/source_chess) "ler" = (/obj/item/weapon/bedsheet/green,/obj/machinery/light/small{dir = 4},/obj/structure/bed/padded,/turf/simulated/shuttle/floor/red,/area/shuttle/skipjack) "lfj" = (/obj/effect/floor_decal/corner/green{dir = 5},/turf/simulated/floor/holofloor/tiled,/area/holodeck/source_basketball) "lgS" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "wood"},/area/centcom/bar) @@ -1245,11 +1266,13 @@ "mLC" = (/obj/machinery/door/airlock/hatch{req_access = list(150)},/turf/unsimulated/floor{icon_state = "cult"; name = "plating"},/area/skipjack_station) "mLD" = (/obj/structure/frame/computer,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/wizard_station) "mLJ" = (/obj/structure/closet/secure_closet/personal/patient,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"mMR" = (/turf/simulated/floor/holofloor/wmarble,/area/holodeck/source_chess) "mMY" = (/obj/effect/floor_decal/carpet{dir = 8},/turf/simulated/floor/holofloor/carpet,/area/holodeck/source_courtroom) "mNv" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/firstaid/adv{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/firstaid/adv,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/specops) "mOb" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/condiment/small/saltshaker{pixel_x = 4; pixel_y = -2},/obj/item/weapon/reagent_containers/food/condiment/small/peppermill,/obj/item/weapon/flame/candle,/turf/unsimulated/floor{icon_state = "wood"},/area/centcom/bar) "mOP" = (/obj/machinery/computer/security/telescreen,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) "mQF" = (/obj/item/roller,/obj/item/roller{pixel_y = 8},/obj/item/roller{pixel_y = 16},/obj/structure/table/reinforced,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/specops) +"mQJ" = (/obj/item/toy/chess/bishop_white{color = "teal"},/turf/simulated/floor/holofloor/wmarble,/area/holodeck/source_chess) "mRE" = (/obj/structure/urinal{pixel_y = 32},/obj/structure/window/reinforced/tinted{dir = 8},/turf/unsimulated/floor{icon_state = "freezerfloor"},/area/centcom/specops) "mRN" = (/obj/machinery/chemical_dispenser/full,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/structure/table/reinforced,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/specops) "mSB" = (/obj/structure/device/piano{dir = 4},/obj/effect/floor_decal/corner/yellow/diagonal,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/living) @@ -1331,6 +1354,7 @@ "nCN" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_5_recovery"; pixel_x = 26; pixel_y = -26; req_one_access = list(13); tag_door = "escape_pod_5_recovery_hatch"},/turf/simulated/shuttle/floor/yellow,/area/centcom/evac) "nEp" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/corner/paleblue/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) "nEw" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 9},/turf/simulated/shuttle/wall/voidcraft/red,/area/shuttle/syndicate) +"nEz" = (/obj/effect/floor_decal/sign/small_8{icon = 'icons/turf/flooring/decals.dmi'},/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "nFg" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/blast/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "syndieshutters_infirmary"; name = "Blast Shutters"; opacity = 0},/obj/structure/window/reinforced/full,/turf/simulated/shuttle/plating,/area/shuttle/syndicate) "nGr" = (/obj/effect/overlay/palmtree_r,/turf/simulated/floor/holofloor/beach/sand,/area/holodeck/source_beach) "nGt" = (/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/simulated/floor/holofloor/tiled,/area/holodeck/source_emptycourt) @@ -1392,6 +1416,7 @@ "omn" = (/obj/machinery/sleep_console,/turf/simulated/shuttle/floor/voidcraft/light,/area/shuttle/syndicate) "omU" = (/obj/machinery/door/airlock/hatch{req_access = list(150)},/turf/unsimulated/floor{icon_state = "steel_dirty"},/area/skipjack_station) "oqb" = (/obj/structure/table/standard,/obj/machinery/light{dir = 4},/obj/item/weapon/reagent_containers/glass/beaker/large,/turf/simulated/shuttle/floor/red,/area/shuttle/administration) +"orn" = (/obj/item/toy/chess/knight_white{color = "teal"},/turf/simulated/floor/holofloor/wmarble,/area/holodeck/source_chess) "osb" = (/obj/machinery/computer/cloning,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) "osg" = (/obj/structure/window/reinforced,/turf/simulated/shuttle/wall/dark/no_join,/area/shuttle/supply) "osC" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor/voidcraft,/area/shuttle/syndicate) @@ -1429,6 +1454,7 @@ "oLA" = (/obj/machinery/suit_cycler/syndicate{locked = 0},/turf/unsimulated/floor{icon_state = "steel"},/area/skipjack_station) "oOc" = (/obj/structure/table/standard,/obj/item/device/paicard,/turf/unsimulated/floor{icon_state = "steel"},/area/skipjack_station) "oOn" = (/obj/machinery/door/airlock/freezer,/turf/unsimulated/floor{icon_state = "freezerfloor"},/area/centcom/bar) +"oOO" = (/obj/effect/floor_decal/sign/small_4{icon = 'icons/turf/flooring/decals.dmi'},/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "oSH" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/specops) "oTl" = (/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"},/area/ninja_dojo/dojo) "oTT" = (/obj/machinery/suit_cycler/syndicate{locked = 0},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_station) @@ -1471,6 +1497,7 @@ "ppL" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "supply_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/turf/simulated/shuttle/floor,/area/shuttle/supply) "pqj" = (/obj/structure/table/marble,/obj/item/weapon/reagent_containers/glass/beaker,/obj/effect/floor_decal/corner/white/diagonal,/obj/machinery/reagentgrinder,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bar) "pqU" = (/turf/unsimulated/floor{icon_state = "cult"; name = "plating"},/area/skipjack_station) +"prb" = (/obj/item/toy/chess/queen_black,/turf/simulated/floor/holofloor/bmarble,/area/holodeck/source_chess) "prS" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon_state = "cult"; name = "plating"},/area/skipjack_station) "psx" = (/obj/structure/shuttle/engine/heater{dir = 4},/turf/simulated/floor/airless,/area/shuttle/syndicate) "psU" = (/turf/unsimulated/floor{icon_state = "steel"},/area/shuttle/trade) @@ -1508,13 +1535,15 @@ "pHq" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/command) "pHw" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced/full,/turf/simulated/shuttle/plating,/area/shuttle/syndicate) "pHA" = (/obj/structure/bed/chair/comfy/black,/turf/unsimulated/floor{icon_state = "cult"; name = "plating"},/area/syndicate_station) +"pJj" = (/obj/effect/floor_decal/sign/small_6{icon = 'icons/turf/flooring/decals.dmi'},/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "pJm" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/shuttle/floor/red,/area/shuttle/administration) "pJB" = (/obj/machinery/light{dir = 4},/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor/voidcraft,/area/shuttle/syndicate) "pJQ" = (/obj/structure/table/rack,/obj/item/weapon/tank/emergency/oxygen/double,/obj/item/weapon/tank/emergency/oxygen/double,/obj/item/weapon/tank/emergency/oxygen/double,/obj/item/weapon/tank/emergency/oxygen/double,/obj/item/weapon/tank/emergency/oxygen/double,/obj/item/weapon/tank/emergency/oxygen/double,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_station) "pKo" = (/obj/item/weapon/reagent_containers/food/drinks/bottle/pwine{pixel_x = -4; pixel_y = 10},/obj/structure/table/marble,/turf/unsimulated/floor{icon_state = "white"},/area/wizard_station) "pKL" = (/obj/effect/floor_decal/carpet{dir = 1},/obj/structure/bed/chair/holochair{dir = 1},/turf/simulated/floor/holofloor/carpet,/area/holodeck/source_courtroom) -"pKM" = (/obj/effect/step_trigger/thrower{affect_ghosts = 1; 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/simulated/mineral,/area/space) +"pKM" = (/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/simulated/mineral,/area/space) "pKR" = (/obj/effect/floor_decal/carpet{dir = 1},/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet{dir = 5},/turf/unsimulated/floor{icon_state = "carpet"},/area/ninja_dojo/dojo) +"pLt" = (/obj/effect/floor_decal/sign/small_a{icon = 'icons/turf/flooring/decals.dmi'},/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "pMy" = (/obj/structure/bed/chair/comfy/teal{dir = 8},/obj/effect/floor_decal/carpet{dir = 4},/turf/unsimulated/floor{icon_state = "carpet"},/area/centcom/command) "pMJ" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_6_recovery"; pixel_x = 26; pixel_y = -26; req_one_access = list(13); tag_door = "escape_pod_6_recovery_hatch"},/turf/simulated/shuttle/floor/yellow,/area/centcom/evac) "pNc" = (/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) @@ -1533,6 +1562,7 @@ "pVz" = (/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/tdome/tdome2) "pVK" = (/obj/effect/landmark{name = "tdome2"},/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/tdome/tdome2) "pWb" = (/obj/structure/table/rack,/obj/item/weapon/storage/toolbox/syndicate{pixel_x = -1; pixel_y = 3},/turf/simulated/shuttle/floor/voidcraft/dark,/area/shuttle/syndicate) +"pXz" = (/obj/effect/floor_decal/sign/small_d{icon = 'icons/turf/flooring/decals.dmi'},/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "pZk" = (/obj/structure/table/steel,/obj/item/device/radio/uplink,/turf/unsimulated/floor{icon_state = "cult"; name = "plating"},/area/skipjack_station) "qbl" = (/obj/structure/target_stake,/obj/effect/floor_decal/industrial/hatch/yellow,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/wizard_station) "qbK" = (/obj/structure/sink{dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/turf/unsimulated/floor{icon_state = "freezerfloor"},/area/centcom/specops) @@ -1561,6 +1591,7 @@ "qrl" = (/obj/machinery/telecomms/server/presets/centcomm,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/main_hall) "qrw" = (/obj/effect/floor_decal/carpet{dir = 1},/turf/simulated/floor/holofloor/carpet,/area/holodeck/source_theatre) "qrD" = (/obj/item/device/radio/intercom{broadcasting = 1; dir = 1; frequency = 1443; listening = 0; name = "Spec Ops Intercom"; pixel_y = 22},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/turf/unsimulated/floor{icon_state = "freezerfloor"},/area/centcom/command) +"qsI" = (/obj/item/toy/chess/pawn_black,/turf/simulated/floor/holofloor/bmarble,/area/holodeck/source_chess) "qvC" = (/obj/structure/table/standard,/obj/item/stack/material/steel{amount = 2},/obj/item/stack/material/steel{amount = 2},/obj/item/stack/material/glass{amount = 15},/obj/item/stack/material/glass{amount = 15},/turf/simulated/shuttle/floor/black,/area/shuttle/merchant) "qwo" = (/obj/structure/table/steel_reinforced,/obj/item/weapon/arrow/quill,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) "qwr" = (/obj/structure/bed/chair/office/light{dir = 4},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/security) @@ -1743,6 +1774,7 @@ "swU" = (/obj/machinery/door/airlock/glass{name = "Bar"},/turf/unsimulated/floor{icon_state = "wood"},/area/centcom/bar) "sxd" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) "syl" = (/obj/effect/floor_decal/carpet,/obj/structure/table/woodentable/holotable,/turf/simulated/floor/holofloor/carpet,/area/holodeck/source_courtroom) +"syS" = (/obj/item/toy/chess/knight_white{color = "teal"},/turf/simulated/floor/holofloor/bmarble,/area/holodeck/source_chess) "syY" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{dir = 1; frequency = 1380; id_tag = "admin_shuttle_bay"; name = "shuttle bay controller"; pixel_y = -27; tag_door = "admin_shuttle_bay_door"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) "szr" = (/obj/structure/shuttle/engine/propulsion,/turf/simulated/shuttle/plating/airless/carry,/area/shuttle/escape/centcom) "szC" = (/obj/structure/table/rack,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_station) @@ -1774,6 +1806,7 @@ "sQM" = (/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/specops) "sRg" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) "sRA" = (/obj/structure/table/standard,/turf/simulated/shuttle/floor,/area/centcom/evac) +"sRO" = (/obj/effect/floor_decal/sign/small_c{icon = 'icons/turf/flooring/decals.dmi'},/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "sTI" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor/black,/area/centcom/evac) "sUq" = (/obj/machinery/vending/cigarette,/obj/machinery/light{dir = 1},/turf/simulated/shuttle/floor/red,/area/shuttle/administration) "sUz" = (/obj/machinery/door/airlock/centcom{name = "General Access"; req_access = list(101)},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome) @@ -1890,6 +1923,7 @@ "uay" = (/obj/effect/floor_decal/corner/red/full{dir = 8},/turf/simulated/floor/holofloor/tiled,/area/holodeck/source_boxingcourt) "uaO" = (/obj/machinery/porta_turret{anchored = 0; check_records = 0; enabled = 0; req_one_access = list(103); use_power = 0},/obj/effect/floor_decal/industrial/outline/blue,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/specops) "uct" = (/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"udo" = (/obj/item/toy/chess/queen_white{color = "teal"},/turf/simulated/floor/holofloor/wmarble,/area/holodeck/source_chess) "ugr" = (/obj/machinery/door/airlock/centcom{name = "Special Operations"; req_access = list(103)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops) "uhi" = (/turf/unsimulated/floor{icon_state = "wood"},/area/centcom/bar) "uhT" = (/obj/structure/sign/poster{pixel_y = -32},/turf/simulated/shuttle/floor/black,/area/shuttle/merchant) @@ -1968,7 +2002,7 @@ "uTg" = (/turf/simulated/shuttle/wall/dark/no_join,/area/shuttle/syndicate_elite/mothership) "uTl" = (/turf/simulated/shuttle/wall/no_join,/area/shuttle/escape/centcom) "uTu" = (/obj/structure/bed/chair/comfy/teal,/obj/effect/floor_decal/carpet{dir = 1},/turf/unsimulated/floor{icon_state = "carpet"},/area/centcom/command) -"uTB" = (/obj/effect/step_trigger/thrower{affect_ghosts = 1; 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) +"uTB" = (/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) "uTV" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/largecrate/hoverpod,/turf/simulated/shuttle/floor/black,/area/shuttle/merchant) "uUs" = (/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bar) "uUP" = (/obj/structure/table/rack,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/void/merc,/obj/item/clothing/mask/gas/syndicate,/obj/item/clothing/head/helmet/space/void/merc,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_station) @@ -1993,6 +2027,7 @@ "vdG" = (/obj/effect/floor_decal/carpet{dir = 4},/turf/simulated/floor/holofloor/carpet,/area/holodeck/source_meetinghall) "vdJ" = (/obj/structure/closet/secure_closet/medical_wall{pixel_y = 32; req_access = list(150)},/obj/item/bodybag,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/glass/bottle/antitoxin{pixel_x = -4; pixel_y = 8},/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline{pixel_x = 4; pixel_y = 7},/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/storage/firstaid/combat,/obj/item/weapon/storage/firstaid/clotting,/turf/simulated/shuttle/floor/voidcraft/light,/area/shuttle/syndicate) "vej" = (/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/simulated/shuttle/floor/yellow,/area/centcom/evac) +"veN" = (/obj/item/toy/chess/pawn_white{color = "teal"},/turf/simulated/floor/holofloor/bmarble,/area/holodeck/source_chess) "veR" = (/obj/machinery/optable,/turf/simulated/shuttle/floor/white,/area/centcom/evac) "vfs" = (/obj/machinery/sleep_console,/turf/simulated/shuttle/floor/white,/area/shuttle/escape/centcom) "vfE" = (/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/shuttle/skipjack) @@ -2006,6 +2041,7 @@ "vkp" = (/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet,/obj/effect/floor_decal/carpet{dir = 10},/turf/simulated/floor/holofloor/carpet,/area/holodeck/source_courtroom) "vkA" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/marble,/obj/item/weapon/reagent_containers/food/snacks/soylenviridians,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bar) "vkK" = (/obj/structure/table/standard,/obj/item/device/radio/off,/obj/item/weapon/paper_bin,/turf/simulated/shuttle/floor/black,/area/centcom/evac) +"vkZ" = (/obj/item/toy/chess/pawn_white{color = "teal"},/turf/simulated/floor/holofloor/wmarble,/area/holodeck/source_chess) "vlF" = (/obj/structure/table/steel_reinforced,/obj/item/clothing/head/bearpelt,/obj/item/clothing/head/bowler,/obj/item/clothing/head/caphat/cap,/obj/item/clothing/head/beaverhat,/obj/item/clothing/head/beret/centcom,/obj/item/clothing/head/beret/sec,/obj/item/clothing/head/collectable/kitty,/obj/item/clothing/head/collectable/kitty,/obj/item/clothing/head/collectable/kitty,/obj/item/clothing/head/collectable/rabbitears,/obj/item/clothing/head/collectable/rabbitears,/obj/item/clothing/head/collectable/rabbitears,/obj/item/clothing/head/collectable/petehat,/obj/item/clothing/head/collectable/pirate,/obj/item/clothing/head/collectable/wizard,/obj/item/clothing/head/collectable/xenom,/obj/item/clothing/head/cowboy_hat,/obj/item/clothing/head/pin/flower/violet,/obj/item/clothing/head/pin/flower/blue,/obj/item/clothing/head/pin/flower/orange,/obj/item/clothing/head/pin/flower/pink,/obj/item/clothing/head/justice,/obj/item/clothing/head/justice/blue,/obj/item/clothing/head/justice/green,/obj/item/clothing/head/justice/pink,/obj/item/clothing/head/justice/yellow,/obj/item/clothing/head/philosopher_wig,/obj/item/clothing/head/plaguedoctorhat,/obj/item/clothing/head/xenos,/turf/simulated/shuttle/floor/black,/area/shuttle/merchant) "vny" = (/obj/machinery/optable,/turf/simulated/shuttle/floor/white,/area/shuttle/skipjack) "voc" = (/obj/effect/floor_decal/carpet,/turf/unsimulated/floor{icon_state = "carpet"},/area/centcom/living) @@ -2034,6 +2070,7 @@ "vvF" = (/obj/structure/sink{dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/light/small,/turf/simulated/shuttle/floor/white,/area/shuttle/merchant) "vvJ" = (/obj/machinery/door/window/westleft{name = "Storefront"; req_access = list(160)},/turf/simulated/shuttle/floor/black,/area/shuttle/merchant) "vwm" = (/turf/simulated/floor/holofloor/desert,/area/holodeck/source_desert) +"vwu" = (/obj/effect/floor_decal/sign/small_5{icon = 'icons/turf/flooring/decals.dmi'},/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "vxa" = (/obj/machinery/door/airlock/centcom{name = "Courthouse"},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/command) "vxz" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) "vxG" = (/obj/structure/table/rack,/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/gun/launcher/grenade,/obj/item/weapon/gun/launcher/grenade,/obj/structure/window/reinforced,/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/specops) @@ -2103,6 +2140,7 @@ "wkT" = (/obj/machinery/vending/snack{name = "hacked Getmore Chocolate Corp"; prices = list()},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_station) "wly" = (/obj/machinery/sleeper{dir = 8},/turf/simulated/shuttle/floor/white,/area/shuttle/escape/centcom) "wlL" = (/obj/effect/floor_decal/industrial/warning/cee{dir = 4},/turf/unsimulated/floor{dir = 5; icon_state = "vault"},/area/centcom/terminal) +"wmu" = (/obj/effect/floor_decal/sign/small_g{icon = 'icons/turf/flooring/decals.dmi'},/turf/simulated/floor/holofloor/wood,/area/holodeck/source_chess) "wmP" = (/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/holofloor/desert,/area/holodeck/source_picnicarea) "wnz" = (/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet,/obj/effect/floor_decal/carpet{dir = 6},/obj/structure/holostool,/turf/simulated/floor/holofloor/carpet,/area/holodeck/source_theatre) "woi" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor/skipjack,/area/shuttle/syndicate_elite/mothership) @@ -2391,35 +2429,35 @@ vFivFiivDjYIjYIivDivDivDivDnPfnPfnPfnPfnPfnPfivDivDivDivDjYIjYIivDvFivFivFivFivF vFivFiivDjYIjYIivDjJflMTpVzpVzpVzpVKpVKpVzpVzpVzkLNlMAivDjYIjYIivDvFivFivFivFivFivFivFivFivFivFivFivFivFiusZklPuUTlwjrbLgPRjSakTGvaRdZTlxcgXcuUsuUsuUsuUsuUsuUsuUsuUsefXlxcqUIqUIlFlpNcpNcpNclFlvFivFivFivFivFivFispcthEfnwqHaqHapMythEspcoeToeToeTkNEnKEnKEnKEnKEnKEkNEvFivFiyahwvjhKVtNctNctNctNctNcppLwvjyahvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihOOxsWpmFpmFpmFpmFxCVhKMhNbkMCuXjhNbqATkMChNbhKMxCVpmFpmFpmFpmFnVyhOOvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFi vFivFiivDjYIjYIivDjJflMTpVzpVKpVKlESlESpVKpVKpVzkLNlMAivDjYIjYIivDvFivFivFivFivFivFivFivFivFivFivFivFivFiusZusZusZusZusZusZusZlxcbttlxclxcgXcuUsuUsrEmfuDunxlxebfDuUscFzlxcqUIqUIlFlpNcpNcpNclFllFlvFivFivFivFivFispcthEfnwqHaqHapMythEvxaoeToeToeTrXanKEnKEnKEnKEkETkNEvFivFiyahwvjhKVtNctNciOeiOeiOebYQwvjyahvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihOOdbipmFpmFpmFpmFhOOhKMhNbkMCuXjhNbqATkMChNbhKMhOOuIepmFpmFpmFqOChOOvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFi vFivFiivDjYIjYIivDjJflMTpVzpVKpVKlESlESpVKpVKpVzkLNlMAivDjYIjYIivDvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFiusZoZRuhijoqusZusZuUsuUsuUsuUsuUsuUsuUsuUsivBlxcqUIqUIoUhpNcpNcpNcgMKlFlvFivFivFivFivFispcthEfnwqHaqHapMythEspcoeToeToeTkNEnKEaBTnKEnKEnKEkNEvFivFiyahwvjhKVpHctNctNctNcttrhKVwvjyahvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFikiAhOOhOOhOOhOOhOOhOOhKMhNbkMCuXjhNbqATkMChNbhKMhOOhOOhOOhOOhOOhOOkiAvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFi -vFivFiivDjYIjYIivDjJflMTpVzpVzpVzpVKpVKpVzpVzpVzkLNlMAivDjYIjYIivDvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFiusZlgSuhijoqggVusZlxccqrusZuUscXrcEhhlgrGgusZusZqUIqUIoUhpNcpNcpNchhnlFlvFivFivFivFivFispcthEfnwqHaejtpMythEnAPoeToeToeTygalzNuForJNnKEnKEkNEvFivFiyahwvjhKVfAwtNctNctNcfAwhKVwvjyahvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFibewoJCoJCoJCoJCoJChOOhKMhNbkMCuXjhNbqATkMChNbhKMhOOlSXlSXlSXlSXlSXbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihivFi -vFivFiivDjYIjYIivDjJflMTpVzpVzpVzpVKpVKpVzpVzpVzkLNlMAivDjYIjYIivDvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFiusZuhiuhijoqazFotAgwZvaRvkAuUsuUsuUsuUsvRhxAKlxcqUIqUIoUhpNcpNcpNcgMKlFlvFivFivFivFivFispcthErCLlPJlPJjxrthEnAPoeToeToeTygalzNuoSnKEnKEnKEkNEvFivFiyahwvjhKVhKVpkBpkBpkBhKVhKVwvjyahvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFibewoJCoJCoJCdFBoJCeGltfphNbhNbhNbhNbhNbhNbhNbkJSdHClSXpABlSXlSXlSXbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFiihivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFiihivFi -vFiivDivDsUzivDivDivDivDivDafqafqafqafqafqafqivDivDivDivDivDkIhivDivDvFivFivFivFivFivFivFivFivFivFivFivFivFiusZusZusZusZusZusZeUyuhijoqwLcqQNbWtrgGgUEwerhZHfWzghDnAngCYlxcqUIqUIoUhpNcpNcpNclFllFlvFivFivFivFivFispcthEthEthEthEthEthEspcoeToeToeTkNEnKEnKEnKEnKEnKEkNEvFivFiyahwvjwvjnfneaceaceacgDOwvjwvjyahvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFibewoJCoJCoJCoJCoJChOOhKMhKMhKMhKMhNbhKMhKMhKMhKMhOOlSXlSXlSXlSXlSXbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFiihivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFiihivFi -vFiivDiDJuctuctuctivDrALgHCgHCgHCgHCgHCgHCgHCgHCrALivDyiHyiHyiHvVIivDvFivFivFivFivFivFivFivFivFivFivFivFivFiusZxhwckuckuckubJilgSuhijoqazFnRZgwZvaRnySkTGnySkTGnySkTGnySusZoUhoUhlFlpNcpNcpNclFllFllFllFllFllFllFllFlspcspcspcnAPnAPnAPspcbsFnAPbsFspcspcspcspcspcspcspcspcspcspcxORxORxORxORxORxORxORxORxORxORxORxORxORspcvFivFivFivFivFivFivFivFivFiiJShOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhKMhNbhKMhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOiJSvFivFivFivFivFivFivFivFivFivFiihivFivFivFivFivFivFivFivFivFivFihrxhrxhrxhqzhrxhrxhrxvFivFivFivFivFivFivFivFivFivFiihivFi -vFiivDiDJuctuctvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCePRlhIyiHyiHovnivDvFivFivFivFivFivFivFivFivFivFivFivFivFiusZtvvckuswqckuttqlgSuhijoqvaRrgGvaRrgGvaRrgGvaRrgGvaRrgGvaRxJZpNcpNcpNcpNcpNcpNclFlpNcpNcpNcpNcpNcpNcpNcspcspcspcoeToeToeToeToeToeToeToeToeToeToeTspcspcspcoeToeTeVHobCdjadjaoTYoTYoTYdjadjadjadjadjadjatnBspcvFivFivFivFivFivFivFivFivFibewmgipmFmgiuKzhiWfWKpcdsqkuEhsqksqksqkhOOuEhiHcuEhhOOpmFlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFbewvFivFivFivFivFivFivFivFivFivFiihivFivFivFivFivFivFivFivFihrxhqzhrxhrxtrWpKoaFEhrxhrxhqzhrxvFivFivFivFivFivFivFivFiihivFi -vFiivDiDJuctmOPvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCePRlhIbSpyiHdDzivDvFivFivFivFivFivFivFivFivFivFivFivFivFiusZtIwckuseQckuttqlgSuhijoqrgGvaRrgGvaRrgGvaRrgGvaRrgGvaRrgGlxcpNcpNcpNcpNcpNcpNclFlpNcpNcpNcpNcpNcpNcpNcspcspcnwtoeToeToeToeToeToeToeToeToeToeToeTnwtspcspcoeToeTnAPxyKnHqtXHtXHxSTtXHijGlLZdjaxIybAndjadjaspcvFivFivFivFivFivFivFivFivFibewpmFpmFpmFuEhlVtlVtlVtlVtuEhlVtlVtlVthOOhKMhNbhKMhOOlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFbewvFivFivFivFivFivFivFivFivFivFiihivFivFivFivFivFivFihrxhrxhrxlMboVMhrxhNitNftNfhrxhUUbdbhrxhrxhrxvFivFivFivFivFivFiihivFi -vFiivDgmIuctuctvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCePRlhIyiHyiHodOivDvFivFivFivFivFivFivFivFivFivFivFivFivFiusZsjZckuckuaQbttqlgSuhijoqvaRrgGvaRrgGvaRazFnBmiXObWtrgGvaRxJZpNcpNcpNcpNcpNcpNclFlpNcpNcpNcpNcpNcpNcpNcnAPoeToeToeToeTwNFjSQqCwnubsAojSQlJzoeToeToeToeTspcoeToeThRfvRudqgcsGcsGcsGcsGcsGcsGmKscsGaedbYOoTYspcvFivFivFivFivFivFivFivFivFibewmgipmFpmFlZDlVtlVtlVtlVtfRwlVtlVtlVthOOhKMhNbhKMhOOlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFbewvFivFivFivFivFivFivFivFivFivFiihivFivFivFivFivFihrxhrxcJrxWRvJXvJXhrxrzntNftNfhrxcESpogwXNoCshrxhrxvFivFivFivFivFiihivFi -vFiivDvXNuctmOPvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCePRlhIbSpyiHgaaivDlFllFllFllFllFllFllFlvFivFilFllFlbFylFlusZaxRckuttqttqbJilgSuhijoqggVocyaZLbodrgGwLchGQlatgwZvaRrgGusZoUhoUhlFlpNcpNcpNclFlpNcpNcpNcpNcpNcpNcpNcnAPoeToeToeTfDYjSQjSQtKVjSQtKVjSQjSQjwYoeToeToeTspcoeToeTnAPobCdagpxppxpcAwpxpuvqgwsdjapnbdsOdjadjaspcvFivFivFivFivFivFivFivFivFibewpmFpmFpmFuEhhmclVtlVthmcuEhlVtlVtlVthOOhKMhNbhKMhOOlbFlbFlbFlbFlbFlHwlbFlbFlbFlbFlbFlbFbewvFivFivFivFivFivFivFivFivFivFiihivFivFivFivFihrxhrxmDFnYVeVfvJXvJXhrxjAgtNftNfhrxanIanIanIanIqelhrxhrxvFivFivFivFiihivFi -vFiivDiKfuctuctvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCePRlhIyiHyiHyiHivDpNcpNcpNcpNcpNcpNclFllFllFllFlhfUhfUhfUusZusZuhilgSlgSlgSuhiuhiuhiuIcuIcuIcuIcusZusZusZusZusZtVqusZusZqUIqUIlFlpNcpNcpNclFlpNcpNcpNcpNcpNcpNcpNcnAPoeToeTwNFjSQjSQjSQcyasFkcyajSQjSQjSQlJzoeToeTspcoeToJAspcxyKdjadjaoTYoTYoTYdjadjadjadjadjadjatnBspcvFivFivFivFivFivFivFivFivFibewmgipmFmgiuKzemGlVtlVtbgluEhsqksqksqkhOOhKMhNbhKMhOOpmFlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFbewvFivFivFivFivFivFivFivFivFivFiihivFivFivFivFihrxjIvdBpbumeVfvJXvJXbmzanIanIanIbQGanIanIanIlGaanIkIdhrxvFivFivFivFiihivFi -vFiivDnCeuctdNmuctosVgHCgHCgHCyiecJigHCgHCgHCgHCgHCePRyiHyiHyiHyiHthOpNcpNcpNcpNcpNcpNclFldWioUhsKapNcpNcpNcpNcswUuhiuhiuhiuhiuhiuhiuhiqRvqRvqRvqRvusZpAFpAFpAFpAFpAFkerusZqUIqUIlFlpNcpNcpNclFllFllFllFllFllFlaxmlFlspcoeToeTjSQjSQjSQcyaxYAxYAxYAcyajSQjSQjSQoeToeTspcoeToeTspcspcspcspcspcspcspcspcspcspcspcspcspcspcspcspcspcspcspcspcspcnAPeVHiJSkiAhOOhOOuEhhOOhOOfRwfRwhOOhOOhOOuEhhOOhOOhKMhNbhKMhOOhOOuEhhOOhOOhOOpAYpAYhOOhOOuEhhOOkiAiJSvFivFivFivFivFivFivFivFivFivFiihivFivFivFihrxhrxvJXaSLaSLvJXvJXvJXhrxtyCanIwBIhrxeRdanIcKDanIanIeLhhrxhrxvFivFivFiihivFi -vFiivDuctuctgPTeWleRadahdahdahctjdZPqqrgHCgHCgHCgHCePRyiHyiHyiHyiHivDpNcpNcpNcpNcpNcpNceUzdWigjasKapNcpNcpNcpNclxcuhiuhiuhiuhiuhickbuhiqRvqRvqRvqRvusZixdusZnmVusZpAFpAFusZqUIqUIlFlpNcpNcpNcpNcoUhpNcpNclFlpNcpNcpNciPBoeToeTkBPsbkcyaxYAvscxJAcVfafDcyabuEsEIoeToeTiPBoeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeTnAPoeToeTnAPhOOhNbhNbuEhhKMhKMhKMhKMhKMhKMhKMhKMiHPuEhhKMhKMhNbhKMhKMuEhiHPhKMhKMhKMvejhKMhKMhKMhKMkpJuEhvFivFivFivFivFivFivFivFivFivFivFiihivFivFivFihqzmhZvJXvJXvJXvJXvJXcdWhrxtyCanIlMxhrxgUzanIanIlDVanIanIvDEhqzvFivFivFiihivFi -vFiivDvQFuctuctngcosVgHCgHCgHCtZucJigHCgHCgHCgHCgHCePRyiHyiHyiHyiHthOpNcpNcpNcpNcpNcpNclFldWioUhsKapNcpNcpNcpOIswUuhiwGYmObrwuwGYgwkpbcklyqRvqRvqRvusZhsuusZwSvusZbFousZusZqUIqUIoUhpNcpNcpNcpNcpNcpNcpNckMFpNcpNcpNcnAPoeToeThmTjSQcyacCfspctpkspcjFYcyajSQpHqoeToeTnAPoeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeTjNdoeToeTjNdmvIhNbhNbmvIhNbhNbhNbhNbhNbhNbhNbhNbhNbiHchNbhNbhNbhNbhNbiHchNbhNbhNbhNbhNbhNbhNbhNbhNbkpJuEhvFivFivFivFivFivFivFivFivFivFivFiihivFivFihrxhrxhrxszPcQGvJXqZRcQGhrxhrxhrxbQGhrxhrxhrxbGqaupanIpUQnrWhrxhrxhrxvFivFiihivFi -vFiivDdWKuctuctvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCePRlhIyiHyiHgaaivDpNcpNcpNcpNcpNcpNclFllFllFllFlpNcpNcpNclFlusZusZlxclxclxclxcmdcusZlxclxclxclxcusZusZusZusZusZusZusZqUIqUIqUIoUhpNcpNcpNcpNcoUhpNcpNclFlpNcpNcpNciPBoeToeTxjQsbkcyarbrqrDuLxoeFxYAcyabuEnLYoeToeTiPBoeToeToeToeToeToeTsyYoeToeToeToeToeToeToeToeToeToeToeToeToeToeTspcoeToeTspchOOhNbhNbuEhhKMhKMhKMhKMhKMhKMhKMhKMiHPuEhhKMhKMhNbhKMhKMuEhiHPhKMhKMhKMiVshKMhKMhKMhKMkpJuEhvFivFivFivFivFivFivFivFivFivFivFiihivFivFihrxanIhrxhrxhrxbmzhrxhrxhrxcJVvpusbxqwoshChrxhrxhrxbQGhrxhrxhrxnuphrxvFivFiihivFi -vFiivDpOMuctmOPvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCePRlhIbSpyiHodOivDxJrxJrxJrxJrlFllFllFlqUIqUIoUhpNcpNcpNclFlqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIoUhpNcpNcpNclFllFloUhoUhlFloUhdtqoUhspcoeToeTjSQjSQjSQcyaxYAcyaxYAcyajSQjSQjSQoeToeTspcspcspcspcspcspcspcspceBXeBXspcspcspcspcspcspcspcspcspcspcspcspcspcspcnAPeVHiJSkiAhOOhOOuEhhOOhOOuKzuKzhOOhOOhOOuKzhOOhOOhKMhNbhKMhOOhOOuEhhOOhOOhOOevTevThOOhOOuEhhOOkiAiJSvFivFivFivFivFivFivFivFivFivFiihivFivFihqzcAranIiIimdIanIlWOmLDhrxalZsbxanIjxooJWhrxrOhsbxanIsbxfXSlYmnuphqzvFivFiihivFi -vFiivDcPQuctuctvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCePRlhIyiHyiHkYlivDqUIqUIqUIqUIqUIqUIqUIqUIlFlwSEpNcpNcpNcthqlFlqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIlFllFlpNcpNcpNcoUhriWjEtvutvutvutvutwcpnAPoeToeThFpjSQjSQjSQcyacyacyajSQjSQjSQirMoeToeTspctnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBspcvFivFivFibewdJmdJmdJmdJmdJmdJmdJmhOOltAbqPuKzcUQhOOhKMhNbhKMhOOofaofaofaofaofaofaofaofaofaofaofapmFbewvFivFivFivFivFivFivFivFivFivFiihivFivFihqzuMAanIjTsanIanIanIanIbQGsbxanIhrxanIsbxbQGanIanIanIanIlDanupnuphqzvFivFiihivFi -vFiivDtqyuctmOPvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCivDdQsdQsdQsdQsivDoUhoUhoUhoUhlFloUhoUhoUhlFlhfUpNcpNcpNchfUlFllFllFllFllFloUhoUhoUhoUhoUhoUhoUhoUhoUhoUhoUhoUhlFloUhoUhoUhlFlhfUpNcpNcpNcoUhwDEdUJvutvutvutvuthsZnAPoeToeToeTeCWjSQjSQwkFjSQwkFjSQjSQpzDoeToeToeTspctnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBspcvFivFivFibewdJmdJmdJmdJmdJmdJmdJmhOOncynbfuKzwxmhOOhKMhNbhKMhOOofaofaofaofaofaofamfIofaofaofaofaofabewvFivFivFivFivFivFivFivFivFivFiihivFivFihqzkOPanIsbxsbxanIibcqqphrxfSYsbxanIsbxvrDhrxtpfsbxanIsbxhrxgLLkvGhqzvFivFiihivFi -vFiivDglOuctuctvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCivDpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNchfUpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcsEUpNcpNcpNcpNclFlmBOvutvutvutvutvutbWpnAPoeToeToeToeThFpjSQhBkaUJiiHjSQirMoeToeToeToeTspctnBtnBtnBtnBtnBbcybcybcybcybcygOagOabcybcybcybcybcytnBtnBtnBtnBtnBspcvFivFivFibewdJmdJmdJmdJmdJmdJmdJmhOOhNbhNbhNbhNbhOOhKMhNbhKMhOOofaofaofaofaofaofaofaofaofaofaofaofabewvFivFivFivFivFivFivFivFivFivFiihivFivFihrxanIhrxhrxhrxbQGhrxhrxhrxxBhegwsbxfDUaWWhrxhrxhrxbQGhrxhrxhrxsfchrxvFivFiihivFi -vFiivDkqwuctuctuctivDrALgHCgHCgHCgHCgHCgHCgHCgHCrALivDpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNchfUpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNclFlpNcpNcpNcpNclFlvutvutvutvutvutvuttkjspcspcnwtoeToeToeToeToeToeToeToeToeToeToeTnwtspcspctnBtnBtnBtnBbcyagQfinsUqrpnbcyhkzscGbcycIIadobcybcybcybcytnBtnBtnBspcvFivFivFibewdJmdJmdJmdJmdJmcuhdJmvcNxSXhNbhNbhNbkVShKMhNbhKMhOOofaofaofaofaofaofaofaofaofaofaofaofabewvFivFivFivFivFivFivFivFivFivFiihivFivFihrxhrxhrxnhSvzHanIaLegFVhrxhrxhrxbQGhrxhrxhrxfJpaPqanIpwUrLahrxhrxhrxvFivFiihivFi -vFiivDivDsUzivDivDivDivDivDafqafqafqafqafqafqivDivDivDpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNchfUpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcsEUpNcpNcpNcpNclFlqAimkhdTrwjlqrlvutaWVspcspcspcoeToeToeToeToeToeToeToeToeToeToeTspcspcspctnBtnBtnBbcybcyfKqfKqfKqfKqbcyjFejFebcyfKqfKqrUbxZfbcybcybcytnBtnBspcvFivFivFibewdJmdJmdJmdJmdJmdJmdJmvcNhNbhNbhNbhNbkVShKMhNbhKMhOOofaofaofaofaofaofaofaofaofaofaofapmFbewvFivFivFivFivFivFivFivFivFivFiihivFivFivFihqzswsanIanIanIanIanIbVchrxtmhwOrghqhrxidfanIanIanIanIanIanIhqzvFivFivFiihivFi -vFivFiivDjYIivDdcwlMTjYIlzvlzvwwvwwvlzvlzvlzvgyJexlivDlFloUhoUhoUhnBuoUhoUhoUhlFllFloUhoUhoUhlFlhfUpNcpNcpNchfUlFloUhoUhoUhlFllFloUhoUhoUhmiMoUhoUhoUhlFllFloUhoUhlFloUhoUhoUhlFlhfUpNcpNcpNclFllFllFllFllFllFllFllFlspcspcspcspcspcspcspcbsFnAPbsFspcspcspcspcspcspcspctnBtnBbcybcybcyfDNbGMsmQvKcbcyihHfKqdqAfKqfKqfKqfKqtelamVbcytnBtnBspcvFivFivFibewdJmdJmdJmdJmdJmdJmdJmhOOuKzuKzwwbuKzhOOhKMhNbhKMhOOuKzuKzuKzuKzuKzuKzuKzuKzuKzuKzuKzuKzuKzvFivFivFivFivFivFivFivFivFivFiihivFivFivFihrxhrxnupeGJnupddianIrXMhrxkstfBuhYuhrxaPqanImkIjlKvRKsxdhrxhrxvFivFivFiihivFi -vFivFiivDjYIivDdcwlMTjYIlzvlzvwwvwwvlzvlzvlzvgyJexlivDioepNcpNcpNcpNcpNcpNcpNcmfflFlqUIqUIqUIlFllFlnBunBunBulFllFlqUIqUIqUIlFlpNcpNcpNcpNcpNcpNcpNcpNcmuLlFlqUIqUIqUIqUIqUIqUIlFllFlpNcpNcpNclFllFlvFivFivFivFivFivFivFivFillzbLgdfOfjekobaWEaWEaWEllzbEymlAoyAmlAbEyspctnBtnBsJchftuLRfKqlLolLolLobcyfKqfKqbcypJmljkcrhqezpElmhJbcytnBtnBspcvFivFivFibewdJmdJmdJmdJmdJmdJmdJmhOOkOtvpQvpQulUhOOhKMhNbhKMuamhNbhNbhNbhNbhNbhNbhNbhNbhNbhNbhNbhNbuKzvFivFivFivFivFivFivFivFivFivFiihivFivFivFivFihrxnuphDpxSnvUZanIanIbQGoBManIeYgbQGanIanIhbGqblolgsxdhrxvFivFivFivFiihivFi -vFivFiivDjYIivDdcwlMTjYIwwvwwvkmhkmhwwvwwvlzvgyJexlivDpNcpNckFKpNcpNcpNckFKpNcpNclFlqUIqUIqUIqUIlFlpNcpNcpNclFlqUIqUIqUIqUIlFljwJxnexnepNcpNcpNcpNcpNcmuLlFlqUIqUIqUIqUIqUIqUIqUIoUhpNcpNcpNclFlvFivFivFivFivFivFivFivFivFillznZvvocvpZllzaWEaWEaWElLQbEymlAeXsmlAbEyspctnBtnBltohftfKqfKqfKqfKqfKqdqAfKqfKqbcybcybcybcybcybcybcybcytnBtnBspcvFivFivFibewdJmdJmdJmdJmdJmdJmdJmhOOkOtnvlvpQulUhOOuEhiHcuEhhOOeujkMCeujkMCeujkMCeujkMCeujkMCeujkMCuKzvFivFivFivFivFivFivFivFivFivFiihivFivFivFivFihrxhrxmrPnupnupanIxzQhrxkstanIhYuhrxsbxanIxYtwSIggKhrxhrxvFivFivFivFiihivFi -vFivFiivDjYIivDdcwlMTjYIwwvwwvkmhkmhwwvwwvlzvgyJexlivDpNcpNclFldGulFldGulFlpNcpNcoUhqUIqUIqUIqUIoUhpNcpNcpNcoUhqUIqUIqUIqUIoUhpNcpNcpNcpNcpNcpNcpNcpNcxjHlFloUhoUhlFllFllFllFllFllFllFllFllFllFlvFivFivFivFivFivFivFivFivFillzllzllzllzllzaWEaWEaWElLQbEybEybEybEybEyspctnBtnBbcybcyfKqfKqfKqfXzfKqbcyfKqfKqfKqllGhNstnBtnBtnBtnBtnBtnBtnBspcvFivFivFiiJShOOhOOhOOhOOhOOhOOhOOhOOhOOhOOuKzhOOhOOhKMhNbhKMhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOiJSvFivFivFivFivFivFivFivFivFivFiihivFivFivFivFivFihrxhrxdYzlIUanIjfPhrxhrxbQGhrxhrxsbxanIsxdsxdhrxhrxvFivFivFivFivFiihivFi -vFivFiivDjYIivDdcwlMTjYIlzvlzvwwvwwvlzvlzvlzvgyJexlivDpNcpNclFltMalFltMalFlpNcpNcoUhqUIqUIqUIoUhoUhpNcpNcpNcoUhoUhqUIqUIqUIoUhpNcpNciMvpNcpNcpNcpNcpNclFllFlvCtvCtvCtvCtlFlvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFillzbLgdfOfjekobaWEaWEaWEbEybEybEybEymSBmlAspctnBtnBtnBbcybcybcybcybcybcybcyihHfKqrtifKqhNstnBtnBtnBtnBtnBtnBtnBspcvFivFivFivFivFivFivFibeweKreKreKreKreKrhOOiHPhKMhKMhKMhNbhKMhKMhKMiHPhOOvWSvWSvWSvWSvWSbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFiihivFivFivFivFivFivFihrxhrxhrxlOZmqHhrxanIanIanIhrxdFIlJahrxhrxhrxvFivFivFivFivFivFiihivFi -vFivFiivDjYIivDivDivDivDnPfnPfnPfnPfnPfnPfivDivDivDlFlvutvutlFluEHlFluEHlFlvutvutoUhqUIqUIqUIoUhpNcpNcpNcpNcpNcoUhqUIqUIqUIoUhpNcpNcpNcpNcpNcpNcpNcpNclFlvCtvCtvCtvCtvCtlFlvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFillzbzQvocvpZllzaWEaWEaWEbEybEybEybEybEybEyspctnBtnBbcybcynmHbBnhQhnmHapwbcyfKqfKqfKqpmnhNstnBtnBtnBtnBtnBtnBtnBspcvFivFivFivFivFivFivFibeweKreKreKrvNteKrbPFlTihNbhNbhNbhNbhNbhNbhNbpMJslDvWSlXuvWSvWSvWSbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFiihivFivFivFivFivFivFivFivFihrxhqzhrxhrxoJtvXYwshhrxhrxhqzhrxvFivFivFivFivFivFivFivFiihivFi -vFivFiivDjYIjYIjYIjYIuHgjYIjYIwJBwJBwJBwJBwJBjYIivDlFlvutvutlFllFllFllFllFlvutvutoUhqUIqUIqUIlFlpNcpNcpNcpNcpNclFlqUIqUIqUIoUhshSpNcpNcpNcpNcpNcpNcpNclFlvCtvCtvCtvCtvCtlFlvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFillzllzllzllzllzaWEaWEaWElLQbEybEybEybEybEyspctnBtnBsJchftfKqfKqfKqfKqfKqdqAfKqfKqbcybcybcybcybcybcybcybcytnBtnBspcvFivFivFivFivFivFivFibeweKreKreKreKreKrhOOhKMhNbuIbuIbuIbuIbuIbhNbhKMhOOvWSvWSvWSvWSvWSbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFiihivFivFivFivFivFivFivFivFivFivFihrxhrxhrxhqzhrxhrxhrxvFivFivFivFivFivFivFivFivFivFiihivFi -vFivFiivDivDivDivDivDivDivDivDivDivDivDivDivDivDivDlFlvutvutvutvutvutvutvutvutvutlFlqUIqUIqUIoUhpNcpNcpNcpNcpNcoUhqUIqUIqUIlFlpNcpNcpNcpNcpNcpNcpNcpNclFllFllFllFllFllFllFlvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFillzbLgdfOfjekobaWEaWEaWElLQbEymlAeXsmlAbEyspctnBtnBltohftgnJfKqfKqfKqfKqbcyfKqfKqfKqfKqfKqbcyfKqbPmkYKbcytnBtnBspcvFivFivFivFivFivFivFihOOhOOhOOhOOhOOhOOhOOhKMhNbsRAsRAsRAsRAsRAhNbhKMhOOhOOhOOhOOhOOhOOhOOvFivFivFivFivFivFivFivFivFivFivFivFivFivFiihivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFiihivFi -vFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFilFllFlvutvutvutvutvutvutvutlFllFlqUIqUIqUIoUhoUhpNcpNcpNcoUhoUhqUIqUIqUIlFllFlpNcpNcpNcpNcpNcpNcpNclFlvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFillzbzQvocvpZllzaWEeOemcBllzbEymlAhjUmlAbEyspctnBtnBbcybcybcysaXmiohAGoqbbcyihHhAGhAGhAGfKqdqAfKqfKqfKqbcytnBtnBspcvFivFivFivFivFivFivFibewxmxxmxxmxxmxxmxhOOhKMhNbsRAsRAsRAsRAsRAhNbhKMhOOifXifXifXifXifXbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFiihivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFiihivFi -vFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFilFllFllFllFllFllFllFllFllFlqUIqUIqUIqUIqUIoUhpNcpNcpNcoUhqUIqUIqUIqUIqUIlFllFllFllFlbFylFllFllFllFlvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFillzllzllzllzllzllzllzllzllzllzllzllzllzllzspctnBtnBtnBbcybcyfKqfKqfKqfKqbcyfKqhAGhAGhAGfKqbcyrxebcybcybcytnBtnBspcvFivFivFivFivFivFivFibewxmxxmxxmxsqJxmxouFqRphNbmJqmJqmJqmJqmJqhNbnCNuIKifXnbWifXifXifXbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihiihivFi +vFivFiivDjYIjYIivDjJflMTpVzpVzpVzpVKpVKpVzpVzpVzkLNlMAivDjYIjYIivDvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFiusZlgSuhijoqggVusZlxccqrusZuUscXrcEhhlgrGgusZusZqUIqUIoUhpNcpNcpNchhnlFlvFivFivFivFivFispcthEfnwqHaejtpMythEnAPoeToeToeTygalzNuForJNnKEnKEkNEvFivFiyahwvjhKVfAwtNctNctNcfAwhKVwvjyahvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFibewoJCoJCoJCoJCoJChOOhKMhNbkMCuXjhNbqATkMChNbhKMhOOlSXlSXlSXlSXlSXbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFi +vFivFiivDjYIjYIivDjJflMTpVzpVzpVzpVKpVKpVzpVzpVzkLNlMAivDjYIjYIivDvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFiusZuhiuhijoqazFotAgwZvaRvkAuUsuUsuUsuUsvRhxAKlxcqUIqUIoUhpNcpNcpNcgMKlFlvFivFivFivFivFispcthErCLlPJlPJjxrthEnAPoeToeToeTygalzNuoSnKEnKEnKEkNEvFivFiyahwvjhKVhKVpkBpkBpkBhKVhKVwvjyahvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFibewoJCoJCoJCdFBoJCeGltfphNbhNbhNbhNbhNbhNbhNbkJSdHClSXpABlSXlSXlSXbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFi +vFiivDivDsUzivDivDivDivDivDafqafqafqafqafqafqivDivDivDivDivDkIhivDivDvFivFivFivFivFivFivFivFivFivFivFivFivFiusZusZusZusZusZusZeUyuhijoqwLcqQNbWtrgGgUEwerhZHfWzghDnAngCYlxcqUIqUIoUhpNcpNcpNclFllFlvFivFivFivFivFispcthEthEthEthEthEthEspcoeToeToeTkNEnKEnKEnKEnKEnKEkNEvFivFiyahwvjwvjnfneaceaceacgDOwvjwvjyahvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFibewoJCoJCoJCoJCoJChOOhKMhKMhKMhKMhNbhKMhKMhKMhKMhOOlSXlSXlSXlSXlSXbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFi +vFiivDiDJuctuctuctivDrALgHCgHCgHCgHCgHCgHCgHCgHCrALivDyiHyiHyiHvVIivDvFivFivFivFivFivFivFivFivFivFivFivFivFiusZxhwckuckuckubJilgSuhijoqazFnRZgwZvaRnySkTGnySkTGnySkTGnySusZoUhoUhlFlpNcpNcpNclFllFllFllFllFllFllFllFlspcspcspcnAPnAPnAPspcbsFnAPbsFspcspcspcspcspcspcspcspcspcspcxORxORxORxORxORxORxORxORxORxORxORxORxORspcvFivFivFivFivFivFivFivFivFiiJShOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhKMhNbhKMhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOiJSvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihrxhrxhrxhqzhrxhrxhrxvFivFivFivFivFivFivFivFivFivFivFivFi +vFiivDiDJuctuctvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCePRlhIyiHyiHovnivDvFivFivFivFivFivFivFivFivFivFivFivFivFiusZtvvckuswqckuttqlgSuhijoqvaRrgGvaRrgGvaRrgGvaRrgGvaRrgGvaRxJZpNcpNcpNcpNcpNcpNclFlpNcpNcpNcpNcpNcpNcpNcspcspcspcoeToeToeToeToeToeToeToeToeToeToeTspcspcspcoeToeTeVHobCdjadjaoTYoTYoTYdjadjadjadjadjadjatnBspcvFivFivFivFivFivFivFivFivFibewmgipmFmgiuKzhiWfWKpcdsqkuEhsqksqksqkhOOuEhiHcuEhhOOpmFlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihrxhqzhrxhrxtrWpKoaFEhrxhrxhqzhrxvFivFivFivFivFivFivFivFivFivFi +vFiivDiDJuctmOPvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCePRlhIbSpyiHdDzivDvFivFivFivFivFivFivFivFivFivFivFivFivFiusZtIwckuseQckuttqlgSuhijoqrgGvaRrgGvaRrgGvaRrgGvaRrgGvaRrgGlxcpNcpNcpNcpNcpNcpNclFlpNcpNcpNcpNcpNcpNcpNcspcspcnwtoeToeToeToeToeToeToeToeToeToeToeTnwtspcspcoeToeTnAPxyKnHqtXHtXHxSTtXHijGlLZdjaxIybAndjadjaspcvFivFivFivFivFivFivFivFivFibewpmFpmFpmFuEhlVtlVtlVtlVtuEhlVtlVtlVthOOhKMhNbhKMhOOlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihrxhrxhrxlMboVMhrxhNitNftNfhrxhUUbdbhrxhrxhrxvFivFivFivFivFivFivFivFi +vFiivDgmIuctuctvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCePRlhIyiHyiHodOivDvFivFivFivFivFivFivFivFivFivFivFivFivFiusZsjZckuckuaQbttqlgSuhijoqvaRrgGvaRrgGvaRazFnBmiXObWtrgGvaRxJZpNcpNcpNcpNcpNcpNclFlpNcpNcpNcpNcpNcpNcpNcnAPoeToeToeToeTwNFjSQqCwnubsAojSQlJzoeToeToeToeTspcoeToeThRfvRudqgcsGcsGcsGcsGcsGcsGmKscsGaedbYOoTYspcvFivFivFivFivFivFivFivFivFibewmgipmFpmFlZDlVtlVtlVtlVtfRwlVtlVtlVthOOhKMhNbhKMhOOlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihrxhrxcJrxWRvJXvJXhrxrzntNftNfhrxcESpogwXNoCshrxhrxvFivFivFivFivFivFivFi +vFiivDvXNuctmOPvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCePRlhIbSpyiHgaaivDlFllFllFllFllFllFllFlvFivFilFllFlbFylFlusZaxRckuttqttqbJilgSuhijoqggVocyaZLbodrgGwLchGQlatgwZvaRrgGusZoUhoUhlFlpNcpNcpNclFlpNcpNcpNcpNcpNcpNcpNcnAPoeToeToeTfDYjSQjSQtKVjSQtKVjSQjSQjwYoeToeToeTspcoeToeTnAPobCdagpxppxpcAwpxpuvqgwsdjapnbdsOdjadjaspcvFivFivFivFivFivFivFivFivFibewpmFpmFpmFuEhhmclVtlVthmcuEhlVtlVtlVthOOhKMhNbhKMhOOlbFlbFlbFlbFlbFlHwlbFlbFlbFlbFlbFlbFbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihrxhrxmDFnYVeVfvJXvJXhrxjAgtNftNfhrxanIanIanIanIqelhrxhrxvFivFivFivFivFivFi +vFiivDiKfuctuctvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCePRlhIyiHyiHyiHivDpNcpNcpNcpNcpNcpNclFllFllFllFlhfUhfUhfUusZusZuhilgSlgSlgSuhiuhiuhiuIcuIcuIcuIcusZusZusZusZusZtVqusZusZqUIqUIlFlpNcpNcpNclFlpNcpNcpNcpNcpNcpNcpNcnAPoeToeTwNFjSQjSQjSQcyasFkcyajSQjSQjSQlJzoeToeTspcoeToJAspcxyKdjadjaoTYoTYoTYdjadjadjadjadjadjatnBspcvFivFivFivFivFivFivFivFivFibewmgipmFmgiuKzemGlVtlVtbgluEhsqksqksqkhOOhKMhNbhKMhOOpmFlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFlbFbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihrxjIvdBpbumeVfvJXvJXbmzanIanIanIbQGanIanIanIlGaanIkIdhrxvFivFivFivFivFivFi +vFiivDnCeuctdNmuctosVgHCgHCgHCyiecJigHCgHCgHCgHCgHCePRyiHyiHyiHyiHthOpNcpNcpNcpNcpNcpNclFldWioUhsKapNcpNcpNcpNcswUuhiuhiuhiuhiuhiuhiuhiqRvqRvqRvqRvusZpAFpAFpAFpAFpAFkerusZqUIqUIlFlpNcpNcpNclFllFllFllFllFllFlaxmlFlspcoeToeTjSQjSQjSQcyaxYAxYAxYAcyajSQjSQjSQoeToeTspcoeToeTspcspcspcspcspcspcspcspcspcspcspcspcspcspcspcspcspcspcspcspcspcnAPeVHiJSkiAhOOhOOuEhhOOhOOfRwfRwhOOhOOhOOuEhhOOhOOhKMhNbhKMhOOhOOuEhhOOhOOhOOpAYpAYhOOhOOuEhhOOkiAiJSvFivFivFivFivFivFivFivFivFivFivFivFivFivFihrxhrxvJXaSLaSLvJXvJXvJXhrxtyCanIwBIhrxeRdanIcKDanIanIeLhhrxhrxvFivFivFivFivFi +vFiivDuctuctgPTeWleRadahdahdahctjdZPqqrgHCgHCgHCgHCePRyiHyiHyiHyiHivDpNcpNcpNcpNcpNcpNceUzdWigjasKapNcpNcpNcpNclxcuhiuhiuhiuhiuhickbuhiqRvqRvqRvqRvusZixdusZnmVusZpAFpAFusZqUIqUIlFlpNcpNcpNcpNcoUhpNcpNclFlpNcpNcpNciPBoeToeTkBPsbkcyaxYAvscxJAcVfafDcyabuEsEIoeToeTiPBoeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeTnAPoeToeTnAPhOOhNbhNbuEhhKMhKMhKMhKMhKMhKMhKMhKMiHPuEhhKMhKMhNbhKMhKMuEhiHPhKMhKMhKMvejhKMhKMhKMhKMkpJuEhvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihqzmhZvJXvJXvJXvJXvJXcdWhrxtyCanIlMxhrxgUzanIanIlDVanIanIvDEhqzvFivFivFivFivFi +vFiivDvQFuctuctngcosVgHCgHCgHCtZucJigHCgHCgHCgHCgHCePRyiHyiHyiHyiHthOpNcpNcpNcpNcpNcpNclFldWioUhsKapNcpNcpNcpOIswUuhiwGYmObrwuwGYgwkpbcklyqRvqRvqRvusZhsuusZwSvusZbFousZusZqUIqUIoUhpNcpNcpNcpNcpNcpNcpNckMFpNcpNcpNcnAPoeToeThmTjSQcyacCfspctpkspcjFYcyajSQpHqoeToeTnAPoeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeToeTjNdoeToeTjNdmvIhNbhNbmvIhNbhNbhNbhNbhNbhNbhNbhNbhNbiHchNbhNbhNbhNbhNbiHchNbhNbhNbhNbhNbhNbhNbhNbhNbkpJuEhvFivFivFivFivFivFivFivFivFivFivFivFivFivFihrxhrxhrxszPcQGvJXqZRcQGhrxhrxhrxbQGhrxhrxhrxbGqaupanIpUQnrWhrxhrxhrxvFivFivFivFi +vFiivDdWKuctuctvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCePRlhIyiHyiHgaaivDpNcpNcpNcpNcpNcpNclFllFllFllFlpNcpNcpNclFlusZusZlxclxclxclxcmdcusZlxclxclxclxcusZusZusZusZusZusZusZqUIqUIqUIoUhpNcpNcpNcpNcoUhpNcpNclFlpNcpNcpNciPBoeToeTxjQsbkcyarbrqrDuLxoeFxYAcyabuEnLYoeToeTiPBoeToeToeToeToeToeTsyYoeToeToeToeToeToeToeToeToeToeToeToeToeToeTspcoeToeTspchOOhNbhNbuEhhKMhKMhKMhKMhKMhKMhKMhKMiHPuEhhKMhKMhNbhKMhKMuEhiHPhKMhKMhKMiVshKMhKMhKMhKMkpJuEhvFivFivFivFivFivFivFivFivFivFivFivFivFivFihrxanIhrxhrxhrxbmzhrxhrxhrxcJVvpusbxqwoshChrxhrxhrxbQGhrxhrxhrxnuphrxvFivFivFivFi +vFiivDpOMuctmOPvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCePRlhIbSpyiHodOivDxJrxJrxJrxJrlFllFllFlqUIqUIoUhpNcpNcpNclFlqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIoUhpNcpNcpNclFllFloUhoUhlFloUhdtqoUhspcoeToeTjSQjSQjSQcyaxYAcyaxYAcyajSQjSQjSQoeToeTspcspcspcspcspcspcspcspceBXeBXspcspcspcspcspcspcspcspcspcspcspcspcspcspcnAPeVHiJSkiAhOOhOOuEhhOOhOOuKzuKzhOOhOOhOOuKzhOOhOOhKMhNbhKMhOOhOOuEhhOOhOOhOOevTevThOOhOOuEhhOOkiAiJSvFivFivFivFivFivFivFivFivFivFivFivFivFihqzcAranIiIimdIanIlWOmLDhrxalZsbxanIjxooJWhrxrOhsbxanIsbxfXSlYmnuphqzvFivFivFivFi +vFiivDcPQuctuctvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCePRlhIyiHyiHkYlivDqUIqUIqUIqUIqUIqUIqUIqUIlFlwSEpNcpNcpNcthqlFlqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIqUIlFllFlpNcpNcpNcoUhriWjEtvutvutvutvutwcpnAPoeToeThFpjSQjSQjSQcyacyacyajSQjSQjSQirMoeToeTspctnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBspcvFivFivFibewdJmdJmdJmdJmdJmdJmdJmhOOltAbqPuKzcUQhOOhKMhNbhKMhOOofaofaofaofaofaofaofaofaofaofaofapmFbewvFivFivFivFivFivFivFivFivFivFivFivFivFihqzuMAanIjTsanIanIanIanIbQGsbxanIhrxanIsbxbQGanIanIanIanIlDanupnuphqzvFivFivFivFi +vFiivDtqyuctmOPvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCivDdQsdQsdQsdQsivDoUhoUhoUhoUhlFloUhoUhoUhlFlhfUpNcpNcpNchfUlFllFllFllFllFloUhoUhoUhoUhoUhoUhoUhoUhoUhoUhoUhoUhlFloUhoUhoUhlFlhfUpNcpNcpNcoUhwDEdUJvutvutvutvuthsZnAPoeToeToeTeCWjSQjSQwkFjSQwkFjSQjSQpzDoeToeToeTspctnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBspcvFivFivFibewdJmdJmdJmdJmdJmdJmdJmhOOncynbfuKzwxmhOOhKMhNbhKMhOOofaofaofaofaofaofamfIofaofaofaofaofabewvFivFivFivFivFivFivFivFivFivFivFivFivFihqzkOPanIsbxsbxanIibcqqphrxfSYsbxanIsbxvrDhrxtpfsbxanIsbxhrxgLLkvGhqzvFivFivFivFi +vFiivDglOuctuctvFpePRgHCgHCgHCgHCgHCgHCgHCgHCgHCgHCivDpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNchfUpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcsEUpNcpNcpNcpNclFlmBOvutvutvutvutvutbWpnAPoeToeToeToeThFpjSQhBkaUJiiHjSQirMoeToeToeToeTspctnBtnBtnBtnBtnBbcybcybcybcybcygOagOabcybcybcybcybcytnBtnBtnBtnBtnBspcvFivFivFibewdJmdJmdJmdJmdJmdJmdJmhOOhNbhNbhNbhNbhOOhKMhNbhKMhOOofaofaofaofaofaofaofaofaofaofaofaofabewvFivFivFivFivFivFivFivFivFivFivFivFivFihrxanIhrxhrxhrxbQGhrxhrxhrxxBhegwsbxfDUaWWhrxhrxhrxbQGhrxhrxhrxsfchrxvFivFivFivFi +vFiivDkqwuctuctuctivDrALgHCgHCgHCgHCgHCgHCgHCgHCrALivDpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNchfUpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNclFlpNcpNcpNcpNclFlvutvutvutvutvutvuttkjspcspcnwtoeToeToeToeToeToeToeToeToeToeToeTnwtspcspctnBtnBtnBtnBbcyagQfinsUqrpnbcyhkzscGbcycIIadobcybcybcybcytnBtnBtnBspcvFivFivFibewdJmdJmdJmdJmdJmcuhdJmvcNxSXhNbhNbhNbkVShKMhNbhKMhOOofaofaofaofaofaofaofaofaofaofaofaofabewvFivFivFivFivFivFivFivFivFivFivFivFivFihrxhrxhrxnhSvzHanIaLegFVhrxhrxhrxbQGhrxhrxhrxfJpaPqanIpwUrLahrxhrxhrxvFivFivFivFi +vFiivDivDsUzivDivDivDivDivDafqafqafqafqafqafqivDivDivDpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNchfUpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcpNcsEUpNcpNcpNcpNclFlqAimkhdTrwjlqrlvutaWVspcspcspcoeToeToeToeToeToeToeToeToeToeToeTspcspcspctnBtnBtnBbcybcyfKqfKqfKqfKqbcyjFejFebcyfKqfKqrUbxZfbcybcybcytnBtnBspcvFivFivFibewdJmdJmdJmdJmdJmdJmdJmvcNhNbhNbhNbhNbkVShKMhNbhKMhOOofaofaofaofaofaofaofaofaofaofaofapmFbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFihqzswsanIanIanIanIanIbVchrxtmhwOrghqhrxidfanIanIanIanIanIanIhqzvFivFivFivFivFi +vFivFiivDjYIivDdcwlMTjYIlzvlzvwwvwwvlzvlzvlzvgyJexlivDlFloUhoUhoUhnBuoUhoUhoUhlFllFloUhoUhoUhlFlhfUpNcpNcpNchfUlFloUhoUhoUhlFllFloUhoUhoUhmiMoUhoUhoUhlFllFloUhoUhlFloUhoUhoUhlFlhfUpNcpNcpNclFllFllFllFllFllFllFllFlspcspcspcspcspcspcspcbsFnAPbsFspcspcspcspcspcspcspctnBtnBbcybcybcyfDNbGMsmQvKcbcyihHfKqdqAfKqfKqfKqfKqtelamVbcytnBtnBspcvFivFivFibewdJmdJmdJmdJmdJmdJmdJmhOOuKzuKzwwbuKzhOOhKMhNbhKMhOOuKzuKzuKzuKzuKzuKzuKzuKzuKzuKzuKzuKzuKzvFivFivFivFivFivFivFivFivFivFivFivFivFivFihrxhrxnupeGJnupddianIrXMhrxkstfBuhYuhrxaPqanImkIjlKvRKsxdhrxhrxvFivFivFivFivFi +vFivFiivDjYIivDdcwlMTjYIlzvlzvwwvwwvlzvlzvlzvgyJexlivDioepNcpNcpNcpNcpNcpNcpNcmfflFlqUIqUIqUIlFllFlnBunBunBulFllFlqUIqUIqUIlFlpNcpNcpNcpNcpNcpNcpNcpNcmuLlFlqUIqUIqUIqUIqUIqUIlFllFlpNcpNcpNclFllFlvFivFivFivFivFivFivFivFillzbLgdfOfjekobaWEaWEaWEllzbEymlAoyAmlAbEyspctnBtnBsJchftuLRfKqlLolLolLobcyfKqfKqbcypJmljkcrhqezpElmhJbcytnBtnBspcvFivFivFibewdJmdJmdJmdJmdJmdJmdJmhOOkOtvpQvpQulUhOOhKMhNbhKMuamhNbhNbhNbhNbhNbhNbhNbhNbhNbhNbhNbhNbuKzvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihrxnuphDpxSnvUZanIanIbQGoBManIeYgbQGanIanIhbGqblolgsxdhrxvFivFivFivFivFivFi +vFivFiivDjYIivDdcwlMTjYIwwvwwvkmhkmhwwvwwvlzvgyJexlivDpNcpNckFKpNcpNcpNckFKpNcpNclFlqUIqUIqUIqUIlFlpNcpNcpNclFlqUIqUIqUIqUIlFljwJxnexnepNcpNcpNcpNcpNcmuLlFlqUIqUIqUIqUIqUIqUIqUIoUhpNcpNcpNclFlvFivFivFivFivFivFivFivFivFillznZvvocvpZllzaWEaWEaWElLQbEymlAeXsmlAbEyspctnBtnBltohftfKqfKqfKqfKqfKqdqAfKqfKqbcybcybcybcybcybcybcybcytnBtnBspcvFivFivFibewdJmdJmdJmdJmdJmdJmdJmhOOkOtnvlvpQulUhOOuEhiHcuEhhOOeujkMCeujkMCeujkMCeujkMCeujkMCeujkMCuKzvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihrxhrxmrPnupnupanIxzQhrxkstanIhYuhrxsbxanIxYtwSIggKhrxhrxvFivFivFivFivFivFi +vFivFiivDjYIivDdcwlMTjYIwwvwwvkmhkmhwwvwwvlzvgyJexlivDpNcpNclFldGulFldGulFlpNcpNcoUhqUIqUIqUIqUIoUhpNcpNcpNcoUhqUIqUIqUIqUIoUhpNcpNcpNcpNcpNcpNcpNcpNcxjHlFloUhoUhlFllFllFllFllFllFllFllFllFllFlvFivFivFivFivFivFivFivFivFillzllzllzllzllzaWEaWEaWElLQbEybEybEybEybEyspctnBtnBbcybcyfKqfKqfKqfXzfKqbcyfKqfKqfKqllGhNstnBtnBtnBtnBtnBtnBtnBspcvFivFivFiiJShOOhOOhOOhOOhOOhOOhOOhOOhOOhOOuKzhOOhOOhKMhNbhKMhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOhOOiJSvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihrxhrxdYzlIUanIjfPhrxhrxbQGhrxhrxsbxanIsxdsxdhrxhrxvFivFivFivFivFivFivFi +vFivFiivDjYIivDdcwlMTjYIlzvlzvwwvwwvlzvlzvlzvgyJexlivDpNcpNclFltMalFltMalFlpNcpNcoUhqUIqUIqUIoUhoUhpNcpNcpNcoUhoUhqUIqUIqUIoUhpNcpNciMvpNcpNcpNcpNcpNclFllFlvCtvCtvCtvCtlFlvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFillzbLgdfOfjekobaWEaWEaWEbEybEybEybEymSBmlAspctnBtnBtnBbcybcybcybcybcybcybcyihHfKqrtifKqhNstnBtnBtnBtnBtnBtnBtnBspcvFivFivFivFivFivFivFibeweKreKreKreKreKrhOOiHPhKMhKMhKMhNbhKMhKMhKMiHPhOOvWSvWSvWSvWSvWSbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihrxhrxhrxlOZmqHhrxanIanIanIhrxdFIlJahrxhrxhrxvFivFivFivFivFivFivFivFi +vFivFiivDjYIivDivDivDivDnPfnPfnPfnPfnPfnPfivDivDivDlFlvutvutlFluEHlFluEHlFlvutvutoUhqUIqUIqUIoUhpNcpNcpNcpNcpNcoUhqUIqUIqUIoUhpNcpNcpNcpNcpNcpNcpNcpNclFlvCtvCtvCtvCtvCtlFlvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFillzbzQvocvpZllzaWEaWEaWEbEybEybEybEybEybEyspctnBtnBbcybcynmHbBnhQhnmHapwbcyfKqfKqfKqpmnhNstnBtnBtnBtnBtnBtnBtnBspcvFivFivFivFivFivFivFibeweKreKreKrvNteKrbPFlTihNbhNbhNbhNbhNbhNbhNbpMJslDvWSlXuvWSvWSvWSbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihrxhqzhrxhrxoJtvXYwshhrxhrxhqzhrxvFivFivFivFivFivFivFivFivFivFi +vFivFiivDjYIjYIjYIjYIuHgjYIjYIwJBwJBwJBwJBwJBjYIivDlFlvutvutlFllFllFllFllFlvutvutoUhqUIqUIqUIlFlpNcpNcpNcpNcpNclFlqUIqUIqUIoUhshSpNcpNcpNcpNcpNcpNcpNclFlvCtvCtvCtvCtvCtlFlvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFillzllzllzllzllzaWEaWEaWElLQbEybEybEybEybEyspctnBtnBsJchftfKqfKqfKqfKqfKqdqAfKqfKqbcybcybcybcybcybcybcybcytnBtnBspcvFivFivFivFivFivFivFibeweKreKreKreKreKrhOOhKMhNbuIbuIbuIbuIbuIbhNbhKMhOOvWSvWSvWSvWSvWSbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihrxhrxhrxhqzhrxhrxhrxvFivFivFivFivFivFivFivFivFivFivFivFi +vFivFiivDivDivDivDivDivDivDivDivDivDivDivDivDivDivDlFlvutvutvutvutvutvutvutvutvutlFlqUIqUIqUIoUhpNcpNcpNcpNcpNcoUhqUIqUIqUIlFlpNcpNcpNcpNcpNcpNcpNcpNclFllFllFllFllFllFllFlvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFillzbLgdfOfjekobaWEaWEaWElLQbEymlAeXsmlAbEyspctnBtnBltohftgnJfKqfKqfKqfKqbcyfKqfKqfKqfKqfKqbcyfKqbPmkYKbcytnBtnBspcvFivFivFivFivFivFivFihOOhOOhOOhOOhOOhOOhOOhKMhNbsRAsRAsRAsRAsRAhNbhKMhOOhOOhOOhOOhOOhOOhOOvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFi +vFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFilFllFlvutvutvutvutvutvutvutlFllFlqUIqUIqUIoUhoUhpNcpNcpNcoUhoUhqUIqUIqUIlFllFlpNcpNcpNcpNcpNcpNcpNclFlvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFillzbzQvocvpZllzaWEeOemcBllzbEymlAhjUmlAbEyspctnBtnBbcybcybcysaXmiohAGoqbbcyihHhAGhAGhAGfKqdqAfKqfKqfKqbcytnBtnBspcvFivFivFivFivFivFivFibewxmxxmxxmxxmxxmxhOOhKMhNbsRAsRAsRAsRAsRAhNbhKMhOOifXifXifXifXifXbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFi +vFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFilFllFllFllFllFllFllFllFllFlqUIqUIqUIqUIqUIoUhpNcpNcpNcoUhqUIqUIqUIqUIqUIlFllFllFllFlbFylFllFllFllFlvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFillzllzllzllzllzllzllzllzllzllzllzllzllzllzspctnBtnBtnBbcybcyfKqfKqfKqfKqbcyfKqhAGhAGhAGfKqbcyrxebcybcybcytnBtnBspcvFivFivFivFivFivFivFibewxmxxmxxmxsqJxmxouFqRphNbmJqmJqmJqmJqmJqhNbnCNuIKifXnbWifXifXifXbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFi vFivFivFivFivFivFivFivFivFivFifRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjlFlpNcpNcpNclFlqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFispctnBtnBtnBtnBbcybcyhstpyBnYCbcyfKqfKqfKqfKqfKqbcybcybcybcytnBtnBtnBspcvFivFivFivFivFivFivFibewxmxxmxxmxxmxxmxhOOhKMhNbhNbhNbhNbhNbhNbhNbhKMhOOifXifXifXifXifXbewvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFi vFivFivFivFivFivFivFivFivFivFifRjdGwfzKdGwfRjttfnIuhpUhpUhpUfRjgHzusKfzKfzKfzKfRjkhEkhEpodhcdfRjinZpNcpNcpNcinZbcgwBppRJohJcslwBpmcuqRXmcumTkdxYdxYqpGbdQgldbADbADqRXljHrwanHwdGjqRXvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFispctnBtnBtnBtnBtnBbcybcybcybcybcybcybcybcybcybcybcybcytnBtnBtnBtnBtnBspcvFivFivFivFivFivFivFihOOhOOhOOhOOhOOhOOhOOnHBgywhKMhKMhNbhKMhKMxdLqRhhOOhOOhOOhOOhOOhOOhOOvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFi vFivFivFivFivFivFivFivFivFivFifRjhPofzKhPofRjfzKfzKfzKfzKfzKhsWgHzgHzdbnfzKfzKfzKfzKfzKfzKfzKfRjpNcpNcpNcpNcpNcbcgjAzjAzjAzjAzjAzjAzjAzjAzvxzwjBwjBwjBhhZjAzjAzjAzqRXjTkjAzjAziuwqRXvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFispctnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBtnBspcvFivFivFivFivFivFivFivFihOOijWvpQojqvYYhOOhOOhOOhOOhKMhNbhKMhOOhOOhOOhOOxqkviFviFuyyhOOvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFi @@ -2430,18 +2468,18 @@ vFivFivFivFivFivFivFivFivFivFifRjfzKpmGpmGpmGfzKfzKhsWrRorRohsWgHzgHzfzKfzKfzKgM vFivFivFivFivFivFivFivFivFivFifRjfzKeZogHzhzDfzKfzKasBfzKfzKasBfzKfzKfzKfzKgEPgHzeJjeJjeJjeJjhsWinZpNcpNcpNcinZbcgjAzjAzlnZbphjAzjAzbcgjAzjAzjAzjAzjAztDuoiKjAzhVLjAzjAzjAzjAzjAzqRXvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFiiJSveRvpQvpQpvWizZvpQhOOsGEcmflVUsTIxgmhOOuKzuKztlXuKzuKzuKziJSvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicayghmwaOcaypsUpsUcaywaOghmcayhIMpsUpsUpsUmVDlSlcayaHYcNWaHYcNWaHYcNWcayvFivFivFivFivFi vFivFivFivFivFivFivFivFivFivFifRjfzKpmGpmGpmGfzKfzKasBfzKfzKasBfzKfzKfzKfzKfzKiTleJjeJjeJjeJjnCqpNcpNcpNcpNcpNcvtujAzjAzlnZbphjAzjAzxdPjAzjAzvVSwrvjAzjAzjAzwWSqRXqRXqRXhVLqRXqRXqRXvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihOOtRxvpQvpQvpQvpQvpQhOOlVUcKClVUcKClVUhOOhRzvpQvpQvpQxreuKzhOOvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicaybDIbDItWrpsUpsUtWrbDIbDIcayirqpsUpsUpsUpsUmJIcaybUQcNWbUQcNWbUQcNWcayvFivFivFivFivFi vFivFivFivFivFivFivFivFivFivFifRjfzKfzKfzKfzKfzKfzKfRjhsWhsWfRjhsWhsWlmEhsWhsWhsWsZpsZpsZpeJjfRjpNcpNcpNcpNcrdHqRXkXDjAzjAzjAzjAzwWSqRXkXDwWSjhVuGtuGtuGtuGtyegqRXiKjgErgErgErwOeqRXvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihOOhOOujvweSrnXhRxmrIhOOdxRtjGlrGrxtvkKhOOhRzvpQvpQvpQxrehOOhOOvFivFivFivFivFivFivFivFivFivFivFivFivFicaycaycaycaycaycaycaypsUpsUcaycaycaycaybFObFOhVUpsUbFObFOcaycNWcNWcNWcNWcNWcNWcayvFivFivFivFivFi -vFivFivFivFivFivFivFivFivFivFifRjhsWfzKhsWfRjfzKfzKfzKfzKusKfRjfzKfzKfzKfzKfzKfRjfRjhsWhsWhsWfRjvutvutvutvutpNcqRXvJBjAzjAzjAzjAzbqxheIvJBbqxqRXbcgbcgnyhbcgbcgqRXkKzjAzjAzjAztRRqRXvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihOOhOOhOOhOOhOOhOOhOOfSdfSdfSdfSdfSdhOOhOOhOOhOOhOOhOOhOOvFivFivFivFivFivFivFivFivFivFivFivFivFivFicaytZitnmtZicaytfrtfrpsUpsUtmUgmTtYacaypsUpsUpsUpsUpsUpsUcayiIlcNWcNWcNWcNWcNWcayvFivFivFivFivFi -vFivFivFivFivFivFivFivFivFivFifRjdGwfzKdGwfRjfzKfzKfzKfzKckrfRjfzKfzKgHzfzKfzKfRjfzKfzKfzKfzKgMupNcpNcpNcpNcpNcbcgacEjAzlnZbphjAzbqxvWwhGObqxqRXmLJjAzjAzjAzmLJqRXpyNjAzjAzjAzgHTqRXvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicayqejqejqejcaypsUcNWcNWcNWcNWcNWpsUpsUpsUcNWcNWcNWcNWpsUsjOcNWcNWcNWcNWcNWcNWcayvFivFivFivFivFi -vFivFivFivFivFivFivFivFivFivFifRjhPofzKhPofRjkZefzKfzKfzKgDjfRjfzKvfKgHzmLrfzKlmEfzKfzKfzKqwrkvJpNcvutvutvutvutbcgsjDjAzlnZbphjAzbqxvBivJBbqxqRXjAzjAzjAzjAzjAzhVLjAzjAzawUjAzxHdqRXvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicaycWyqejqejbkqpsUvOqvOqvOqvOqvOqpsUpsUpsUcNWiduiducNWpsUsjOcNWcNWcNWcNWcNWcNWcayvFivFivFivFivFi -vFivFivFivFivFivFivFivFivFivFifRjdGwfzKdGwfRjnxausKfzKfvhuCGfRjvhzuKPcfJeZodjSfRjfzKfzKtRhdbnhsWpNcpNcpNcpNcpNcbcgsuMuGtnEpjoguGtyegqRXxwMyegqRXtdLjAztdLjAztdLqRXmoiuqPuqPuqPjmbqRXvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicaycWyqejqejcaypsUcNWcNWcNWcNWcNWpsUpsUpsUcNWcNWcNWcNWolAcaybUQcNWaHYcNWbUQcNWcayvFivFivFivFivFi -vFivFivFivFivFivFivFivFivFivFifRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjlFltxBtxBtxBlFlqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicayrrycaywVncayiVAxHfmWaqRLmiQdGotDAcaypsUpsUpsUpsUpsUpsUcayaHYcNWaHYcNWaHYcNWcayvFivFivFivFivFi -vFivFivFivFivFivFivFivFivFivFimmJupMupMupMupMupMupMupMupMupMupMupMupMupMmmJupMupMupMupMupMupMcSzhfUpNcpNcpNchfUcSzupMupMupMupMupMupMmmJupMupMupMupMupMupMupMupMupMupMupMupMmmJvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicaycaycaymwvcaycaycaycaycaycaycaycaycaycaycayhVUpsUcaycaycaycaycaycaycaycaycaycayvFivFivFivFivFi -vFivFivFivFivFivFivFivFivFivFimmJupMupMupMupMupMupMupMupMupMupMupMupMupMmmJupMupMupMupMupMupMcSzinZpNcpNcpNcinZcSzupMupMupMupMupMupMmmJupMupMupMupMupMupMupMupMupMupMupMupMmmJvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicaycaycayvFivFivFivFivFivFivFivFivFicaypsUbkFcayvFivFivFivFivFivFivFivFivFivFivFivFivFivFi -vFivFivFivFivFivFivFivFivFivFimmJupMupMupMupMupMupMupMupMupMupMmmJmmJfVXmmJmmJupMupMupMupMupMcSzhfUpNcpNcpNchfUcSzupMupMupMupMupMmmJmmJfVXmmJmmJupMupMupMupMupMupMupMupMupMmmJvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicaypsUpsUcayvFivFivFivFivFivFivFivFivFivFivFivFivFivFi -vFivFivFivFivFivFivFivFivFivFimmJcSzcSzcSzcSzcSzcSzmmJcSzcSzmmJmmJieCieCcaNmmJmmJcSzcSzcSzmmJbYMcSziaTiaTiaTcSzrglmmJcSzcSzcSzmmJmmJcaNieCieCmmJmmJcSzcSzcSzcSzcSzmmJmmJmmJmmJvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicaykOVkOVcayvFivFivFivFivFivFivFivFivFivFivFivFivFivFi -vFivFivFivFivFivFivFivFivFivFimmJiaTiaTiaTiaTiaTiaTiaTiaTiaTtsYiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTtsYiaTiaTiaTiaTiaTiaTiaTiaTmmJvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFiuvstDotDouvsvFivFivFivFieVqeVqeVqeVqeVqvFivFivFivFivFi -vFivFivFivFivFivFivFivFivFivFimmJiaTiaTiaTiaTiaTiaTiaTiaTiaTmmJiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTmmJiaTiaTiaTiaTiaTiaTiaTiaTmmJvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFieVqeVqeVqeVqeVqeVqaJsxykrnKeVqvFivFivFivFivFieVqeVqfqCoxheVqeVqvFivFieVqeVqeVqeVqkyRjjHvFivFivFivFivFi -vFivFivFivFivFivFivFivFivFivFimmJiaTiaTiaTiaTiaTiaTrYbiaTiaTtsYiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTwxkiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTtsYiaTcwviaTiaTiaTiaTiaTiaTmmJvFivFivFivFivFidtVhlJhlJhlJhlJhlJhlJhlJhlJhlJhlJdtVhlJhlJhlJhlJhlJhlJhlJhlJhlJhlJdtVhlJhlJhlJhlJhlJhlJhlJhlJhlJhlJdtVhlJhlJhlJhlJhlJhlJhlJhlJhlJhlJdtVhlJhlJhlJhlJhlJhlJhlJhlJhlJhlJdtVhlJhlJhlJhlJhlJhlJhlJhlJhlJhlJdtVhlJhlJhlJhlJhlJhlJhlJhlJhlJhlJdtVvFivFivFivFivFivFivFivFivFieVquvsvqLdOReVqhptiWnuYtrnfrmUeVqeVqvFivFivFieVqeVquvstDotDouvseVqaJsrnKuvsiFpbbdeVqkyRrwvvFivFivFivFivFi +vFivFivFivFivFivFivFivFivFivFifRjhsWfzKhsWfRjfzKfzKfzKfzKusKfRjfzKfzKfzKfzKfzKfRjfRjhsWhsWhsWfRjvutvutvutvutpNcqRXvJBjAzjAzjAzjAzbqxheIvJBbqxqRXbcgbcgnyhbcgbcgqRXkKzjAzjAzjAztRRqRXvFivFivFidtVhlJhlJhlJhlJhlJhlJhlJhlJhlJhlJdtVvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFihOOhOOhOOhOOhOOhOOhOOfSdfSdfSdfSdfSdhOOhOOhOOhOOhOOhOOhOOvFivFivFivFivFivFivFivFivFivFivFivFivFivFicaytZitnmtZicaytfrtfrpsUpsUtmUgmTtYacaypsUpsUpsUpsUpsUpsUcayiIlcNWcNWcNWcNWcNWcayvFivFivFivFivFi +vFivFivFivFivFivFivFivFivFivFifRjdGwfzKdGwfRjfzKfzKfzKfzKckrfRjfzKfzKgHzfzKfzKfRjfzKfzKfzKfzKgMupNcpNcpNcpNcpNcbcgacEjAzlnZbphjAzbqxvWwhGObqxqRXmLJjAzjAzjAzmLJqRXpyNjAzjAzjAzgHTqRXvFivFivFiaJQihiihiihiihiihiihiihiihiihiihioyuvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicayqejqejqejcaypsUcNWcNWcNWcNWcNWpsUpsUpsUcNWcNWcNWcNWpsUsjOcNWcNWcNWcNWcNWcNWcayvFivFivFivFivFi +vFivFivFivFivFivFivFivFivFivFifRjhPofzKhPofRjkZefzKfzKfzKgDjfRjfzKvfKgHzmLrfzKlmEfzKfzKfzKqwrkvJpNcvutvutvutvutbcgsjDjAzlnZbphjAzbqxvBivJBbqxqRXjAzjAzjAzjAzjAzhVLjAzjAzawUjAzxHdqRXvFivFivFiaJQnEzitWjNEaQIprbaZohMzioFalaihioyuvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicaycWyqejqejbkqpsUvOqvOqvOqvOqvOqpsUpsUpsUcNWiduiducNWpsUsjOcNWcNWcNWcNWcNWcNWcayvFivFivFivFivFi +vFivFivFivFivFivFivFivFivFivFifRjdGwfzKdGwfRjnxausKfzKfvhuCGfRjvhzuKPcfJeZodjSfRjfzKfzKtRhdbnhsWpNcpNcpNcpNcpNcbcgsuMuGtnEpjoguGtyegqRXxwMyegqRXtdLjAztdLjAztdLqRXmoiuqPuqPuqPjmbqRXvFivFivFiaJQbJsqsIhKWqsIhKWqsIhKWqsIhKWihioyuvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicaycWyqejqejcaypsUcNWcNWcNWcNWcNWpsUpsUpsUcNWcNWcNWcNWolAcaybUQcNWaHYcNWbUQcNWcayvFivFivFivFivFi +vFivFivFivFivFivFivFivFivFivFifRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjfRjlFltxBtxBtxBlFlqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXqRXvFivFivFiaJQpJjmMRkcpmMRkcpmMRkcpmMRkcpihioyuvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicayrrycaywVncayiVAxHfmWaqRLmiQdGotDAcaypsUpsUpsUpsUpsUpsUcayaHYcNWaHYcNWaHYcNWcayvFivFivFivFivFi +vFivFivFivFivFivFivFivFivFivFimmJupMupMupMupMupMupMupMupMupMupMupMupMupMmmJupMupMupMupMupMupMcSzhfUpNcpNcpNchfUcSzupMupMupMupMupMupMmmJupMupMupMupMupMupMupMupMupMupMupMupMmmJvFivFivFivFivFiaJQvwukcpmMRkcpmMRkcpmMRkcpmMRihioyuvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicaycaycaymwvcaycaycaycaycaycaycaycaycaycaycayhVUpsUcaycaycaycaycaycaycaycaycaycayvFivFivFivFivFi +vFivFivFivFivFivFivFivFivFivFimmJupMupMupMupMupMupMupMupMupMupMupMupMupMmmJupMupMupMupMupMupMcSzinZpNcpNcpNcinZcSzupMupMupMupMupMupMmmJupMupMupMupMupMupMupMupMupMupMupMupMmmJvFivFivFivFivFiaJQoOOmMRkcpmMRkcpmMRkcpmMRkcpihioyuvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicaycaycayvFivFivFivFivFivFivFivFivFicaypsUbkFcayvFivFivFivFivFivFivFivFivFivFivFivFivFivFi +vFivFivFivFivFivFivFivFivFivFimmJupMupMupMupMupMupMupMupMupMupMmmJmmJfVXmmJmmJupMupMupMupMupMcSzhfUpNcpNcpNchfUcSzupMupMupMupMupMmmJmmJfVXmmJmmJupMupMupMupMupMupMupMupMupMmmJvFivFivFivFivFiaJQgwQkcpmMRkcpmMRkcpmMRkcpmMRihioyuvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicaypsUpsUcayvFivFivFivFivFivFivFivFivFivFivFivFivFivFi +vFivFivFivFivFivFivFivFivFivFimmJcSzcSzcSzcSzcSzcSzmmJcSzcSzmmJmmJieCieCcaNmmJmmJcSzcSzcSzmmJbYMcSziaTiaTiaTcSzrglmmJcSzcSzcSzmmJmmJcaNieCieCmmJmmJcSzcSzcSzcSzcSzmmJmmJmmJmmJvFivFivFivFivFiaJQieXvkZveNvkZveNvkZveNvkZveNihioyuvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicaykOVkOVcayvFivFivFivFivFivFivFivFivFivFivFivFivFivFi +vFivFivFivFivFivFivFivFivFivFimmJiaTiaTiaTiaTiaTiaTiaTiaTiaTtsYiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTtsYiaTiaTiaTiaTiaTiaTiaTiaTmmJvFivFivFivFivFiaJQcJIldMornheQudoenMmQJsySicaihioyuvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFiuvstDotDouvsvFivFivFivFieVqeVqeVqeVqeVqvFivFivFivFivFi +vFivFivFivFivFivFivFivFivFivFimmJiaTiaTiaTiaTiaTiaTiaTiaTiaTmmJiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTmmJiaTiaTiaTiaTiaTiaTiaTiaTmmJvFivFivFivFivFiaJQihipLtfOZsROpXzkjjcfiwmucdvihioyuvFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFieVqeVqeVqeVqeVqeVqaJsxykrnKeVqvFivFivFivFivFieVqeVqfqCoxheVqeVqvFivFieVqeVqeVqeVqkyRjjHvFivFivFivFivFi +vFivFivFivFivFivFivFivFivFivFimmJiaTiaTiaTiaTiaTiaTrYbiaTiaTtsYiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTwxkiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTiaTtsYiaTcwviaTiaTiaTiaTiaTiaTmmJvFivFivFivFivFidtVkkHkkHkkHkkHkkHkkHkkHkkHkkHkkHdtVhlJhlJhlJhlJhlJhlJhlJhlJhlJhlJdtVhlJhlJhlJhlJhlJhlJhlJhlJhlJhlJdtVhlJhlJhlJhlJhlJhlJhlJhlJhlJhlJdtVhlJhlJhlJhlJhlJhlJhlJhlJhlJhlJdtVhlJhlJhlJhlJhlJhlJhlJhlJhlJhlJdtVhlJhlJhlJhlJhlJhlJhlJhlJhlJhlJdtVvFivFivFivFivFivFivFivFivFieVquvsvqLdOReVqhptiWnuYtrnfrmUeVqeVqvFivFivFieVqeVquvstDotDouvseVqaJsrnKuvsiFpbbdeVqkyRrwvvFivFivFivFivFi vFivFivFivFivFivFivFivFivFivFimmJcSzcSzcSzcSzcSzcSzmmJcSzcSzmmJmmJeOYeOYeOYmmJmmJcSzmmJcSzcSzcSzcSzcSzmmJcSzcSzcSzcSzcSzmmJcSzmmJmmJeOYeOYeOYmmJmmJcSzmmJcSzcSzcSzcSzcSzcSzmmJvFivFivFivFivFiaJQvwmvwmvwmxewvwmvwmvwmvwmvwmvwmqCWrIguQVuQVkgkwmPwmPjVCuQVnKorIgqCWiWsiWsiWsiTcjwhjwhrgAjVfkBgtsGqCWcOxcOxcOxmxAcOxcOxmxAcOxcOxcOxqCWnaHnaHnaHnaHnaHnaHnaHnaHnaHnaHqCWntOntOntOntOntOntOntOntOntOntOqCWbTWbTWbTWbTWbTWbTWbTWbTWbTWbTWoyuvFivFivFivFivFivFivFivFivFiwDNmbWiYCiYCwfMiYCiYCwpFxozsnreVqeVqaJsxykrnKeVqeVqfHOiYCiYCbpUeVqfIrviAsboiYCvIseVqkyRrwvvFivFivFivFivFi vFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicSziaTiaTiaTiaTeRVcSzvFivFiqNqvFivFivFivFivFivFivFivFivFiqNqvFivFicSzeRViaTiaTiaTeRVcSzvFivFivFivFivFivFivFivFivFivFivFivFivFivFiaJQvwmvwmvwmvwmvwmvwmvwmvwmbzPvwmqCWxHYnKouQVbUzwmPwmPhcLnKouQVrIgqCWiWsiWsiWsiWsiWsiWsddojVfkBgqoxqCWcOxcOxcOxcOxcOxcOxcOxcOxcOxcOxqCWnaHvYhnaHnaHnaHnaHnaHnaHvYhnaHqCWntOntOntOntOntOntOntOntOntOntOqCWloEloEbTWloEloEloEloEbTWloEloEoyuvFivFivFivFivFivFivFivFivFiwyssVfjWHfZheVqiYCiYCsZWuYqqxLeVqnbbcijdJSsYghQXgZqmDujfdjfdiYCjvsiYCiYCiYCiYCxlmeVqkyRhkOvFivFivFivFivFi vFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFivFicSzpfGiaTiaTiaTsRgcSzvFivFiqNqvFivFivFivFivFivFivFivFivFiqNqvFivFicSzfXUiaTiaTiaTsRgcSzvFivFivFivFivFivFivFivFivFivFivFivFivFivFiaJQvwmbzPvwmvwmvwmvwmvwmvwmvwmvwmqCWrIguQVrFrnOLwmPwmPaFtkrwnKorIgqCWiWsakOqrwbpvqrwwMDddojVfkBgqoxqCWbHcpGNlskqzvdgchfQptFuxCxRnaUQqCWnaHnaHnaHnaHnaHnaHnaHnaHnaHnaHqCWntOntOntOntOntOntOntOntOntOntOqCWmIcmIchyOmIcmIcmIcmIcixPmIcmIcoyuvFivFivFivFivFivFivFivFivFieVqeVqeVqeVqeVqeVqsOhiYCiYCptHeVqpFLiDNpmtdaZwCznsFepWjfdjfdiYCjvsiYCnjHvpyiYCiYCeVqeVqeVqvFivFivFivFivFi diff --git a/maps/southern_cross/southern_cross_areas.dm b/maps/southern_cross/southern_cross_areas.dm index c887250535..9e1daf58a9 100644 --- a/maps/southern_cross/southern_cross_areas.dm +++ b/maps/southern_cross/southern_cross_areas.dm @@ -182,11 +182,6 @@ /area/surface/outpost/mining_main/mech_bay name = "North Mining Mech Bay" -/area/surface/outpost/mining_main/gen_room - name = "North Mining Generator Room" - icon_state = "substation" - ambience = AMBIENCE_SUBSTATION //CHOMP Addition - /area/surface/outpost/mining_main/emergencystorage name = "\improper North Mining Emergency Storage" flags = RAD_SHIELDED @@ -203,11 +198,38 @@ /area/surface/outpost/mining_main/tools name = "North Mining Tool Storage" - /area/surface/outpost/mining_main/cave name = "North Mining Outpost Cave" icon_state = "outpost_mine_main" +//Rust-Engine Outpost CHOMPedit - ksc + +/area/surface/outpost/engineering/atmos_room + name = "North Atmos Room" + icon_state = "atmos" + +/area/surface/outpost/engineering/smes + name = "North Engineering SMES" + icon_state = "substation" + ambience = AMBIENCE_SUBSTATION //CHOMP Addition + +/area/surface/outpost/engineering/reactor_smes + name = "North Engineering Reactor SMES" + icon_state = "engine_smes" + ambience = AMBIENCE_SUBSTATION //CHOMP Addition + +/area/surface/outpost/engineering/storage + name = "North Engineering Storage" + icon_state = "storage" + +/area/surface/outpost/engineering/monitoring + name = "North Engineering Monitoring" + icon_state = "engine_monitoring" + +/area/surface/outpost/engineering/auxiliary_storage + name = "North Engineering Auxiliary Storage" + icon_state = "emergencystorage" + //Research Surface Outpost /area/surface/outpost/research @@ -561,7 +583,7 @@ /area/outpost/mining_station/dock name = "Mining Station Dock" - +z //Turbolift /area/turbolift @@ -650,10 +672,12 @@ /area/engineering/auxiliary_engineering name = "\improper Auxiliary Engineering Station" sound_env = SMALL_ENCLOSED - +/* +//KSC - CHOMPStation Edit 1/19/21 - Moving this to the second-deck /area/crew_quarters/firstdeck/gym name = "\improper Station Gym" icon_state = "fitness" +*/ /area/construction/firstdeck/ name = "\improper Engineering Construction Area" @@ -918,6 +942,14 @@ name = "\improper Locker Room" icon_state = "locker" +//CHOMPStation Edit Start KSC 1/19/21 - Added area for new GYM + +/area/crew_quarters/seconddeck/gym + name = "\improper Station Gym" + icon_state = "fitness" + +//CHOMPStation Edit End + /area/crew_quarters/seconddeck/locker/locker_toilet name = "\improper Locker Toilets" icon_state = "toilet" diff --git a/maps/southern_cross/southern_cross_defines.dm b/maps/southern_cross/southern_cross_defines.dm index 757d0f0388..b4266d25e9 100644 --- a/maps/southern_cross/southern_cross_defines.dm +++ b/maps/southern_cross/southern_cross_defines.dm @@ -171,7 +171,7 @@ #define SOUTHERN_CROSS_HOLOMAP_MARGIN_Y ((HOLOMAP_ICON_SIZE - (3*SOUTHERN_CROSS_MAP_SIZE)) / 2) // 60 /datum/map_z_level/southern_cross/station - flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_CONSOLES + flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_CONSOLES|MAP_LEVEL_VORESPAWN holomap_legend_x = 220 holomap_legend_y = 160 @@ -209,7 +209,7 @@ /datum/map_z_level/southern_cross/surface z = Z_LEVEL_SURFACE name = "Plains" - flags = MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_SEALED|MAP_LEVEL_CONSOLES + flags = MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_SEALED|MAP_LEVEL_CONSOLES|MAP_LEVEL_VORESPAWN base_turf = /turf/simulated/floor/outdoors/rocks /datum/map_z_level/southern_cross/surface_mine @@ -228,13 +228,13 @@ /datum/map_z_level/southern_cross/surface_casino z = Z_LEVEL_SURFACE_CASINO name = "Casino" - flags = MAP_LEVEL_PLAYER|MAP_LEVEL_SEALED|MAP_LEVEL_CONTACT|MAP_LEVEL_CONSOLES + flags = MAP_LEVEL_PLAYER|MAP_LEVEL_SEALED|MAP_LEVEL_CONTACT|MAP_LEVEL_CONSOLES|MAP_LEVEL_VORESPAWN base_turf = /turf/simulated/floor/outdoors/rocks /datum/map_z_level/southern_cross/misc z = Z_LEVEL_MISC name = "Misc" - flags = MAP_LEVEL_PLAYER + flags = MAP_LEVEL_PLAYER|MAP_LEVEL_VORESPAWN transit_chance = 6 /datum/map_z_level/southern_cross/centcom diff --git a/maps/tether/submaps/tether_misc.dmm b/maps/tether/submaps/tether_misc.dmm index a11a486fc9..529143989b 100644 --- a/maps/tether/submaps/tether_misc.dmm +++ b/maps/tether/submaps/tether_misc.dmm @@ -28,10 +28,6 @@ "ae" = ( /turf/unsimulated/mineral/virgo3b, /area/space) -"af" = ( -/obj/structure/sign/warning/docking_area, -/turf/unsimulated/wall, -/area/centcom/simulated/terminal) "ag" = ( /obj/structure/flora/ausbushes/brflowers, /obj/effect/floor_decal/spline/fancy/wood{ @@ -58,12 +54,6 @@ }, /turf/simulated/floor/holofloor/carpet, /area/holodeck/source_courtroom) -"ai" = ( -/obj/machinery/door/blast/regular{ - dir = 4 - }, -/turf/unsimulated/floor/techfloor_grid, -/area/centcom/simulated/terminal) "aj" = ( /obj/structure/sign/warning{ name = "\improper STAND AWAY FROM TRACK EDGE" @@ -100,7 +90,6 @@ "ao" = ( /obj/structure/flora/ausbushes/ywflowers, /obj/effect/floor_decal/spline/fancy/wood{ - icon_state = "spline_fancy"; dir = 9 }, /turf/simulated/floor/holofloor/grass, @@ -134,7 +123,6 @@ dir = 8 }, /obj/effect/floor_decal/carpet/corners{ - icon_state = "carpet_corners"; dir = 5 }, /turf/simulated/floor/holofloor/carpet, @@ -189,7 +177,6 @@ "aA" = ( /obj/structure/flora/ausbushes/ywflowers, /obj/effect/floor_decal/spline/fancy/wood{ - icon_state = "spline_fancy"; dir = 10 }, /turf/simulated/floor/holofloor/grass, @@ -477,9 +464,7 @@ /area/holodeck/source_boxingcourt) "by" = ( /obj/machinery/light{ - dir = 8; - icon_state = "tube1"; - pixel_y = 0 + dir = 8 }, /turf/simulated/shuttle/floor, /area/shuttle/supply) @@ -755,7 +740,6 @@ /area/ai_multicam_room) "cj" = ( /obj/effect/floor_decal/industrial/warning{ - icon_state = "warning"; dir = 9 }, /turf/simulated/floor/tiled/steel, @@ -787,6 +771,12 @@ /obj/item/toy/chess/pawn_white, /turf/simulated/floor/holofloor/wmarble, /area/holodeck/source_chess) +"cq" = ( +/obj/structure/bed/chair/shuttle{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "cs" = ( /obj/machinery/door/airlock/glass_external{ frequency = 1380; @@ -848,20 +838,11 @@ }, /turf/simulated/floor/holofloor/tiled, /area/holodeck/source_emptycourt) -"cC" = ( -/obj/effect/step_trigger/lost_in_space/tram, -/turf/simulated/floor/tiled/techfloor/grid{ - icon = 'icons/turf/transit_vr.dmi'; - initial_flooring = null; - icon_state = "techfloor_grid" - }, -/area/space) "cO" = ( /obj/machinery/embedded_controller/radio/simple_docking_controller{ frequency = 1380; id_tag = "supply_shuttle"; pixel_x = -25; - pixel_y = 0; req_one_access = list(13,31); tag_door = "supply_shuttle_hatch" }, @@ -1063,27 +1044,6 @@ }, /turf/simulated/floor/holofloor/tiled, /area/holodeck/source_emptycourt) -"dz" = ( -/obj/effect/floor_decal/transit/orange{ - dir = 8 - }, -/obj/effect/transit/light{ - dir = 8 - }, -/obj/effect/step_trigger/thrower{ - affect_ghosts = 1; - direction = 2; - name = "thrower_throwdownside"; - nostop = 1; - stopper = 0; - tiles = 0 - }, -/turf/simulated/floor/tiled/techfloor/grid{ - icon = 'icons/turf/transit_vr.dmi'; - initial_flooring = null; - icon_state = "techfloor_grid" - }, -/area/space) "dA" = ( /obj/structure/window/reinforced, /obj/structure/window/reinforced{ @@ -1098,6 +1058,22 @@ /obj/structure/window/reinforced, /turf/unsimulated/wall, /area/space) +"dD" = ( +/obj/machinery/door/airlock/glass_external{ + frequency = 1380; + icon_state = "door_locked"; + id_tag = "escape_shuttle_hatch_station"; + locked = 1; + name = "Shuttle Hatch" + }, +/obj/effect/floor_decal/borderfloor{ + dir = 4 + }, +/obj/effect/floor_decal/borderfloor{ + dir = 8 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) "dE" = ( /obj/structure/shuttle/engine/heater, /obj/structure/window/reinforced{ @@ -1164,9 +1140,7 @@ /area/holodeck/source_thunderdomecourt) "dU" = ( /obj/structure/table/holotable, -/obj/machinery/readybutton{ - pixel_y = 0 - }, +/obj/machinery/readybutton, /obj/effect/floor_decal/corner/red/full{ dir = 8 }, @@ -1603,9 +1577,7 @@ /area/holodeck/source_thunderdomecourt) "fX" = ( /obj/structure/table/holotable, -/obj/machinery/readybutton{ - pixel_y = 0 - }, +/obj/machinery/readybutton, /obj/effect/floor_decal/corner/green/full{ dir = 4 }, @@ -1706,6 +1678,18 @@ /obj/structure/flora/grass/both, /turf/simulated/floor/holofloor/snow, /area/holodeck/holodorm/source_snow) +"gE" = ( +/obj/structure/closet/hydrant{ + pixel_y = 32 + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 8 + }, +/obj/effect/floor_decal/borderfloor/corner{ + dir = 4 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) "gN" = ( /obj/structure/flora/ausbushes/fullgrass, /turf/simulated/floor/holofloor/desert, @@ -1854,6 +1838,56 @@ }, /turf/simulated/floor/holofloor/tiled/dark, /area/holodeck/holodorm/source_boxing) +"ig" = ( +/obj/effect/step_trigger/thrower{ + affect_ghosts = 1; + name = "thrower_throwdownside"; + nostop = 1; + stopper = 0; + tiles = 0 + }, +/obj/effect/floor_decal/transit/orange{ + dir = 4 + }, +/obj/effect/transit/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor/grid{ + icon = 'icons/turf/transit_vr.dmi'; + initial_flooring = null + }, +/area/space) +"ih" = ( +/obj/machinery/light{ + dir = 8 + }, +/obj/effect/floor_decal/industrial/warning/corner{ + dir = 1 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) +"ii" = ( +/obj/structure/bed/chair/shuttle{ + dir = 1 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) +"in" = ( +/obj/effect/step_trigger/lost_in_space/tram, +/obj/effect/floor_decal/transit/orange{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor/grid{ + icon = 'icons/turf/transit_vr.dmi'; + initial_flooring = null + }, +/area/space) +"ix" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 8 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) "iO" = ( /obj/effect/step_trigger/teleporter/random{ affect_ghosts = 1; @@ -1867,16 +1901,25 @@ }, /turf/space/transit/west, /area/space) -"iY" = ( -/turf/simulated/floor/tiled/techfloor/grid{ - icon = 'icons/turf/transit_vr.dmi'; - initial_flooring = null; - icon_state = "techfloor_grid" - }, -/area/space) +"iU" = ( +/obj/structure/table/standard, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "jf" = ( /turf/space/transit/north, /area/space) +"jr" = ( +/obj/effect/floor_decal/borderfloor{ + dir = 5 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) +"jL" = ( +/obj/effect/step_trigger/lost_in_space/tram, +/turf/simulated/floor/maglev{ + icon = 'icons/turf/transit_vr.dmi' + }, +/area/space) "jQ" = ( /obj/effect/shuttle_landmark/transit{ base_area = /area/space; @@ -1904,28 +1947,47 @@ /obj/effect/floor_decal/sign/small_5, /turf/simulated/floor/holofloor/wood, /area/holodeck/source_chess) -"le" = ( -/obj/effect/floor_decal/transit/orange{ +"lf" = ( +/obj/effect/floor_decal/borderfloor/corner{ dir = 4 }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) +"li" = ( +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/grille, +/turf/simulated/floor/plating/eris/under, +/area/shuttle/escape) +"lE" = ( +/obj/effect/floor_decal/borderfloor{ + dir = 10 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) +"mb" = ( /obj/effect/step_trigger/lost_in_space/tram, +/obj/effect/floor_decal/transit/orange{ + dir = 8 + }, /turf/simulated/floor/tiled/techfloor/grid{ icon = 'icons/turf/transit_vr.dmi'; - initial_flooring = null; - icon_state = "techfloor_grid" + initial_flooring = null }, /area/space) -"mZ" = ( -/obj/effect/step_trigger/thrower{ - affect_ghosts = 1; - direction = 4; - name = "thrower_escapeshuttletop(right)"; - tiles = 0 +"mF" = ( +/obj/effect/shuttle_landmark{ + base_area = null; + base_turf = null; + docking_controller = null; + landmark_tag = "escape_transit"; + name = "Escape Transit" }, /turf/simulated/floor/tiled/techfloor/grid{ icon = 'icons/turf/transit_vr.dmi'; - initial_flooring = null; - icon_state = "techfloor_grid" + initial_flooring = null }, /area/space) "nj" = ( @@ -1938,6 +2000,23 @@ }, /turf/unsimulated/floor/steel, /area/centcom/control) +"nB" = ( +/obj/structure/bed/chair/shuttle{ + dir = 8 + }, +/obj/effect/floor_decal/borderfloor{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) +"nC" = ( +/obj/structure/table/standard, +/obj/structure/closet/walllocker/emerglocker{ + pixel_x = 32 + }, +/obj/item/clothing/head/beret/nanotrasen, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "nV" = ( /obj/item/toy/chess/rook_black, /turf/simulated/floor/holofloor/wmarble, @@ -1961,19 +2040,28 @@ /obj/effect/floor_decal/sign/small_8, /turf/simulated/floor/holofloor/wood, /area/holodeck/source_chess) -"pu" = ( -/obj/effect/floor_decal/transit/orange{ +"pk" = ( +/obj/effect/floor_decal/borderfloor{ dir = 4 }, -/obj/effect/transit/light{ +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) +"pv" = ( +/obj/effect/floor_decal/borderfloor{ dir = 4 }, -/turf/simulated/floor/tiled/techfloor/grid{ - icon = 'icons/turf/transit_vr.dmi'; - initial_flooring = null; - icon_state = "techfloor_grid" +/obj/effect/floor_decal/borderfloor{ + dir = 8 }, -/area/space) +/obj/machinery/door/airlock/glass_external{ + frequency = 1380; + icon_state = "door_locked"; + id_tag = "escape_shuttle_hatch_offsite"; + locked = 1; + name = "Shuttle Hatch" + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) "pF" = ( /obj/effect/shuttle_landmark/transit{ base_area = /area/space; @@ -1986,6 +2074,24 @@ "pT" = ( /turf/simulated/floor/holofloor/bmarble, /area/holodeck/source_chess) +"pX" = ( +/obj/effect/floor_decal/techfloor/orange{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor/grid, +/area/centcom/simulated/terminal) +"qc" = ( +/obj/structure/bed/chair/shuttle{ + dir = 8 + }, +/obj/effect/floor_decal/borderfloor{ + dir = 5 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "qn" = ( /turf/space/transit/east, /area/space) @@ -1997,20 +2103,22 @@ /turf/space, /turf/space/internal_edge/bottomright, /area/space) -"qH" = ( -/obj/effect/floor_decal/transit/orange{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid{ - icon = 'icons/turf/transit_vr.dmi'; - initial_flooring = null; - icon_state = "techfloor_grid" - }, -/area/space) "qV" = ( /obj/effect/floor_decal/sign/small_6, /turf/simulated/floor/holofloor/wood, /area/holodeck/source_chess) +"qY" = ( +/obj/effect/floor_decal/borderfloor/corner{ + dir = 8 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) +"rh" = ( +/obj/effect/floor_decal/borderfloor{ + dir = 4 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) "ru" = ( /obj/item/toy/chess/pawn_black, /turf/simulated/floor/holofloor/bmarble, @@ -2026,10 +2134,94 @@ "sl" = ( /turf/space/internal_edge/top, /area/space) +"sp" = ( +/obj/effect/floor_decal/techfloor/orange{ + dir = 8 + }, +/obj/effect/step_trigger/thrower{ + affect_ghosts = 1; + name = "thrower_throwdownside"; + nostop = 1; + stopper = 0; + tiles = 0 + }, +/turf/simulated/floor/tiled/techfloor/grid{ + icon = 'icons/turf/transit_vr.dmi'; + initial_flooring = null + }, +/area/space) +"sx" = ( +/obj/effect/floor_decal/techfloor/orange{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor/grid, +/area/centcom/simulated/terminal) "sF" = ( /obj/effect/overmap/bluespace_rift, /turf/unsimulated/map, /area/overmap) +"sN" = ( +/obj/effect/floor_decal/transit/orange{ + dir = 8 + }, +/obj/effect/transit/light{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor/grid{ + icon = 'icons/turf/transit_vr.dmi'; + initial_flooring = null + }, +/area/space) +"sT" = ( +/obj/structure/closet/hydrant{ + pixel_y = -32 + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/obj/effect/floor_decal/borderfloor/corner{ + dir = 8 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) +"ti" = ( +/obj/machinery/status_display{ + pixel_y = 32 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/floor_decal/borderfloor{ + dir = 9 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) +"tp" = ( +/obj/structure/bed/chair/shuttle{ + dir = 4 + }, +/obj/effect/floor_decal/borderfloor, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) +"tu" = ( +/obj/effect/floor_decal/techfloor/orange{ + dir = 4 + }, +/obj/effect/step_trigger/thrower{ + affect_ghosts = 1; + name = "thrower_throwdownside"; + nostop = 1; + stopper = 0; + tiles = 0 + }, +/obj/effect/floor_decal/transit/orange{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor/grid{ + icon = 'icons/turf/transit_vr.dmi'; + initial_flooring = null + }, +/area/space) "tC" = ( /obj/effect/floor_decal/industrial/warning{ dir = 4 @@ -2039,7 +2231,6 @@ "tD" = ( /obj/effect/step_trigger/thrower{ affect_ghosts = 1; - direction = 2; name = "thrower_throwdown"; stopper = 0; tiles = 0 @@ -2050,24 +2241,28 @@ /obj/effect/floor_decal/transit/orange{ dir = 8 }, -/obj/effect/step_trigger/lost_in_space/tram, -/turf/simulated/floor/tiled/techfloor/grid{ - icon = 'icons/turf/transit_vr.dmi'; - initial_flooring = null; - icon_state = "techfloor_grid" +/obj/effect/transit/light{ + dir = 8 }, -/area/space) -"tJ" = ( /obj/effect/step_trigger/thrower{ affect_ghosts = 1; - direction = 4; - name = "thrower_escapeshuttletop(right)"; + name = "thrower_throwdownside"; + nostop = 1; + stopper = 0; tiles = 0 }, -/turf/simulated/floor/maglev{ - icon = 'icons/turf/transit_vr.dmi' +/turf/simulated/floor/tiled/techfloor/grid{ + icon = 'icons/turf/transit_vr.dmi'; + initial_flooring = null }, /area/space) +"tS" = ( +/obj/structure/bed/chair/shuttle{ + dir = 8 + }, +/obj/effect/floor_decal/borderfloor, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "uc" = ( /turf/unsimulated/wall, /area/centcom/suppy) @@ -2078,8 +2273,8 @@ "ue" = ( /obj/structure/closet/crate, /turf/unsimulated/floor{ - icon_state = "vault"; - dir = 1 + dir = 1; + icon_state = "vault" }, /area/centcom/suppy) "uf" = ( @@ -2096,44 +2291,27 @@ icon_state = "dark" }, /area/centcom/suppy) +"uG" = ( +/obj/machinery/light{ + dir = 4 + }, +/obj/effect/floor_decal/industrial/warning/corner, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) "uM" = ( /obj/item/toy/chess/knight_black, /turf/simulated/floor/holofloor/wmarble, /area/holodeck/source_chess) -"vi" = ( -/obj/effect/step_trigger/thrower{ - affect_ghosts = 1; - direction = 2; - name = "thrower_throwdownside"; - nostop = 1; - stopper = 0; - tiles = 0 - }, -/turf/simulated/floor/maglev{ - icon = 'icons/turf/transit_vr.dmi' - }, -/area/space) -"vG" = ( -/obj/effect/step_trigger/lost_in_space/tram, -/turf/simulated/floor/maglev{ - icon = 'icons/turf/transit_vr.dmi' - }, -/area/space) -"vR" = ( -/obj/effect/step_trigger/thrower{ - affect_ghosts = 1; - direction = 2; - name = "thrower_throwdownside"; - nostop = 1; - stopper = 0; - tiles = 0 - }, -/turf/simulated/floor/tiled/techfloor/grid{ - icon = 'icons/turf/transit_vr.dmi'; - initial_flooring = null; - icon_state = "techfloor_grid" - }, -/area/space) +"vu" = ( +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced, +/obj/structure/grille, +/turf/simulated/floor/plating/eris/under, +/area/shuttle/escape) +"vz" = ( +/obj/effect/floor_decal/industrial/outline/blue, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) "vW" = ( /obj/effect/floor_decal/sign/small_a, /turf/simulated/floor/holofloor/wood, @@ -2162,19 +2340,6 @@ }, /turf/simulated/floor/tiled/steel, /area/centcom/simulated/main_hall) -"wr" = ( -/obj/effect/step_trigger/thrower{ - affect_ghosts = 1; - direction = 8; - name = "thrower_escapeshuttletop(left)"; - tiles = 0 - }, -/turf/simulated/floor/tiled/techfloor/grid{ - icon = 'icons/turf/transit_vr.dmi'; - initial_flooring = null; - icon_state = "techfloor_grid" - }, -/area/space) "wy" = ( /turf/unsimulated/wall, /area/centcom/control) @@ -2190,9 +2355,21 @@ }, /turf/unsimulated/floor/steel, /area/centcom/control) +"xi" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE" + }, +/turf/unsimulated/wall, +/area/centcom/simulated/terminal) +"xl" = ( +/obj/structure/table/standard, +/obj/random/maintenance/clean, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "xM" = ( /obj/machinery/light{ - icon_state = "tube1"; dir = 8 }, /turf/simulated/floor/tiled/steel, @@ -2216,16 +2393,6 @@ /obj/machinery/telecomms/receiver/preset_cent, /turf/unsimulated/floor/steel, /area/centcom/control) -"yF" = ( -/obj/effect/floor_decal/transit/orange{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid{ - icon = 'icons/turf/transit_vr.dmi'; - initial_flooring = null; - icon_state = "techfloor_grid" - }, -/area/space) "yK" = ( /obj/machinery/door/airlock/multi_tile/metal, /obj/effect/floor_decal/industrial/warning{ @@ -2233,45 +2400,73 @@ }, /turf/simulated/floor/tiled/steel, /area/centcom/simulated/main_hall) +"yU" = ( +/obj/effect/floor_decal/industrial/warning/corner{ + dir = 1 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) "zb" = ( /obj/effect/step_trigger/thrower{ direction = 1; name = "thrower_throwup"; - nostop = 0; tiles = 0 }, /turf/space/transit/east, /area/space) "zv" = ( -/obj/effect/floor_decal/transit/orange{ +/obj/effect/transit/light{ dir = 8 }, -/obj/effect/transit/light{ +/obj/effect/floor_decal/transit/orange{ dir = 8 }, /turf/simulated/floor/tiled/techfloor/grid{ icon = 'icons/turf/transit_vr.dmi'; - initial_flooring = null; - icon_state = "techfloor_grid" + initial_flooring = null }, /area/space) -"zK" = ( -/obj/machinery/door/blast/regular{ +"zw" = ( +/obj/effect/floor_decal/borderfloor{ + dir = 8 + }, +/obj/effect/floor_decal/borderfloor{ dir = 4 }, -/turf/simulated/floor/maglev, -/area/centcom/simulated/terminal) -"Al" = ( +/obj/machinery/door/airlock/glass_external{ + frequency = 1380; + icon_state = "door_locked"; + id_tag = "escape_shuttle_hatch_offsite"; + locked = 1; + name = "Shuttle Hatch" + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) +"zH" = ( /obj/effect/floor_decal/techfloor/orange{ dir = 8 }, +/obj/machinery/light{ + dir = 8 + }, /turf/simulated/floor/tiled/techfloor/grid, /area/centcom/simulated/terminal) +"zK" = ( +/obj/machinery/door/blast/regular{ + dir = 4 + }, +/turf/unsimulated/wall, +/area/centcom/simulated/terminal) +"Al" = ( +/obj/structure/bed/chair/shuttle, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "Av" = ( /obj/effect/step_trigger/thrower{ affect_ghosts = 1; - direction = 8; - name = "thrower_escapeshuttletop(left)"; + name = "thrower_throwdownside"; + nostop = 1; + stopper = 0; tiles = 0 }, /turf/simulated/floor/maglev{ @@ -2287,10 +2482,30 @@ "Az" = ( /turf/unsimulated/beach/coastline, /area/beach) +"AD" = ( +/obj/effect/floor_decal/borderfloor/corner, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) "Bm" = ( /obj/item/toy/chess/bishop_black, /turf/simulated/floor/holofloor/bmarble, /area/holodeck/source_chess) +"Bs" = ( +/obj/effect/floor_decal/borderfloor{ + dir = 4 + }, +/obj/effect/floor_decal/borderfloor{ + dir = 8 + }, +/obj/machinery/door/airlock/glass_external{ + frequency = 1380; + icon_state = "door_locked"; + id_tag = "escape_shuttle_hatch_station"; + locked = 1; + name = "Shuttle Hatch" + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) "Bw" = ( /turf/unsimulated/beach/water, /area/beach) @@ -2306,9 +2521,30 @@ /turf/space, /turf/space/internal_edge/bottomleft, /area/space) +"Cd" = ( +/obj/effect/floor_decal/borderfloor{ + dir = 6 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) "Cn" = ( /turf/simulated/sky/virgo3b/south, /area/space) +"Cp" = ( +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/effect/shuttle_landmark{ + base_area = /area/centcom/simulated/terminal; + base_turf = /turf/simulated/floor/tiled/techfloor/grid; + docking_controller = null; + landmark_tag = "escape_cc"; + name = "Escape Centcom" + }, +/obj/structure/grille, +/turf/simulated/floor/plating/eris/under, +/area/shuttle/escape) "Ct" = ( /obj/machinery/ntnet_relay, /turf/unsimulated/floor/steel, @@ -2323,6 +2559,15 @@ }, /turf/simulated/floor/tiled/steel, /area/centcom/simulated/main_hall) +"CG" = ( +/obj/structure/bed/chair/shuttle{ + dir = 4 + }, +/obj/effect/floor_decal/borderfloor{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "CJ" = ( /obj/item/toy/chess/pawn_white, /turf/simulated/floor/holofloor/bmarble, @@ -2340,6 +2585,19 @@ }, /turf/simulated/floor/tiled/steel, /area/space) +"Dm" = ( +/obj/effect/floor_decal/industrial/warning/corner, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) +"Dn" = ( +/obj/structure/bed/chair/shuttle{ + dir = 8 + }, +/obj/effect/floor_decal/borderfloor{ + dir = 6 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "Dw" = ( /obj/structure/table/standard, /obj/item/weapon/reagent_containers/food/snacks/chips, @@ -2349,6 +2607,12 @@ /turf/space, /turf/space/internal_edge/topright, /area/space) +"DI" = ( +/obj/effect/floor_decal/borderfloor{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "DL" = ( /obj/effect/floor_decal/sign/small_b, /turf/simulated/floor/holofloor/wood, @@ -2360,6 +2624,18 @@ /obj/effect/floor_decal/sign/small_g, /turf/simulated/floor/holofloor/wood, /area/holodeck/source_chess) +"Et" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/status_display{ + pixel_y = 32 + }, +/obj/effect/floor_decal/borderfloor{ + dir = 5 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) "ET" = ( /turf/simulated/floor/tiled/techfloor/grid, /area/centcom/simulated/terminal) @@ -2371,25 +2647,27 @@ /obj/structure/table/standard, /turf/unsimulated/beach/sand, /area/beach) +"Fe" = ( +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/grille, +/turf/simulated/floor/plating/eris/under, +/area/shuttle/escape) "Fp" = ( /turf/simulated/floor/maglev, /area/centcom/simulated/terminal) -"Fr" = ( +"Ft" = ( +/obj/effect/transit/light{ + dir = 4 + }, /obj/effect/floor_decal/transit/orange{ dir = 4 }, -/obj/effect/step_trigger/thrower{ - affect_ghosts = 1; - direction = 2; - name = "thrower_throwdownside"; - nostop = 1; - stopper = 0; - tiles = 0 - }, /turf/simulated/floor/tiled/techfloor/grid{ icon = 'icons/turf/transit_vr.dmi'; - initial_flooring = null; - icon_state = "techfloor_grid" + initial_flooring = null }, /area/space) "FH" = ( @@ -2403,20 +2681,39 @@ }, /turf/unsimulated/beach/sand, /area/beach) +"FJ" = ( +/obj/structure/bed/chair/shuttle{ + dir = 4 + }, +/obj/effect/floor_decal/borderfloor{ + dir = 10 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "FT" = ( -/obj/effect/shuttle_landmark{ - base_area = null; - base_turf = null; - docking_controller = null; - landmark_tag = "escape_transit"; - name = "Escape Transit" +/turf/simulated/floor/tiled/techfloor/grid{ + icon = 'icons/turf/transit_vr.dmi'; + initial_flooring = null + }, +/area/space) +"FX" = ( +/obj/effect/floor_decal/transit/orange{ + dir = 4 + }, +/obj/effect/transit/light{ + dir = 4 }, /turf/simulated/floor/tiled/techfloor/grid{ icon = 'icons/turf/transit_vr.dmi'; - initial_flooring = null; - icon_state = "techfloor_grid" + initial_flooring = null }, /area/space) +"FY" = ( +/obj/effect/floor_decal/borderfloor{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "Ga" = ( /turf/unsimulated/floor/steel, /area/centcom/control) @@ -2466,6 +2763,27 @@ /obj/machinery/telecomms/broadcaster/preset_cent, /turf/unsimulated/floor/steel, /area/centcom/control) +"HW" = ( +/obj/machinery/status_display{ + pixel_y = -30 + }, +/obj/structure/bed/chair/shuttle{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) +"HX" = ( +/obj/structure/closet/walllocker/emerglocker{ + pixel_x = -32 + }, +/obj/random/maintenance/clean, +/obj/structure/table/standard, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) +"Ic" = ( +/obj/effect/floor_decal/borderfloor, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) "Ik" = ( /obj/structure/table/standard, /obj/item/weapon/reagent_containers/food/drinks/cans/cola, @@ -2495,7 +2813,6 @@ }, /obj/effect/step_trigger/thrower{ affect_ghosts = 1; - direction = 2; name = "thrower_throwdownside"; nostop = 1; stopper = 0; @@ -2503,14 +2820,12 @@ }, /turf/simulated/floor/tiled/techfloor/grid{ icon = 'icons/turf/transit_vr.dmi'; - initial_flooring = null; - icon_state = "techfloor_grid" + initial_flooring = null }, /area/space) "IR" = ( /obj/effect/step_trigger/thrower{ affect_ghosts = 1; - direction = 2; name = "thrower_throwdown"; stopper = 0; tiles = 0 @@ -2521,6 +2836,19 @@ /obj/item/toy/chess/bishop_white, /turf/simulated/floor/holofloor/bmarble, /area/holodeck/source_chess) +"Jq" = ( +/obj/structure/sign/warning/docking_area, +/turf/unsimulated/wall, +/area/centcom/simulated/terminal) +"Jw" = ( +/obj/structure/bed/chair/shuttle{ + dir = 4 + }, +/obj/effect/floor_decal/borderfloor{ + dir = 9 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "Jx" = ( /obj/effect/floor_decal/corner_steel_grid/diagonal, /obj/effect/floor_decal/corner_steel_grid/diagonal{ @@ -2551,7 +2879,6 @@ "JL" = ( /obj/effect/step_trigger/thrower{ affect_ghosts = 1; - direction = 2; name = "thrower_throwdown"; nostop = 1; stopper = 0; @@ -2602,7 +2929,6 @@ /area/holodeck/source_chess) "Lg" = ( /obj/effect/floor_decal/industrial/warning{ - icon_state = "warning"; dir = 5 }, /turf/simulated/floor/tiled/steel, @@ -2611,33 +2937,52 @@ /obj/effect/step_trigger/teleporter/planetary_fall/virgo3b, /turf/simulated/sky/virgo3b/south, /area/space) -"Mb" = ( -/obj/effect/transit/light{ +"LD" = ( +/obj/machinery/light{ dir = 8 }, -/turf/unsimulated/mineral{ +/obj/effect/floor_decal/industrial/warning/corner{ + dir = 8 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) +"Mb" = ( +/obj/effect/floor_decal/transit/orange{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor/grid{ icon = 'icons/turf/transit_vr.dmi'; - icon_state = "rock" + initial_flooring = null + }, +/area/space) +"Mf" = ( +/obj/effect/step_trigger/lost_in_space/tram, +/turf/simulated/floor/tiled/techfloor/grid{ + icon = 'icons/turf/transit_vr.dmi'; + initial_flooring = null }, /area/space) "Mi" = ( /obj/item/toy/chess/bishop_white, /turf/simulated/floor/holofloor/wmarble, /area/holodeck/source_chess) +"Mq" = ( +/obj/effect/floor_decal/industrial/warning/corner{ + dir = 8 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) "ME" = ( /obj/machinery/computer/rdservercontrol{ - name = "Master R&D Server Controller"; - icon_state = "computer"; + badmin = 1; dir = 1; - badmin = 1 + name = "Master R&D Server Controller" }, /turf/unsimulated/floor/steel, /area/centcom/control) "MK" = ( /obj/machinery/light{ - dir = 4; - icon_state = "tube1"; - pixel_x = 0 + dir = 4 }, /turf/simulated/floor/tiled/steel, /area/centcom/simulated/main_hall) @@ -2662,7 +3007,6 @@ "Nr" = ( /obj/machinery/cryopod/robot/door/gateway, /obj/effect/floor_decal/industrial/warning{ - icon_state = "warning"; dir = 8 }, /turf/simulated/floor/tiled/steel, @@ -2673,6 +3017,24 @@ opacity = 1 }, /area/beach) +"NA" = ( +/obj/structure/closet/hydrant{ + pixel_y = -32 + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 8 + }, +/obj/effect/floor_decal/borderfloor/corner, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) +"NW" = ( +/obj/structure/table/standard, +/obj/structure/closet/walllocker/emerglocker{ + pixel_x = 32 + }, +/obj/random/maintenance/clean, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "Oj" = ( /obj/effect/step_trigger/thrower{ affect_ghosts = 1; @@ -2686,16 +3048,16 @@ /obj/item/toy/chess/knight_white, /turf/simulated/floor/holofloor/bmarble, /area/holodeck/source_chess) -"OR" = ( -/turf/simulated/shuttle/wall, -/area/shuttle/escape) "OY" = ( /turf/unsimulated/map, /area/overmap) "Pe" = ( +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 1 + }, /obj/structure/grille, -/obj/structure/shuttle/window, -/turf/simulated/shuttle/plating, +/turf/simulated/floor/plating/eris/under, /area/shuttle/escape) "Pf" = ( /obj/structure/table/woodentable{ @@ -2707,12 +3069,14 @@ /turf/simulated/floor/tiled, /area/centcom/simulated/terminal) "Pg" = ( -/turf/simulated/shuttle/wall/hard_corner, +/obj/structure/bed/chair/shuttle{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, /area/shuttle/escape) "Pi" = ( /obj/effect/step_trigger/thrower{ affect_ghosts = 1; - direction = 2; name = "thrower_throwdown"; nostop = 1; stopper = 0; @@ -2725,38 +3089,40 @@ icon = 'icons/turf/transit_vr.dmi' }, /area/space) +"Py" = ( +/obj/effect/step_trigger/thrower{ + affect_ghosts = 1; + name = "thrower_throwdownside"; + nostop = 1; + stopper = 0; + tiles = 0 + }, +/obj/effect/floor_decal/transit/orange{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor/grid{ + icon = 'icons/turf/transit_vr.dmi'; + initial_flooring = null + }, +/area/space) +"PU" = ( +/obj/effect/floor_decal/transit/orange{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor/grid{ + icon = 'icons/turf/transit_vr.dmi'; + initial_flooring = null + }, +/area/space) "Qa" = ( -/obj/structure/closet/hydrant{ - pixel_x = -30; - pixel_y = 0 - }, -/obj/item/weapon/storage/firstaid/o2{ - layer = 2.8; - pixel_x = 4; - pixel_y = 6 - }, -/obj/item/weapon/storage/firstaid/fire, -/obj/item/weapon/storage/firstaid/toxin, -/obj/structure/bed/chair/shuttle, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" - }, +/obj/structure/table/standard, +/obj/random/soap, +/turf/simulated/floor/tiled/techfloor, /area/shuttle/escape) "Qs" = ( /obj/item/toy/chess/queen_black, /turf/simulated/floor/holofloor/bmarble, /area/holodeck/source_chess) -"QW" = ( -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" - }, -/area/shuttle/escape) -"QX" = ( -/obj/structure/bed/chair/shuttle, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" - }, -/area/shuttle/escape) "QY" = ( /obj/structure/flora/pottedplant{ icon_state = "plant-21" @@ -2770,100 +3136,47 @@ /turf/simulated/floor/tiled/techfloor/grid, /area/centcom/simulated/terminal) "Rd" = ( -/obj/structure/table/standard, -/obj/random/maintenance/clean, -/obj/machinery/light{ - dir = 1 - }, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" +/obj/effect/floor_decal/borderfloor{ + dir = 9 }, +/turf/simulated/floor/tiled/steel, /area/shuttle/escape) "Re" = ( -/obj/structure/table/standard, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" - }, -/area/shuttle/escape) -"Rf" = ( -/obj/machinery/status_display{ - pixel_y = 30 - }, -/obj/structure/table/standard, -/obj/machinery/light{ +/obj/effect/floor_decal/borderfloor{ dir = 1 }, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" - }, +/turf/simulated/floor/tiled/steel, /area/shuttle/escape) "Rg" = ( -/obj/structure/bed/chair/shuttle{ +/obj/effect/floor_decal/borderfloor/corner{ dir = 1 }, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" - }, +/turf/simulated/floor/tiled/steel, /area/shuttle/escape) -"Rh" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE" - }, -/turf/unsimulated/wall, -/area/centcom/simulated/terminal) "Ri" = ( -/obj/machinery/door/airlock/glass_external{ - frequency = 1380; - icon_state = "door_locked"; - id_tag = "escape_shuttle_hatch_station"; - locked = 1; - name = "Shuttle Hatch" +/obj/effect/floor_decal/borderfloor{ + dir = 8 }, -/turf/simulated/shuttle/floor/yellow, -/area/shuttle/escape) -"Rj" = ( -/obj/machinery/door/airlock/glass_external{ - frequency = 1380; - icon_state = "door_locked"; - id_tag = "escape_shuttle_hatch_offsite"; - locked = 1; - name = "Shuttle Hatch" - }, -/turf/simulated/shuttle/floor/yellow, +/turf/simulated/floor/tiled/steel, /area/shuttle/escape) "Rk" = ( /obj/structure/bed/chair/shuttle, -/obj/structure/closet/walllocker/emerglocker{ - pixel_x = -28 - }, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" - }, -/area/shuttle/escape) -"Rl" = ( -/obj/structure/bed/chair/shuttle, -/obj/structure/closet/walllocker/emerglocker{ - pixel_x = 28 - }, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" - }, +/turf/simulated/floor/tiled/steel, /area/shuttle/escape) "Rm" = ( -/obj/structure/table/standard, -/obj/random/junk, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" - }, +/turf/simulated/floor/tiled/steel, /area/shuttle/escape) "Ro" = ( -/obj/structure/table/standard, -/obj/random/maintenance/clean, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" +/obj/structure/closet/hydrant{ + pixel_y = 32 }, +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/obj/effect/floor_decal/borderfloor/corner{ + dir = 1 + }, +/turf/simulated/floor/tiled/steel, /area/shuttle/escape) "Rq" = ( /obj/machinery/door/blast/regular{ @@ -2885,19 +3198,11 @@ /turf/simulated/floor/tiled/steel, /area/centcom/simulated/main_hall) "Rs" = ( -/obj/structure/sign/nanotrasen, -/obj/effect/shuttle_landmark{ - base_area = /area/centcom/simulated/terminal; - base_turf = /turf/simulated/floor/tiled/techfloor/grid; - docking_controller = null; - landmark_tag = "escape_cc"; - name = "Escape Centcom" +/obj/structure/table/standard, +/obj/effect/floor_decal/borderfloor{ + dir = 1 }, -/turf/simulated/shuttle/wall, -/area/shuttle/escape) -"Rt" = ( -/obj/structure/sign/nanotrasen, -/turf/simulated/shuttle/wall, +/turf/simulated/floor/tiled/techfloor, /area/shuttle/escape) "Ru" = ( /turf/simulated/floor/tiled/steel, @@ -2917,83 +3222,44 @@ /obj/machinery/door/firedoor, /turf/simulated/floor/tiled/steel, /area/centcom/simulated/living) -"Rw" = ( -/obj/structure/table/standard, -/obj/item/clothing/head/beret/nanotrasen, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" - }, -/area/shuttle/escape) -"Rx" = ( -/obj/structure/table/standard, -/obj/random/plushie, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" - }, -/area/shuttle/escape) -"Ry" = ( -/obj/structure/bed/chair/shuttle{ - dir = 1 - }, -/obj/structure/closet/walllocker/emerglocker{ - pixel_x = -28 - }, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" - }, -/area/shuttle/escape) "Rz" = ( -/obj/structure/bed/chair/shuttle{ - dir = 1 - }, -/obj/structure/closet/walllocker/emerglocker{ - pixel_x = 28 - }, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" +/obj/effect/floor_decal/industrial/warning/corner{ + dir = 4 }, +/turf/simulated/floor/tiled/steel, /area/shuttle/escape) "RA" = ( -/obj/structure/grille, -/obj/structure/shuttle/window, -/turf/simulated/shuttle/floor/white, +/turf/simulated/floor/tiled/techfloor, /area/shuttle/escape) "RC" = ( -/obj/effect/floor_decal/industrial/outline/blue, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" +/obj/effect/floor_decal/industrial/warning{ + dir = 4 }, +/turf/simulated/floor/tiled/steel, /area/shuttle/escape) "RD" = ( /obj/structure/bed/chair/shuttle{ - dir = 1 - }, -/obj/machinery/light, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" + dir = 8 }, +/turf/simulated/floor/tiled/techfloor, /area/shuttle/escape) "RE" = ( -/obj/effect/floor_decal/industrial/outline/blue, -/obj/machinery/light, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" +/obj/machinery/light{ + dir = 4 }, +/obj/effect/floor_decal/industrial/warning/corner{ + dir = 4 + }, +/turf/simulated/floor/tiled/steel, /area/shuttle/escape) "RF" = ( -/obj/random/junk, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" - }, +/obj/effect/floor_decal/borderfloor, +/turf/simulated/floor/tiled/techfloor, /area/shuttle/escape) "RG" = ( -/obj/structure/bed/chair/shuttle{ - dir = 1 - }, -/obj/random/soap, -/turf/simulated/shuttle/floor/white{ - color = "#cccccc" - }, +/obj/structure/table/standard, +/obj/effect/floor_decal/borderfloor, +/turf/simulated/floor/tiled/techfloor, /area/shuttle/escape) "RV" = ( /obj/effect/step_trigger/teleporter/random{ @@ -3008,16 +3274,16 @@ }, /turf/simulated/sky/virgo3b/south, /area/space) +"RY" = ( +/obj/machinery/light, +/obj/effect/floor_decal/borderfloor{ + dir = 10 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) "Sh" = ( -/obj/effect/floor_decal/transit/orange{ - dir = 4 - }, -/obj/effect/transit/light{ - dir = 4 - }, /obj/effect/step_trigger/thrower{ affect_ghosts = 1; - direction = 2; name = "thrower_throwdownside"; nostop = 1; stopper = 0; @@ -3025,19 +3291,13 @@ }, /turf/simulated/floor/tiled/techfloor/grid{ icon = 'icons/turf/transit_vr.dmi'; - initial_flooring = null; - icon_state = "techfloor_grid" + initial_flooring = null }, /area/space) "Sl" = ( -/obj/effect/floor_decal/techfloor/orange{ - dir = 8 - }, -/obj/machinery/camera/network/crescent{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/centcom/simulated/terminal) +/obj/structure/sign/nanotrasen, +/turf/simulated/wall/rshull, +/area/shuttle/escape) "Sm" = ( /turf/simulated/shuttle/wall/alien/blue/hard_corner, /area/unknown/dorm4) @@ -3080,6 +3340,13 @@ /obj/structure/fans, /turf/simulated/shuttle/floor/alien, /area/unknown/dorm4) +"Sy" = ( +/obj/machinery/light, +/obj/effect/floor_decal/borderfloor{ + dir = 6 + }, +/turf/simulated/floor/tiled/steel, +/area/shuttle/escape) "Sz" = ( /obj/machinery/smartfridge/survival_pod, /obj/item/weapon/storage/mre/menu11, @@ -3133,11 +3400,13 @@ /turf/simulated/shuttle/floor/alien, /area/unknown/dorm4) "SG" = ( -/obj/machinery/door/blast/regular{ - dir = 4 +/obj/structure/table/standard, +/obj/structure/closet/walllocker/emerglocker{ + pixel_x = -32 }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/centcom/simulated/terminal) +/obj/item/clothing/head/beret/nanotrasen, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "SH" = ( /obj/structure/bed/chair{ dir = 8 @@ -3243,7 +3512,6 @@ /area/centcom/simulated/living) "Th" = ( /obj/effect/floor_decal/industrial/warning{ - icon_state = "warning"; dir = 8 }, /turf/simulated/floor/tiled/steel, @@ -3329,6 +3597,15 @@ }, /turf/simulated/shuttle/floor/alien, /area/unknown/dorm3) +"Tv" = ( +/obj/structure/bed/chair/shuttle{ + dir = 8 + }, +/obj/effect/floor_decal/borderfloor{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "Tx" = ( /obj/structure/prop/alien/dispenser, /turf/simulated/shuttle/floor/alien, @@ -3782,9 +4059,7 @@ /turf/simulated/floor/tiled/steel, /area/centcom/simulated/evac) "Vo" = ( -/obj/machinery/door/blast/regular{ - dir = 1 - }, +/obj/machinery/door/blast/regular, /turf/simulated/floor/tiled/steel, /area/centcom/simulated/evac) "Vp" = ( @@ -3834,8 +4109,7 @@ /area/centcom/simulated/bathroom) "Vz" = ( /obj/machinery/light/small{ - dir = 8; - pixel_y = 0 + dir = 8 }, /turf/simulated/floor/tiled/white, /area/centcom/simulated/bathroom) @@ -3955,7 +4229,6 @@ /area/centcom/simulated/restaurant) "VZ" = ( /obj/structure/bed/chair/wood/wings{ - icon_state = "wooden_chair_wings"; dir = 4 }, /turf/simulated/floor/wood, @@ -3972,7 +4245,6 @@ /area/centcom/simulated/restaurant) "Wd" = ( /obj/structure/bed/chair/wood/wings{ - icon_state = "wooden_chair_wings"; dir = 8 }, /turf/simulated/floor/wood, @@ -4046,7 +4318,6 @@ }, /obj/machinery/computer/cryopod/dorms{ name = "Company Property Retention System"; - pixel_x = 0; pixel_y = 32 }, /turf/simulated/floor/tiled/steel, @@ -4082,7 +4353,6 @@ }) "Wz" = ( /obj/structure/bed/chair/wood/wings{ - icon_state = "wooden_chair_wings"; dir = 1 }, /turf/simulated/floor/wood, @@ -4188,7 +4458,6 @@ /area/centcom/simulated/restaurant) "WN" = ( /obj/structure/bed/chair/wood/wings{ - icon_state = "wooden_chair_wings"; dir = 4 }, /obj/machinery/light{ @@ -4214,8 +4483,6 @@ "WR" = ( /obj/structure/table/woodentable, /obj/item/weapon/reagent_containers/food/snacks/toastedsandwich{ - pixel_w = 0; - pixel_x = 0; pixel_y = 10 }, /turf/simulated/floor/wood, @@ -4331,13 +4598,9 @@ dir = 4 }, /obj/item/device/radio/intercom{ - broadcasting = 0; dir = 1; frequency = 1475; - icon_state = "intercom"; - listening = 1; name = "Station Intercom (Security)"; - pixel_x = 0; pixel_y = 27 }, /turf/simulated/floor/tiled, @@ -4393,7 +4656,6 @@ }, /obj/structure/sink{ dir = 4; - icon_state = "sink"; pixel_x = 12; pixel_y = 8 }, @@ -4413,20 +4675,13 @@ name = "\improper CentCom Security Arrivals" }) "XE" = ( -/obj/effect/floor_decal/techfloor/orange{ - dir = 8 - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/centcom/simulated/terminal) +/turf/simulated/wall/rshull, +/area/shuttle/escape) "XH" = ( /obj/structure/bed/chair{ dir = 8 }, /obj/machinery/light{ - icon_state = "tube1"; dir = 4 }, /turf/simulated/floor/tiled, @@ -4467,8 +4722,7 @@ "XQ" = ( /obj/machinery/optable, /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /obj/effect/floor_decal/industrial/hatch/yellow, /turf/simulated/floor/tiled/white, @@ -4501,8 +4755,6 @@ check_access = 0; check_anomalies = 0; check_records = 0; - check_synth = 0; - check_weapons = 0; control_area = "\improper CentCom Security Arrivals"; pixel_x = 32; req_access = list(101); @@ -4512,6 +4764,15 @@ /area/centcom/simulated/security{ name = "\improper CentCom Security Arrivals" }) +"XW" = ( +/obj/structure/bed/chair/shuttle{ + dir = 4 + }, +/obj/effect/floor_decal/borderfloor{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/escape) "XX" = ( /obj/machinery/computer/crew{ dir = 4 @@ -4564,7 +4825,6 @@ "Yk" = ( /obj/structure/medical_stand, /obj/machinery/light{ - icon_state = "tube1"; dir = 4 }, /turf/simulated/floor/tiled/white, @@ -4635,7 +4895,6 @@ /area/centcom/simulated/medical) "Yx" = ( /obj/machinery/light{ - icon_state = "tube1"; dir = 4 }, /turf/simulated/floor/tiled, @@ -4654,10 +4913,7 @@ 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, /obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{ pixel_x = 7; pixel_y = 1 @@ -4686,7 +4942,6 @@ /area/centcom/simulated/medical) "YG" = ( /obj/machinery/light{ - icon_state = "tube1"; dir = 4 }, /turf/simulated/floor/tiled/steel, @@ -4730,8 +4985,7 @@ /area/centcom/simulated/medical) "YN" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 9; - icon_state = "intact" + dir = 9 }, /turf/simulated/floor/tiled/white, /area/centcom/simulated/medical) @@ -4873,7 +5127,6 @@ /area/centcom/simulated/medical) "Zn" = ( /obj/machinery/light{ - icon_state = "tube1"; dir = 4 }, /turf/simulated/floor/tiled/white, @@ -4883,8 +5136,7 @@ /obj/item/weapon/book/manual/security_space_law, /obj/item/weapon/book/manual/security_space_law, /obj/machinery/light/small{ - dir = 8; - pixel_y = 0 + dir = 8 }, /turf/simulated/floor/tiled, /area/centcom/simulated/security{ @@ -4923,8 +5175,7 @@ /obj/item/weapon/storage/box/donkpockets, /obj/item/weapon/storage/box/donkpockets, /obj/machinery/light/small{ - dir = 8; - pixel_y = 0 + dir = 8 }, /turf/simulated/floor/tiled, /area/centcom/simulated/security{ @@ -4962,14 +5213,12 @@ pixel_y = 5 }, /obj/machinery/light{ - icon_state = "tube1"; dir = 4 }, /turf/simulated/floor/tiled/white, /area/centcom/simulated/medical) "ZC" = ( /obj/machinery/light{ - icon_state = "tube1"; dir = 4 }, /turf/simulated/floor/wood, @@ -8826,7 +9075,6 @@ OY Xl "} (28,1,1) = {" -ap Hy Hy Hy @@ -8859,17 +9107,18 @@ Hy Hy Hy Hy -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy ap ap ap @@ -8968,7 +9217,6 @@ OY Xl "} (29,1,1) = {" -ap Hy Hy Hy @@ -9001,17 +9249,18 @@ Hy Hy Hy Hy -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy ap ap ap @@ -9110,7 +9359,6 @@ OY Xl "} (30,1,1) = {" -ap Hy Hy Hy @@ -9143,17 +9391,18 @@ Hy Hy Hy Hy -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy ap ap ap @@ -9252,7 +9501,6 @@ OY Xl "} (31,1,1) = {" -ap Hy Hy Hy @@ -9285,17 +9533,18 @@ Hy Hy Hy Hy -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy ap ap ap @@ -9394,7 +9643,7 @@ OY Xl "} (32,1,1) = {" -ap +Hy Hy dg dg @@ -9426,6 +9675,17 @@ dg dg dg dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg Hy ap ap @@ -9488,17 +9748,6 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap Xl OY OY @@ -9536,50 +9785,50 @@ OY Xl "} (33,1,1) = {" -ap Hy -qH -qH +Hy +Mb +Mb zv -qH -qH -qH -dz +Mb +Mb +sN IN IN IN -dz +tH IN IN IN -dz +tH IN IN IN -dz +tH +sp +IN +IN +tH IN IN IN -dz +tH +IN +IN IN -qH -qH -zv -qH -qH tH Mb -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Mb +Mb +zv +Mb +Mb +sN +Mb +mb +sN +dg +Hy ap ap ap @@ -9678,38 +9927,49 @@ OY Xl "} (34,1,1) = {" -ap Hy -iY -iY -iY -iY -iY -iY -wr -wr -iY -iY -iY -iY -iY -iY +Hy FT -iY -iY -iY -iY -iY -iY -iY -vR -vR -iY -iY -iY -iY -iY -cC +FT +FT +FT +FT +FT +Sh +Sh +Sh +Sh +Sh +FT +FT +FT +FT +FT +FT +mF +FT +FT +FT +FT +FT +FT +FT +Sh +Sh +Sh +Sh +Sh +FT +FT +FT +FT +FT +FT +FT +FT +Mf +FT +dg Hy ap ap @@ -9772,17 +10032,6 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap Xl OY OY @@ -9820,7 +10069,7 @@ OY Xl "} (35,1,1) = {" -ap +Hy Hy Pq Pq @@ -9829,6 +10078,8 @@ Pq Pq Pq Av +Av +Av Pq Pq Pq @@ -9845,13 +10096,22 @@ Pq Pq Pq Pq -vi +Pq +Pq +Av +Av +Av Pq Pq Pq Pq Pq -vG +Pq +Pq +Pq +jL +Pq +dg Hy ap ap @@ -9914,17 +10174,6 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap Xl Xl Xl @@ -9962,50 +10211,50 @@ Xl Xl "} (36,1,1) = {" -ap Hy -iY -iY -iY -iY -iY -iY -wr -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -vR -iY -iY -iY -iY -iY -cC Hy -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +FT +FT +FT +FT +FT +FT +Sh +Sh +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +Sh +Sh +FT +FT +FT +FT +FT +FT +FT +FT +Mf +FT +dg +Hy ap ap ap @@ -10104,50 +10353,50 @@ ap ap "} (37,1,1) = {" -ap Hy -iY -iY -iY -iY -iY -iY -wr -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -vR -iY -iY -iY -iY -iY -cC Hy -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +FT +FT +FT +FT +FT +FT +Sh +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +Sh +FT +FT +FT +FT +FT +FT +FT +FT +Mf +FT +dg +Hy ap ap ap @@ -10246,50 +10495,50 @@ ap ap "} (38,1,1) = {" -ap Hy -iY -iY -iY -iY -iY -iY -mZ -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -vR -iY -iY -iY -iY -iY -cC Hy -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +FT +FT +FT +FT +FT +FT +Sh +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +Sh +FT +FT +FT +FT +FT +FT +FT +FT +Mf +FT +dg +Hy ap ap ap @@ -10388,50 +10637,50 @@ ap ap "} (39,1,1) = {" -ap Hy -iY -iY -iY -iY -iY -iY -mZ -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -vR -iY -iY -iY -iY -iY -cC Hy -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +FT +FT +FT +FT +FT +FT +Sh +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +Sh +FT +FT +FT +FT +FT +FT +FT +FT +Mf +FT +dg +Hy ap ap ap @@ -10530,50 +10779,50 @@ ap ap "} (40,1,1) = {" -ap Hy -Pq -Pq -Pq -Pq -Pq -Pq -tJ -Pq -Pq -Pq -Pq -Pq -Pq -Pq -Pq -Pq -Pq -Pq -Pq -Pq -Pq -Pq -Pq -vi -Pq -Pq -Pq -Pq -Pq -vG Hy -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +FT +FT +FT +FT +FT +FT +Sh +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +Sh +FT +FT +FT +FT +FT +FT +FT +FT +Mf +FT +dg +Hy ap ap ap @@ -10672,50 +10921,50 @@ ap ap "} (41,1,1) = {" -ap Hy -iY -iY -iY -iY -iY -iY -mZ -mZ -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -iY -vR -vR -iY -iY -iY -iY -iY -cC Hy -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +FT +FT +FT +FT +FT +FT +Sh +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +Sh +FT +FT +FT +FT +FT +FT +FT +FT +Mf +FT +dg +Hy ap ap ap @@ -10814,50 +11063,50 @@ ap ap "} (42,1,1) = {" -ap Hy -yF -yF -yF -pu -yF -yF -Fr -Sh -Fr -Fr -Fr -Sh -Fr -Fr -Fr -Sh -Fr -Fr -Fr -Sh -Fr -Fr -Fr -Sh -yF -yF -yF -pu -yF -le Hy -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +FT +FT +FT +FT +FT +FT +Sh +Sh +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +Sh +Sh +FT +FT +FT +FT +FT +FT +FT +FT +Mf +FT +dg +Hy ap ap ap @@ -10956,37 +11205,48 @@ ap ap "} (43,1,1) = {" -ap Hy -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg -dg +Hy +Pq +Pq +Pq +Pq +Pq +Pq +Av +Av +Av +Pq +Pq +Pq +Pq +Pq +Pq +Pq +Pq +Pq +Pq +Pq +Pq +Pq +Pq +Pq +Pq +Pq +Pq +Av +Av +Av +Pq +Pq +Pq +Pq +Pq +Pq +Pq +Pq +jL +Pq dg Hy ap @@ -11085,63 +11345,52 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap "} (44,1,1) = {" -ap Hy Hy +FT +FT +FT +FT +FT +FT +Sh +Sh +Sh +Sh +Sh +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +FT +Sh +Sh +Sh +Sh +Sh +FT +FT +FT +FT +FT +FT +FT +FT +Mf +FT +dg Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap ap ap ap @@ -11240,50 +11489,50 @@ ap ap "} (45,1,1) = {" -ap Hy Hy +PU +PU +Ft +PU +PU +FX +Py +Py +Py +ig +Py +Py +Py +ig +Py +Py +Py +ig +tu +Py +Py +ig +Py +Py +Py +ig +Py +Py +Py +ig +PU +PU +PU +Ft +PU +PU +FX +PU +in +FX +dg Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap ap ap ap @@ -11382,50 +11631,50 @@ ap ap "} (46,1,1) = {" -ap Hy Hy +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg +dg Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -Hy -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap ap ap ap @@ -11524,7 +11773,6 @@ ap ap "} (47,1,1) = {" -ap Hy Hy Hy @@ -11557,17 +11805,18 @@ Hy Hy Hy Hy -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy ap ap ap @@ -11666,50 +11915,50 @@ ap ap "} (48,1,1) = {" -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy ap ap ap @@ -11808,50 +12057,50 @@ ap ap "} (49,1,1) = {" -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy ap ap ap @@ -11950,50 +12199,50 @@ ap ap "} (50,1,1) = {" -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy +Hy ap ap ap @@ -15686,33 +15935,33 @@ ae ae ae ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap ap ap ap @@ -15828,33 +16077,33 @@ ae ae ae ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap ap ap ap @@ -15970,33 +16219,33 @@ ae ae ae ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap +ap ap ap ap @@ -16112,33 +16361,33 @@ ae ae ae ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae +Jq +dZ +dZ +dZ +dZ +dZ +dZ +xi +dZ +dZ +dZ +dZ +dZ +dZ +dZ +dZ +dZ +dZ +dZ +xi +dZ +dZ +dZ +dZ +dZ +dZ +aj ap ap ap @@ -16254,33 +16503,33 @@ ae ae ae ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae +zK +sx +sx +zH +sx +sx +sx +zH +sx +sx +sx +sx +zH +sx +zH +sx +sx +sx +sx +zH +sx +sx +sx +zH +sx +sx +zK ap ap ap @@ -16396,33 +16645,33 @@ ae ae ae ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae +zK +ET +ET +ET +ET +ET +XE +XE +dD +XE +Sl +Bs +Cp +li +Bs +Sl +XE +dD +XE +XE +ET +ET +ET +ET +ET +ET +zK ap ap ap @@ -16538,33 +16787,33 @@ ae ae ae ae -af -dZ -dZ -dZ -dZ -dZ -Rh -dZ -dZ -dZ -dZ -dZ -dZ -Rh -dZ -dZ -dZ -dZ -dZ -af -ae -ae -ae -ae -ae -ae -ae +zK +Fp +Fp +Fp +XE +XE +XE +XE +gE +yU +LD +ix +yU +Mq +ix +ih +Mq +NA +XE +XE +XE +XE +Fp +Fp +Fp +Fp +zK ap ap ap @@ -16680,33 +16929,33 @@ ae ae ae ae -ai -Al -Al +zK +ET +ET XE Sl Al -Al -XE -Al -Al -Al -Al -XE -Al -Al -Sl -XE -Al +HX +cq +Re +Jw +XW +FY +XW +XW +FY +XW +FJ +Ic Al SG -ae -ae -ae -ae -ae -ae -ae +HW +XE +XE +ET +ET +ET +zK ap ap ap @@ -16822,33 +17071,33 @@ ae ae ae ae -ai +zK ET -ET -OR -Pe -Pe +XE +XE +XE +ti Ri -OR -Pe +Ri +Rg Rs -Rt -Pe -OR +iU +RA +iU +iU +RA +iU +RG +qY Ri -RA -RA -OR +Ri +RY +Sl +XE +XE ET ET -SG -ae -ae -ae -ae -ae -ae -ae +zK ap ap ap @@ -16965,32 +17214,32 @@ ae ae ae zK -Fp -OR +ET +Pe Pg Rd Rg -QW Rk -Re -Rg -QX -Rw -Ry -QW -Rg +Rk +Rm +Tv RD +RA +RD +RD +RA +RD +tS +Rm +ii +ii +qY +lE Pg -OR -Fp +vu +ET +ET zK -ae -ae -ae -ae -ae -ae -ae ap ap ap @@ -17106,33 +17355,33 @@ ae ae ae ae -ai +zK ET Pe Qa Re -Rg -QW -QX Rm -Rg -QX -Re -Rg -QW -QW -QW +vz +vz +Rm +DI +RA +RA +RA +RA +RA +RA RF -Pe +Rm +vz +vz +Rm +Ic +xl +vu ET -SG -ae -ae -ae -ae -ae -ae -ae +ET +zK ap ap ap @@ -17248,33 +17497,33 @@ ae ae ae ae -ai +zK ET Pe -QW -QW -QW -QW -QW -QW -QW -QW -QW -QW -QW -QX -QX -Rg -Pe +RD +jr +lf +Rk +Rk +Rm +CG +Pg +RA +Pg +Pg +RA +Pg +tp +Rm +ii +ii +AD +Cd +RD +vu ET -SG -ae -ae -ae -ae -ae -ae -ae +ET +zK ap ap ap @@ -17390,33 +17639,33 @@ ae ae ae ae -ai +zK ET -Pe -QW -QW -QW -QW -QW -QW -QW -QW -QW -QW -QW -QX -QX +XE +XE +XE +Et +rh +rh +lf +Rs +iU +RA +iU +iU +RA +iU RG -Pe +AD +rh +rh +Sy +Sl +XE +XE ET -SG -ae -ae -ae -ae -ae -ae -ae +ET +zK ap ap ap @@ -17532,33 +17781,33 @@ ae ae ae ae -ai +zK ET -Pe -QX -Re -Rg -QW -QX -Re -Rg -QX -Re -Rg -QW -QW -QW -QW -Pe ET -SG -ae -ae -ae -ae -ae -ae -ae +XE +Sl +Al +nC +cq +Re +qc +nB +pk +nB +nB +pk +nB +Dn +Ic +Al +NW +HW +XE +XE +ET +ET +ET +zK ap ap ap @@ -17676,31 +17925,31 @@ ae ae zK Fp -OR -Pg -Rf -Rg -QW -Rl +Fp +Fp +XE +XE +XE +XE Ro -Rg -QX -Rx Rz -QW +uG +RC +Rz +Dm RC RE -Pg -OR +Dm +sT +XE +XE +XE +XE +Fp +Fp +Fp Fp zK -ae -ae -ae -ae -ae -ae -ae ap ap ap @@ -17816,33 +18065,33 @@ ae ae ae ae -ai +zK ET ET -OR -Pe -Pe -Rj -OR -Pe -Rt -Rt -Pe -OR -Rj -RA -RA -OR ET ET -SG -ae -ae -ae -ae -ae -ae -ae +ET +XE +XE +zw +XE +Sl +zw +Fe +Fe +zw +Sl +XE +pv +XE +XE +ET +ET +ET +ET +ET +ET +zK ap ap ap @@ -17958,7 +18207,7 @@ ae ae ae ae -ai +zK Rc Rc Rc @@ -17977,14 +18226,14 @@ Rc Rc Rc Rc -SG -ae -ae -ae -ae -ae -ae -ae +pX +Rc +Rc +Rc +pX +Rc +Rc +zK ap ap ap @@ -18120,13 +18369,13 @@ Jx Jx Zt aj -ae -ae -ae -ae -ae -ae -ae +dZ +dZ +dZ +dZ +dZ +dZ +aj ap ap ap diff --git a/maps/tether/tether-01-surface1.dmm b/maps/tether/tether-01-surface1.dmm index 206a78e81b..4dc24bf59a 100644 --- a/maps/tether/tether-01-surface1.dmm +++ b/maps/tether/tether-01-surface1.dmm @@ -322,9 +322,7 @@ /turf/simulated/floor/wood, /area/tether/surfacebase/medical/mentalhealth) "aaE" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, +/obj/machinery/atmospherics/unary/vent_pump/on, /turf/simulated/floor/wood, /area/tether/surfacebase/medical/mentalhealth) "aaF" = ( @@ -368,12 +366,6 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled/dark, /area/tether/surfacebase/medical/paramed) -"aaI" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/carpet/blue, -/area/tether/surfacebase/medical/mentalhealth) "aaJ" = ( /obj/structure/table/woodentable, /obj/item/weapon/folder/white, @@ -1424,12 +1416,6 @@ /obj/machinery/vending/loadout, /turf/simulated/floor/tiled, /area/crew_quarters/visitor_laundry) -"acA" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/turf/simulated/floor/carpet/blue, -/area/tether/surfacebase/medical/mentalhealth) "acB" = ( /obj/effect/floor_decal/borderfloor{ dir = 4 @@ -1460,9 +1446,6 @@ pixel_y = 10; range = 12 }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, /obj/machinery/button/windowtint{ id = "psych_office_inside"; pixel_x = 6; @@ -1770,16 +1753,10 @@ dir = 9 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 + dir = 10 }, /turf/simulated/floor/wood, /area/tether/surfacebase/medical/mentalhealth) -"adg" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/turf/simulated/floor/carpet/blue, -/area/tether/surfacebase/medical/mentalhealth) "adh" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/structure/cable/green{ @@ -1853,7 +1830,9 @@ /turf/simulated/floor/plating, /area/maintenance/lower/mining_eva) "adm" = ( -/obj/structure/bed/chair/bay/chair/padded/red/bignest, +/obj/structure/bed/chair/bay/chair/padded/red/bignest{ + name = "Tweeter's Bed" + }, /mob/living/simple_mob/animal/passive/bird/azure_tit/tweeter, /turf/simulated/floor/grass, /area/tether/surfacebase/medical/mentalhealth) @@ -2301,6 +2280,9 @@ /area/tether/surfacebase/medical/lowerhall) "adT" = ( /obj/structure/flora/pottedplant/fern, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, /turf/simulated/floor/wood, /area/tether/surfacebase/medical/mentalhealth) "adU" = ( @@ -3501,13 +3483,13 @@ /turf/simulated/floor/tiled, /area/tether/surfacebase/tram) "afH" = ( -/obj/effect/floor_decal/techfloor/orange{ +/obj/effect/floor_decal/industrial/danger{ dir = 4 }, -/obj/machinery/camera/network/civilian{ - dir = 9 +/obj/machinery/light{ + dir = 1 }, -/turf/simulated/floor/tiled/techfloor/grid, +/turf/simulated/floor/tiled/steel_grid, /area/tether/surfacebase/tram) "afI" = ( /obj/item/device/radio/intercom{ @@ -11554,16 +11536,22 @@ /turf/simulated/wall, /area/tether/surfacebase/tram) "atA" = ( -/obj/machinery/door/blast/regular, -/turf/simulated/floor/maglev, -/area/tether/surfacebase/tram) -"atB" = ( -/obj/machinery/door/blast/regular, +/obj/effect/floor_decal/techfloor/orange{ + dir = 8 + }, +/obj/structure/railing{ + dir = 8 + }, /turf/simulated/floor/tiled/techfloor/grid, /area/tether/surfacebase/tram) +"atB" = ( +/turf/simulated/floor/maglev, +/area/tether/surfacebase/tram) "atC" = ( -/obj/structure/sign/warning/docking_area, -/turf/simulated/wall, +/obj/effect/floor_decal/techfloor/orange{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor/grid, /area/tether/surfacebase/tram) "atD" = ( /obj/structure/closet/excavation, @@ -11813,10 +11801,13 @@ /turf/simulated/floor/tiled, /area/tether/surfacebase/tram) "aua" = ( -/obj/machinery/light{ - dir = 1 +/obj/effect/floor_decal/techfloor/orange{ + dir = 4 }, -/turf/simulated/floor/tiled, +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor/grid, /area/tether/surfacebase/tram) "aub" = ( /obj/effect/floor_decal/industrial/danger{ @@ -11834,12 +11825,22 @@ /turf/simulated/floor/tiled/techfloor/grid, /area/tether/surfacebase/tram) "aue" = ( -/turf/simulated/floor/maglev, +/obj/effect/shuttle_landmark{ + base_area = /area/tether/surfacebase/tram; + base_turf = /turf/simulated/floor/tiled/techfloor/grid; + docking_controller = null; + landmark_tag = "escape_station"; + name = "Tether Surface Base" + }, +/turf/simulated/floor/tiled/techfloor/grid, /area/tether/surfacebase/tram) "auf" = ( /obj/effect/floor_decal/techfloor/orange{ dir = 4 }, +/obj/machinery/camera/network/civilian{ + dir = 9 + }, /turf/simulated/floor/tiled/techfloor/grid, /area/tether/surfacebase/tram) "aug" = ( @@ -12148,10 +12149,10 @@ /area/tether/surfacebase/tram) "auD" = ( /obj/effect/floor_decal/techfloor/orange{ - dir = 4 + dir = 8 }, /obj/machinery/light{ - dir = 4 + dir = 8 }, /turf/simulated/floor/tiled/techfloor/grid, /area/tether/surfacebase/tram) @@ -12367,16 +12368,6 @@ }, /turf/simulated/floor/tiled/techmaint, /area/rnd/external) -"auX" = ( -/obj/effect/shuttle_landmark{ - base_area = /area/tether/surfacebase/tram; - base_turf = /turf/simulated/floor/tiled/techfloor/grid; - docking_controller = null; - landmark_tag = "escape_station"; - name = "Tether Surface Base" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tether/surfacebase/tram) "auY" = ( /obj/structure/cable/green{ d1 = 1; @@ -13224,14 +13215,6 @@ /obj/structure/disposalpipe/segment, /turf/simulated/floor/tiled, /area/tether/surfacebase/tram) -"awk" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE" - }, -/turf/simulated/wall, -/area/tether/surfacebase/tram) "awl" = ( /obj/effect/floor_decal/borderfloor{ dir = 8 @@ -15567,15 +15550,6 @@ }, /turf/simulated/floor/tiled, /area/tether/surfacebase/tram) -"azr" = ( -/obj/effect/floor_decal/techfloor/orange{ - dir = 8 - }, -/obj/structure/railing{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tether/surfacebase/tram) "azs" = ( /turf/simulated/wall/r_wall, /area/maintenance/lower/solars) @@ -27006,19 +26980,19 @@ /turf/simulated/wall, /area/crew_quarters/showers) "aUc" = ( -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aUd" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 6 }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aUe" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aUf" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ @@ -27027,13 +27001,13 @@ /obj/machinery/alarm{ pixel_y = 22 }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aUg" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aUh" = ( /obj/effect/floor_decal/borderfloor{ @@ -27323,24 +27297,24 @@ /obj/effect/floor_decal/steeldecal/steel_decals10{ dir = 5 }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aUH" = ( /obj/effect/floor_decal/steeldecal/steel_decals10{ dir = 6 }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aUI" = ( /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, /obj/machinery/light, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aUJ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aUK" = ( /obj/effect/floor_decal/borderfloor{ @@ -27473,13 +27447,13 @@ /obj/machinery/shower{ dir = 4 }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aUX" = ( /obj/machinery/shower{ dir = 8 }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aUY" = ( /obj/effect/floor_decal/borderfloor{ @@ -27723,7 +27697,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 6 }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aVr" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ @@ -27732,7 +27706,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aVs" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ @@ -27745,7 +27719,7 @@ /obj/machinery/door/airlock{ name = "Unisex Showers" }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aVt" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ @@ -28009,7 +27983,7 @@ /area/maintenance/lower/atmos) "aVJ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aVK" = ( /obj/effect/floor_decal/borderfloor{ @@ -28261,20 +28235,20 @@ /obj/effect/floor_decal/steeldecal/steel_decals10{ dir = 10 }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aWg" = ( /obj/effect/floor_decal/steeldecal/steel_decals10{ dir = 9 }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aWh" = ( /obj/machinery/atmospherics/unary/vent_pump/on, /obj/machinery/light{ dir = 1 }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aWi" = ( /obj/effect/floor_decal/borderfloor{ @@ -28446,23 +28420,23 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 5 }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aWE" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aWF" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aWG" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 9 }, -/turf/simulated/floor/tiled/freezer, +/turf/simulated/floor/tiled/white, /area/crew_quarters/showers) "aWH" = ( /obj/effect/floor_decal/borderfloor{ @@ -31247,9 +31221,6 @@ }, /turf/simulated/floor/tiled, /area/tether/surfacebase/public_garden_one) -"blL" = ( -/turf/simulated/floor, -/area/tether/surfacebase/outside/outside1) "bqI" = ( /turf/simulated/wall, /area/tether/surfacebase/security/brig/storage) @@ -31971,6 +31942,7 @@ /obj/machinery/light/small{ dir = 8 }, +/obj/machinery/washing_machine, /turf/simulated/floor/tiled/techfloor, /area/tether/surfacebase/lowernorthhall) "evF" = ( @@ -34586,6 +34558,9 @@ /obj/item/device/radio/intercom{ pixel_y = -24 }, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, /turf/simulated/floor/tiled, /area/tether/surfacebase/security/brig) "orf" = ( @@ -36456,12 +36431,12 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 1 + }, /turf/simulated/floor/tiled, /area/tether/surfacebase/security/brig) "xdV" = ( @@ -46932,8 +46907,8 @@ agd bbs bbC qDR -blL -blL +eQz +eQz abT wzA aku @@ -47074,8 +47049,8 @@ bbg bbu bbD adt -blL -blL +eQz +eQz abT tCV akt @@ -47217,7 +47192,7 @@ bbv bbE adt eQz -blL +eQz abT tCV ahs @@ -50744,10 +50719,10 @@ aad aad aad aar -aaI abL -acA -adg +abL +abL +abL aea afb atO @@ -53199,7 +53174,7 @@ aah aah aah atx -aua +auB auB auB auB @@ -53341,7 +53316,7 @@ aah aah baU aty -aub +afH aub aub aub @@ -53361,11 +53336,11 @@ aub aub aub aty -aad -aad -aad -aad -aad +atx +atx +atx +atx +aty aad aad aad @@ -53483,25 +53458,30 @@ aah aah baU atz +atA +atA +atA +atA +atA +atA +atA auc auc auc auc +atA +atA auc auc auc auc -azr -azr -azr -auc -auc -auc -auc -auc +atA +atA +auD auc auc auc +auD atz aad aad @@ -53560,11 +53540,6 @@ aad aad aad aad -aad -aad -aad -aad -aad aaa "} (120,1,1) = {" @@ -53634,7 +53609,12 @@ aud aud aud aud -auX +aud +aud +aud +aud +aud +aud aud aud aud @@ -53702,11 +53682,6 @@ aad aad aad aad -aad -aad -aad -aad -aad aaa "} (121,1,1) = {" @@ -53766,32 +53741,32 @@ aad aad aad aad -atA +atz +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -atA -aad -aad -aad -aad -aad +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +atz aad aad aad @@ -53908,32 +53883,32 @@ aad aad aad aad +atz atB -aud -aud -aud -aud -aud -aud -aud -aud -aud -aud -aud -aud -aud -aud -aud -aud -aud -aud -aud atB -aad -aad -aad -aad -aad +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atz aad aad aad @@ -54050,7 +54025,7 @@ aad aad aad aad -atB +atz aud aud aud @@ -54070,12 +54045,12 @@ aud aud aud aud -atB -aad -aad -aad -aad -aad +aud +aud +aud +aud +aud +atz aad aad aad @@ -54192,7 +54167,7 @@ aad aad aad aad -atB +atz aud aud aud @@ -54212,12 +54187,12 @@ aud aud aud aud -atB -aad -aad -aad -aad -aad +aud +aud +aud +aud +aud +atz aad aad aad @@ -54334,7 +54309,7 @@ aad aad aad aad -atB +atz aud aud aud @@ -54354,12 +54329,12 @@ aud aud aud aud -atB -aad -aad -aad -aad -aad +aud +aud +aud +aud +aud +atz aad aad aad @@ -54476,32 +54451,32 @@ aad aad aad aad -atA -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -aue -atA -aad -aad -aad -aad -aad +atz +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +atz aad aad aad @@ -54638,6 +54613,11 @@ aud aud aud aud +aud +aud +aud +aud +aud atz aad aad @@ -54685,11 +54665,6 @@ aad aad aad aad -aad -aad -aad -aad -aad bcV aad aad @@ -54761,25 +54736,30 @@ aad aad aad atz -auf -auD -auf -afH -auD -auf -auf -auD -auf -auf -auf -auD -auf -auf -auD -afH -auf -auD -auf +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud atz aad aad @@ -54838,11 +54818,6 @@ aad aad aad aad -aad -aad -aad -aad -aad aaa "} (129,1,1) = {" @@ -54902,32 +54877,32 @@ aad aad aad aad -atC -atx -atx -atx -atx -awk -atx -atx -atx -atx -awk -atx -atx -atx -atx -awk -atx -atx -atx -atx -atC -aad -aad -aad -aad -aad +atz +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +atz aad aad aad @@ -55044,32 +55019,32 @@ aad aad aad aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad +atz +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atB +atz aad aad aad @@ -55186,32 +55161,32 @@ aad aad aad aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad +atz +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +aud +atz aad aad aad @@ -55328,32 +55303,32 @@ aad aad aad aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad +atz +atC +atC +aua +atC +atC +atC +aua +atC +atC +auf +aua +atC +atC +aua +atC +atC +atC +aua +atC +auf +atC +aua +atC +atC +atz aad aad aad @@ -55470,32 +55445,32 @@ aad aad aad aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad -aad +aty +atx +atx +atx +atx +atx +atx +atx +atx +atx +atx +atx +atx +atx +atx +atx +atx +atx +atx +atx +atx +atx +atx +atx +atx +aty aad aad aad diff --git a/maps/tether/tether-02-surface2.dmm b/maps/tether/tether-02-surface2.dmm index 946f42025e..00dbdd7bf5 100644 --- a/maps/tether/tether-02-surface2.dmm +++ b/maps/tether/tether-02-surface2.dmm @@ -67,9 +67,7 @@ }, /obj/machinery/alarm{ dir = 4; - icon_state = "alarm0"; - pixel_x = -22; - pixel_y = 0 + pixel_x = -22 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/centralhall) @@ -254,9 +252,7 @@ dir = 9 }, /obj/machinery/firealarm{ - dir = 2; layer = 3.3; - pixel_x = 0; pixel_y = 26 }, /turf/simulated/floor/tiled/techfloor, @@ -337,9 +333,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/alarm{ dir = 4; - icon_state = "alarm0"; - pixel_x = -22; - pixel_y = 0 + pixel_x = -22 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/centralhall) @@ -394,8 +388,7 @@ /area/tether/surfacebase/medical/centralhall) "aaH" = ( /obj/machinery/vending/coffee{ - dir = 8; - icon_state = "coffee" + dir = 8 }, /obj/structure/window/reinforced, /turf/simulated/floor/wood, @@ -423,10 +416,6 @@ /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/centralhall) "aaJ" = ( -/obj/item/device/radio/intercom/department/medbay{ - dir = 8; - pixel_x = -24 - }, /obj/effect/floor_decal/borderfloorwhite{ dir = 8 }, @@ -557,9 +546,7 @@ icon_state = "4-8" }, /obj/effect/floor_decal/borderfloorwhite/corner2, -/obj/effect/floor_decal/corner/pink/bordercorner2{ - dir = 2 - }, +/obj/effect/floor_decal/corner/pink/bordercorner2, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/examroom) "aaQ" = ( @@ -604,7 +591,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 24 }, /obj/structure/cable/green{ @@ -685,7 +671,6 @@ }, /obj/structure/extinguisher_cabinet{ dir = 1; - icon_state = "extinguisher_closed"; pixel_y = 32 }, /turf/simulated/floor/tiled/white, @@ -693,8 +678,7 @@ "aaX" = ( /obj/item/device/radio/intercom{ dir = 1; - pixel_y = 24; - req_access = list() + pixel_y = 24 }, /obj/effect/floor_decal/borderfloorwhite{ dir = 1 @@ -715,8 +699,7 @@ /area/tether/surfacebase/medical/centralhall) "aaY" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4; - icon_state = "map-scrubbers" + dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 1 @@ -733,15 +716,9 @@ /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/centralhall) "aaZ" = ( -/obj/machinery/light{ - dir = 8 - }, /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 4 }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, /obj/effect/floor_decal/borderfloorwhite{ dir = 9 }, @@ -754,14 +731,16 @@ /obj/effect/floor_decal/corner/paleblue/bordercorner2{ dir = 10 }, +/obj/machinery/button/remote/airlock{ + desc = "A remote control switch for the medbay recovery room door."; + id = "MedicalRecovery"; + name = "Exit Button"; + pixel_x = -5; + pixel_y = 24 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/recoveryward) "aba" = ( -/obj/item/device/radio/intercom{ - dir = 1; - name = "Station Intercom (General)"; - pixel_y = 24 - }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 }, @@ -772,6 +751,9 @@ dir = 1 }, /obj/effect/floor_decal/steeldecal/steel_decals10, +/obj/structure/sign/poster{ + pixel_y = 32 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/recoveryward) "abb" = ( @@ -908,7 +890,6 @@ }, /obj/structure/extinguisher_cabinet{ dir = 1; - icon_state = "extinguisher_closed"; pixel_y = -32 }, /turf/simulated/floor/tiled/white, @@ -970,11 +951,6 @@ /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/centralhall) "abr" = ( -/obj/machinery/button/windowtint{ - id = "patient_room_a"; - pixel_x = 26; - pixel_y = -26 - }, /obj/effect/floor_decal/steeldecal/steel_decals4{ dir = 5 }, @@ -985,11 +961,6 @@ dir = 10 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/light_switch{ - dir = 1; - pixel_x = -24; - pixel_y = -30 - }, /obj/structure/cable/green{ d1 = 2; d2 = 8; @@ -1028,7 +999,6 @@ }, /obj/structure/extinguisher_cabinet{ dir = 1; - icon_state = "extinguisher_closed"; pixel_y = 32 }, /turf/simulated/floor/tiled/white, @@ -1047,30 +1017,10 @@ /area/tether/surfacebase/medical/uppernorthstairwell{ name = "\improper North Medical Stairwell" }) -"abv" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, -/obj/effect/floor_decal/borderfloorwhite{ - dir = 1 - }, -/obj/effect/floor_decal/corner/paleblue/border{ - dir = 1 - }, -/obj/machinery/alarm{ - pixel_y = 22 - }, -/obj/effect/floor_decal/borderfloorwhite/corner2{ - dir = 1 - }, -/obj/effect/floor_decal/corner/paleblue/bordercorner2{ - dir = 1 - }, -/turf/simulated/floor/tiled/white, -/area/tether/surfacebase/medical/centralhall) "abw" = ( /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 24 }, /obj/structure/cable/green{ @@ -1114,6 +1064,11 @@ /obj/structure/disposalpipe/trunk{ dir = 4 }, +/obj/item/device/radio/intercom{ + dir = 1; + name = "Station Intercom (General)"; + pixel_x = -28 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/recoveryward) "abz" = ( @@ -1149,12 +1104,17 @@ /obj/effect/floor_decal/corner/paleblue/border{ dir = 8 }, +/obj/machinery/button/windowtint{ + id = "ward_tint"; + pixel_x = -24; + pixel_y = 8; + range = 12 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/recoveryward) "abC" = ( /obj/structure/cable/green, /obj/machinery/power/apc{ - cell_type = /obj/item/weapon/cell/apc; dir = 8; name = "west bump"; pixel_x = -28 @@ -1198,11 +1158,6 @@ /turf/simulated/open, /area/tether/surfacebase/medical/centralstairwell) "abG" = ( -/obj/machinery/button/windowtint{ - id = "patient_room_b"; - pixel_x = -26; - pixel_y = -26 - }, /obj/effect/floor_decal/steeldecal/steel_decals4{ dir = 5 }, @@ -1213,11 +1168,6 @@ dir = 10 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/light_switch{ - dir = 1; - pixel_x = 24; - pixel_y = -30 - }, /obj/structure/cable/green{ d1 = 2; d2 = 8; @@ -1241,8 +1191,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /turf/simulated/floor/tiled/techfloor, /area/chapel/main) @@ -1282,8 +1231,7 @@ dir = 1 }, /obj/machinery/light/small{ - dir = 1; - icon_state = "bulb1" + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 6 @@ -1336,18 +1284,18 @@ }, /obj/machinery/newscaster{ layer = 3.3; - pixel_x = -27; - pixel_y = 0 + pixel_x = -27 }, /obj/machinery/status_display{ - density = 0; layer = 4; - pixel_x = 0; pixel_y = 32 }, /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 }, +/obj/machinery/light{ + dir = 1 + }, /turf/simulated/floor/wood, /area/tether/surfacebase/medical/cmo) "abP" = ( @@ -1363,9 +1311,6 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 6 }, -/obj/machinery/light{ - dir = 1 - }, /turf/simulated/floor/wood, /area/tether/surfacebase/medical/cmo) "abR" = ( @@ -1388,8 +1333,7 @@ }, /obj/machinery/alarm{ dir = 4; - pixel_x = -35; - pixel_y = 0 + pixel_x = -35 }, /obj/machinery/light{ dir = 8 @@ -1417,6 +1361,9 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 }, +/obj/machinery/light{ + dir = 1 + }, /turf/simulated/floor/wood, /area/tether/surfacebase/medical/cmo) "abU" = ( @@ -1515,7 +1462,6 @@ /obj/effect/floor_decal/corner/paleblue/border{ dir = 1 }, -/obj/structure/bed/chair, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/resleeving) "acd" = ( @@ -1531,7 +1477,6 @@ /obj/effect/floor_decal/corner/paleblue/border{ dir = 1 }, -/obj/structure/bed/chair, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/resleeving) "ace" = ( @@ -1564,8 +1509,7 @@ /obj/machinery/photocopier, /obj/machinery/firealarm{ dir = 8; - pixel_x = -24; - pixel_y = 0 + pixel_x = -24 }, /turf/simulated/floor/wood, /area/tether/surfacebase/medical/cmo) @@ -1585,7 +1529,6 @@ id = "medbayquar"; name = "Medbay Emergency Lockdown Control"; pixel_x = -36; - pixel_y = 0; req_access = list(5) }, /obj/machinery/button/remote/airlock{ @@ -1600,7 +1543,6 @@ id = "virologyquar"; name = "Virology Emergency Lockdown Control"; pixel_x = -28; - pixel_y = 0; req_access = list(5) }, /obj/machinery/button/windowtint{ @@ -1661,14 +1603,11 @@ "acq" = ( /obj/structure/sink{ dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 + pixel_x = 11 }, /obj/structure/mirror{ dir = 4; - pixel_x = 25; - pixel_y = 0 + pixel_x = 25 }, /obj/effect/floor_decal/techfloor{ dir = 4 @@ -1714,20 +1653,6 @@ /obj/effect/floor_decal/corner/paleblue/bordercorner2{ dir = 5 }, -/obj/machinery/button/remote/airlock{ - desc = "A remote control switch for the medbay recovery room door."; - dir = 8; - id = "SurfMedicalResleeving"; - name = "Exit Button"; - pixel_x = 28; - pixel_y = -4 - }, -/obj/machinery/button/windowtint/multitint{ - dir = 8; - id = "surfresleeving"; - pixel_x = 28; - pixel_y = 8 - }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/resleeving) "acv" = ( @@ -1750,8 +1675,7 @@ dir = 8 }, /obj/machinery/camera/network/medbay{ - dir = 9; - icon_state = "camera" + dir = 9 }, /obj/structure/window/reinforced{ dir = 1 @@ -1776,12 +1700,16 @@ /obj/item/weapon/stamp/cmo, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, /turf/simulated/floor/carpet, /area/tether/surfacebase/medical/cmo) "acB" = ( /obj/structure/table/glass, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, +/obj/machinery/computer/med_data/laptop{ + dir = 1; + pixel_y = 4 + }, /turf/simulated/floor/carpet, /area/tether/surfacebase/medical/cmo) "acC" = ( @@ -1790,14 +1718,8 @@ "acD" = ( /obj/structure/table/glass, /obj/machinery/computer/skills{ - dir = 8; - icon_state = "laptop"; - pixel_x = 4; - pixel_y = -3 - }, -/obj/machinery/computer/med_data/laptop{ - dir = 8; - pixel_x = -4; + dir = 1; + pixel_x = -9; pixel_y = 4 }, /obj/machinery/requests_console{ @@ -1875,6 +1797,9 @@ /obj/effect/floor_decal/corner/paleblue/bordercorner2{ dir = 4 }, +/obj/machinery/alarm{ + pixel_y = 22 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/centralhall) "acJ" = ( @@ -1885,11 +1810,6 @@ /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 8 }, -/obj/structure/cable/green{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/resleeving) "acK" = ( @@ -1899,9 +1819,6 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/resleeving) "acL" = ( @@ -1909,8 +1826,7 @@ /obj/item/device/reagent_scanner, /obj/item/device/mass_spectrometer/adv, /obj/machinery/camera/network/security{ - dir = 5; - icon_state = "camera" + dir = 5 }, /obj/structure/cable/green{ d1 = 1; @@ -2005,8 +1921,7 @@ }, /obj/machinery/alarm{ dir = 4; - pixel_x = -23; - pixel_y = 0 + pixel_x = -23 }, /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 @@ -2025,7 +1940,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 24 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ @@ -2067,7 +1981,7 @@ }, /obj/effect/floor_decal/steeldecal/steel_decals4, /obj/structure/cable/green{ - icon_state = "4-8" + icon_state = "2-4" }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/resleeving) @@ -2225,17 +2139,14 @@ /turf/simulated/wall, /area/tether/surfacebase/medical/examroom) "adj" = ( -/obj/machinery/shower{ - dir = 4; - icon_state = "shower"; - pixel_x = 2; - pixel_y = 0 - }, /obj/structure/curtain/open/shower/medical, /obj/effect/floor_decal/steeldecal/steel_decals10, /obj/effect/floor_decal/steeldecal/steel_decals10{ dir = 4 }, +/obj/machinery/shower{ + dir = 1 + }, /turf/simulated/floor/tiled/dark, /area/tether/surfacebase/medical/resleeving) "adk" = ( @@ -2351,11 +2262,6 @@ /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 4 }, -/obj/structure/cable/green{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/resleeving) "adt" = ( @@ -2395,9 +2301,7 @@ "adA" = ( /obj/structure/table/reinforced, /obj/machinery/computer/med_data/laptop{ - dir = 8; - pixel_x = 0; - pixel_y = 0 + dir = 8 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/security/detective) @@ -2437,7 +2341,6 @@ "adE" = ( /obj/machinery/firealarm{ dir = 1; - pixel_x = 0; pixel_y = -26 }, /turf/simulated/floor/tiled/dark, @@ -2447,31 +2350,17 @@ name = "Evidence Closet" }, /obj/machinery/light/small{ - dir = 4; - pixel_y = 0 + dir = 4 }, /turf/simulated/floor/tiled/dark, /area/tether/surfacebase/security/evidence) "adG" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/resleeving) "adH" = ( -/obj/machinery/organ_printer/flesh, -/obj/machinery/power/apc{ - dir = 4; - name = "east bump"; - pixel_x = 28 - }, -/obj/structure/cable/green{ - d2 = 8; - icon_state = "0-8" - }, /obj/effect/floor_decal/borderfloorwhite{ dir = 4 }, @@ -2484,6 +2373,23 @@ /obj/effect/floor_decal/corner/paleblue/bordercorner2{ dir = 6 }, +/obj/structure/cable/green{ + icon_state = "1-2" + }, +/obj/machinery/button/remote/airlock{ + desc = "A remote control switch for the medbay recovery room door."; + dir = 8; + id = "SurfMedicalResleeving"; + name = "Exit Button"; + pixel_x = 28; + pixel_y = -4 + }, +/obj/machinery/button/windowtint/multitint{ + dir = 8; + id = "surfresleeving"; + pixel_x = 28; + pixel_y = 8 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/resleeving) "adI" = ( @@ -2529,8 +2435,7 @@ dir = 8 }, /obj/machinery/camera/network/medbay{ - dir = 8; - icon_state = "camera" + dir = 8 }, /turf/simulated/floor/wood, /area/tether/surfacebase/medical/cmo) @@ -2704,7 +2609,6 @@ }, /obj/machinery/firealarm{ dir = 1; - pixel_x = 0; pixel_y = -24 }, /obj/effect/floor_decal/borderfloorwhite/corner2{ @@ -2719,7 +2623,6 @@ "adZ" = ( /obj/machinery/computer/guestpass{ dir = 1; - icon_state = "guest"; pixel_y = -28 }, /obj/effect/floor_decal/borderfloorwhite, @@ -2730,6 +2633,7 @@ /obj/effect/floor_decal/corner/paleblue/bordercorner2{ dir = 9 }, +/obj/machinery/organ_printer/flesh, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/resleeving) "aea" = ( @@ -2785,8 +2689,7 @@ /obj/structure/table/glass, /obj/machinery/alarm{ dir = 4; - pixel_x = -23; - pixel_y = 0 + pixel_x = -23 }, /obj/item/weapon/clipboard, /obj/effect/floor_decal/borderfloorwhite{ @@ -2801,8 +2704,7 @@ /obj/structure/window/reinforced, /obj/machinery/dnaforensics, /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/security/detective) @@ -2853,8 +2755,7 @@ /obj/structure/window/reinforced, /obj/structure/filingcabinet, /obj/machinery/light{ - dir = 4; - icon_state = "tube1" + dir = 4 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/security/detective) @@ -2882,8 +2783,7 @@ "aen" = ( /obj/machinery/vending/loadout/uniform, /obj/machinery/camera/network/medbay{ - dir = 10; - icon_state = "camera" + dir = 10 }, /obj/effect/floor_decal/borderfloorwhite{ dir = 6 @@ -2891,6 +2791,11 @@ /obj/effect/floor_decal/corner/paleblue/border{ dir = 6 }, +/obj/machinery/power/apc{ + name = "south bump"; + pixel_y = -28 + }, +/obj/structure/cable/green, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/resleeving) "aeo" = ( @@ -2914,8 +2819,7 @@ /obj/structure/filingcabinet/chestdrawer, /obj/machinery/alarm{ dir = 8; - pixel_x = 25; - pixel_y = 0 + pixel_x = 25 }, /turf/simulated/floor/wood, /area/tether/surfacebase/medical/cmo) @@ -2940,8 +2844,7 @@ /obj/structure/table/glass, /obj/machinery/alarm{ dir = 4; - pixel_x = -23; - pixel_y = 0 + pixel_x = -23 }, /obj/item/weapon/clipboard, /obj/effect/floor_decal/borderfloorwhite{ @@ -2975,8 +2878,7 @@ /obj/structure/table/glass, /obj/machinery/alarm{ dir = 4; - pixel_x = -23; - pixel_y = 0 + pixel_x = -23 }, /obj/item/weapon/clipboard, /obj/effect/floor_decal/borderfloorwhite{ @@ -3056,8 +2958,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/structure/cable{ d1 = 2; @@ -3082,8 +2983,7 @@ /area/tether/surfacebase/security/detective) "aeI" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5; - icon_state = "intact-scrubbers" + dir = 5 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 6 @@ -3123,8 +3023,7 @@ dir = 10 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /obj/structure/cable/green{ icon_state = "4-8" @@ -3340,14 +3239,14 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = -27; + pixel_y = -28 + }, /turf/simulated/floor/wood, /area/tether/surfacebase/medical/cmo) "afe" = ( -/obj/machinery/light_switch{ - dir = 1; - pixel_x = 24; - pixel_y = -30 - }, /obj/structure/cable/green{ d1 = 1; d2 = 2; @@ -3357,8 +3256,7 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4; - icon_state = "map-scrubbers" + dir = 4 }, /obj/structure/disposalpipe/segment, /turf/simulated/floor/wood, @@ -3417,14 +3315,19 @@ /obj/structure/cable/green{ icon_state = "0-4" }, +/obj/machinery/button/windowtint{ + id = "patient_room_a"; + pixel_x = -3; + pixel_y = -22 + }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = 6; + pixel_y = -22 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/patient_a) "afi" = ( -/obj/machinery/button/windowtint{ - id = "patient_room_c"; - pixel_x = -26; - pixel_y = -26 - }, /obj/effect/floor_decal/steeldecal/steel_decals4{ dir = 5 }, @@ -3435,11 +3338,6 @@ dir = 10 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/light_switch{ - dir = 1; - pixel_x = 24; - pixel_y = -30 - }, /obj/structure/cable/green{ d1 = 2; d2 = 8; @@ -3478,6 +3376,16 @@ /obj/machinery/light/small{ dir = 4 }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = 6; + pixel_y = -22 + }, +/obj/machinery/button/windowtint{ + id = "patient_room_c"; + pixel_x = -3; + pixel_y = -22 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/patient_c) "afl" = ( @@ -3514,7 +3422,6 @@ "afm" = ( /obj/machinery/light_switch{ dir = 1; - pixel_x = 0; pixel_y = -28 }, /obj/structure/disposalpipe/segment{ @@ -3560,6 +3467,16 @@ /obj/machinery/light/small{ dir = 4 }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = 6; + pixel_y = -22 + }, +/obj/machinery/button/windowtint{ + id = "patient_room_b"; + pixel_x = -3; + pixel_y = -22 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/patient_b) "afo" = ( @@ -3589,8 +3506,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/structure/catwalk, /turf/simulated/floor/tiled/techfloor, @@ -3599,8 +3515,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/structure/catwalk, /obj/structure/catwalk, @@ -3715,8 +3630,7 @@ dir = 8 }, /obj/effect/floor_decal/corner/red/bordercorner{ - dir = 8; - icon_state = "bordercolorcorner" + dir = 8 }, /turf/simulated/floor/tiled, /area/tether/surfacebase/security/middlehall) @@ -3735,8 +3649,7 @@ /area/tether/surfacebase/security/middlehall) "afG" = ( /obj/machinery/light{ - dir = 4; - icon_state = "tube1" + dir = 4 }, /obj/effect/floor_decal/borderfloor{ dir = 4 @@ -3745,8 +3658,7 @@ dir = 4 }, /obj/machinery/vending/fitness{ - dir = 4; - icon_state = "fitness" + dir = 4 }, /turf/simulated/floor/tiled, /area/tether/surfacebase/security/middlehall) @@ -3763,13 +3675,10 @@ }, /obj/item/device/radio/intercom/department/security{ dir = 8; - icon_state = "secintercom"; - pixel_x = -24; - pixel_y = 0 + pixel_x = -24 }, /obj/structure/extinguisher_cabinet{ dir = 1; - icon_state = "extinguisher_closed"; pixel_y = 32 }, /turf/simulated/floor/tiled/dark, @@ -3969,7 +3878,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 24 }, /obj/structure/cable/green{ @@ -4160,8 +4068,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /turf/simulated/floor/plating, /area/maintenance/lower/north) @@ -4177,14 +4084,12 @@ /obj/structure/catwalk, /obj/machinery/alarm{ dir = 8; - icon_state = "alarm0"; pixel_x = 24 }, /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /turf/simulated/floor/plating, /area/maintenance/lower/north) @@ -4257,8 +4162,7 @@ "agv" = ( /obj/machinery/firealarm{ dir = 8; - pixel_x = -24; - pixel_y = 0 + pixel_x = -24 }, /obj/effect/floor_decal/borderfloor{ dir = 8 @@ -4423,7 +4327,6 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/alarm{ dir = 8; - icon_state = "alarm0"; pixel_x = 24 }, /turf/simulated/floor/tiled/dark, @@ -4444,8 +4347,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /turf/simulated/floor/plating, /area/maintenance/lower/north) @@ -4454,8 +4356,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /turf/simulated/floor/tiled/techfloor/grid, /area/tether/surfacebase/surface_two_hall) @@ -4519,8 +4420,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/structure/cable{ icon_state = "2-4" @@ -4583,8 +4483,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -4606,8 +4505,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -4620,21 +4518,12 @@ }, /obj/machinery/computer/guestpass{ dir = 4; - pixel_x = -28; - pixel_y = 0 + pixel_x = -28 }, /obj/machinery/door/firedoor/glass/hidden, /turf/simulated/floor/tiled/techmaint, /area/tether/surfacebase/surface_two_hall) "aha" = ( -/obj/machinery/button/remote/airlock{ - desc = "A remote control switch for the medbay recovery room door."; - dir = 2; - id = "SurfMedicalResleevingMaintExit"; - name = "Exit Button"; - pixel_x = 28; - pixel_y = -28 - }, /obj/effect/floor_decal/steeldecal/steel_decals4{ dir = 5 }, @@ -4656,6 +4545,9 @@ /obj/structure/bookcase, /obj/item/weapon/book/manual/security_space_law, /obj/item/weapon/book/manual/security_space_law, +/obj/machinery/light{ + dir = 1 + }, /turf/simulated/floor/carpet, /area/tether/surfacebase/security/detective/officea) "ahe" = ( @@ -4663,7 +4555,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 24 }, /obj/structure/cable/green{ @@ -4694,7 +4585,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 24 }, /obj/structure/cable/green{ @@ -4707,13 +4597,15 @@ /obj/structure/bookcase, /obj/item/weapon/book/manual/security_space_law, /obj/item/weapon/book/manual/security_space_law, +/obj/machinery/light{ + dir = 1 + }, /turf/simulated/floor/carpet, /area/tether/surfacebase/security/detective/officeb) "ahl" = ( /obj/machinery/alarm{ dir = 4; - pixel_x = -23; - pixel_y = 0 + pixel_x = -23 }, /obj/effect/floor_decal/borderfloor{ dir = 8 @@ -4732,8 +4624,7 @@ icon_state = "1-2" }, /obj/machinery/camera/network/security{ - dir = 8; - icon_state = "camera" + dir = 8 }, /obj/effect/floor_decal/borderfloor{ dir = 4 @@ -4769,8 +4660,7 @@ }, /obj/structure/closet/secure_closet/security, /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /obj/item/device/holowarrant, /turf/simulated/floor/tiled/dark, @@ -4802,12 +4692,10 @@ /area/tether/surfacebase/security/outfitting) "ahr" = ( /obj/effect/floor_decal/borderfloorblack/corner{ - dir = 8; - icon_state = "borderfloorcorner_black" + dir = 8 }, /obj/effect/floor_decal/corner/red/bordercorner{ - dir = 8; - icon_state = "bordercolorcorner" + dir = 8 }, /obj/structure/table/bench/steel, /obj/effect/landmark/start{ @@ -4833,7 +4721,6 @@ }, /obj/machinery/alarm{ dir = 8; - icon_state = "alarm0"; pixel_x = 24 }, /obj/item/device/holowarrant, @@ -4869,8 +4756,7 @@ /obj/machinery/vending/security, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/light{ - dir = 4; - icon_state = "tube1" + dir = 4 }, /turf/simulated/floor/tiled/dark, /area/tether/surfacebase/security/outfitting/storage) @@ -4899,8 +4785,7 @@ dir = 4 }, /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /turf/simulated/floor/tiled/dark, /area/tether/surfacebase/security/armory) @@ -4958,8 +4843,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/structure/window/basic{ dir = 4 @@ -4991,7 +4875,6 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/structure/disposalpipe/sortjunction{ dir = 1; - icon_state = "pipe-j1s"; name = "CMO Office"; sortType = "CMO Office" }, @@ -5025,17 +4908,11 @@ }, /obj/effect/floor_decal/borderfloorwhite, /obj/effect/floor_decal/corner/paleblue/border, -/obj/machinery/firealarm{ - dir = 1; - pixel_x = 0; - pixel_y = -24 - }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/centralhall) "ahH" = ( /obj/structure/disposalpipe/sortjunction{ dir = 4; - icon_state = "pipe-j1s"; name = "CMO Office"; sortType = "CMO Office" }, @@ -5044,7 +4921,6 @@ "ahI" = ( /obj/structure/disposalpipe/sortjunction{ dir = 4; - icon_state = "pipe-j1s"; name = "Medical Breakroom"; sortType = "Medical Breakroom" }, @@ -5058,8 +4934,7 @@ "ahK" = ( /obj/machinery/alarm{ dir = 8; - pixel_x = 25; - pixel_y = 0 + pixel_x = 25 }, /obj/effect/floor_decal/borderfloorwhite{ dir = 4 @@ -5238,8 +5113,7 @@ /obj/structure/closet/secure_closet/security, /obj/machinery/firealarm{ dir = 8; - pixel_x = -24; - pixel_y = 0 + pixel_x = -24 }, /obj/item/device/holowarrant, /turf/simulated/floor/tiled/dark, @@ -5346,7 +5220,6 @@ "ail" = ( /obj/structure/table/steel, /obj/item/ammo_magazine/m45/rubber{ - pixel_x = 0; pixel_y = 9 }, /obj/item/ammo_magazine/m45/rubber{ @@ -5354,7 +5227,6 @@ pixel_y = 3 }, /obj/item/ammo_magazine/m45/rubber{ - pixel_x = 0; pixel_y = -3 }, /obj/machinery/recharger/wallcharger{ @@ -5400,8 +5272,7 @@ /area/tether/surfacebase/security/armory) "aip" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 @@ -5465,7 +5336,6 @@ /obj/structure/table/glass, /obj/structure/cable/green{ d2 = 8; - dir = 2; icon_state = "0-8" }, /turf/simulated/floor/tiled/white, @@ -5539,6 +5409,9 @@ /obj/effect/floor_decal/corner_steel_grid{ dir = 10 }, +/obj/machinery/light{ + dir = 1 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/recoveryward) "aiy" = ( @@ -5584,8 +5457,7 @@ }, /obj/machinery/alarm{ dir = 8; - pixel_x = 25; - pixel_y = 0 + pixel_x = 25 }, /turf/simulated/floor/tiled/techfloor, /area/tether/surfacebase/medical/morgue) @@ -5611,6 +5483,10 @@ /obj/effect/floor_decal/corner/paleblue/bordercorner2{ dir = 9 }, +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/centralhall) "aiC" = ( @@ -5626,8 +5502,7 @@ icon_state = "4-8" }, /obj/structure/disposalpipe/junction{ - dir = 4; - icon_state = "pipe-j1" + dir = 4 }, /obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, /obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, @@ -5706,8 +5581,7 @@ dir = 8 }, /obj/machinery/light/small{ - dir = 4; - pixel_y = 0 + dir = 1 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/recoveryward) @@ -5779,7 +5653,6 @@ dir = 8 }, /obj/structure/sign/poster{ - pixel_x = 0; pixel_y = -32 }, /turf/simulated/floor/tiled/white, @@ -5811,7 +5684,6 @@ /obj/effect/floor_decal/corner/paleblue/border, /obj/machinery/firealarm{ dir = 1; - pixel_x = 0; pixel_y = -24 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ @@ -5872,6 +5744,12 @@ req_access = list(5); req_one_access = list(5) }, +/obj/machinery/button/remote/airlock{ + desc = "A remote control switch for the medbay recovery room door."; + id = "SurfMedicalResleevingMaintExit"; + name = "Exit Button"; + pixel_x = -24 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/breakroom) "aiU" = ( @@ -5919,8 +5797,7 @@ }, /obj/machinery/firealarm{ dir = 8; - pixel_x = -24; - pixel_y = 0 + pixel_x = -24 }, /turf/simulated/floor/carpet, /area/tether/surfacebase/security/detective/officea) @@ -5944,22 +5821,19 @@ /area/tether/surfacebase/security/detective/officea) "aja" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /turf/simulated/floor/carpet, /area/tether/surfacebase/security/detective/officea) "ajb" = ( /obj/machinery/camera/network/security{ - dir = 8; - icon_state = "camera" + dir = 8 }, /turf/simulated/floor/carpet, /area/tether/surfacebase/security/detective/officea) "ajc" = ( /obj/machinery/camera/network/security{ - dir = 5; - icon_state = "camera" + dir = 5 }, /turf/simulated/floor/carpet, /area/tether/surfacebase/security/detective/officeb) @@ -6003,8 +5877,7 @@ /area/tether/surfacebase/security/detective/officeb) "ajg" = ( /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /obj/effect/floor_decal/borderfloor{ dir = 8 @@ -6176,8 +6049,7 @@ pixel_y = 3 }, /obj/item/weapon/storage/box/flashshells{ - pixel_x = 1; - pixel_y = 0 + pixel_x = 1 }, /obj/item/weapon/storage/box/beanbags{ pixel_x = 4; @@ -6230,17 +6102,11 @@ /obj/structure/table/rack/steel, /obj/item/clothing/gloves/arm_guard/laserproof, /obj/item/clothing/shoes/leg_guard/laserproof, -/obj/item/clothing/suit/armor/laserproof{ - pixel_x = 0; - pixel_y = 0 - }, +/obj/item/clothing/suit/armor/laserproof, /obj/item/clothing/head/helmet/laserproof, /obj/item/clothing/gloves/arm_guard/laserproof, /obj/item/clothing/shoes/leg_guard/laserproof, -/obj/item/clothing/suit/armor/laserproof{ - pixel_x = 0; - pixel_y = 0 - }, +/obj/item/clothing/suit/armor/laserproof, /obj/item/clothing/head/helmet/laserproof, /obj/structure/window/reinforced, /obj/machinery/atmospherics/unary/vent_scrubber/on{ @@ -6338,9 +6204,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 2 - }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply, /obj/structure/disposalpipe/segment{ dir = 4 }, @@ -6449,8 +6313,7 @@ dir = 4 }, /obj/machinery/camera/network/medbay{ - dir = 10; - icon_state = "camera" + dir = 10 }, /obj/effect/floor_decal/borderfloorwhite, /obj/effect/floor_decal/corner/paleblue/border, @@ -6487,14 +6350,6 @@ /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/north) "ajU" = ( -/obj/machinery/button/remote/airlock{ - desc = "A remote control switch for the medbay recovery room door."; - dir = 4; - id = "MedicalRecovery"; - name = "Exit Button"; - pixel_x = -26; - pixel_y = 26 - }, /obj/structure/cable/green{ d1 = 4; d2 = 8; @@ -6555,17 +6410,9 @@ /turf/simulated/floor/carpet, /area/tether/surfacebase/security/detective/officea) "ajZ" = ( -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, /turf/simulated/floor/carpet, /area/tether/surfacebase/security/detective/officea) "aka" = ( -/obj/machinery/light{ - dir = 8; - icon_state = "tube1" - }, /turf/simulated/floor/carpet, /area/tether/surfacebase/security/detective/officeb) "akb" = ( @@ -6730,8 +6577,7 @@ dir = 8 }, /obj/machinery/light{ - dir = 4; - icon_state = "tube1" + dir = 4 }, /turf/simulated/floor/tiled/dark, /area/tether/surfacebase/security/armory) @@ -6761,7 +6607,6 @@ }, /obj/structure/disposalpipe/sortjunction{ dir = 1; - icon_state = "pipe-j1s"; name = "Medical Breakroom"; sortType = "Medical Breakroom" }, @@ -6800,8 +6645,7 @@ dir = 5 }, /obj/machinery/camera/network/medbay{ - dir = 10; - icon_state = "camera" + dir = 10 }, /turf/simulated/floor/tiled/techfloor, /area/tether/surfacebase/medical/morgue) @@ -6819,7 +6663,6 @@ /obj/machinery/computer/security/telescreen/entertainment{ desc = "Looks like it's set to ree-Anur-ntertanment, I wonder what else is on?"; icon_state = "frame"; - pixel_x = 0; pixel_y = 32 }, /obj/effect/floor_decal/corner/paleblue/diagonal, @@ -6874,7 +6717,6 @@ }, /obj/structure/extinguisher_cabinet{ dir = 1; - icon_state = "extinguisher_closed"; pixel_y = 32 }, /turf/simulated/floor/tiled/white, @@ -6904,7 +6746,6 @@ dir = 9 }, /obj/structure/sign/poster{ - pixel_x = 0; pixel_y = -32 }, /turf/simulated/floor/tiled/white, @@ -6923,8 +6764,7 @@ /area/tether/surfacebase/medical/uppersouthstairwell) "akG" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4; - icon_state = "map-scrubbers" + dir = 4 }, /obj/structure/disposalpipe/segment, /obj/effect/floor_decal/borderfloorwhite{ @@ -7004,9 +6844,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 2 - }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply, /obj/structure/disposalpipe/segment{ dir = 4 }, @@ -7037,8 +6875,7 @@ /area/tether/surfacebase/medical/centralhall) "akP" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4; - icon_state = "map-scrubbers" + dir = 4 }, /obj/structure/disposalpipe/junction, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ @@ -7266,8 +7103,7 @@ dir = 4 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/red/border{ dir = 1 @@ -7285,8 +7121,7 @@ dir = 4 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/red/border{ dir = 1 @@ -7315,8 +7150,7 @@ pixel_y = 22 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/red/border{ dir = 1 @@ -7334,8 +7168,7 @@ dir = 4 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/red/border{ dir = 1 @@ -7382,8 +7215,7 @@ dir = 4 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/red/border{ dir = 1 @@ -7404,8 +7236,7 @@ dir = 4 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/red/border{ dir = 1 @@ -7434,15 +7265,13 @@ "als" = ( /obj/structure/extinguisher_cabinet{ dir = 1; - icon_state = "extinguisher_closed"; pixel_y = 32 }, /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 4 @@ -7605,8 +7434,7 @@ "alG" = ( /obj/machinery/alarm{ dir = 8; - pixel_x = 25; - pixel_y = 0 + pixel_x = 25 }, /obj/structure/cable/green{ d1 = 1; @@ -7646,7 +7474,6 @@ }, /obj/machinery/firealarm{ dir = 1; - pixel_x = 0; pixel_y = -24 }, /turf/simulated/floor/tiled/techfloor, @@ -7748,7 +7575,6 @@ }, /obj/structure/extinguisher_cabinet{ dir = 1; - icon_state = "extinguisher_closed"; pixel_y = 32 }, /turf/simulated/floor/tiled/white, @@ -7765,8 +7591,7 @@ dir = 8 }, /obj/machinery/light/small{ - dir = 4; - pixel_y = 0 + dir = 4 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/bathroom) @@ -7794,15 +7619,13 @@ dir = 6 }, /obj/structure/sign/poster{ - pixel_x = 0; pixel_y = -32 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/uppersouthstairwell) "alW" = ( /obj/machinery/camera/network/medbay{ - dir = 10; - icon_state = "camera" + dir = 10 }, /obj/effect/floor_decal/borderfloorwhite{ dir = 10 @@ -7931,8 +7754,7 @@ }, /obj/item/device/radio/intercom{ dir = 1; - pixel_y = 24; - req_access = list() + pixel_y = 24 }, /obj/effect/floor_decal/borderfloor{ dir = 9 @@ -8003,6 +7825,7 @@ /obj/structure/disposalpipe/trunk{ dir = 8 }, +/obj/machinery/light, /turf/simulated/floor/lino, /area/tether/surfacebase/security/detective/officea) "amj" = ( @@ -8010,12 +7833,12 @@ /obj/structure/disposalpipe/trunk{ dir = 4 }, +/obj/machinery/light, /turf/simulated/floor/lino, /area/tether/surfacebase/security/detective/officeb) "amk" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5; - icon_state = "intact-scrubbers" + dir = 5 }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -8139,7 +7962,6 @@ }, /obj/machinery/firealarm{ dir = 1; - pixel_x = 0; pixel_y = -26 }, /obj/effect/floor_decal/borderfloor, @@ -8241,8 +8063,7 @@ /area/tether/surfacebase/security/armory) "amz" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /obj/structure/cable/green{ icon_state = "4-8" @@ -8280,8 +8101,7 @@ pixel_x = 28 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 9 @@ -8443,7 +8263,6 @@ icon_state = "0-2" }, /obj/machinery/power/apc{ - cell_type = /obj/item/weapon/cell/apc; dir = 8; name = "west bump"; pixel_x = -28 @@ -8519,8 +8338,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4; - icon_state = "map-scrubbers" + dir = 4 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/recoveryward) @@ -8599,8 +8417,7 @@ dir = 4 }, /obj/effect/floor_decal/corner/lime/bordercorner{ - dir = 4; - icon_state = "bordercolorcorner" + dir = 4 }, /turf/simulated/floor/tiled, /area/tether/surfacebase/public_garden_two) @@ -8792,9 +8609,7 @@ /obj/structure/bedsheetbin, /obj/random/soap, /obj/machinery/light{ - dir = 4; - icon_state = "tube1"; - pixel_x = 0 + dir = 4 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/recoveryward) @@ -8819,8 +8634,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/effect/floor_decal/techfloor{ dir = 1 @@ -8854,8 +8668,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/north) @@ -8923,8 +8736,7 @@ dir = 8 }, /obj/machinery/light{ - dir = 4; - icon_state = "tube1" + dir = 4 }, /obj/item/weapon/storage/box/cups{ pixel_x = 8; @@ -9016,7 +8828,6 @@ "anT" = ( /obj/machinery/alarm{ dir = 1; - icon_state = "alarm0"; pixel_y = -22 }, /turf/simulated/floor/tiled/white, @@ -9079,9 +8890,7 @@ /area/maintenance/lower/north) "aoe" = ( /obj/machinery/firealarm{ - dir = 2; layer = 3.3; - pixel_x = 0; pixel_y = 26 }, /obj/effect/floor_decal/borderfloor{ @@ -9110,8 +8919,7 @@ dir = 4 }, /obj/effect/floor_decal/corner/lime/bordercorner{ - dir = 4; - icon_state = "bordercolorcorner" + dir = 4 }, /turf/simulated/floor/tiled, /area/tether/surfacebase/public_garden_two) @@ -9119,7 +8927,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 24 }, /obj/effect/floor_decal/borderfloor{ @@ -9281,8 +9088,7 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 9 @@ -9298,13 +9104,11 @@ /area/tether/surfacebase/security/middlehall) "aou" = ( /obj/machinery/computer/prisoner{ - dir = 4; - icon_state = "computer" + dir = 4 }, /obj/item/device/radio/intercom{ dir = 8; - pixel_x = -24; - pixel_y = 0 + pixel_x = -24 }, /obj/effect/floor_decal/borderfloor{ dir = 9 @@ -9355,8 +9159,7 @@ req_access = list(3) }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 1 @@ -9407,8 +9210,7 @@ dir = 4 }, /obj/machinery/light{ - dir = 4; - icon_state = "tube1" + dir = 4 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 5 @@ -9487,8 +9289,7 @@ "aoC" = ( /obj/structure/closet/bombcloset/double, /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /turf/simulated/floor/tiled/dark, /area/tether/surfacebase/security/armory) @@ -9517,12 +9318,10 @@ "aoF" = ( /obj/machinery/alarm{ dir = 8; - pixel_x = 25; - pixel_y = 0 + pixel_x = 25 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 @@ -9535,11 +9334,10 @@ /turf/simulated/floor, /area/maintenance/lower/north) "aoH" = ( -/obj/machinery/light/small{ - dir = 8; - pixel_y = 0 - }, /obj/machinery/recharge_station, +/obj/machinery/light/small{ + dir = 1 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/recoveryward) "aoI" = ( @@ -9575,8 +9373,7 @@ "aoL" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4; - icon_state = "map-scrubbers" + dir = 4 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/bathroom) @@ -9738,7 +9535,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 28 }, /obj/structure/cable{ @@ -9765,8 +9561,7 @@ name_tag = "Command Subgrid" }, /obj/effect/floor_decal/industrial/warning{ - dir = 1; - icon_state = "warning" + dir = 1 }, /obj/structure/cable/green{ d1 = 1; @@ -9803,15 +9598,13 @@ "apg" = ( /obj/machinery/alarm{ dir = 8; - icon_state = "alarm0"; pixel_x = 24 }, /turf/simulated/floor/plating, /area/maintenance/lower/rnd) "aph" = ( /obj/effect/floor_decal/industrial/warning{ - dir = 8; - icon_state = "warning" + dir = 8 }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -9834,8 +9627,7 @@ /area/maintenance/lower/rnd) "apk" = ( /obj/effect/floor_decal/industrial/warning{ - dir = 1; - icon_state = "warning" + dir = 1 }, /obj/structure/railing{ dir = 1 @@ -9915,8 +9707,7 @@ dir = 4 }, /obj/effect/floor_decal/corner/lime/bordercorner{ - dir = 4; - icon_state = "bordercolorcorner" + dir = 4 }, /obj/structure/cable/green{ d1 = 1; @@ -9946,8 +9737,7 @@ }, /obj/machinery/alarm{ dir = 4; - pixel_x = -23; - pixel_y = 0 + pixel_x = -23 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -10025,12 +9815,8 @@ d2 = 4; icon_state = "1-4" }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 2 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 2 - }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply, /obj/structure/disposalpipe/junction{ dir = 8 }, @@ -10067,7 +9853,6 @@ /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, /obj/machinery/firealarm{ dir = 1; - pixel_x = 0; pixel_y = -26 }, /obj/structure/disposalpipe/segment{ @@ -10096,8 +9881,7 @@ dir = 8 }, /obj/effect/floor_decal/corner/red/bordercorner{ - dir = 8; - icon_state = "bordercolorcorner" + dir = 8 }, /turf/simulated/floor/tiled, /area/tether/surfacebase/security/middlehall) @@ -10125,12 +9909,8 @@ d2 = 4; icon_state = "1-4" }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 2 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 2 - }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply, /obj/structure/disposalpipe/junction{ dir = 8 }, @@ -10185,8 +9965,7 @@ }, /obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -10195,8 +9974,7 @@ dir = 8 }, /obj/effect/floor_decal/corner/red/bordercorner{ - dir = 8; - icon_state = "bordercolorcorner" + dir = 8 }, /turf/simulated/floor/tiled, /area/tether/surfacebase/security/middlehall) @@ -10232,9 +10010,7 @@ }, /obj/item/device/radio/intercom/department/security{ dir = 8; - icon_state = "secintercom"; - pixel_x = -24; - pixel_y = 0 + pixel_x = -24 }, /obj/effect/floor_decal/borderfloor{ dir = 8 @@ -10352,8 +10128,7 @@ "apY" = ( /obj/effect/floor_decal/corner/paleblue/diagonal, /obj/machinery/camera/network/medbay{ - dir = 10; - icon_state = "camera" + dir = 10 }, /obj/machinery/status_display{ level = 4; @@ -10371,7 +10146,6 @@ "aqa" = ( /obj/effect/floor_decal/corner/paleblue/diagonal, /obj/machinery/power/apc{ - dir = 2; name = "south bump"; pixel_y = -24 }, @@ -10403,8 +10177,7 @@ }, /obj/machinery/disposal, /obj/machinery/camera/network/medbay{ - dir = 10; - icon_state = "camera" + dir = 10 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/breakroom) @@ -10435,9 +10208,7 @@ /obj/structure/bedsheetbin, /obj/random/soap, /obj/machinery/light{ - dir = 4; - icon_state = "tube1"; - pixel_x = 0 + dir = 4 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/bathroom) @@ -10604,8 +10375,7 @@ dir = 4 }, /obj/effect/floor_decal/corner/lime/bordercorner{ - dir = 4; - icon_state = "bordercolorcorner" + dir = 4 }, /obj/structure/cable/green{ d1 = 4; @@ -10902,12 +10672,6 @@ /turf/simulated/floor/plating, /area/maintenance/lower/north) "aqW" = ( -/obj/machinery/button/windowtint{ - id = "ward_tint"; - pixel_x = -24; - pixel_y = 8; - range = 12 - }, /obj/effect/landmark{ name = "lightsout" }, @@ -10934,8 +10698,7 @@ /area/maintenance/lower/rnd) "aqZ" = ( /obj/effect/floor_decal/industrial/danger{ - dir = 8; - icon_state = "danger" + dir = 8 }, /obj/structure/sign/warning/caution{ pixel_y = 32 @@ -10976,9 +10739,7 @@ /area/maintenance/lower/bar) "are" = ( /obj/machinery/light{ - dir = 4; - icon_state = "tube1"; - pixel_x = 0 + dir = 4 }, /obj/effect/floor_decal/techfloor{ dir = 4 @@ -11154,8 +10915,7 @@ "arx" = ( /obj/machinery/recharge_station, /obj/machinery/light/small{ - dir = 4; - pixel_y = 0 + dir = 4 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/security/brig/bathroom) @@ -11165,8 +10925,7 @@ name = "Security Officer" }, /obj/machinery/light/small{ - dir = 4; - pixel_y = 0 + dir = 4 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/security/brig/bathroom) @@ -11306,8 +11065,7 @@ /obj/item/clothing/head/helmet/space/void/security, /obj/machinery/alarm{ dir = 4; - pixel_x = -22; - pixel_y = 0 + pixel_x = -22 }, /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 @@ -11325,8 +11083,7 @@ dir = 5 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /turf/simulated/floor/tiled, /area/tether/surfacebase/security/evastorage) @@ -11379,8 +11136,7 @@ pixel_y = -25 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /turf/simulated/floor/tiled/dark, /area/tether/surfacebase/security/armory) @@ -11389,8 +11145,7 @@ /obj/effect/floor_decal/industrial/hatch/yellow, /obj/machinery/flasher/portable, /obj/machinery/light{ - dir = 4; - icon_state = "tube1" + dir = 4 }, /turf/simulated/floor/tiled/dark, /area/tether/surfacebase/security/armory) @@ -11431,8 +11186,7 @@ "arU" = ( /obj/structure/catwalk, /obj/machinery/light/small{ - dir = 1; - icon_state = "bulb1" + dir = 1 }, /turf/simulated/floor/plating, /area/maintenance/lower/mining) @@ -11648,7 +11402,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 28 }, /turf/simulated/floor/plating, @@ -11685,9 +11438,7 @@ dir = 1 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/lime/border{ dir = 1 @@ -11696,9 +11447,7 @@ /area/tether/surfacebase/public_garden_two) "asu" = ( /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/lime/border{ dir = 1 @@ -11740,8 +11489,7 @@ /obj/structure/table/rack/holorack, /obj/random/maintenance/clean, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 9 @@ -11901,8 +11649,7 @@ /obj/item/weapon/tank/jetpack/carbondioxide, /obj/item/weapon/tank/jetpack/carbondioxide, /obj/machinery/camera/network/security{ - dir = 5; - icon_state = "camera" + dir = 5 }, /obj/effect/floor_decal/borderfloor{ dir = 10 @@ -11970,7 +11717,6 @@ "asP" = ( /obj/machinery/alarm{ dir = 1; - icon_state = "alarm0"; pixel_y = -22 }, /obj/structure/flora/pottedplant/large, @@ -11978,8 +11724,7 @@ /area/tether/surfacebase/medical/bathroom) "asQ" = ( /obj/machinery/light/small{ - dir = 8; - pixel_x = 0 + dir = 8 }, /turf/simulated/floor/plating, /area/tether/surfacebase/emergency_storage/atmos) @@ -12105,8 +11850,7 @@ /area/maintenance/asmaint2) "atb" = ( /obj/machinery/light/small{ - dir = 8; - pixel_y = 0 + dir = 8 }, /obj/machinery/recharge_station, /turf/simulated/floor/tiled/white, @@ -12140,8 +11884,7 @@ /obj/item/weapon/bedsheet/medical, /obj/structure/curtain/open/privacy, /obj/machinery/camera/network/medbay{ - dir = 8; - icon_state = "camera" + dir = 8 }, /obj/effect/floor_decal/borderfloorwhite{ dir = 4 @@ -12172,8 +11915,7 @@ dir = 1 }, /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 5 @@ -12183,9 +11925,7 @@ "ati" = ( /obj/machinery/alarm{ dir = 4; - icon_state = "alarm0"; - pixel_x = -22; - pixel_y = 0 + pixel_x = -22 }, /obj/structure/table/rack, /obj/random/maintenance/clean, @@ -12247,8 +11987,7 @@ dir = 4 }, /obj/effect/floor_decal/techfloor/hole{ - dir = 4; - icon_state = "techfloor_hole_left" + dir = 4 }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/bar) @@ -12276,9 +12015,7 @@ dir = 4 }, /obj/machinery/light{ - dir = 8; - icon_state = "tube1"; - pixel_y = 0 + dir = 8 }, /obj/effect/floor_decal/techfloor{ dir = 8 @@ -12292,15 +12029,13 @@ /obj/effect/floor_decal/industrial/outline/yellow, /obj/machinery/atmospherics/unary/vent_scrubber/on, /obj/machinery/light/small{ - dir = 1; - icon_state = "bulb1" + dir = 1 }, /turf/simulated/floor/plating, /area/engineering/atmos/storage) "atu" = ( /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 6; - icon_state = "intact" + dir = 6 }, /obj/machinery/light/small{ dir = 1 @@ -12416,8 +12151,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -12505,8 +12239,7 @@ }, /obj/machinery/alarm{ dir = 4; - pixel_x = -22; - pixel_y = 0 + pixel_x = -22 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/security/brig/bathroom) @@ -12589,8 +12322,7 @@ dir = 4 }, /obj/machinery/light{ - dir = 4; - icon_state = "tube1" + dir = 4 }, /obj/effect/floor_decal/borderfloor{ dir = 4 @@ -12616,8 +12348,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /obj/effect/floor_decal/borderfloor{ dir = 8 @@ -12683,8 +12414,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -12698,8 +12428,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/structure/disposalpipe/sortjunction{ dir = 4; @@ -12727,8 +12456,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -12753,8 +12481,7 @@ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4; - icon_state = "map-scrubbers" + dir = 4 }, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 4 @@ -12889,9 +12616,7 @@ }, /obj/structure/sink{ dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 + pixel_x = 11 }, /obj/structure/mirror{ pixel_x = 25 @@ -13116,8 +12841,7 @@ /area/maintenance/engineering/pumpstation) "auG" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/red{ - dir = 8; - icon_state = "map" + dir = 8 }, /obj/machinery/meter, /turf/simulated/floor/plating, @@ -13140,8 +12864,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/visible/supply, /obj/machinery/atmospherics/pipe/simple/visible/scrubbers, @@ -13171,9 +12894,7 @@ dir = 9 }, /obj/machinery/light{ - dir = 4; - icon_state = "tube1"; - pixel_x = 0 + dir = 4 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/recoveryward) @@ -13253,9 +12974,7 @@ "auU" = ( /obj/structure/catwalk, /obj/machinery/firealarm{ - dir = 2; layer = 3.3; - pixel_x = 0; pixel_y = 26 }, /obj/structure/disposalpipe/segment{ @@ -13317,8 +13036,7 @@ dir = 4 }, /obj/machinery/light/small{ - dir = 1; - icon_state = "bulb1" + dir = 1 }, /obj/structure/cable/green{ icon_state = "4-8" @@ -13409,7 +13127,6 @@ dir = 10 }, /obj/item/device/radio/intercom{ - dir = 2; pixel_y = -24 }, /obj/machinery/camera/network/civilian{ @@ -13432,8 +13149,7 @@ /area/tether/surfacebase/public_garden_two) "avk" = ( /obj/machinery/shower{ - dir = 1; - icon_state = "shower" + dir = 1 }, /obj/structure/curtain/open/shower/security, /obj/effect/floor_decal/steeldecal/steel_decals10{ @@ -13548,8 +13264,7 @@ dir = 9 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /obj/effect/floor_decal/borderfloor, /obj/effect/floor_decal/corner/red/border, @@ -13560,8 +13275,7 @@ "avs" = ( /obj/machinery/alarm{ dir = 8; - pixel_x = 25; - pixel_y = 0 + pixel_x = 25 }, /obj/effect/floor_decal/borderfloor{ dir = 6 @@ -13682,7 +13396,6 @@ }, /obj/machinery/alarm{ dir = 8; - icon_state = "alarm0"; pixel_x = 24 }, /turf/simulated/floor/tiled/techfloor, @@ -13812,8 +13525,7 @@ /obj/structure/bed/padded, /obj/item/weapon/bedsheet/red, /obj/effect/floor_decal/techfloor/hole/right{ - dir = 4; - icon_state = "techfloor_hole_right" + dir = 4 }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/bar) @@ -13857,8 +13569,7 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/zpipe/up/scrubbers{ - dir = 8; - icon_state = "up-scrubbers" + dir = 8 }, /obj/structure/cable/green{ icon_state = "0-8" @@ -14005,8 +13716,7 @@ "awk" = ( /obj/effect/floor_decal/rust, /obj/structure/railing{ - dir = 1; - icon_state = "railing0" + dir = 1 }, /obj/structure/cable/green, /obj/structure/cable/green{ @@ -14129,14 +13839,12 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5; - icon_state = "intact-supply" + dir = 5 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/firealarm{ dir = 8; - pixel_x = -24; - pixel_y = 0 + pixel_x = -24 }, /obj/machinery/light_switch{ pixel_x = 25; @@ -14169,8 +13877,7 @@ dir = 4 }, /obj/structure/window/reinforced/tinted{ - dir = 8; - icon_state = "twindow" + dir = 8 }, /turf/simulated/floor/plating, /area/tether/surfacebase/security/interrogation) @@ -14185,8 +13892,7 @@ dir = 5 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /obj/effect/floor_decal/steeldecal/steel_decals4{ dir = 4 @@ -14425,8 +14131,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/alarm{ dir = 4; - pixel_x = -22; - pixel_y = 0 + pixel_x = -22 }, /turf/simulated/floor/tiled/dark, /area/tether/surfacebase/security/interrogation) @@ -14493,7 +14198,6 @@ "axi" = ( /obj/machinery/alarm{ dir = 4; - icon_state = "alarm0"; pixel_x = -22 }, /obj/effect/floor_decal/rust, @@ -14531,8 +14235,7 @@ dir = 1 }, /obj/machinery/light/small{ - dir = 8; - pixel_x = 0 + dir = 8 }, /turf/simulated/floor/tiled/techmaint, /area/tether/surfacebase/surface_two_hall) @@ -14569,8 +14272,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -14584,8 +14286,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -14602,8 +14303,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -14614,8 +14314,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/structure/extinguisher_cabinet{ pixel_y = 30 @@ -14632,8 +14331,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -14650,8 +14348,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -14674,8 +14371,7 @@ "axv" = ( /obj/effect/floor_decal/corner/paleblue/diagonal, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/item/weapon/deck/cah/black{ @@ -14689,16 +14385,13 @@ dir = 1 }, /obj/machinery/firealarm{ - dir = 2; layer = 3.3; - pixel_x = 0; pixel_y = 26 }, /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -14712,7 +14405,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 28 }, /obj/structure/cable{ @@ -14928,8 +14620,7 @@ /area/tether/surfacebase/security/interrogation) "axW" = ( /obj/machinery/camera/network/security{ - dir = 8; - icon_state = "camera" + dir = 8 }, /turf/simulated/floor/tiled/dark, /area/tether/surfacebase/security/interrogation) @@ -14968,7 +14659,6 @@ /obj/structure/lattice, /obj/structure/cable/green{ d1 = 32; - d2 = 1; icon_state = "32-1" }, /obj/machinery/door/firedoor/glass, @@ -15032,7 +14722,6 @@ /obj/structure/catwalk, /obj/machinery/alarm{ dir = 8; - icon_state = "alarm0"; pixel_x = 24 }, /turf/simulated/floor/tiled/techfloor, @@ -15075,11 +14764,6 @@ }, /turf/simulated/floor/plating, /area/maintenance/asmaint2) -"ayo" = ( -/turf/simulated/wall{ - can_open = 0 - }, -/area/maintenance/lower/bar) "ayp" = ( /obj/effect/catwalk_plated/dark, /turf/simulated/open, @@ -15116,8 +14800,7 @@ /area/maintenance/lower/bar) "ayu" = ( /obj/effect/floor_decal/industrial/warning/corner{ - dir = 8; - icon_state = "warningcorner" + dir = 8 }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/bar) @@ -15272,7 +14955,6 @@ /obj/effect/floor_decal/corner/green/border, /obj/structure/disposalpipe/sortjunction{ dir = 4; - icon_state = "pipe-j1s"; name = "Command Meeting Room"; sortType = "Command Meeting Room" }, @@ -15352,15 +15034,13 @@ /area/maintenance/lower/bar) "ayT" = ( /obj/effect/floor_decal/industrial/warning{ - dir = 8; - icon_state = "warning" + dir = 8 }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/bar) "ayU" = ( /obj/machinery/light/small{ - dir = 4; - pixel_y = 0 + dir = 4 }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/bar) @@ -15513,8 +15193,7 @@ /area/maintenance/lower/bar) "azo" = ( /obj/effect/floor_decal/industrial/warning/corner{ - dir = 1; - icon_state = "warningcorner" + dir = 1 }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/bar) @@ -15527,8 +15206,7 @@ /area/tether/surfacebase/fish_farm) "azr" = ( /obj/machinery/light/small{ - dir = 1; - icon_state = "bulb1" + dir = 1 }, /turf/simulated/floor/water/deep/indoors, /area/tether/surfacebase/fish_farm) @@ -15616,8 +15294,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/structure/window/basic{ dir = 4 @@ -15675,7 +15352,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 28 }, /obj/structure/cable/green{ @@ -15712,8 +15388,7 @@ "azM" = ( /obj/machinery/suit_storage_unit/standard_unit, /obj/machinery/light/small{ - dir = 1; - icon_state = "bulb1" + dir = 1 }, /turf/simulated/floor/tiled/dark, /area/teleporter) @@ -15729,8 +15404,7 @@ "azO" = ( /obj/item/weapon/stool/padded, /obj/effect/floor_decal/industrial/warning{ - dir = 4; - icon_state = "warning" + dir = 4 }, /obj/item/device/radio/intercom{ dir = 1; @@ -15839,8 +15513,7 @@ }, /obj/item/device/radio/intercom{ dir = 1; - pixel_y = 24; - req_access = list() + pixel_y = 24 }, /turf/simulated/floor/tiled, /area/tether/surfacebase/fish_farm) @@ -15885,8 +15558,7 @@ /area/maintenance/asmaint2) "aAh" = ( /obj/machinery/light/small{ - dir = 8; - pixel_x = 0 + dir = 8 }, /obj/effect/floor_decal/borderfloor{ dir = 8 @@ -15896,8 +15568,7 @@ "aAi" = ( /obj/machinery/alarm{ dir = 4; - pixel_x = -23; - pixel_y = 0 + pixel_x = -23 }, /turf/simulated/floor/plating, /area/maintenance/commandmaint) @@ -15965,8 +15636,7 @@ /area/teleporter) "aAq" = ( /obj/effect/floor_decal/industrial/warning{ - dir = 4; - icon_state = "warning" + dir = 4 }, /turf/simulated/floor/tiled, /area/teleporter) @@ -16071,7 +15741,6 @@ "aAD" = ( /obj/structure/extinguisher_cabinet{ dir = 8; - icon_state = "extinguisher_closed"; pixel_x = 30 }, /turf/simulated/open, @@ -16094,8 +15763,7 @@ "aAH" = ( /obj/structure/closet/firecloset, /obj/machinery/light/small{ - dir = 8; - pixel_x = 0 + dir = 8 }, /turf/simulated/floor/plating, /area/maintenance/commandmaint) @@ -16230,8 +15898,7 @@ /area/maintenance/lower/bar) "aAZ" = ( /obj/machinery/light/small{ - dir = 1; - icon_state = "bulb1" + dir = 1 }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/bar) @@ -16246,15 +15913,13 @@ /area/maintenance/lower/bar) "aBb" = ( /obj/structure/railing{ - dir = 4; - icon_state = "railing0" + dir = 4 }, /turf/simulated/wall, /area/tether/surfacebase/fish_farm) "aBc" = ( /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /obj/machinery/hologram/holopad, /turf/simulated/floor/tiled, @@ -16306,22 +15971,18 @@ "aBj" = ( /obj/structure/sign/directions/medical{ dir = 1; - icon_state = "direction_med"; pixel_y = 8 }, /obj/structure/sign/directions/science{ dir = 1; - icon_state = "direction_sci"; pixel_y = 3 }, /obj/structure/sign/directions/security{ dir = 1; - icon_state = "direction_sec"; pixel_y = -4 }, /obj/structure/sign/directions/engineering{ dir = 4; - icon_state = "direction_eng"; pixel_y = -10 }, /turf/simulated/wall, @@ -16383,13 +16044,11 @@ /area/teleporter) "aBr" = ( /obj/machinery/power/apc{ - dir = 2; name = "south bump"; pixel_y = -32 }, /obj/structure/cable/green{ d2 = 8; - dir = 2; icon_state = "0-8" }, /turf/simulated/floor/tiled/dark, @@ -16398,8 +16057,7 @@ /obj/machinery/shieldwallgen, /obj/effect/floor_decal/industrial/outline/yellow, /obj/machinery/camera/network/command{ - dir = 10; - icon_state = "camera" + dir = 10 }, /turf/simulated/floor/tiled/dark, /area/teleporter) @@ -16461,8 +16119,7 @@ /obj/random/maintenance/clean, /obj/random/tool, /obj/machinery/light/small{ - dir = 4; - pixel_y = 0 + dir = 4 }, /turf/simulated/floor/plating, /area/maintenance/lower/bar) @@ -16485,8 +16142,7 @@ /area/tether/surfacebase/fish_farm) "aBC" = ( /obj/structure/railing{ - dir = 4; - icon_state = "railing0" + dir = 4 }, /turf/simulated/floor/water/deep/indoors, /area/tether/surfacebase/fish_farm) @@ -16515,7 +16171,6 @@ /obj/item/stack/cable_coil/pink, /obj/machinery/alarm{ dir = 8; - icon_state = "alarm0"; pixel_x = 24 }, /turf/simulated/floor/tiled, @@ -16537,8 +16192,7 @@ icon_state = "4-8" }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/lightgrey/border{ dir = 1 @@ -16550,8 +16204,7 @@ icon_state = "4-8" }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/lightgrey/border{ dir = 1 @@ -16567,8 +16220,7 @@ dir = 1 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/lightgrey/border{ dir = 1 @@ -16585,8 +16237,7 @@ icon_state = "4-8" }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/lightgrey/border{ dir = 1 @@ -16601,8 +16252,7 @@ dir = 2 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/lightgrey/border{ dir = 1 @@ -16617,8 +16267,7 @@ /area/tether/surfacebase/north_staires_two) "aBM" = ( /obj/effect/floor_decal/industrial/warning{ - dir = 1; - icon_state = "warning" + dir = 1 }, /obj/structure/cable{ icon_state = "4-8" @@ -16628,8 +16277,7 @@ /area/tether/surfacebase/north_staires_two) "aBN" = ( /obj/effect/floor_decal/industrial/warning{ - dir = 1; - icon_state = "warning" + dir = 1 }, /obj/structure/cable{ icon_state = "4-8" @@ -16642,8 +16290,7 @@ dir = 1 }, /obj/effect/floor_decal/industrial/warning{ - dir = 1; - icon_state = "warning" + dir = 1 }, /obj/machinery/door/firedoor/glass/hidden/steel{ dir = 2 @@ -16657,16 +16304,14 @@ /area/tether/surfacebase/north_staires_two) "aBP" = ( /obj/effect/floor_decal/industrial/warning{ - dir = 1; - icon_state = "warning" + dir = 1 }, /obj/machinery/atmospherics/unary/vent_pump/on, /turf/simulated/floor/tiled, /area/tether/surfacebase/north_staires_two) "aBQ" = ( /obj/effect/floor_decal/industrial/warning{ - dir = 1; - icon_state = "warning" + dir = 1 }, /obj/machinery/atmospherics/unary/vent_scrubber/on, /turf/simulated/floor/tiled, @@ -16854,8 +16499,7 @@ dir = 8 }, /obj/machinery/light{ - dir = 4; - icon_state = "tube1" + dir = 4 }, /turf/simulated/floor/tiled/dark, /area/chapel/chapel_morgue) @@ -16872,8 +16516,7 @@ "aCo" = ( /obj/structure/railing, /obj/structure/railing{ - dir = 4; - icon_state = "railing0" + dir = 4 }, /turf/simulated/floor/water/deep/indoors, /area/tether/surfacebase/fish_farm) @@ -16893,8 +16536,7 @@ /area/tether/surfacebase/fish_farm) "aCs" = ( /obj/machinery/light{ - dir = 4; - icon_state = "tube1" + dir = 4 }, /obj/effect/floor_decal/industrial/warning{ dir = 8 @@ -16907,13 +16549,10 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/effect/floor_decal/borderfloor{ - dir = 8; - icon_state = "borderfloor"; - pixel_x = 0 + dir = 8 }, /obj/effect/floor_decal/corner/lightgrey/border{ dir = 8 @@ -17021,7 +16660,6 @@ dir = 4 }, /obj/machinery/power/apc{ - dir = 2; name = "south bump"; pixel_y = -28 }, @@ -17037,7 +16675,6 @@ "aCB" = ( /obj/machinery/firealarm{ dir = 1; - pixel_x = 0; pixel_y = -25 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ @@ -17052,8 +16689,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/structure/cable{ icon_state = "1-4" @@ -17070,14 +16706,12 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/effect/floor_decal/borderfloor, /obj/effect/floor_decal/corner/lightgrey/border, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4; - icon_state = "intact-scrubbers" + dir = 4 }, /obj/machinery/atmospherics/pipe/manifold/hidden/supply, /turf/simulated/floor/tiled, @@ -17086,8 +16720,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/effect/floor_decal/borderfloor, /obj/effect/floor_decal/corner/lightgrey/border, @@ -17111,8 +16744,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -17131,8 +16763,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -17149,8 +16780,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 @@ -17268,7 +16898,6 @@ "aCR" = ( /obj/machinery/alarm{ dir = 8; - icon_state = "alarm0"; pixel_x = 24 }, /obj/structure/cable{ @@ -17399,8 +17028,7 @@ "aDj" = ( /obj/machinery/alarm{ dir = 4; - pixel_x = -23; - pixel_y = 0 + pixel_x = -23 }, /turf/simulated/floor/tiled/techfloor, /area/tether/surfacebase/fish_farm) @@ -17410,15 +17038,13 @@ /area/tether/surfacebase/fish_farm) "aDl" = ( /obj/effect/floor_decal/industrial/warning{ - dir = 4; - icon_state = "warning" + dir = 4 }, /turf/simulated/floor/tiled, /area/tether/surfacebase/fish_farm) "aDm" = ( /obj/effect/floor_decal/spline/plain{ - dir = 8; - icon_state = "spline_plain" + dir = 8 }, /turf/simulated/floor/beach/sand/desert, /area/tether/surfacebase/fish_farm) @@ -17452,8 +17078,7 @@ dir = 4 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/lightgrey/border{ dir = 1 @@ -17474,8 +17099,7 @@ dir = 4 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/lightgrey/border{ dir = 1 @@ -17492,8 +17116,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/effect/floor_decal/borderfloor/corner{ dir = 1 @@ -17505,8 +17128,7 @@ /area/tether/surfacebase/surface_two_hall) "aDs" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 9 @@ -17545,8 +17167,7 @@ /area/tether/surfacebase/surface_two_hall) "aDw" = ( /obj/machinery/light/small{ - dir = 8; - pixel_x = 0 + dir = 8 }, /obj/effect/floor_decal/borderfloor{ dir = 8 @@ -17577,12 +17198,10 @@ "aDz" = ( /obj/machinery/alarm{ dir = 4; - pixel_x = -23; - pixel_y = 0 + pixel_x = -23 }, /obj/effect/floor_decal/industrial/warning{ - dir = 1; - icon_state = "warning" + dir = 1 }, /turf/simulated/floor/tiled/dark, /area/bridge_hallway) @@ -17601,8 +17220,7 @@ icon_state = "2-4" }, /obj/effect/floor_decal/industrial/warning{ - dir = 1; - icon_state = "warning" + dir = 1 }, /turf/simulated/floor/tiled/dark, /area/bridge_hallway) @@ -17637,7 +17255,6 @@ }, /obj/machinery/firealarm{ dir = 1; - pixel_x = 0; pixel_y = -26 }, /obj/structure/cable/green{ @@ -17651,10 +17268,8 @@ }, /obj/item/device/radio/intercom{ broadcasting = 1; - dir = 2; frequency = 1473; name = "Confession Intercom"; - pixel_x = 0; pixel_y = -24 }, /turf/simulated/floor/tiled/dark, @@ -17677,7 +17292,6 @@ }, /obj/structure/cable/green{ d2 = 8; - dir = 2; icon_state = "0-8" }, /turf/simulated/floor/tiled/dark, @@ -17689,9 +17303,7 @@ /obj/structure/cable, /obj/machinery/power/smes/buildable{ RCon_tag = "Substation - Command"; - charge = 0; - output_attempt = 0; - outputting = 0 + output_attempt = 0 }, /turf/simulated/floor/plating, /area/maintenance/substation/command) @@ -17709,8 +17321,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/machinery/light/small{ dir = 4 @@ -17843,7 +17454,6 @@ }, /obj/structure/cable/green{ d2 = 8; - dir = 2; icon_state = "0-8" }, /turf/simulated/floor/tiled/dark, @@ -17972,8 +17582,7 @@ /area/maintenance/lower/south) "aEi" = ( /obj/machinery/camera/network/command{ - dir = 4; - icon_state = "camera" + dir = 4 }, /turf/simulated/floor/tiled/dark, /area/bridge_hallway) @@ -17993,13 +17602,11 @@ dir = 1 }, /obj/machinery/power/apc{ - dir = 2; name = "south bump"; pixel_y = -24 }, /obj/structure/cable/green{ d2 = 8; - dir = 2; icon_state = "0-8" }, /turf/simulated/floor/plating, @@ -18008,8 +17615,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /turf/simulated/floor/plating, /area/maintenance/substation/command) @@ -18018,8 +17624,7 @@ dir = 10 }, /obj/structure/railing{ - dir = 1; - icon_state = "railing0" + dir = 1 }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/bar) @@ -18032,8 +17637,7 @@ /obj/structure/lattice, /obj/machinery/door/firedoor/glass, /obj/structure/railing{ - dir = 1; - icon_state = "railing0" + dir = 1 }, /turf/simulated/open, /area/maintenance/lower/bar) @@ -18077,23 +17681,20 @@ /obj/effect/floor_decal/techfloor, /obj/effect/floor_decal/industrial/outline/yellow, /obj/structure/railing{ - dir = 1; - icon_state = "railing0" + dir = 1 }, /obj/structure/disposalpipe/up{ dir = 8 }, /obj/structure/cable/green{ d2 = 8; - dir = 2; icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/zpipe/up/supply{ dir = 8 }, /obj/machinery/atmospherics/pipe/zpipe/up/scrubbers{ - dir = 8; - icon_state = "up-scrubbers" + dir = 8 }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/bar) @@ -18102,8 +17703,7 @@ dir = 6 }, /obj/structure/railing{ - dir = 1; - icon_state = "railing0" + dir = 1 }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/bar) @@ -18154,8 +17754,7 @@ /area/chapel/chapel_morgue) "aEx" = ( /obj/structure/railing{ - dir = 1; - icon_state = "railing0" + dir = 1 }, /obj/structure/railing{ dir = 8 @@ -18164,19 +17763,16 @@ /area/tether/surfacebase/fish_farm) "aEy" = ( /obj/structure/railing{ - dir = 1; - icon_state = "railing0" + dir = 1 }, /turf/simulated/floor/water/deep/indoors, /area/tether/surfacebase/fish_farm) "aEz" = ( /obj/structure/railing{ - dir = 1; - icon_state = "railing0" + dir = 1 }, /obj/structure/railing{ - dir = 4; - icon_state = "railing0" + dir = 4 }, /turf/simulated/floor/water/deep/indoors, /area/tether/surfacebase/fish_farm) @@ -18258,7 +17854,6 @@ "aEH" = ( /obj/structure/extinguisher_cabinet{ dir = 8; - icon_state = "extinguisher_closed"; pixel_x = 30 }, /turf/simulated/floor/tiled/steel_dirty, @@ -18318,7 +17913,6 @@ /obj/machinery/door/blast/regular{ closed_layer = 10; density = 0; - dir = 1; icon_state = "pdoor0"; id = "bridge blast"; layer = 1; @@ -18354,9 +17948,7 @@ /area/maintenance/commandmaint) "aEP" = ( /obj/machinery/firealarm{ - dir = 2; layer = 3.3; - pixel_x = 0; pixel_y = 26 }, /obj/structure/cable/green{ @@ -18389,8 +17981,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /turf/simulated/floor/plating, /area/maintenance/substation/command) @@ -18432,6 +18023,31 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled/dark, +<<<<<<< HEAD +||||||| parent of 7ed3f13340... Merge pull request #9546 from Detective-Google/map-fixes +/area/chapel/main) +"aEX" = ( +/obj/machinery/portable_atmospherics/powered/scrubber, +/obj/machinery/light/small{ + dir = 8; + pixel_x = 0 + }, +/obj/effect/floor_decal/techfloor{ + dir = 9 + }, +/turf/simulated/floor/tiled/techfloor, +======= +/area/chapel/main) +"aEX" = ( +/obj/machinery/portable_atmospherics/powered/scrubber, +/obj/machinery/light/small{ + dir = 8 + }, +/obj/effect/floor_decal/techfloor{ + dir = 9 + }, +/turf/simulated/floor/tiled/techfloor, +>>>>>>> 7ed3f13340... Merge pull request #9546 from Detective-Google/map-fixes /area/maintenance/lower/bar) "aEX" = ( /obj/structure/flora/ausbushes/ppflowers, @@ -18450,8 +18066,7 @@ /area/chapel/main) "aFb" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5; - icon_state = "intact-scrubbers" + dir = 5 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/structure/cable/green{ @@ -18492,9 +18107,7 @@ alarm_id = "anomaly_testing"; breach_detection = 0; dir = 8; - frequency = 1439; pixel_x = 22; - pixel_y = 0; report_danger_level = 0 }, /obj/machinery/atmospherics/unary/vent_pump/on{ @@ -18508,8 +18121,7 @@ }, /obj/machinery/disposal, /obj/machinery/light{ - dir = 4; - icon_state = "tube1" + dir = 4 }, /obj/structure/disposalpipe/trunk{ dir = 1 @@ -18535,8 +18147,7 @@ icon_state = "1-8" }, /obj/effect/floor_decal/industrial/warning{ - dir = 4; - icon_state = "warning" + dir = 4 }, /obj/structure/disposalpipe/segment, /obj/structure/railing{ @@ -18554,8 +18165,7 @@ /area/maintenance/lower/rnd) "aFk" = ( /obj/machinery/light/small{ - dir = 1; - icon_state = "bulb1" + dir = 1 }, /obj/structure/railing, /obj/effect/floor_decal/rust, @@ -18617,8 +18227,7 @@ "aFs" = ( /obj/machinery/alarm{ dir = 4; - pixel_x = -23; - pixel_y = 0 + pixel_x = -23 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, @@ -18631,8 +18240,7 @@ icon_state = "4-8" }, /obj/machinery/light/small{ - dir = 1; - icon_state = "bulb1" + dir = 1 }, /turf/simulated/floor/plating, /area/maintenance/commandmaint) @@ -18646,8 +18254,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /turf/simulated/floor/plating, /area/maintenance/commandmaint) @@ -18811,8 +18418,7 @@ /area/chapel/main) "aFJ" = ( /obj/machinery/light/small{ - dir = 8; - pixel_x = 0 + dir = 8 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 5 @@ -18860,8 +18466,7 @@ dir = 1 }, /obj/machinery/light/small{ - dir = 4; - pixel_y = 0 + dir = 4 }, /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 @@ -18870,8 +18475,7 @@ /area/chapel/chapel_morgue) "aFO" = ( /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /turf/simulated/floor/tiled, /area/tether/surfacebase/fish_farm) @@ -18942,9 +18546,7 @@ "aFX" = ( /obj/machinery/alarm{ dir = 4; - icon_state = "alarm0"; - pixel_x = -22; - pixel_y = 0 + pixel_x = -22 }, /obj/machinery/light/small{ dir = 8 @@ -18979,8 +18581,7 @@ /area/tether/surfacebase/surface_two_hall) "aGb" = ( /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /obj/machinery/requests_console{ announcementConsole = 1; @@ -19029,9 +18630,7 @@ /area/bridge/meeting_room) "aGf" = ( /obj/machinery/light_switch{ - dir = 2; name = "light switch "; - pixel_x = 0; pixel_y = 26 }, /obj/structure/cable/green{ @@ -19044,9 +18643,7 @@ pixel_y = 30 }, /obj/machinery/light{ - dir = 4; - icon_state = "tube1"; - pixel_x = 0 + dir = 4 }, /obj/structure/cable/green{ d1 = 2; @@ -19133,6 +18730,19 @@ d2 = 2; icon_state = "1-2" }, +<<<<<<< HEAD +||||||| parent of 7ed3f13340... Merge pull request #9546 from Detective-Google/map-fixes +/obj/structure/extinguisher_cabinet{ + dir = 8; + icon_state = "extinguisher_closed"; + pixel_x = 30 + }, +======= +/obj/structure/extinguisher_cabinet{ + dir = 8; + pixel_x = 30 + }, +>>>>>>> 7ed3f13340... Merge pull request #9546 from Detective-Google/map-fixes /turf/simulated/floor/tiled/techmaint, /area/tether/surfacebase/surface_two_hall) "aGn" = ( @@ -19151,8 +18761,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, @@ -19207,8 +18816,7 @@ /area/chapel/chapel_morgue) "aGu" = ( /obj/structure/railing{ - dir = 1; - icon_state = "railing0" + dir = 1 }, /turf/simulated/floor/beach/sand/desert, /area/tether/surfacebase/fish_farm) @@ -19317,12 +18925,10 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/machinery/light/small{ - dir = 8; - pixel_y = 0 + dir = 8 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/tiled/techmaint, @@ -19375,8 +18981,7 @@ /area/chapel/main) "aGS" = ( /obj/machinery/light/small{ - dir = 1; - icon_state = "bulb1" + dir = 1 }, /turf/simulated/floor/carpet, /area/chapel/main) @@ -19444,8 +19049,7 @@ "aGY" = ( /obj/machinery/door/airlock/maintenance/common, /obj/effect/floor_decal/industrial/warning{ - dir = 1; - icon_state = "warning" + dir = 1 }, /obj/machinery/door/firedoor/glass, /turf/simulated/floor/plating, @@ -19453,8 +19057,7 @@ "aGZ" = ( /obj/machinery/alarm{ dir = 4; - pixel_x = -23; - pixel_y = 0 + pixel_x = -23 }, /turf/simulated/floor/wood, /area/bridge/meeting_room) @@ -19519,8 +19122,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/tiled/techmaint, @@ -19599,8 +19201,7 @@ /obj/machinery/button/windowtint{ dir = 1; id = "meetingroom"; - pixel_x = -25; - pixel_y = 0 + pixel_x = -25 }, /turf/simulated/floor/wood, /area/bridge/meeting_room) @@ -19659,8 +19260,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 8 @@ -19712,16 +19312,13 @@ /area/chapel/main) "aHC" = ( /obj/machinery/light{ - dir = 4; - icon_state = "tube1"; - pixel_x = 0 + dir = 4 }, /turf/simulated/floor/tiled/dark, /area/chapel/main) "aHD" = ( /obj/machinery/camera/network/outside{ - dir = 5; - icon_state = "camera" + dir = 5 }, /turf/simulated/floor/tiled/steel_dirty/virgo3b, /area/tether/surfacebase/outside/outside2) @@ -19742,7 +19339,6 @@ }, /obj/machinery/alarm{ dir = 8; - icon_state = "alarm0"; pixel_x = 24 }, /turf/simulated/floor/plating, @@ -19805,8 +19401,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 6 @@ -19995,7 +19590,6 @@ /obj/effect/floor_decal/rust, /obj/item/clothing/glasses/sunglasses{ desc = "My vision is augmented"; - icon_state = "sun"; name = "Augmented shades" }, /turf/simulated/floor/plating, @@ -20089,8 +19683,7 @@ "aIr" = ( /obj/machinery/photocopier, /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /turf/simulated/floor/wood, /area/bridge/meeting_room) @@ -20113,9 +19706,7 @@ }, /obj/machinery/disposal, /obj/machinery/light{ - dir = 4; - icon_state = "tube1"; - pixel_x = 0 + dir = 4 }, /turf/simulated/floor/wood, /area/bridge/meeting_room) @@ -20129,8 +19720,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 8 @@ -20210,7 +19800,6 @@ /obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, /obj/structure/disposalpipe/sortjunction{ dir = 1; - icon_state = "pipe-j1s"; name = "Chapel"; sortType = "Chapel" }, @@ -20235,8 +19824,7 @@ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1; - icon_state = "map-scrubbers" + dir = 1 }, /turf/simulated/floor/tiled/dark, /area/chapel/main) @@ -20338,8 +19926,7 @@ /area/maintenance/lower/atmos) "aIL" = ( /obj/machinery/light/small{ - dir = 1; - icon_state = "bulb1" + dir = 1 }, /turf/simulated/floor/plating, /area/maintenance/lower/atmos) @@ -20409,8 +19996,7 @@ /obj/structure/table/woodentable, /obj/item/weapon/storage/box/cups, /obj/machinery/camera/network/command{ - dir = 9; - icon_state = "camera" + dir = 9 }, /turf/simulated/floor/wood, /area/bridge/meeting_room) @@ -20424,8 +20010,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled/techmaint, @@ -20599,8 +20184,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled/techmaint, @@ -20688,8 +20272,7 @@ /area/rnd/rdoffice) "aJC" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5; - icon_state = "intact-scrubbers" + dir = 5 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -20698,8 +20281,7 @@ /area/rnd/rdoffice) "aJD" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4; - icon_state = "intact-scrubbers" + dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -20711,7 +20293,6 @@ }, /obj/machinery/door/window/eastleft{ dir = 8; - icon_state = "left"; name = "Kendrick's Pen"; req_access = list(30); req_one_access = list(19) @@ -20720,16 +20301,13 @@ /area/rnd/rdoffice) "aJE" = ( /obj/effect/floor_decal/borderfloor{ - dir = 8; - icon_state = "borderfloor"; - pixel_x = 0 + dir = 8 }, /obj/effect/floor_decal/corner/mauve/border{ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4; - icon_state = "intact-scrubbers" + dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -20738,8 +20316,7 @@ /area/rnd/rdoffice) "aJF" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4; - icon_state = "intact-scrubbers" + dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -20807,8 +20384,7 @@ /area/maintenance/lower/rnd) "aJN" = ( /obj/machinery/light/small{ - dir = 4; - pixel_y = 0 + dir = 4 }, /obj/machinery/atmospherics/pipe/zpipe/down/scrubbers, /obj/machinery/atmospherics/pipe/zpipe/down/supply, @@ -20844,7 +20420,6 @@ /area/chapel/office) "aJR" = ( /obj/machinery/light_switch{ - dir = 2; name = "light switch "; pixel_x = 10; pixel_y = 32 @@ -20908,7 +20483,6 @@ desc = "A firewall prevents AIs from interacting with this device."; name = "Telecoms lethal turret control"; pixel_x = 29; - pixel_y = 0; req_access = list(61); req_one_access = list(12) }, @@ -20939,9 +20513,7 @@ "aKc" = ( /obj/machinery/photocopier, /obj/effect/floor_decal/borderfloor{ - dir = 8; - icon_state = "borderfloor"; - pixel_x = 0 + dir = 8 }, /obj/effect/floor_decal/corner/mauve/border{ dir = 8 @@ -21209,8 +20781,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/door/firedoor/glass/hidden, @@ -21284,7 +20855,6 @@ /area/maintenance/lower/atmos) "aKL" = ( /obj/machinery/atmospherics/unary/vent_pump{ - dir = 2; icon_state = "map_vent_out"; use_power = 1 }, @@ -21309,8 +20879,7 @@ /area/server) "aKN" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 6; - icon_state = "intact" + dir = 6 }, /obj/effect/floor_decal/techfloor{ dir = 1 @@ -21334,9 +20903,7 @@ "aKP" = ( /obj/machinery/papershredder, /obj/effect/floor_decal/borderfloor{ - dir = 8; - icon_state = "borderfloor"; - pixel_x = 0 + dir = 8 }, /obj/effect/floor_decal/corner/mauve/border{ dir = 8 @@ -21384,17 +20951,14 @@ dir = 4 }, /obj/machinery/camera/network/research{ - dir = 8; - icon_state = "camera" + dir = 8 }, /turf/simulated/floor/tiled, /area/rnd/rdoffice) "aKU" = ( /obj/machinery/power/smes/buildable{ RCon_tag = "Substation - Research"; - charge = 0; - output_attempt = 0; - outputting = 0 + output_attempt = 0 }, /obj/structure/cable/green, /obj/structure/cable/green{ @@ -21553,8 +21117,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled/techmaint, @@ -21638,8 +21201,7 @@ /area/maintenance/lower/atmos) "aLt" = ( /obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 8; - icon_state = "map" + dir = 8 }, /turf/simulated/floor/bluegrid{ name = "Server Base"; @@ -21679,9 +21241,7 @@ /area/server) "aLx" = ( /obj/effect/floor_decal/borderfloor{ - dir = 8; - icon_state = "borderfloor"; - pixel_x = 0 + dir = 8 }, /obj/effect/floor_decal/corner/mauve/border{ dir = 8 @@ -21718,7 +21278,6 @@ }, /obj/machinery/alarm{ dir = 8; - icon_state = "alarm0"; pixel_x = 24 }, /obj/structure/flora/pottedplant/stoutbush, @@ -21769,8 +21328,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/machinery/door/airlock/engineering{ name = "Science Substation"; @@ -21919,8 +21477,7 @@ name = "Chaplain" }, /obj/structure/bed/chair/wood/wings{ - dir = 1; - icon_state = "wooden_chair_wings" + dir = 1 }, /turf/simulated/floor/lino, /area/chapel/office) @@ -21940,7 +21497,6 @@ }, /obj/structure/cable/green{ d2 = 8; - dir = 2; icon_state = "0-8" }, /turf/simulated/floor/lino, @@ -21973,18 +21529,15 @@ "aLZ" = ( /obj/item/device/radio/intercom{ broadcasting = 1; - dir = 2; frequency = 1473; name = "Confession Intercom"; - pixel_x = 0; pixel_y = -24 }, /obj/structure/bed/chair{ dir = 4 }, /obj/machinery/light/small{ - dir = 8; - pixel_x = 0 + dir = 8 }, /turf/simulated/floor/tiled/dark, /area/chapel/main) @@ -21992,25 +21545,21 @@ /obj/structure/grille, /obj/structure/window/reinforced/tinted, /obj/structure/window/reinforced/tinted{ - dir = 4; - icon_state = "twindow" + dir = 4 }, /obj/structure/window/reinforced/tinted{ dir = 1 }, /obj/structure/window/reinforced/tinted{ - dir = 8; - icon_state = "twindow" + dir = 8 }, /turf/simulated/floor, /area/chapel/main) "aMb" = ( /obj/item/device/radio/intercom{ broadcasting = 1; - dir = 2; frequency = 1473; name = "Confession Intercom"; - pixel_x = 0; pixel_y = -24 }, /obj/structure/bed/chair{ @@ -22175,7 +21724,6 @@ /obj/effect/floor_decal/borderfloor, /obj/machinery/firealarm{ dir = 1; - pixel_x = 0; pixel_y = -26 }, /obj/effect/floor_decal/corner/yellow/border, @@ -22201,8 +21749,7 @@ dir = 9 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 9; - icon_state = "bordercolorcorner2" + dir = 9 }, /obj/machinery/door/firedoor/glass, /obj/machinery/door/airlock/glass, @@ -22216,8 +21763,7 @@ dir = 9 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 9; - icon_state = "bordercolorcorner2" + dir = 9 }, /obj/effect/floor_decal/corner/yellow/bordercorner2, /turf/simulated/floor/tiled/techmaint, @@ -22263,7 +21809,6 @@ "aMD" = ( /obj/effect/floor_decal/borderfloor, /obj/machinery/newscaster{ - pixel_x = 0; pixel_y = -30 }, /turf/simulated/floor/tiled/techmaint, @@ -22290,8 +21835,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/structure/disposalpipe/segment, /obj/effect/floor_decal/steeldecal/steel_decals4{ @@ -22353,8 +21897,7 @@ /area/maintenance/lower/south) "aMO" = ( /obj/machinery/light_construct{ - dir = 4; - icon_state = "tube-construct-stage1" + dir = 4 }, /turf/simulated/floor/plating, /area/vacant/vacant_bar_upper) @@ -22571,7 +22114,6 @@ dir = 6 }, /obj/machinery/newscaster{ - pixel_x = 0; pixel_y = -30 }, /turf/simulated/floor/tiled/techmaint, @@ -22635,8 +22177,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/machinery/door/airlock/multi_tile/glass, /turf/simulated/floor/tiled/techmaint, @@ -22813,7 +22354,6 @@ /obj/structure/closet/wardrobe/robotics_black, /obj/machinery/alarm{ dir = 8; - icon_state = "alarm0"; pixel_x = 24 }, /turf/simulated/floor/tiled/dark, @@ -22826,16 +22366,13 @@ /area/tether/surfacebase/emergency_storage/atmos) "aNE" = ( /obj/effect/floor_decal/borderfloor/shifted{ - dir = 1; - icon_state = "borderfloor_shifted" + dir = 1 }, /obj/effect/floor_decal/corner/red/border/shifted{ - dir = 1; - icon_state = "bordercolor_shifted" + dir = 1 }, /obj/effect/floor_decal/corner/yellow{ - dir = 5; - icon_state = "corner_white" + dir = 5 }, /obj/machinery/atmospherics/portables_connector, /obj/machinery/portable_atmospherics/powered/scrubber, @@ -22843,36 +22380,30 @@ /area/engineering/lower/lobby) "aNF" = ( /obj/effect/floor_decal/borderfloor/shifted{ - dir = 1; - icon_state = "borderfloor_shifted" + dir = 1 }, /obj/effect/floor_decal/corner/red/border/shifted{ - dir = 1; - icon_state = "bordercolor_shifted" + dir = 1 }, /obj/effect/floor_decal/corner/yellow{ - dir = 5; - icon_state = "corner_white" + dir = 5 }, /obj/structure/bed/chair, /turf/simulated/floor/tiled, /area/engineering/lower/lobby) "aNG" = ( /obj/effect/floor_decal/corner/yellow{ - dir = 1; - icon_state = "corner_white" + dir = 1 }, /obj/structure/bed/chair, /obj/machinery/light{ dir = 1 }, /obj/effect/floor_decal/borderfloor/shifted{ - dir = 6; - icon_state = "borderfloor_shifted" + dir = 6 }, /obj/effect/floor_decal/corner/red/border/shifted{ - dir = 6; - icon_state = "bordercolor_shifted" + dir = 6 }, /turf/simulated/floor/tiled, /area/engineering/lower/lobby) @@ -22887,13 +22418,10 @@ /area/engineering/lower/lobby) "aNI" = ( /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 1 @@ -22902,12 +22430,10 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 4; - icon_state = "bordercolorcorner2" + dir = 4 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 1; - icon_state = "bordercolorcorner2" + dir = 1 }, /turf/simulated/floor/tiled, /area/engineering/lower/lobby) @@ -22930,15 +22456,13 @@ dir = 5 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 5; - icon_state = "bordercolor" + dir = 5 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 4 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 4; - icon_state = "bordercolorcorner2" + dir = 4 }, /obj/structure/disposalpipe/trunk{ dir = 8 @@ -22961,7 +22485,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 28 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ @@ -23022,8 +22545,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /turf/simulated/floor/tiled/techmaint, /area/tether/surfacebase/east_stairs_two) @@ -23095,7 +22617,6 @@ }, /obj/machinery/alarm{ dir = 4; - icon_state = "alarm0"; pixel_x = -22 }, /turf/simulated/floor/tiled/techfloor, @@ -23379,8 +22900,7 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4; - icon_state = "map-scrubbers" + dir = 4 }, /obj/structure/cable/green{ d1 = 1; @@ -23415,7 +22935,6 @@ /obj/effect/floor_decal/borderfloor/corner2, /obj/effect/floor_decal/corner/mauve/bordercorner2, /obj/machinery/power/apc{ - dir = 2; name = "south bump"; pixel_y = -32 }, @@ -23466,8 +22985,7 @@ /area/engineering/lower/lobby) "aOx" = ( /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 5; - icon_state = "intact" + dir = 5 }, /turf/simulated/floor/tiled, /area/engineering/lower/lobby) @@ -23482,15 +23000,13 @@ /area/engineering/lower/lobby) "aOA" = ( /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 4; - icon_state = "intact" + dir = 4 }, /turf/simulated/floor/tiled, /area/engineering/lower/lobby) "aOB" = ( /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 10; - icon_state = "intact" + dir = 10 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/structure/disposalpipe/segment, @@ -23504,15 +23020,13 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 4; - icon_state = "bordercolor" + dir = 4 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 5 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 5; - icon_state = "bordercolorcorner2" + dir = 5 }, /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 8 @@ -23635,9 +23149,7 @@ /area/server) "aOW" = ( /obj/effect/floor_decal/borderfloor{ - dir = 8; - icon_state = "borderfloor"; - pixel_x = 0 + dir = 8 }, /obj/effect/floor_decal/corner/mauve/border{ dir = 8 @@ -23685,8 +23197,7 @@ dir = 6 }, /obj/machinery/camera/network/research{ - dir = 8; - icon_state = "camera" + dir = 8 }, /turf/simulated/floor/tiled, /area/rnd/staircase/secondfloor) @@ -23725,8 +23236,7 @@ }, /obj/machinery/door/firedoor/glass, /obj/machinery/door/airlock/maintenance/int{ - name = "Emergency Storage"; - req_one_access = list() + name = "Emergency Storage" }, /turf/simulated/floor/plating, /area/tether/surfacebase/emergency_storage/atmos) @@ -23881,8 +23391,7 @@ dir = 10 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -23905,8 +23414,6 @@ /obj/machinery/button/remote/blast_door{ id = "atmoslockdown"; name = "Atmospherics Lockdown"; - pixel_x = 0; - pixel_y = 0; req_one_access = list(10,24) }, /turf/simulated/floor/carpet, @@ -23975,16 +23482,13 @@ /area/maintenance/lower/south) "aPE" = ( /obj/effect/floor_decal/borderfloor{ - dir = 8; - icon_state = "borderfloor"; - pixel_x = 0 + dir = 8 }, /obj/effect/floor_decal/corner/mauve/border{ dir = 8 }, /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /obj/machinery/firealarm{ dir = 8; @@ -24012,8 +23516,7 @@ /area/rnd/staircase/secondfloor) "aPI" = ( /obj/machinery/light{ - dir = 4; - icon_state = "tube1" + dir = 4 }, /turf/simulated/open, /area/rnd/staircase/secondfloor) @@ -24026,9 +23529,7 @@ /area/rnd/breakroom) "aPL" = ( /obj/machinery/firealarm{ - dir = 2; layer = 3.3; - pixel_x = 0; pixel_y = 26 }, /turf/simulated/floor/wood, @@ -24075,7 +23576,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 24 }, /obj/structure/cable/green{ @@ -24087,7 +23587,6 @@ /obj/machinery/computer/security/telescreen/entertainment{ desc = "Looks like it's set to Free-Anur-Entertanment, I wonder what else is on?"; icon_state = "frame"; - pixel_x = 0; pixel_y = 32 }, /turf/simulated/floor/wood, @@ -24095,7 +23594,6 @@ "aPS" = ( /obj/machinery/alarm{ dir = 8; - icon_state = "alarm0"; pixel_x = 24 }, /obj/structure/flora/pottedplant/stoutbush, @@ -24118,14 +23616,12 @@ /area/tether/surfacebase/emergency_storage/atmos) "aPW" = ( /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, /obj/machinery/power/apc{ - cell_type = /obj/item/weapon/cell/apc; dir = 8; name = "west bump"; pixel_x = -28 @@ -24135,22 +23631,19 @@ /area/engineering/lower/lobby) "aPX" = ( /obj/machinery/atmospherics/pipe/simple/hidden/cyan{ - dir = 6; - icon_state = "intact" + dir = 6 }, /turf/simulated/floor/tiled, /area/engineering/lower/lobby) "aPY" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/cyan{ - dir = 1; - icon_state = "map" + dir = 1 }, /turf/simulated/floor/tiled, /area/engineering/lower/lobby) "aPZ" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/cyan{ - dir = 1; - icon_state = "map" + dir = 1 }, /obj/machinery/meter, /turf/simulated/floor/tiled, @@ -24168,8 +23661,7 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/cyan{ - dir = 10; - icon_state = "intact" + dir = 10 }, /turf/simulated/floor/tiled, /area/engineering/lower/lobby) @@ -24190,15 +23682,13 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 4; - icon_state = "bordercolor" + dir = 4 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 6 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 6; - icon_state = "bordercolorcorner2" + dir = 6 }, /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 @@ -24207,8 +23697,7 @@ /area/engineering/lower/lobby) "aQf" = ( /obj/machinery/computer/station_alert{ - dir = 4; - icon_state = "computer" + dir = 4 }, /turf/simulated/floor/tiled/dark, /area/engineering/lower/breakroom) @@ -24254,9 +23743,7 @@ }, /obj/machinery/alarm{ dir = 4; - icon_state = "alarm0"; - pixel_x = -22; - pixel_y = 0 + pixel_x = -22 }, /turf/simulated/floor/tiled/techmaint, /area/tether/surfacebase/east_stairs_two) @@ -24344,7 +23831,6 @@ "aQx" = ( /obj/machinery/alarm{ dir = 8; - icon_state = "alarm0"; pixel_x = 24 }, /obj/random/tool, @@ -24434,8 +23920,7 @@ /obj/effect/floor_decal/borderfloor/shifted, /obj/effect/floor_decal/corner/white/border/shifted, /obj/effect/floor_decal/corner/yellow{ - dir = 10; - icon_state = "corner_white" + dir = 10 }, /obj/structure/flora/pottedplant/subterranean, /turf/simulated/floor/tiled, @@ -24444,8 +23929,7 @@ /obj/effect/floor_decal/borderfloor/shifted, /obj/effect/floor_decal/corner/blue/border/shifted, /obj/effect/floor_decal/corner/yellow{ - dir = 10; - icon_state = "corner_white" + dir = 10 }, /obj/machinery/atmospherics/portables_connector{ dir = 1 @@ -24457,8 +23941,7 @@ /obj/effect/floor_decal/borderfloor/shifted, /obj/effect/floor_decal/corner/white/border/shifted, /obj/effect/floor_decal/corner/yellow{ - dir = 10; - icon_state = "corner_white" + dir = 10 }, /obj/machinery/atmospherics/portables_connector{ dir = 1 @@ -24470,8 +23953,7 @@ /obj/effect/floor_decal/borderfloor/shifted, /obj/effect/floor_decal/corner/white/border/shifted, /obj/effect/floor_decal/corner/yellow{ - dir = 10; - icon_state = "corner_white" + dir = 10 }, /obj/structure/bed/chair{ dir = 1 @@ -24483,20 +23965,17 @@ /area/engineering/lower/lobby) "aQN" = ( /obj/effect/floor_decal/corner/yellow{ - dir = 8; - icon_state = "corner_white" + dir = 8 }, /obj/structure/bed/chair{ dir = 1 }, /obj/machinery/light, /obj/effect/floor_decal/borderfloor/shifted{ - dir = 5; - icon_state = "borderfloor_shifted" + dir = 5 }, /obj/effect/floor_decal/corner/blue/border/shifted{ - dir = 5; - icon_state = "bordercolor_shifted" + dir = 5 }, /turf/simulated/floor/tiled, /area/engineering/lower/lobby) @@ -24523,8 +24002,7 @@ dir = 9 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 9; - icon_state = "bordercolorcorner2" + dir = 9 }, /obj/effect/floor_decal/corner/yellow/bordercorner2, /turf/simulated/floor/tiled, @@ -24547,8 +24025,7 @@ dir = 6 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 6; - icon_state = "bordercolor" + dir = 6 }, /obj/effect/floor_decal/borderfloor/corner2, /obj/effect/floor_decal/corner/yellow/bordercorner2, @@ -24684,8 +24161,7 @@ department = "Science"; departmentType = 2; name = "Science Requests Console"; - pixel_x = -30; - pixel_y = 0 + pixel_x = -30 }, /obj/structure/bed/chair/comfy/brown{ dir = 1 @@ -24729,8 +24205,7 @@ dir = 9 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 9; - icon_state = "bordercolor" + dir = 9 }, /obj/structure/table/rack{ dir = 8; @@ -24749,13 +24224,10 @@ /area/engineering/lower/atmos_eva) "aRr" = ( /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/machinery/alarm{ pixel_y = 22 @@ -24771,8 +24243,7 @@ dir = 5 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 5; - icon_state = "bordercolor" + dir = 5 }, /obj/structure/table/standard, /obj/item/weapon/storage/briefcase/inflatable{ @@ -24786,9 +24257,7 @@ pixel_x = -3 }, /obj/machinery/firealarm{ - dir = 2; layer = 3.3; - pixel_x = 0; pixel_y = 26 }, /turf/simulated/floor/tiled, @@ -24905,7 +24374,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 24 }, /turf/simulated/floor/tiled/techfloor, @@ -24917,8 +24385,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/south) @@ -24929,8 +24396,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/south) @@ -25006,8 +24472,7 @@ dir = 8 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 8; - icon_state = "bordercolor" + dir = 8 }, /obj/structure/table/rack{ dir = 8; @@ -25033,8 +24498,7 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 4; - icon_state = "bordercolor" + dir = 4 }, /obj/structure/table/standard, /obj/item/device/suit_cooling_unit, @@ -25052,8 +24516,7 @@ dir = 9 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 9; - icon_state = "bordercolor" + dir = 9 }, /obj/structure/closet/secure_closet/atmos_personal, /obj/machinery/camera/network/engineering, @@ -25061,13 +24524,10 @@ /area/engineering/lower/atmos_lockers) "aRV" = ( /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/structure/closet/secure_closet/atmos_personal, /obj/machinery/alarm{ @@ -25077,20 +24537,15 @@ /area/engineering/lower/atmos_lockers) "aRW" = ( /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/machinery/atmospherics/unary/vent_scrubber/on, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/structure/closet/secure_closet/atmos_personal, /obj/machinery/firealarm{ - dir = 2; layer = 3.3; - pixel_x = 0; pixel_y = 26 }, /obj/machinery/light{ @@ -25106,17 +24561,13 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 28 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/machinery/vending/engivend, /turf/simulated/floor/tiled, @@ -25129,8 +24580,7 @@ dir = 5 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 5; - icon_state = "bordercolor" + dir = 5 }, /obj/machinery/vending/tool, /turf/simulated/floor/tiled, @@ -25161,13 +24611,10 @@ dir = 4 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 1 @@ -25176,12 +24623,10 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 4; - icon_state = "bordercolorcorner2" + dir = 4 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 1; - icon_state = "bordercolorcorner2" + dir = 1 }, /turf/simulated/floor/tiled/monotile, /area/engineering/atmos) @@ -25227,8 +24672,7 @@ /area/maintenance/engineering/pumpstation) "aSi" = ( /obj/machinery/atmospherics/pipe/simple/hidden/cyan{ - dir = 10; - icon_state = "intact" + dir = 10 }, /obj/structure/cable/cyan{ d2 = 2; @@ -25237,7 +24681,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 28 }, /turf/simulated/floor/plating, @@ -25278,8 +24721,7 @@ dir = 9 }, /obj/machinery/light/small{ - dir = 8; - pixel_y = 0 + dir = 8 }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/south) @@ -25435,15 +24877,13 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 8; - icon_state = "bordercolor" + dir = 8 }, /obj/machinery/suit_cycler/engineering{ name = "Atmospherics suit cycler" }, /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /turf/simulated/floor/tiled, /area/engineering/lower/atmos_eva) @@ -25464,15 +24904,13 @@ dir = 8 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 4; - icon_state = "bordercolor" + dir = 4 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 5 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 5; - icon_state = "bordercolorcorner2" + dir = 5 }, /turf/simulated/floor/tiled, /area/engineering/lower/atmos_eva) @@ -25481,17 +24919,13 @@ dir = 8 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 8; - icon_state = "bordercolor" + dir = 8 }, /obj/effect/floor_decal/borderfloor/corner2{ - dir = 10; - icon_state = "borderfloorcorner2"; - pixel_x = 0 + dir = 10 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 10; - icon_state = "bordercolorcorner2" + dir = 10 }, /turf/simulated/floor/tiled, /area/engineering/lower/atmos_lockers) @@ -25518,15 +24952,13 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 4; - icon_state = "bordercolor" + dir = 4 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 5 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 5; - icon_state = "bordercolorcorner2" + dir = 5 }, /turf/simulated/floor/tiled, /area/engineering/lower/atmos_lockers) @@ -25578,7 +25010,6 @@ /obj/machinery/portable_atmospherics/powered/pump/filled, /obj/machinery/alarm{ dir = 4; - icon_state = "alarm0"; pixel_x = -22 }, /turf/simulated/floor/plating, @@ -25596,8 +25027,7 @@ /area/maintenance/engineering/pumpstation) "aSY" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/red{ - dir = 8; - icon_state = "map" + dir = 8 }, /turf/simulated/floor/plating, /area/maintenance/engineering/pumpstation) @@ -25623,15 +25053,13 @@ "aTb" = ( /obj/structure/disposalpipe/sortjunction{ dir = 4; - icon_state = "pipe-j1s"; name = "Janitor Closet"; sortType = "Janitor Closet" }, /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -25765,8 +25193,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -25789,8 +25216,7 @@ dir = 6 }, /obj/machinery/light/small{ - dir = 4; - pixel_y = 0 + dir = 4 }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/south) @@ -25848,8 +25274,7 @@ dir = 8 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 8; - icon_state = "bordercolor" + dir = 8 }, /obj/machinery/power/apc{ cell_type = /obj/item/weapon/cell/super; @@ -26081,8 +25506,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /turf/simulated/floor/plating, /area/engineering/atmos/storage) @@ -26151,8 +25575,7 @@ dir = 4 }, /obj/machinery/light/small{ - dir = 4; - pixel_y = 0 + dir = 4 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 6 @@ -26245,15 +25668,13 @@ dir = 10 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 10; - icon_state = "bordercolor" + dir = 10 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 9 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 9; - icon_state = "bordercolorcorner2" + dir = 9 }, /obj/machinery/portable_atmospherics/canister/oxygen, /obj/machinery/camera/network/engineering{ @@ -26277,16 +25698,14 @@ dir = 6 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 6; - icon_state = "bordercolor" + dir = 6 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 6 }, /obj/effect/floor_decal/borderfloor/corner2, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 6; - icon_state = "bordercolorcorner2" + dir = 6 }, /obj/effect/floor_decal/corner/yellow/bordercorner2, /obj/machinery/recharge_station, @@ -26297,15 +25716,13 @@ dir = 10 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 10; - icon_state = "bordercolor" + dir = 10 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 8 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 8; - icon_state = "bordercolorcorner2" + dir = 8 }, /obj/structure/closet/secure_closet/engineering_electrical, /turf/simulated/floor/tiled, @@ -26343,15 +25760,13 @@ dir = 6 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 6; - icon_state = "bordercolor" + dir = 6 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 6 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 6; - icon_state = "bordercolorcorner2" + dir = 6 }, /obj/structure/table/standard, /obj/item/clothing/gloves/black, @@ -26387,8 +25802,7 @@ dir = 9 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 9; - icon_state = "bordercolorcorner2" + dir = 9 }, /obj/effect/floor_decal/corner/yellow/bordercorner2, /turf/simulated/floor/tiled/monotile, @@ -26426,7 +25840,6 @@ /area/engineering/atmos/storage) "aUG" = ( /obj/machinery/power/apc{ - dir = 2; name = "south bump"; pixel_y = -32 }, @@ -26446,19 +25859,16 @@ /area/tether/surfacebase/east_stairs_two) "aUL" = ( /obj/effect/floor_decal/corner/purple{ - dir = 5; - icon_state = "corner_white" + dir = 5 }, /obj/structure/mopbucket, /obj/item/weapon/mop, /obj/item/weapon/reagent_containers/glass/bucket, /obj/effect/floor_decal/borderfloor/shifted{ - dir = 1; - icon_state = "borderfloor_shifted" + dir = 1 }, /obj/effect/floor_decal/corner/purple/border/shifted{ - dir = 1; - icon_state = "bordercolor_shifted" + dir = 1 }, /obj/machinery/camera/network/civilian, /turf/simulated/floor/tiled, @@ -26468,16 +25878,13 @@ pixel_y = 32 }, /obj/effect/floor_decal/borderfloor/shifted{ - dir = 1; - icon_state = "borderfloor_shifted" + dir = 1 }, /obj/effect/floor_decal/corner/purple/border/shifted{ - dir = 1; - icon_state = "bordercolor_shifted" + dir = 1 }, /obj/effect/floor_decal/corner/purple{ - dir = 5; - icon_state = "corner_white" + dir = 5 }, /obj/structure/mopbucket, /obj/item/weapon/mop, @@ -26492,20 +25899,16 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 24 }, /obj/effect/floor_decal/borderfloor/shifted{ - dir = 1; - icon_state = "borderfloor_shifted" + dir = 1 }, /obj/effect/floor_decal/corner/purple/border/shifted{ - dir = 1; - icon_state = "bordercolor_shifted" + dir = 1 }, /obj/effect/floor_decal/corner/purple{ - dir = 5; - icon_state = "corner_white" + dir = 5 }, /obj/structure/mopbucket, /obj/item/weapon/mop, @@ -26514,16 +25917,13 @@ /area/janitor) "aUO" = ( /obj/effect/floor_decal/borderfloor/shifted{ - dir = 1; - icon_state = "borderfloor_shifted" + dir = 1 }, /obj/effect/floor_decal/corner/purple/border/shifted{ - dir = 1; - icon_state = "bordercolor_shifted" + dir = 1 }, /obj/effect/floor_decal/corner/purple{ - dir = 5; - icon_state = "corner_white" + dir = 5 }, /obj/structure/janitorialcart, /obj/structure/sink/kitchen{ @@ -26534,16 +25934,13 @@ "aUP" = ( /obj/structure/janitorialcart, /obj/effect/floor_decal/borderfloor/shifted{ - dir = 1; - icon_state = "borderfloor_shifted" + dir = 1 }, /obj/effect/floor_decal/corner/purple/border/shifted{ - dir = 1; - icon_state = "bordercolor_shifted" + dir = 1 }, /obj/effect/floor_decal/corner/purple{ - dir = 5; - icon_state = "corner_white" + dir = 5 }, /obj/machinery/alarm{ pixel_y = 22 @@ -26556,16 +25953,13 @@ "aUQ" = ( /obj/structure/janitorialcart, /obj/effect/floor_decal/borderfloor/shifted{ - dir = 1; - icon_state = "borderfloor_shifted" + dir = 1 }, /obj/effect/floor_decal/corner/purple/border/shifted{ - dir = 1; - icon_state = "bordercolor_shifted" + dir = 1 }, /obj/effect/floor_decal/corner/purple{ - dir = 5; - icon_state = "corner_white" + dir = 5 }, /turf/simulated/floor/tiled, /area/janitor) @@ -26607,7 +26001,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 24 }, /obj/structure/cable/green{ @@ -26637,14 +26030,10 @@ "aVh" = ( /obj/structure/sink{ dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 + pixel_x = 11 }, /obj/machinery/firealarm{ - dir = 2; layer = 3.3; - pixel_x = 0; pixel_y = 26 }, /obj/structure/mirror{ @@ -26750,9 +26139,7 @@ /obj/machinery/button/remote/blast_door{ id = "janitor_blast"; name = "Desk Shutters"; - pixel_x = -22; - pixel_y = 0; - pixel_z = 0 + pixel_x = -22 }, /obj/effect/floor_decal/borderfloor{ dir = 8 @@ -26783,8 +26170,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /turf/simulated/floor/tiled, /area/janitor) @@ -26796,8 +26182,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/machinery/door/firedoor/border_only, /turf/simulated/floor/tiled/techfloor, @@ -26814,8 +26199,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/structure/disposalpipe/segment, /turf/simulated/floor/plating, @@ -26825,8 +26209,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /turf/simulated/floor/plating, /area/maintenance/lower/south) @@ -26836,8 +26219,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /turf/simulated/floor/plating, /area/maintenance/lower/south) @@ -26884,8 +26266,7 @@ /area/rnd/breakroom/bathroom) "aVL" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 9 @@ -26895,9 +26276,7 @@ "aVM" = ( /obj/structure/sink{ dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 + pixel_x = 11 }, /obj/structure/mirror{ pixel_x = 29 @@ -26912,8 +26291,7 @@ dir = 9 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 9; - icon_state = "bordercolor" + dir = 9 }, /obj/machinery/camera/network/engineering, /obj/machinery/atmospherics/unary/vent_pump/on{ @@ -26923,13 +26301,10 @@ /area/engineering/atmos) "aVR" = ( /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/machinery/alarm{ pixel_y = 22 @@ -26949,9 +26324,7 @@ icon_state = "2-4" }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 1 @@ -26960,15 +26333,13 @@ dir = 6 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 1 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 1; - icon_state = "bordercolorcorner2" + dir = 1 }, /turf/simulated/floor/tiled, /area/engineering/atmos) @@ -26995,9 +26366,7 @@ icon_state = "4-8" }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -27006,15 +26375,13 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 4 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 4; - icon_state = "bordercolorcorner2" + dir = 4 }, /obj/machinery/door/firedoor/glass/hidden/steel{ dir = 2 @@ -27028,21 +26395,16 @@ icon_state = "4-8" }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/machinery/firealarm{ - dir = 2; layer = 3.3; - pixel_x = 0; pixel_y = 26 }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ @@ -27057,9 +26419,7 @@ icon_state = "4-8" }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -27068,8 +26428,7 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /turf/simulated/floor/tiled, /area/engineering/atmos) @@ -27085,9 +26444,7 @@ icon_state = "2-8" }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -27096,8 +26453,7 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /turf/simulated/floor/tiled, /area/engineering/atmos) @@ -27108,16 +26464,13 @@ icon_state = "4-8" }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 1 @@ -27131,9 +26484,7 @@ icon_state = "4-8" }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -27142,15 +26493,13 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 1 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 1; - icon_state = "bordercolorcorner2" + dir = 1 }, /obj/machinery/door/firedoor/glass/hidden/steel{ dir = 2 @@ -27169,8 +26518,7 @@ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/hidden/cyan{ - dir = 5; - icon_state = "intact" + dir = 5 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -27202,13 +26550,10 @@ dir = 1 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 1 @@ -27217,12 +26562,10 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 4; - icon_state = "bordercolorcorner2" + dir = 4 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 1; - icon_state = "bordercolorcorner2" + dir = 1 }, /obj/structure/cable/cyan{ d1 = 4; @@ -27257,9 +26600,7 @@ dir = 4 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -27268,15 +26609,13 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 4 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 4; - icon_state = "bordercolorcorner2" + dir = 4 }, /obj/structure/cable/cyan{ d1 = 4; @@ -27293,16 +26632,13 @@ dir = 4 }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/structure/cable/cyan{ d1 = 4; @@ -27316,9 +26652,7 @@ /area/engineering/atmos) "aWf" = ( /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 1 @@ -27327,12 +26661,10 @@ dir = 1 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/machinery/atmospherics/pipe/manifold/hidden/cyan{ - dir = 1; - icon_state = "map" + dir = 1 }, /obj/structure/cable/cyan{ d1 = 4; @@ -27343,9 +26675,7 @@ /area/engineering/atmos) "aWg" = ( /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -27354,12 +26684,10 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/cyan{ - dir = 4; - icon_state = "intact" + dir = 4 }, /obj/structure/cable/cyan{ d1 = 4; @@ -27370,20 +26698,16 @@ /area/engineering/atmos) "aWh" = ( /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/cyan{ - dir = 4; - icon_state = "intact" + dir = 4 }, /obj/structure/cable/cyan{ d1 = 4; @@ -27397,9 +26721,7 @@ /area/engineering/atmos) "aWi" = ( /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -27408,12 +26730,10 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/cyan{ - dir = 4; - icon_state = "intact" + dir = 4 }, /obj/structure/cable/cyan{ d1 = 4; @@ -27427,9 +26747,7 @@ /area/engineering/atmos) "aWj" = ( /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -27438,12 +26756,10 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/cyan{ - dir = 9; - icon_state = "intact" + dir = 9 }, /obj/structure/cable/cyan{ d1 = 1; @@ -27454,9 +26770,7 @@ /area/engineering/atmos) "aWk" = ( /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 1 @@ -27465,8 +26779,7 @@ dir = 10 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/red, /turf/simulated/floor/tiled, @@ -27476,8 +26789,7 @@ dir = 5 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 5; - icon_state = "bordercolor" + dir = 5 }, /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 @@ -27505,12 +26817,9 @@ "aWo" = ( /obj/machinery/door/window/eastleft{ dir = 8; - icon_state = "left"; name = "Janitorial Desk" }, /obj/machinery/door/window/eastleft{ - dir = 4; - icon_state = "left"; name = "Janitorial Desk"; req_access = list(26) }, @@ -27568,12 +26877,10 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/machinery/light/small{ - dir = 8; - pixel_y = 0 + dir = 8 }, /obj/structure/disposalpipe/segment, /turf/simulated/floor/plating, @@ -27635,7 +26942,6 @@ }, /obj/machinery/door/blast/regular{ density = 0; - dir = 1; icon_state = "pdoor0"; id = "atmoslockdown"; layer = 1; @@ -27651,8 +26957,7 @@ dir = 10 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 10; - icon_state = "bordercolor" + dir = 10 }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -27690,7 +26995,6 @@ /obj/effect/floor_decal/corner/yellow/border, /obj/structure/disposalpipe/sortjunction{ dir = 4; - icon_state = "pipe-j1s"; name = "Drone Fabrication"; sortType = "Drone Fabrication" }, @@ -27723,8 +27027,7 @@ dir = 9 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 9; - icon_state = "bordercolorcorner2" + dir = 9 }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -27757,8 +27060,7 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 6; - icon_state = "intact" + dir = 6 }, /obj/effect/floor_decal/borderfloor, /obj/effect/floor_decal/corner/yellow/border, @@ -27769,8 +27071,7 @@ /area/engineering/atmos) "aWS" = ( /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 4; - icon_state = "intact" + dir = 4 }, /obj/effect/floor_decal/borderfloor, /obj/effect/floor_decal/corner/yellow/border, @@ -27785,8 +27086,7 @@ /area/engineering/atmos) "aWT" = ( /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 4; - icon_state = "intact" + dir = 4 }, /obj/effect/floor_decal/borderfloor, /obj/effect/floor_decal/corner/yellow/border, @@ -27803,8 +27103,7 @@ /area/engineering/atmos) "aWU" = ( /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 4; - icon_state = "intact" + dir = 4 }, /obj/effect/floor_decal/borderfloor, /obj/effect/floor_decal/corner/yellow/border, @@ -27812,8 +27111,7 @@ dir = 9 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 9; - icon_state = "bordercolorcorner2" + dir = 9 }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -27827,14 +27125,12 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 4; - icon_state = "intact" + dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/structure/disposalpipe/sortjunction{ dir = 4; - icon_state = "pipe-j1s"; name = "Atmospherics"; sortType = "Atmospherics" }, @@ -27865,8 +27161,7 @@ pixel_y = -32 }, /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 4; - icon_state = "intact" + dir = 4 }, /obj/machinery/door/firedoor/glass/hidden/steel{ dir = 1 @@ -27878,8 +27173,7 @@ /obj/effect/floor_decal/corner/yellow/border, /obj/machinery/light, /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 4; - icon_state = "intact" + dir = 4 }, /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 1 @@ -27893,8 +27187,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/effect/floor_decal/corner/yellow/border, /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 4; - icon_state = "intact" + dir = 4 }, /turf/simulated/floor/tiled, /area/engineering/atmos) @@ -27905,19 +27198,16 @@ dir = 9 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 9; - icon_state = "bordercolorcorner2" + dir = 9 }, /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 4; - icon_state = "intact" + dir = 4 }, /turf/simulated/floor/tiled, /area/engineering/atmos) "aXb" = ( /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 4; - icon_state = "intact" + dir = 4 }, /turf/simulated/floor/tiled, /area/engineering/atmos) @@ -27927,8 +27217,7 @@ /obj/effect/floor_decal/borderfloor/corner2, /obj/effect/floor_decal/corner/yellow/bordercorner2, /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 4; - icon_state = "intact" + dir = 4 }, /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 @@ -27940,8 +27229,7 @@ /obj/effect/floor_decal/corner/yellow/border, /obj/machinery/light, /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 4; - icon_state = "intact" + dir = 4 }, /obj/machinery/door/firedoor/glass/hidden/steel{ dir = 1 @@ -27952,8 +27240,7 @@ /obj/effect/floor_decal/borderfloor, /obj/effect/floor_decal/corner/yellow/border, /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 4; - icon_state = "intact" + dir = 4 }, /turf/simulated/floor/tiled, /area/engineering/atmos) @@ -27965,8 +27252,7 @@ }, /obj/effect/floor_decal/corner/yellow/border, /obj/machinery/atmospherics/pipe/simple/hidden/red{ - dir = 9; - icon_state = "intact" + dir = 9 }, /turf/simulated/floor/tiled, /area/engineering/atmos) @@ -27978,8 +27264,7 @@ dir = 8 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 6; - icon_state = "bordercolor" + dir = 6 }, /obj/machinery/camera/network/engineering{ dir = 1 @@ -28008,13 +27293,10 @@ dir = 8 }, /obj/effect/floor_decal/borderfloor/corner2{ - dir = 10; - icon_state = "borderfloorcorner2"; - pixel_x = 0 + dir = 10 }, /obj/effect/floor_decal/corner/purple/bordercorner2{ - dir = 10; - icon_state = "bordercolorcorner2" + dir = 10 }, /turf/simulated/floor/tiled, /area/janitor) @@ -28045,19 +27327,6 @@ }, /turf/simulated/floor/tiled, /area/janitor) -"aXl" = ( -/obj/structure/catwalk, -/obj/machinery/atmospherics/pipe/simple/visible/scrubbers, -/obj/machinery/atmospherics/pipe/simple/visible/supply, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/disposalpipe/segment, -/turf/simulated/floor/plating, -/area/maintenance/lower/south) "aXs" = ( /obj/machinery/door/airlock{ name = "Unit 2" @@ -28106,8 +27375,7 @@ /area/engineering/drone_fabrication) "aXA" = ( /obj/structure/railing{ - dir = 1; - icon_state = "railing0" + dir = 1 }, /obj/machinery/camera/network/engineering{ dir = 4 @@ -28176,8 +27444,7 @@ /area/engineering/atmos) "aXK" = ( /obj/structure/railing{ - dir = 1; - icon_state = "railing0" + dir = 1 }, /obj/machinery/camera/network/engineering{ dir = 8 @@ -28212,9 +27479,7 @@ dir = 8 }, /obj/effect/floor_decal/borderfloor/corner2{ - dir = 10; - icon_state = "borderfloorcorner2"; - pixel_x = 0 + dir = 10 }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 8 @@ -28306,8 +27571,7 @@ icon_state = "pipe-c" }, /obj/structure/extinguisher_cabinet{ - pixel_x = 25; - pixel_y = 0 + pixel_x = 25 }, /obj/effect/floor_decal/borderfloor{ dir = 4 @@ -28336,8 +27600,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/structure/catwalk, /obj/structure/disposalpipe/segment, @@ -28357,8 +27620,7 @@ /area/rnd/breakroom/bathroom) "aYb" = ( /obj/machinery/light/small{ - dir = 8; - pixel_x = 0 + dir = 8 }, /turf/simulated/floor/tiled/white, /area/rnd/breakroom/bathroom) @@ -28369,8 +27631,7 @@ dir = 1 }, /obj/machinery/shower{ - dir = 1; - icon_state = "shower" + dir = 1 }, /obj/effect/floor_decal/steeldecal/steel_decals10{ dir = 10 @@ -28388,7 +27649,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 28 }, /obj/structure/cable/cyan{ @@ -28432,8 +27692,7 @@ pixel_y = 28 }, /obj/effect/floor_decal/industrial/warning/corner{ - dir = 8; - icon_state = "warningcorner" + dir = 8 }, /obj/machinery/light/small{ dir = 4 @@ -28453,7 +27712,6 @@ "aYk" = ( /obj/structure/cable/cyan{ d1 = 32; - d2 = 1; icon_state = "32-1" }, /obj/structure/lattice, @@ -28471,15 +27729,13 @@ dir = 9 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 9; - icon_state = "bordercolor" + dir = 9 }, /obj/machinery/light{ dir = 1 }, /obj/machinery/computer/general_air_control/large_tank_control{ dir = 4; - frequency = 1441; input_tag = "atmos_out"; name = "Atmos Intake Control"; output_tag = "atmos_in"; @@ -28489,20 +27745,16 @@ /area/engineering/atmos/monitoring) "aYm" = ( /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 1 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 1; - icon_state = "bordercolorcorner2" + dir = 1 }, /obj/structure/table/standard, /obj/item/taperoll/atmos, @@ -28511,8 +27763,6 @@ /obj/machinery/button/remote/blast_door{ id = "atmoslockdown"; name = "Atmospherics Lockdown"; - pixel_x = 0; - pixel_y = 0; req_one_access = list(10,24) }, /turf/simulated/floor/tiled, @@ -28541,20 +27791,16 @@ icon_state = "4-8" }, /obj/effect/floor_decal/borderfloor{ - dir = 1; - icon_state = "borderfloor"; - pixel_y = 0 + dir = 1 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 1; - icon_state = "bordercolor" + dir = 1 }, /obj/effect/floor_decal/borderfloor/corner2{ dir = 4 }, /obj/effect/floor_decal/corner/yellow/bordercorner2{ - dir = 4; - icon_state = "bordercolorcorner2" + dir = 4 }, /obj/machinery/computer/power_monitor, /turf/simulated/floor/tiled, @@ -28573,8 +27819,7 @@ dir = 5 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 5; - icon_state = "bordercolor" + dir = 5 }, /obj/machinery/computer/rcon, /obj/machinery/light{ @@ -28609,8 +27854,7 @@ /area/maintenance/lower/south) "aYv" = ( /obj/effect/floor_decal/industrial/warning{ - dir = 1; - icon_state = "warning" + dir = 1 }, /obj/machinery/camera/network/tether{ dir = 4 @@ -28619,8 +27863,7 @@ /area/tether/surfacebase/east_stairs_two) "aYw" = ( /obj/effect/floor_decal/industrial/warning{ - dir = 1; - icon_state = "warning" + dir = 1 }, /turf/simulated/floor/tiled/techmaint, /area/tether/surfacebase/east_stairs_two) @@ -28628,8 +27871,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/effect/floor_decal/industrial/warning/corner{ - dir = 1; - icon_state = "warningcorner" + dir = 1 }, /turf/simulated/floor/tiled/techmaint, /area/tether/surfacebase/east_stairs_two) @@ -28643,8 +27885,7 @@ /obj/machinery/computer/security/telescreen/entertainment{ desc = "Looks like it's set to history channel, the show is talking about modern aliens. I wonder what else is on?"; icon_state = "frame"; - pixel_x = 32; - pixel_y = 0 + pixel_x = 32 }, /turf/simulated/floor/tiled/techmaint, /area/tether/surfacebase/east_stairs_two) @@ -28659,8 +27900,7 @@ dir = 8 }, /obj/effect/floor_decal/corner/purple/bordercorner2{ - dir = 8; - icon_state = "bordercolorcorner2" + dir = 8 }, /obj/structure/closet/jcloset, /obj/item/weapon/soap/nanotrasen, @@ -28710,8 +27950,7 @@ dir = 5 }, /obj/machinery/computer/drone_control{ - dir = 4; - icon_state = "computer" + dir = 4 }, /obj/machinery/firealarm{ dir = 8; @@ -28738,8 +27977,7 @@ /area/engineering/drone_fabrication) "aYI" = ( /obj/effect/floor_decal/industrial/warning{ - dir = 8; - icon_state = "warning" + dir = 8 }, /obj/effect/floor_decal/rust, /obj/structure/disposalpipe/segment, @@ -28759,8 +27997,7 @@ /area/engineering/atmos) "aYL" = ( /obj/structure/railing{ - dir = 1; - icon_state = "railing0" + dir = 1 }, /turf/simulated/open, /area/engineering/atmos) @@ -28769,12 +28006,10 @@ dir = 8 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 8; - icon_state = "bordercolor" + dir = 8 }, /obj/machinery/computer/atmoscontrol{ - dir = 4; - icon_state = "computer" + dir = 4 }, /turf/simulated/floor/tiled, /area/engineering/atmos/monitoring) @@ -28801,8 +28036,7 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 4; - icon_state = "bordercolor" + dir = 4 }, /obj/structure/table/standard, /obj/item/weapon/storage/firstaid/regular, @@ -28860,9 +28094,7 @@ dir = 5 }, /obj/machinery/light{ - dir = 4; - icon_state = "tube1"; - pixel_x = 0 + dir = 4 }, /turf/simulated/floor/tiled/techmaint, /area/tether/surfacebase/east_stairs_two) @@ -28900,8 +28132,7 @@ fabricator_tag = "Atmos" }, /obj/machinery/light/small{ - dir = 8; - pixel_x = 0 + dir = 8 }, /turf/simulated/floor/tiled/techfloor/grid, /area/engineering/drone_fabrication) @@ -28924,8 +28155,7 @@ /area/engineering/drone_fabrication) "aZk" = ( /obj/effect/floor_decal/industrial/warning{ - dir = 8; - icon_state = "warning" + dir = 8 }, /obj/structure/disposalpipe/segment, /turf/simulated/floor/plating, @@ -28938,8 +28168,7 @@ dir = 8 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 8; - icon_state = "bordercolor" + dir = 8 }, /obj/machinery/computer/area_atmos/tag{ dir = 4; @@ -28978,8 +28207,7 @@ dir = 4 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 4; - icon_state = "bordercolor" + dir = 4 }, /obj/structure/table/standard, /obj/item/weapon/paper_bin{ @@ -29057,7 +28285,6 @@ /obj/machinery/door/firedoor/glass, /obj/machinery/door/blast/regular{ density = 0; - dir = 1; icon_state = "pdoor0"; id = "atmoslockdown"; layer = 1; @@ -29100,12 +28327,10 @@ /area/engineering/drone_fabrication) "aZK" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4; - icon_state = "map-scrubbers" + dir = 4 }, /turf/simulated/floor/tiled/techmaint, /area/engineering/drone_fabrication) @@ -29114,8 +28339,7 @@ dir = 10 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 10; - icon_state = "bordercolor" + dir = 10 }, /obj/structure/closet/firecloset, /turf/simulated/floor/tiled, @@ -29125,8 +28349,7 @@ dir = 8 }, /obj/effect/floor_decal/corner/yellow/bordercorner{ - dir = 8; - icon_state = "bordercolorcorner" + dir = 8 }, /turf/simulated/floor/tiled, /area/engineering/atmos/monitoring) @@ -29154,8 +28377,7 @@ dir = 6 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 6; - icon_state = "bordercolor" + dir = 6 }, /obj/structure/disposalpipe/trunk{ dir = 8 @@ -29217,8 +28439,7 @@ /area/maintenance/asmaint2) "aZX" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4; - icon_state = "map-scrubbers" + dir = 4 }, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 4 @@ -29264,8 +28485,7 @@ dir = 10 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 10; - icon_state = "bordercolor" + dir = 10 }, /obj/machinery/computer/station_alert{ dir = 1 @@ -29276,8 +28496,7 @@ /obj/effect/floor_decal/borderfloor, /obj/effect/floor_decal/corner/yellow/border, /obj/machinery/computer/atmos_alert{ - dir = 1; - icon_state = "computer" + dir = 1 }, /obj/machinery/camera/network/engineering{ dir = 1 @@ -29289,8 +28508,7 @@ dir = 6 }, /obj/effect/floor_decal/corner/yellow/border{ - dir = 6; - icon_state = "bordercolor" + dir = 6 }, /obj/machinery/computer/security/engineering{ dir = 1 @@ -29340,8 +28558,7 @@ dir = 6 }, /obj/machinery/computer/drone_control{ - dir = 4; - icon_state = "computer" + dir = 4 }, /turf/simulated/floor/tiled/techfloor/grid, /area/engineering/drone_fabrication) @@ -29367,9 +28584,7 @@ "baw" = ( /obj/structure/catwalk, /obj/machinery/firealarm{ - dir = 2; layer = 3.3; - pixel_x = 0; pixel_y = 26 }, /turf/simulated/floor/plating, @@ -29400,16 +28615,14 @@ /area/maintenance/lower/atmos) "baB" = ( /obj/effect/floor_decal/industrial/warning{ - dir = 1; - icon_state = "warning" + dir = 1 }, /obj/machinery/cryopod/robot, /turf/simulated/floor/plating, /area/engineering/drone_fabrication) "baC" = ( /obj/effect/floor_decal/industrial/warning{ - dir = 1; - icon_state = "warning" + dir = 1 }, /obj/machinery/computer/cryopod/robot{ pixel_y = -32 @@ -29421,8 +28634,7 @@ /area/engineering/drone_fabrication) "baD" = ( /obj/effect/floor_decal/industrial/warning/corner{ - dir = 1; - icon_state = "warningcorner" + dir = 1 }, /obj/machinery/light/small{ dir = 4 @@ -29537,8 +28749,7 @@ /area/maintenance/asmaint2) "bbc" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /turf/simulated/floor/tiled/steel_dirty, /area/maintenance/asmaint2) @@ -29591,9 +28802,7 @@ }, /obj/machinery/alarm{ dir = 4; - icon_state = "alarm0"; - pixel_x = -22; - pixel_y = 0 + pixel_x = -22 }, /turf/simulated/floor/tiled/steel_dirty, /area/maintenance/asmaint2) @@ -29612,8 +28821,7 @@ "bbz" = ( /obj/structure/railing, /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /turf/simulated/open, /area/engineering/atmos) @@ -29662,7 +28870,6 @@ /obj/structure/catwalk, /obj/machinery/door/blast/regular{ density = 0; - dir = 1; icon_state = "pdoor0"; id = "atmoslockdown"; layer = 1; @@ -29770,12 +28977,10 @@ /area/maintenance/lower/atmos) "bbZ" = ( /obj/machinery/light/small{ - dir = 1; - icon_state = "bulb1" + dir = 1 }, /obj/structure/mirror{ dir = 4; - pixel_x = 0; pixel_y = 32 }, /turf/simulated/floor/carpet, @@ -29848,8 +29053,7 @@ dir = 1 }, /obj/machinery/light/small{ - dir = 1; - icon_state = "bulb1" + dir = 1 }, /obj/structure/railing, /obj/effect/floor_decal/rust, @@ -29909,8 +29113,7 @@ "bcN" = ( /obj/structure/catwalk, /obj/machinery/light/small{ - dir = 4; - pixel_y = 0 + dir = 4 }, /turf/simulated/floor/plating, /area/maintenance/lower/south) @@ -29930,9 +29133,7 @@ "bcP" = ( /obj/machinery/alarm{ dir = 4; - icon_state = "alarm0"; - pixel_x = -22; - pixel_y = 0 + pixel_x = -22 }, /turf/simulated/floor/wood, /area/maintenance/lower/atmos) @@ -30037,8 +29238,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 8 @@ -30148,8 +29348,7 @@ dir = 8 }, /obj/structure/plushie/carp{ - dir = 4; - icon_state = "carpplushie" + dir = 4 }, /turf/simulated/floor/plating, /area/maintenance/lower/atmos) @@ -30161,7 +29360,6 @@ "bdm" = ( /obj/structure/plushie/ian{ dir = 8; - icon_state = "ianplushie"; pixel_y = 6 }, /turf/simulated/floor/wood, @@ -30245,9 +29443,7 @@ dir = 1 }, /obj/machinery/firealarm{ - dir = 2; layer = 3.3; - pixel_x = 0; pixel_y = 26 }, /obj/machinery/atmospherics/pipe/simple/visible/scrubbers{ @@ -30418,16 +29614,14 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/structure/catwalk, /turf/simulated/floor/plating, /area/maintenance/readingrooms) "bdG" = ( /obj/structure/plushie/drone{ - dir = 1; - icon_state = "droneplushie" + dir = 1 }, /turf/simulated/floor/wood, /area/maintenance/lower/atmos) @@ -30501,9 +29695,7 @@ "bdY" = ( /obj/machinery/alarm{ dir = 4; - icon_state = "alarm0"; - pixel_x = -22; - pixel_y = 0 + pixel_x = -22 }, /turf/simulated/floor/plating, /area/maintenance/lower/atmos) @@ -30538,8 +29730,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/machinery/door/firedoor, /turf/simulated/floor/plating, @@ -30548,8 +29739,7 @@ /obj/structure/sign/securearea{ desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 0 + name = "HIGH VOLTAGE" }, /turf/simulated/wall, /area/maintenance/substation/tcomms) @@ -30570,20 +29760,11 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/structure/catwalk, /turf/simulated/floor/plating, /area/maintenance/readingrooms) -"bei" = ( -/obj/machinery/light{ - dir = 8; - icon_state = "tube1"; - pixel_y = 0 - }, -/turf/simulated/floor/reinforced, -/area/rnd/outpost/xenobiology/outpost_slimepens) "bej" = ( /obj/machinery/camera/network/research/xenobio{ network = list("Xenobiology") @@ -30627,7 +29808,6 @@ "ben" = ( /obj/machinery/processor, /obj/machinery/firealarm{ - dir = 2; layer = 3.3; pixel_x = 4; pixel_y = 26 @@ -30641,7 +29821,6 @@ pixel_y = 21 }, /obj/machinery/alarm{ - pixel_x = 0; pixel_y = 30 }, /obj/machinery/computer/security/xenobio, @@ -30710,7 +29889,6 @@ /obj/random/medical/lite, /obj/machinery/alarm{ dir = 8; - icon_state = "alarm0"; pixel_x = 24 }, /turf/simulated/floor/tiled/techfloor, @@ -30739,8 +29917,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/structure/cable{ d1 = 1; @@ -30785,7 +29962,6 @@ /obj/machinery/door/firedoor/border_only, /obj/machinery/door/airlock/research{ name = "Slime Pen 1"; - req_access = list(); req_one_access = list(47,55) }, /obj/machinery/door/blast/regular{ @@ -30811,7 +29987,6 @@ /obj/machinery/door/firedoor/border_only, /obj/machinery/door/airlock/research{ name = "Slime Pen 2"; - req_access = list(); req_one_access = list(47,55) }, /obj/machinery/door/blast/regular{ @@ -30836,7 +30011,6 @@ component_coeff = 0.9; desc = "A machine used for construction of legit prosthetics. You weren't sure if cardboard was considered an engineering material until now."; dir = 4; - emagged = 0; name = "Legitimate Prosthetics Fabricator"; req_access = list(); res_max_amount = 150000; @@ -30899,8 +30073,7 @@ /obj/machinery/power/smes/buildable{ RCon_tag = "Substation - Telecomms"; charge = 100000; - output_attempt = 0; - outputting = 0 + output_attempt = 0 }, /obj/structure/cable/green{ icon_state = "0-4" @@ -30973,9 +30146,7 @@ dir = 1 }, /obj/machinery/firealarm{ - dir = 2; layer = 3.3; - pixel_x = 0; pixel_y = 26 }, /turf/simulated/floor/tiled/dark, @@ -31003,8 +30174,7 @@ "bfj" = ( /obj/machinery/firealarm{ dir = 8; - pixel_x = -24; - pixel_y = 0 + pixel_x = -24 }, /turf/simulated/floor/reinforced, /area/rnd/outpost/xenobiology/outpost_slimepens) @@ -31168,8 +30338,7 @@ }) "bfC" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 5; - icon_state = "intact" + dir = 5 }, /turf/simulated/floor/tiled, /area/tcommsat/computer) @@ -31190,15 +30359,13 @@ /area/tcommsat/computer) "bfF" = ( /obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 1; - icon_state = "map" + dir = 1 }, /turf/simulated/floor/tiled, /area/tcommsat/computer) "bfG" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 10; - icon_state = "intact" + dir = 10 }, /turf/simulated/floor/tiled, /area/tcommsat/computer) @@ -31226,7 +30393,6 @@ id = "xenobiodiv1"; name = "Divider 1 Blast Doors"; pixel_x = -38; - pixel_y = 0; req_access = list(55) }, /obj/machinery/button/remote/blast_door{ @@ -31244,9 +30410,7 @@ req_access = list(55) }, /obj/machinery/light{ - dir = 8; - icon_state = "tube1"; - pixel_y = 0 + dir = 8 }, /turf/simulated/floor/tiled/dark, /area/rnd/outpost/xenobiology/outpost_slimepens) @@ -31262,7 +30426,6 @@ id = "xenobiodiv2"; name = "Divider 2 Blast Doors"; pixel_x = 38; - pixel_y = 0; req_access = list(55) }, /obj/machinery/button/remote/blast_door{ @@ -31337,7 +30500,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 28 }, /turf/simulated/floor/tiled, @@ -31352,14 +30514,11 @@ desc = "A firewall prevents AIs from interacting with this device."; name = "Telecoms Foyer turret control"; pixel_x = 29; - pixel_y = 0; req_access = list(61); req_one_access = list(12) }, /obj/machinery/firealarm{ - dir = 2; layer = 3.3; - pixel_x = 0; pixel_y = 26 }, /turf/simulated/floor/tiled, @@ -31454,8 +30613,7 @@ /area/tcommsat/computer) "bgh" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 9; - icon_state = "intact" + dir = 9 }, /turf/simulated/floor/tiled, /area/tcommsat/computer) @@ -31482,7 +30640,6 @@ }, /obj/machinery/camera/network/research/xenobio{ dir = 9; - icon_state = "camera"; network = list("Xenobiology") }, /turf/simulated/floor/reinforced, @@ -31594,7 +30751,6 @@ }, /obj/machinery/camera/network/research/xenobio{ dir = 4; - icon_state = "camera"; network = list("Xenobiology") }, /turf/simulated/floor/reinforced, @@ -31680,8 +30836,7 @@ }, /obj/machinery/door/airlock/hatch{ name = "Telecomms Foyer"; - req_access = list(61); - req_one_access = list(12) + req_access = list(61) }, /obj/machinery/door/firedoor/glass, /turf/simulated/floor/tiled, @@ -31816,8 +30971,7 @@ "bgN" = ( /obj/machinery/door/airlock/hatch{ name = "Telecoms Control Room"; - req_access = list(61); - req_one_access = list(12) + req_access = list(61) }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -31840,8 +30994,7 @@ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4; - icon_state = "intact-scrubbers" + dir = 4 }, /obj/machinery/atmospherics/pipe/manifold/hidden/supply, /turf/simulated/floor/tiled, @@ -31853,8 +31006,7 @@ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4; - icon_state = "intact-scrubbers" + dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -31873,8 +31025,7 @@ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4; - icon_state = "intact-scrubbers" + dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 10 @@ -31920,8 +31071,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /obj/structure/catwalk, /turf/simulated/floor/plating, @@ -31989,7 +31139,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 28 }, /obj/structure/cable/green{ @@ -32037,7 +31186,6 @@ dir = 1 }, /obj/item/device/radio/intercom{ - dir = 2; pixel_y = -24 }, /turf/simulated/floor/tiled, @@ -32066,8 +31214,7 @@ dir = 1 }, /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /turf/simulated/floor/tiled, /area/tcomsat{ @@ -32104,7 +31251,6 @@ }) "bht" = ( /obj/machinery/power/apc{ - dir = 2; name = "south bump"; pixel_y = -28 }, @@ -32119,7 +31265,6 @@ }, /obj/machinery/alarm{ dir = 1; - icon_state = "alarm0"; pixel_y = -22 }, /turf/simulated/floor/tiled, @@ -32139,7 +31284,6 @@ /area/tcommsat/computer) "bhw" = ( /obj/machinery/atmospherics/unary/freezer{ - dir = 2; icon_state = "freezer_1"; set_temperature = 73; use_power = 1 @@ -32165,8 +31309,7 @@ /area/tcommsat/computer) "bhz" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 5; - icon_state = "intact" + dir = 5 }, /obj/machinery/airlock_sensor/airlock_exterior{ frequency = 1381; @@ -32184,8 +31327,7 @@ id_tag = "server_access_outer"; locked = 1; name = "Telecoms Server Access"; - req_access = list(61); - req_one_access = list(12) + req_access = list(61) }, /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 4 @@ -32209,7 +31351,6 @@ frequency = 1381; id_tag = "server_access_airlock"; name = "Server Access Airlock"; - pixel_x = 0; pixel_y = 25; tag_airpump = "server_access_pump"; tag_chamber_sensor = "server_access_sensor"; @@ -32366,8 +31507,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/door/firedoor/glass/hidden{ - dir = 2; - icon_state = "door_open" + dir = 2 }, /turf/simulated/floor/tiled/dark, /area/rnd/outpost/xenobiology/outpost_slimepens) @@ -32568,8 +31708,7 @@ id_tag = "server_access_inner"; locked = 1; name = "Telecoms Server Access"; - req_access = list(61); - req_one_access = list(12) + req_access = list(61) }, /turf/simulated/floor/tiled/dark{ nitrogen = 100; @@ -32591,8 +31730,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /turf/simulated/floor/wood, /area/tether/surfacebase/reading_room) @@ -32647,17 +31785,14 @@ id = "xenobiodiv3"; name = "Divider 3 Blast Doors"; pixel_x = -25; - pixel_y = 0; req_access = list(55) }, /obj/machinery/alarm{ dir = 4; - pixel_x = -35; - pixel_y = 0 + pixel_x = -35 }, /obj/machinery/camera/network/research/xenobio{ - dir = 4; - icon_state = "camera" + dir = 4 }, /turf/simulated/floor/tiled/dark, /area/rnd/outpost/xenobiology/outpost_slimepens) @@ -32676,7 +31811,6 @@ id = "xenobiodiv4"; name = "Divider 4 Blast Doors"; pixel_x = 38; - pixel_y = 0; req_access = list(55) }, /obj/machinery/button/remote/blast_door{ @@ -32708,8 +31842,7 @@ /area/rnd/outpost/xenobiology/outpost_slimepens) "bis" = ( /obj/machinery/light_construct{ - dir = 8; - icon_state = "tube-construct-stage1" + dir = 8 }, /obj/structure/closet/secure_closet/personal, /turf/simulated/floor/wood, @@ -32721,8 +31854,7 @@ /obj/item/weapon/reagent_containers/food/drinks/bottle/limejuice, /obj/item/weapon/reagent_containers/food/drinks/bottle/lemonjuice, /obj/machinery/light{ - dir = 4; - icon_state = "tube1" + dir = 4 }, /turf/simulated/floor/wood, /area/vacant/vacant_bar_upper) @@ -32911,14 +32043,12 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4; - icon_state = "map-scrubbers" + dir = 4 }, /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /turf/simulated/floor/wood, /area/tether/surfacebase/reading_room) @@ -33065,8 +32195,7 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9; - pixel_y = 0 + dir = 9 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 5 @@ -33082,8 +32211,7 @@ /obj/item/weapon/stock_parts/subspace/ansible, /obj/machinery/alarm{ dir = 8; - pixel_x = 25; - pixel_y = 0 + pixel_x = 25 }, /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 @@ -33124,8 +32252,7 @@ /obj/structure/cable{ d1 = 1; d2 = 2; - icon_state = "1-2"; - pixel_y = 0 + icon_state = "1-2" }, /turf/simulated/floor/wood, /area/tether/surfacebase/reading_room) @@ -33513,7 +32640,6 @@ id = "xenobiodiv5"; name = "Divider 5 Blast Doors"; pixel_x = -30; - pixel_y = 0; req_access = list(55) }, /obj/machinery/button/remote/blast_door{ @@ -33524,9 +32650,7 @@ req_access = list(55) }, /obj/machinery/light{ - dir = 8; - icon_state = "tube1"; - pixel_y = 0 + dir = 8 }, /obj/machinery/button/remote/blast_door{ id = "xenobiopen7"; @@ -33537,8 +32661,7 @@ }, /obj/machinery/alarm{ dir = 4; - pixel_x = -35; - pixel_y = 0 + pixel_x = -35 }, /turf/simulated/floor/tiled/dark, /area/rnd/outpost/xenobiology/outpost_slimepens) @@ -33553,7 +32676,6 @@ id = "xenobiodiv6"; name = "Divider 6 Blast Doors"; pixel_x = 38; - pixel_y = 0; req_access = list(55) }, /obj/machinery/button/remote/blast_door{ @@ -33571,8 +32693,7 @@ req_access = list(55) }, /obj/machinery/camera/network/research/xenobio{ - dir = 9; - icon_state = "camera" + dir = 9 }, /turf/simulated/floor/tiled/dark, /area/rnd/outpost/xenobiology/outpost_slimepens) @@ -33640,12 +32761,10 @@ }) "bkf" = ( /obj/structure/sign/nosmoking_2{ - pixel_x = -32; - pixel_y = 0 + pixel_x = -32 }, /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /turf/simulated/floor/bluegrid{ name = "Mainframe Base"; @@ -33717,8 +32836,7 @@ /area/tcommsat/chamber) "bkn" = ( /obj/structure/sign/nosmoking_2{ - pixel_x = 32; - pixel_y = 0 + pixel_x = 32 }, /obj/machinery/light{ dir = 4 @@ -33861,8 +32979,7 @@ /obj/structure/table/steel, /obj/machinery/alarm{ dir = 4; - pixel_x = -23; - pixel_y = 0 + pixel_x = -23 }, /obj/random/junk, /turf/simulated/floor/plating, @@ -34104,7 +33221,6 @@ /obj/effect/floor_decal/industrial/outline/blue, /obj/structure/cable/green{ d1 = 32; - d2 = 1; icon_state = "32-1" }, /turf/simulated/floor/wood, @@ -34213,8 +33329,7 @@ /area/tether/surfacebase/southhall) "bll" = ( /obj/machinery/camera/network/outside{ - dir = 9; - icon_state = "camera" + dir = 9 }, /turf/simulated/open/virgo3b, /area/tether/surfacebase/outside/outside2) @@ -34251,7 +33366,6 @@ "blo" = ( /obj/machinery/door/airlock/research{ name = "Xenobiology Lab"; - req_access = list(); req_one_access = list(47,55) }, /obj/structure/cable/green{ @@ -34290,7 +33404,6 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/door/airlock/research{ name = "Xenobiology Lab"; - req_access = list(); req_one_access = list(47,55) }, /obj/machinery/door/firedoor, @@ -34310,8 +33423,7 @@ /area/rnd/outpost/xenobiology/outpost_slimepens) "blt" = ( /obj/machinery/camera/network/outside{ - dir = 5; - icon_state = "camera" + dir = 5 }, /turf/simulated/open/virgo3b, /area/tether/surfacebase/outside/outside2) @@ -34441,12 +33553,10 @@ id = "phoroncelldoor9"; name = "Phoron Cell 9 Doorlock"; pixel_x = -38; - pixel_y = 0; specialfunctions = 4 }, /obj/machinery/light_switch{ dir = 1; - pixel_x = 0; pixel_y = 38 }, /turf/simulated/floor/tiled/dark, @@ -34517,7 +33627,6 @@ id = "phoroncelldoor10"; name = "Phoron Cell 10 Doorlock"; pixel_x = 38; - pixel_y = 0; specialfunctions = 4 }, /turf/simulated/floor/tiled/dark, @@ -34562,7 +33671,6 @@ /obj/machinery/door/airlock/research{ id_tag = "phoroncelldoor9"; name = "Slime Pen 9"; - req_access = list(); req_one_access = list(47,55) }, /obj/machinery/door/firedoor, @@ -34576,8 +33684,7 @@ "blW" = ( /obj/structure/stairs/north, /obj/structure/railing{ - dir = 1; - icon_state = "railing0" + dir = 1 }, /obj/structure/railing{ dir = 8 @@ -34590,8 +33697,7 @@ "blX" = ( /obj/structure/stairs/north, /obj/structure/railing{ - dir = 1; - icon_state = "railing0" + dir = 1 }, /obj/structure/window/basic{ dir = 1 @@ -34601,12 +33707,10 @@ "blY" = ( /obj/structure/stairs/north, /obj/structure/railing{ - dir = 1; - icon_state = "railing0" + dir = 1 }, /obj/structure/railing{ - dir = 4; - icon_state = "railing0" + dir = 4 }, /obj/structure/window/basic{ dir = 1 @@ -34628,7 +33732,6 @@ /obj/machinery/door/airlock/research{ id_tag = "phoroncelldoor10"; name = "Slime Pen 10"; - req_access = list(); req_one_access = list(47,55) }, /obj/machinery/door/firedoor, @@ -34682,8 +33785,7 @@ /area/rnd/outpost/xenobiology/outpost_slimepens) "bmf" = ( /obj/structure/railing{ - dir = 4; - icon_state = "railing0" + dir = 4 }, /turf/simulated/floor/tiled/dark, /area/rnd/outpost/xenobiology/outpost_slimepens) @@ -34727,7 +33829,6 @@ /obj/machinery/alarm/monitor/isolation{ alarm_id = "slime_pens"; dir = 1; - pixel_x = 0; pixel_y = -22 }, /turf/simulated/floor/reinforced, @@ -34738,7 +33839,6 @@ }, /obj/machinery/camera/network/research/xenobio{ dir = 10; - icon_state = "camera"; network = list("Xenobiology") }, /turf/simulated/floor/reinforced, @@ -34823,7 +33923,6 @@ alarm_id = null; breach_detection = 0; dir = 1; - icon_state = "alarm0"; pixel_y = -22 }, /obj/structure/disposalpipe/trunk{ @@ -34861,7 +33960,6 @@ }, /obj/machinery/firealarm{ dir = 1; - pixel_x = 0; pixel_y = -25 }, /turf/simulated/floor/tiled/dark, @@ -34913,7 +34011,6 @@ /obj/effect/floor_decal/corner/paleblue/border, /obj/machinery/firealarm{ dir = 1; - pixel_x = 0; pixel_y = -24 }, /turf/simulated/floor/tiled/white, @@ -34941,8 +34038,7 @@ dir = 4 }, /obj/machinery/door/window/northleft{ - name = "Shower"; - req_access = list() + name = "Shower" }, /obj/structure/curtain/open/shower, /turf/simulated/floor/tiled, @@ -34965,7 +34061,6 @@ /obj/machinery/power/apc{ dir = 1; name = "north bump"; - pixel_x = 0; pixel_y = 28 }, /obj/structure/cable{ @@ -35004,8 +34099,7 @@ dir = 8 }, /obj/machinery/door/window/northleft{ - name = "Shower"; - req_access = list() + name = "Shower" }, /obj/structure/curtain/open/shower, /turf/simulated/floor/tiled, @@ -35028,8 +34122,7 @@ /obj/effect/floor_decal/industrial/outline/yellow, /obj/structure/railing, /obj/structure/railing{ - dir = 4; - icon_state = "railing0" + dir = 4 }, /obj/structure/cable/green{ icon_state = "16-0" @@ -35079,8 +34172,7 @@ dir = 1 }, /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 5 @@ -35107,9 +34199,7 @@ dir = 9 }, /obj/machinery/light{ - dir = 4; - icon_state = "tube1"; - pixel_x = 0 + dir = 4 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/bathroom) @@ -35135,8 +34225,7 @@ /obj/structure/lattice, /obj/machinery/door/firedoor/glass, /obj/structure/railing{ - dir = 1; - icon_state = "railing0" + dir = 1 }, /obj/structure/cable/green{ d1 = 32; @@ -35200,8 +34289,7 @@ dir = 4 }, /obj/machinery/door/window/northleft{ - name = "Shower"; - req_access = list() + name = "Shower" }, /obj/structure/curtain/open/shower, /turf/simulated/floor/tiled, @@ -35223,8 +34311,7 @@ dir = 8 }, /obj/machinery/door/window/northleft{ - name = "Shower"; - req_access = list() + name = "Shower" }, /obj/structure/curtain/open/shower, /turf/simulated/floor/tiled, @@ -35235,8 +34322,7 @@ /area/tether/surfacebase/medical/breakroom) "bpL" = ( /obj/machinery/light{ - dir = 4; - icon_state = "tube1" + dir = 4 }, /turf/simulated/wall, /area/tether/surfacebase/medical/breakroom) @@ -35283,8 +34369,7 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4; - icon_state = "map-scrubbers" + dir = 4 }, /obj/structure/disposalpipe/segment{ dir = 8; @@ -35304,22 +34389,65 @@ /obj/machinery/atmospherics/unary/vent_pump/on, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/breakroom) +<<<<<<< HEAD +||||||| parent of 7ed3f13340... Merge pull request #9546 from Detective-Google/map-fixes +"dSO" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 1 + }, +/obj/structure/catwalk, +/turf/simulated/floor/tiled/techfloor, +/area/maintenance/lower/south) +"dXv" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/power/apc{ + cell_type = /obj/item/weapon/cell/super; + dir = 1; + name = "north bump"; + pixel_y = 24 + }, +/obj/structure/cable/green{ + d2 = 8; + dir = 2; + icon_state = "0-8" + }, +/turf/simulated/floor/tiled/dark, +/area/chapel/main) +======= +"dSO" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 1 + }, +/obj/structure/catwalk, +/turf/simulated/floor/tiled/techfloor, +/area/maintenance/lower/south) +"dXv" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/power/apc{ + cell_type = /obj/item/weapon/cell/super; + dir = 1; + name = "north bump"; + pixel_y = 24 + }, +/obj/structure/cable/green{ + d2 = 8; + icon_state = "0-8" + }, +/turf/simulated/floor/tiled/dark, +/area/chapel/main) +>>>>>>> 7ed3f13340... Merge pull request #9546 from Detective-Google/map-fixes "ebp" = ( /obj/effect/floor_decal/corner/paleblue/diagonal, /obj/machinery/vending/snack, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/breakroom) -"foy" = ( -/obj/structure/railing{ - dir = 1; - icon_state = "railing0" - }, -/turf/simulated/floor/tiled/techfloor, -/area/maintenance/lower/mining) "fxr" = ( /obj/machinery/light{ - dir = 8; - icon_state = "tube1" + dir = 8 }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/north) @@ -35377,8 +34505,7 @@ /obj/structure/cable{ d1 = 4; d2 = 8; - icon_state = "4-8"; - pixel_x = 0 + icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -35402,6 +34529,7 @@ /obj/item/weapon/deck/cah, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/breakroom) +<<<<<<< HEAD "oXI" = ( /obj/structure/railing{ dir = 1; @@ -35439,6 +34567,16 @@ /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/south) ======= +||||||| parent of 7ed3f13340... Merge pull request #9546 from Detective-Google/map-fixes +"oXI" = ( +/obj/structure/railing{ + dir = 1; + icon_state = "railing0" + }, +/turf/simulated/floor/tiled/techfloor, +/area/maintenance/lower/north) +======= +>>>>>>> 7ed3f13340... Merge pull request #9546 from Detective-Google/map-fixes "pah" = ( /obj/machinery/door/firedoor/glass, /obj/machinery/door/airlock{ @@ -35472,7 +34610,6 @@ dir = 4 }, /obj/machinery/power/apc{ - dir = 2; name = "south bump"; pixel_y = -28 }, @@ -35509,10 +34646,48 @@ /obj/structure/catwalk, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/north) +<<<<<<< HEAD +||||||| parent of 7ed3f13340... Merge pull request #9546 from Detective-Google/map-fixes +"tuO" = ( +/obj/effect/floor_decal/corner_techfloor_grid, +/turf/simulated/floor/tiled/techfloor, +/area/maintenance/lower/south) +"tED" = ( +/obj/effect/floor_decal/corner_techfloor_grid{ + dir = 10 + }, +/obj/machinery/firealarm{ + dir = 1; + pixel_x = 0; + pixel_y = -25 + }, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/maintenance/lower/south) +======= +"tuO" = ( +/obj/effect/floor_decal/corner_techfloor_grid, +/turf/simulated/floor/tiled/techfloor, +/area/maintenance/lower/south) +"tED" = ( +/obj/effect/floor_decal/corner_techfloor_grid{ + dir = 10 + }, +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -25 + }, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/maintenance/lower/south) +>>>>>>> 7ed3f13340... Merge pull request #9546 from Detective-Google/map-fixes "tHa" = ( /obj/structure/railing{ - dir = 4; - icon_state = "railing0" + dir = 4 }, /obj/structure/catwalk, /turf/simulated/floor/tiled/techfloor, @@ -35527,14 +34702,11 @@ "uKv" = ( /obj/effect/floor_decal/corner/paleblue/diagonal, /obj/machinery/light{ - dir = 8; - icon_state = "tube1"; - pixel_y = 0 + dir = 8 }, /obj/machinery/newscaster{ layer = 3.3; - pixel_x = -27; - pixel_y = 0 + pixel_x = -27 }, /obj/structure/bed/chair{ dir = 4 @@ -35624,8 +34796,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4; - icon_state = "map-scrubbers" + dir = 4 }, /turf/simulated/floor/plating, /area/maintenance/lower/south) @@ -35665,8 +34836,7 @@ /area/tether/surfacebase/medical/breakroom) "xSO" = ( /obj/machinery/light{ - dir = 4; - icon_state = "tube1" + dir = 4 }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/north) @@ -40323,15 +39493,15 @@ aab aab aab bdS -bei +bkt beG bfj bfJ -bei +bkt beG bfj bim -bei +bkt beG bfj bjU @@ -48352,7 +47522,7 @@ ajG tpu kPb tpu -oXI +awH aac adt avD @@ -48494,7 +47664,7 @@ ajG amN amT tHa -foy +amV atY atY avD @@ -50493,7 +49663,7 @@ avJ ard ard ard -ayo +ard ayP ard ard @@ -50532,18 +49702,18 @@ auH aUR aVA aWu -aXl +aSo aXT -aXl -aXl -aXl -aXl -aXl -aXl -aXl -aXl -aXl -aXl +aSo +aSo +aSo +aSo +aSo +aSo +aSo +aSo +aSo +aSo bbR aLY aLY @@ -50699,10 +49869,10 @@ aLX bcN aLX bbS -aXl -aXl -aXl -aXl +aSo +aSo +aSo +aSo bde bdE aLY @@ -50770,7 +49940,7 @@ adp aec afb afX -abv +abq agN akN abC @@ -51061,7 +50231,7 @@ adm adT aeB afk -afX +acC acI agQ akP @@ -52419,7 +51589,7 @@ adt adt adt adt -aab +aeG aab aab aab @@ -52550,18 +51720,18 @@ abn abn abn abn -aeG +abn abn abn abn aeG aeG aeG -aab -aab -aab -aab -aab +aeG +aeG +aeG +aeG +aeG aab aab aab @@ -52684,6 +51854,12 @@ aeG aeG aeG aeG +abn +abn +abn +abn +abn +aeG aeG aeG abn @@ -52698,12 +51874,6 @@ aeG aeG aeG aeG -aeG -aab -aab -aab -aab -aab aab aab aab @@ -52826,6 +51996,19 @@ aeG aeG aeG aeG +abn +abn +abn +abn +aeG +aeG +aeG +aeG +aeG +aeG +abn +abn +abn aeG aeG aeG @@ -52833,19 +52016,6 @@ aeG aeG aeG aeG -aeG -aeG -aeG -aeG -aeG -aeG -aeG -aeG -aab -aab -aab -aab -aab aab aab aab @@ -52969,6 +52139,18 @@ aeG aeG aeG aeG +abn +abn +abn +aeG +aac +aac +aeG +aeG +aeG +abn +abn +abn aeG aeG aeG @@ -52976,18 +52158,6 @@ aeG aeG aeG aeG -aeG -aeG -aeG -aeG -aeG -aeG -aeG -aab -aab -aab -aab -aab aab aab aab @@ -53108,28 +52278,28 @@ aeG aeG aeG aeG +aac +aac +aeG +aeG +abn +abn +aeG +aac +aac +aeG +aeG +aeG +aeG +aeG +abn +abn aeG aeG aeG aeG aeG aeG -aeG -aeG -aeG -aeG -aeG -aeG -aeG -aeG -aeG -aeG -aeG -aab -aab -aab -aab -aab aab aab aab @@ -53250,6 +52420,12 @@ aeG aeG aeG aeG +aac +aac +aeG +aeG +aeG +abn aeG aeG aeG @@ -53259,19 +52435,13 @@ aeG aeG aeG aeG +abn +abn +abn aeG aeG aeG aeG -aeG -aeG -aeG -aeG -aab -aab -aab -aab -aab aab aab aab @@ -53396,6 +52566,10 @@ aeG aeG aeG aeG +abn +abn +abn +abn aeG aeG aeG @@ -53405,6 +52579,7 @@ aeG aeG aeG aeG +abn aeG aeG aeG @@ -53466,11 +52641,6 @@ aab aab aab aab -aab -aab -aab -aab -aab aaa "} (126,1,1) = {" @@ -53538,24 +52708,24 @@ aeG aeG aeG aeG +abn +abn +abn +abn +abn +abn +abn aeG aeG aeG aeG aeG +abn +abn aeG aeG aeG aeG -aeG -aeG -aeG -aeG -aab -aab -aab -aab -aab aab aab aab @@ -53680,24 +52850,24 @@ aeG aeG aeG aeG +abn +abn +abn +abn +abn +abn +abn +abn +abn aeG aeG aeG +abn +abn +abn +abn aeG aeG -aeG -aeG -aeG -aeG -aeG -aeG -aeG -aeG -aab -aab -aab -aab -aab aab aab aab @@ -53822,6 +52992,12 @@ aeG aeG aeG aeG +abn +abn +abn +abn +abn +abn aeG aeG aeG @@ -53830,16 +53006,10 @@ aeG aeG aeG aeG +abn +abn aeG aeG -aeG -aeG -aeG -aab -aab -aab -aab -aab aab aab aab @@ -53963,6 +53133,12 @@ aeG aeG aeG aeG +abn +abn +abn +aeG +abn +abn aeG aeG aeG @@ -53976,12 +53152,6 @@ aeG aeG aeG aeG -aeG -aab -aab -aab -aab -aab aab aab aab @@ -54098,32 +53268,32 @@ aab aab aab aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab +aeG +aeG +aeG +aeG +abn +abn +abn +abn +abn +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG aab aab aab @@ -54240,32 +53410,32 @@ aab aab aab aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab +aeG +aeG +aeG +abn +abn +abn +abn +aeG +abn +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG aab aab aab @@ -54382,32 +53552,32 @@ aab aab aab aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG aab aab aab @@ -54524,32 +53694,32 @@ aab aab aab aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab -aab +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG +aeG aab aab aab diff --git a/maps/tether/tether-03-surface3.dmm b/maps/tether/tether-03-surface3.dmm index 2eaf222a2d..2d85cf1026 100644 --- a/maps/tether/tether-03-surface3.dmm +++ b/maps/tether/tether-03-surface3.dmm @@ -759,9 +759,6 @@ /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 8 }, -/obj/structure/cable/green{ - icon_state = "2-4" - }, /obj/structure/cable/green{ icon_state = "1-2" }, @@ -1862,14 +1859,7 @@ name = "\improper North Medical Stairwell" }) "acN" = ( -/obj/machinery/camera/network/medbay{ - dir = 10 - }, /obj/structure/railing, -/obj/machinery/alarm{ - dir = 1; - pixel_y = -24 - }, /turf/simulated/open, /area/tether/surfacebase/medical/uppernorthstairwell{ name = "\improper North Medical Stairwell" @@ -1887,6 +1877,10 @@ dir = 4; pixel_x = 11 }, +/obj/machinery/alarm{ + dir = 8; + pixel_x = 24 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/triage) "acP" = ( @@ -2603,11 +2597,6 @@ /obj/structure/cable/green{ icon_state = "1-8" }, -/obj/machinery/light_switch{ - dir = 4; - pixel_x = -30; - pixel_y = -24 - }, /obj/effect/floor_decal/steeldecal/steel_decals4{ dir = 1 }, @@ -2835,6 +2824,9 @@ pixel_x = -10; pixel_y = -30 }, +/obj/machinery/camera/network/medbay{ + dir = 10 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/uppernorthstairwell{ name = "\improper North Medical Stairwell" @@ -3561,10 +3553,6 @@ name = "north bump"; pixel_y = 28 }, -/obj/machinery/button/windowtint{ - id = "surfsurgery2"; - pixel_x = -26 - }, /obj/structure/cable/green{ icon_state = "0-2" }, @@ -3886,6 +3874,16 @@ /obj/structure/disposalpipe/trunk{ dir = 1 }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = 6; + pixel_y = -22 + }, +/obj/machinery/button/windowtint{ + id = "surfsurgery2"; + pixel_x = -3; + pixel_y = -22 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/surgery1) "afB" = ( @@ -4008,9 +4006,6 @@ /obj/machinery/atmospherics/unary/freezer{ dir = 4 }, -/obj/machinery/alarm{ - pixel_y = 25 - }, /obj/effect/floor_decal/corner/paleblue{ dir = 6 }, @@ -4020,10 +4015,6 @@ /obj/effect/floor_decal/industrial/warning{ dir = 8 }, -/obj/machinery/firealarm{ - layer = 3.3; - pixel_y = 39 - }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/triage) "afI" = ( @@ -14453,12 +14444,6 @@ }, /turf/simulated/floor/wood, /area/tether/surfacebase/bar_backroom) -"axq" = ( -/obj/machinery/camera/network/civilian{ - dir = 4 - }, -/turf/simulated/floor/grass, -/area/maintenance/lower/xenoflora) "axr" = ( /obj/effect/floor_decal/steeldecal/steel_decals4{ dir = 5 @@ -26482,11 +26467,6 @@ /obj/structure/cable/green{ icon_state = "4-8" }, -/obj/machinery/alarm{ - dir = 1; - pixel_x = 30; - pixel_y = -22 - }, /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, @@ -27118,6 +27098,10 @@ pixel_y = 14; pixel_x = 10 }, +/obj/item/weapon/storage/box/body_record_disk{ + pixel_x = -3; + pixel_y = -3 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/lobby) "aTL" = ( @@ -28269,10 +28253,6 @@ "aVT" = ( /obj/structure/table/standard, /obj/item/device/healthanalyzer, -/obj/machinery/button/windowtint{ - id = "surfsurgery2"; - pixel_x = -26 - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/surgery2) @@ -28907,6 +28887,10 @@ }, /obj/machinery/disposal, /obj/structure/disposalpipe/trunk, +/obj/machinery/button/windowtint{ + id = "surfsurgery2"; + pixel_x = -22 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/surgery2) "aXd" = ( @@ -39302,6 +39286,12 @@ /obj/machinery/computer/operating, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/surgery1) +"hfN" = ( +/obj/machinery/camera/network/civilian{ + dir = 4 + }, +/turf/simulated/floor/grass, +/area/hydroponics) "hgf" = ( /obj/machinery/door/firedoor/glass/hidden{ dir = 2 @@ -39659,6 +39649,15 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/carpet/blue, /area/tether/surfacebase/security/breakroom) +"iOL" = ( +/obj/machinery/alarm{ + dir = 1; + pixel_y = -24 + }, +/turf/simulated/floor/tiled/white, +/area/tether/surfacebase/medical/uppernorthstairwell{ + name = "\improper North Medical Stairwell" + }) "iQr" = ( /obj/machinery/hologram/holopad, /obj/effect/landmark/start{ @@ -56806,7 +56805,7 @@ ajG ajG aag abq -abq +iOL aah aaI agj @@ -60099,7 +60098,7 @@ acV acV axr ayK -axq +hfN atg aSy aop diff --git a/maps/tether/tether-07-station3.dmm b/maps/tether/tether-07-station3.dmm index 417b211962..3dd41f4e75 100644 --- a/maps/tether/tether-07-station3.dmm +++ b/maps/tether/tether-07-station3.dmm @@ -22633,7 +22633,7 @@ /obj/structure/bed/chair/shuttle{ dir = 4 }, -/obj/structure/closet/autolok_wall{ +/obj/structure/closet/emergsuit_wall{ pixel_y = 32 }, /turf/simulated/floor/tiled/eris/white, @@ -23149,7 +23149,7 @@ health = 1e+006 }, /obj/machinery/atmospherics/pipe/simple/hidden/aux, -/obj/structure/closet/autolok_wall{ +/obj/structure/closet/emergsuit_wall{ pixel_x = 27 }, /turf/simulated/floor/tiled/eris/steel/gray_perforated, diff --git a/maps/tether/tether_shuttles.dm b/maps/tether/tether_shuttles.dm index 7ad7472fc6..8f459766c7 100644 --- a/maps/tether/tether_shuttles.dm +++ b/maps/tether/tether_shuttles.dm @@ -259,7 +259,6 @@ /obj/machinery/computer/shuttle_control/explore/medivac name = "short jump console" shuttle_tag = "Medivac Shuttle" - req_one_access = list(access_cmo, access_pilot) //////////////////////////////////////// //////// Securiship ///////////// @@ -285,4 +284,3 @@ /obj/machinery/computer/shuttle_control/explore/securiship name = "short jump console" shuttle_tag = "Securiship Shuttle" - req_one_access = list(access_pilot, access_hos) diff --git a/maps/~map_system/maps.dm b/maps/~map_system/maps.dm index c1d5fd7388..32901c8099 100644 --- a/maps/~map_system/maps.dm +++ b/maps/~map_system/maps.dm @@ -34,6 +34,7 @@ var/list/all_maps = list() var/static/list/sealed_levels = list() // Z-levels that don't allow random transit at edge var/static/list/xenoarch_exempt_levels = list() //Z-levels exempt from xenoarch finds and digsites spawning. var/static/list/empty_levels = null // Empty Z-levels that may be used for various things (currently used by bluespace jump) + var/static/list/vorespawn_levels = list() //Z-levels where players are allowed to vore latejoin to. // End Static Lists // Z-levels available to various consoles, such as the crew monitor. Defaults to station_levels if unset. @@ -297,6 +298,7 @@ var/list/all_maps = list() if(flags & MAP_LEVEL_PLAYER) map.player_levels += z if(flags & MAP_LEVEL_SEALED) map.sealed_levels += z if(flags & MAP_LEVEL_XENOARCH_EXEMPT) map.xenoarch_exempt_levels += z + if(flags & MAP_LEVEL_VORESPAWN) map.vorespawn_levels += z if(flags & MAP_LEVEL_EMPTY) if(!map.empty_levels) map.empty_levels = list() map.empty_levels += z diff --git a/news_articles/starfire_report_2564.html b/news_articles/starfire_report_2564.html index 2e469d0582..b12372e8c6 100644 --- a/news_articles/starfire_report_2564.html +++ b/news_articles/starfire_report_2564.html @@ -4,6 +4,46 @@ height = 170px />
    +
    + +

    Starfire Report - 12/21/2564

    +
    +

    See You Next Year

    + +

    If you’ve been following us for long enough, you’ll probably know we here at the like to send off the year with one last article. In 2564 we’ve seen pirate raids, weapons of mass destruction, mind-bending anomalies, political protests, lawsuits, and more. PTSD has swept NanoTrasen employees while weapon sales are at an all-time high (even for Sif!). If our news report was the only surviving documentation of this year a century from now then 2564 will be remembered as a year of pain, death, and despair.

    +

    Except that’s not the whole story, is it? Like most news stations we report on what’s considered news and most of the time that’s the unpleasant stuff going on in the system and wider galaxy. We don’t write an article when your grandmother celebrates her 165th birthday or your best friend lands his dream job. We don’t talk about crime on the fall in New Reykjavik or Sif’s export economy thriving for another decade despite how important it is.

    +

    Despite all terrible things we’ve reported on, it’s the end of 2564 and we’re still here. We’ve lived and laughed and loved and cried but despite everything, we’re still here. Despite the threats and attacks and bloodshed, we refused to despair and give in. We refused to bow. We refused to be divided. We refused to stop hoping for a better tomorrow. No matter what gets thrown at us, we refuse to stop marching forward because we know the future is bright because we will make it so.

    +

    Here’s to 2565.

    + +
    +

    Writers

    +

    The Starfire Team

    + +
    + +

    Starfire Report - 11/30/2564

    +
    +

    NCS Northern Star Raided

    + +

    A Syndicate terrorist cell struck NCS Northern Star late last weekend. Initially posed as an assault on NLS Southern Cross, this turned out to be a ploy to divert resources from the actual target, Northern Star. The ploy succeeded, resulting in the rapid takeover of Northern Star’s surface facility.

    +

    Despite the initial success, PCRU forces deployed to Southern Cross quickly struck back and retook Northern Star in a matter of hours. Fighting was described as quick and bloody, leaving the hallways a macabre mess of viscera and bullet casings.

    +

    The intention of the incursion remains unknown. NanoTrasen reports supplies and valuables stolen but lacks evidence of deeper intentions common to anti-NT Syndicate raids. The Syndicate itself has once again taken credit for the terror operation but without nuanced accusations common to its incursions. Perhaps time will reveal deeper motives to the attack.

    +
    +

    Writers

    +

    Mirkracresh Kalzar

    + +
    + +

    Starfire Report - 11/02/2564

    +
    +

    Spatial Anomalies Spread

    + +

    Disturbing reports of warped and twisted space have grown throughout last month. Buildings bigger on the inside than the outside, hallways which never end, doors leading to other worlds; the reports go on and on. While growing in number, such anomalies appear to be transient which has resulted in the loss of several explorers thus far.

    +

    Despite the growing number of anomalies, VirGov maintains there is no cause for alarm and that such anomalies remain rare and limited to areas of known xenoarcheological activity. NLS Southern Cross’s Ullran Expanse outpost is particularly noteworthy due to the high incidence of anomalous reports.

    +

    Others meanwhile insist the anomalies must be linked to shadekin, a race of mysterious beings first spotted on NCS Northern Star approximately three years ago. As the accusations go, the anomalies must be linked to shadekin as the race itself possesses anomalous space shifting abilities. Critics aptly point out that the anomalies have only been appearing on Sif over the previous several months, long after shadekin were first spotted in Vir.

    +
    +

    Writers

    +

    Mirkracresh Kalzar


    @@ -419,4 +459,4 @@

    Writers

    Eshi Sali

    -

    Mirkracresh Kalzar

    \ No newline at end of file +

    Mirkracresh Kalzar

    diff --git a/news_articles/starfire_report_2565.html b/news_articles/starfire_report_2565.html new file mode 100644 index 0000000000..a7ad65b144 --- /dev/null +++ b/news_articles/starfire_report_2565.html @@ -0,0 +1,33 @@ +
    + +
    + +
    + +

    Starfire Report - 02/01/2565

    +
    +

    Assailants Battle Over Southern Cross

    + +

    A firefight broke out across NLS Southern Cross this weekend, allegedly involving at least two rival mercenary factions. While NanoTrasen claims to have identified both groups, it has not offered an explanation as to why the factions targeted the station. According to crew reports, the factions apparently used the station to attack one another, treating the crew as collateral damage.

    +

    Nevertheless, the station suffered heavy damage and casualties but reportedly less than typical. “The crew seemed to hold the line enough to fight back and deal damage to the invaders,” stated an official NT spokesperson. “We were alerted to the situation much earlier than usual and recorded less damage to the station. The ERT expected much more of a bloodbath.”

    +

    While not the first time Southern Cross has been a staging ground for battling mercenaries, the motives remain unclear. No faction has claimed credit for the battle, though it is worth noting the infamous Syndicate rarely takes credit for attacks which fail to deal tremendous damage to NanoTrasen installations.

    + +
    +

    Writers

    +

    Mirkracresh Kalzar

    + +
    + +

    Starfire Report - 01/18/2565

    +
    +

    Trafficking Targets NanoTrasen Crew

    + +

    Reports of a trafficking ring targeting NLS Southern Cross surfaced yesterday, testing the facility’s lackluster security. Allegedly armed with teleportation devices, the perpetrators simply teleported hapless crew to a processing facility to be stripped and sold for ransom or as black-market goods. NanoTrasen maintains that any crew not recovered were resleeved but it remains unknown how many crew may now have other selves sold into slavery.

    +

    Commonly called “abductors,” such trafficking rings are rare on the frontier but not unheard of, resulting in many horror stories (somewhat rightfully) circulating about the fates of their victims. Whether or not such rings are part of a large organization is unknown but considered unlikely due to the rarity of such attacks.

    +

    The average person on Sif (or the Karan colonies, for that matter) has little to fear as such incursions are exceptionally rare outside of isolated locales. The average NT employee however would be rightfully afraid given the isolated nature of Southern Cross and the success of this weekend’s incursion. It will be up to NanoTrasen to prevent this from happening again; we all know how that will go.

    +
    +

    Writers

    +

    Eshi Sali

    diff --git a/sound/effects/mob_effects/una_scream1.ogg b/sound/effects/mob_effects/una_scream1.ogg new file mode 100644 index 0000000000..dac64b1b16 Binary files /dev/null and b/sound/effects/mob_effects/una_scream1.ogg differ diff --git a/sound/effects/mob_effects/una_scream2.ogg b/sound/effects/mob_effects/una_scream2.ogg new file mode 100644 index 0000000000..8ab6b23290 Binary files /dev/null and b/sound/effects/mob_effects/una_scream2.ogg differ diff --git a/tgui/packages/tgui/interfaces/AppearanceChanger.js b/tgui/packages/tgui/interfaces/AppearanceChanger.js index ca2d7b4952..647e6f66ff 100644 --- a/tgui/packages/tgui/interfaces/AppearanceChanger.js +++ b/tgui/packages/tgui/interfaces/AppearanceChanger.js @@ -15,6 +15,9 @@ export const AppearanceChanger = (props, context) => { gender_id, hair_style, facial_hair_style, + ear_style, + tail_style, + wing_style, change_race, change_gender, change_eye_color, @@ -77,6 +80,15 @@ export const AppearanceChanger = (props, context) => { {facial_hair_style ? capitalize(facial_hair_style) : "Not Set"} + + {ear_style ? capitalize(ear_style) : "Not Set"} + + + {tail_style ? capitalize(tail_style) : "Not Set"} + + + {wing_style ? capitalize(wing_style) : "Not Set"} + @@ -115,11 +127,28 @@ export const AppearanceChanger = (props, context) => { ) : null} {change_hair ? ( - setTabIndex(3)}> - Hair - + + setTabIndex(3)}> + Hair + + setTabIndex(5)}> + Ear + + setTabIndex(6)}> + Tail + + setTabIndex(7)}> + Wing + + ) : null} {change_facial_hair ? ( { {(change_color && tabIndex === 2) ? : null} {(change_hair && tabIndex === 3) ? : null} {(change_facial_hair && tabIndex === 4) ? : null} + {(change_hair && tabIndex === 5) ? : null} + {(change_hair && tabIndex === 6) ? : null} + {(change_hair && tabIndex === 7) ? : null} @@ -212,6 +244,12 @@ const AppearanceChangerColors = (props, context) => { skin_color, hair_color, facial_hair_color, + ears_color, + ears2_color, + tail_color, + tail2_color, + wing_color, + wing2_color, } = data; return ( @@ -234,10 +272,36 @@ const AppearanceChangerColors = (props, context) => { ) : null} {change_hair_color ? ( - - -