diff --git a/code/__defines/gamemode.dm b/code/__defines/gamemode.dm index c1606e77f67..bc4a655d3b5 100644 --- a/code/__defines/gamemode.dm +++ b/code/__defines/gamemode.dm @@ -43,6 +43,7 @@ #define BE_MORPH 0x40000 #define BE_CORGI 0x80000 #define BE_CURSEDSWORD 0x100000 +#define BE_SURVIVOR 0x200000 //VOREStation Add End var/list/be_special_flags = list( @@ -68,6 +69,7 @@ var/list/be_special_flags = list( "Morph" = BE_MORPH, "Corgi" = BE_CORGI, "Cursed Sword" = BE_CURSEDSWORD, + "Ship Survivor" = BE_SURVIVOR //VOREStation Add End ) @@ -111,6 +113,7 @@ var/list/be_special_flags = list( #define MODE_INFILTRATOR "infiltrator" #define MODE_THUG "thug" #define MODE_STOWAWAY "stowaway" +#define MODE_SURVIVOR "Shipwreck Survivor" #define DEFAULT_TELECRYSTAL_AMOUNT 120 @@ -176,4 +179,4 @@ var/list/be_special_flags = list( #define ASPECT_EMP "emp" //Unused now. #define ASPECT_UNSTABLE "unstable" //Heavily RNG-based, causes instability to the victim. #define ASPECT_CHROMATIC "chromatic" //Used to combine with other spells. -#define ASPECT_UNHOLY "unholy" //Involves the dead, blood, and most things against divine beings. \ No newline at end of file +#define ASPECT_UNHOLY "unholy" //Involves the dead, blood, and most things against divine beings. diff --git a/code/__defines/mobs.dm b/code/__defines/mobs.dm index df7a90632cc..b8457de50bd 100644 --- a/code/__defines/mobs.dm +++ b/code/__defines/mobs.dm @@ -136,8 +136,9 @@ #define CLASS_MIDDLE "Average" #define CLASS_LOWMID "Underpaid" #define CLASS_LOWER "Poor" +#define CLASS_BROKE "Broke" //VOREStation Add -#define ECONOMIC_CLASS list(CLASS_UPPER,CLASS_UPMID,CLASS_MIDDLE,CLASS_LOWMID,CLASS_LOWER) +#define ECONOMIC_CLASS list(CLASS_UPPER,CLASS_UPMID,CLASS_MIDDLE,CLASS_LOWMID,CLASS_LOWER,CLASS_BROKE) // Defines mob sizes, used by lockers and to determine what is considered a small sized mob, etc. @@ -249,7 +250,7 @@ #define BP_HEAD "head" #define BP_TORSO "torso" #define BP_GROIN "groin" -#define BP_ALL list(BP_GROIN, BP_TORSO, BP_HEAD, BP_L_ARM, BP_R_ARM, BP_L_HAND, BP_R_HAND, BP_L_FOOT, BP_R_FOOT, BP_L_LEG, BP_R_LEG) +#define BP_ALL list(BP_TORSO, BP_HEAD, BP_GROIN, BP_L_ARM, BP_R_ARM, BP_L_HAND, BP_R_HAND, BP_L_LEG, BP_R_LEG, BP_L_FOOT, BP_R_FOOT) //keep so that parent comes before child #define SYNTH_BLOOD_COLOUR "#030303" #define SYNTH_FLESH_COLOUR "#575757" diff --git a/code/__defines/subsystems.dm b/code/__defines/subsystems.dm index 716a1c1540c..81d35aebfa1 100644 --- a/code/__defines/subsystems.dm +++ b/code/__defines/subsystems.dm @@ -93,6 +93,7 @@ var/global/list/runlevel_flags = list(RUNLEVEL_LOBBY, RUNLEVEL_SETUP, RUNLEVEL_G // Subsystem fire priority, from lowest to highest priority // If the subsystem isn't listed here it's either DEFAULT or PROCESS (if it's a processing subsystem child) +#define FIRE_PRIORITY_PLAYERTIPS 5 #define FIRE_PRIORITY_SHUTTLES 5 #define FIRE_PRIORITY_SUPPLY 5 #define FIRE_PRIORITY_NIGHTSHIFT 5 diff --git a/code/_helpers/icons.dm b/code/_helpers/icons.dm index a2e4664055f..ec831d8c5f8 100644 --- a/code/_helpers/icons.dm +++ b/code/_helpers/icons.dm @@ -233,7 +233,7 @@ curblend = BLEND_OVERLAY add = icon(I.icon, I.icon_state, base_icon_dir) else // 'I' is an appearance object. - add = getFlatIcon(image(I), I.dir||curdir, curicon, curstate, curblend, FALSE, no_anim) + add = getFlatIcon(image(I), curdir, curicon, curstate, curblend, FALSE, no_anim) if(!add) continue // Find the new dimensions of the flat icon to fit the added overlay diff --git a/code/_helpers/unsorted.dm b/code/_helpers/unsorted.dm index d0a7bff2e0e..cb19ec6c511 100644 --- a/code/_helpers/unsorted.dm +++ b/code/_helpers/unsorted.dm @@ -826,10 +826,22 @@ Turf and target are seperate in case you want to teleport some distance from a t else O=new original.type(locate(0,0,0)) + var/static/list/blacklisted_var_names = list( + "ATOM_TOPIC_EXAMINE", + "type", + "loc", + "locs", + "vars", + "parent", + "parent_type", + "verbs", + "ckey", + "key" + ) if(perfectcopy) if((O) && (original)) for(var/V in original.vars) - if(!(V in list("type","loc","locs","vars", "parent", "parent_type","verbs","ckey","key"))) + if(!(V in blacklisted_var_names)) O.vars[V] = original.vars[V] return O diff --git a/code/controllers/master.dm b/code/controllers/master.dm index ab2d2a12dea..fe88f6c10e3 100644 --- a/code/controllers/master.dm +++ b/code/controllers/master.dm @@ -257,7 +257,7 @@ GLOBAL_REAL(Master, /datum/controller/master) = new SS.state = SS_IDLE if (SS.flags & SS_TICKER) tickersubsystems += SS - timer += world.tick_lag * rand(1, 5) + timer += world.tick_lag * rand(0,1) SS.next_fire = timer continue @@ -332,13 +332,16 @@ GLOBAL_REAL(Master, /datum/controller/master) = new var/checking_runlevel = current_runlevel if(cached_runlevel != checking_runlevel) //resechedule subsystems + var/list/old_subsystems = current_runlevel_subsystems cached_runlevel = checking_runlevel current_runlevel_subsystems = runlevel_sorted_subsystems[cached_runlevel] - var/stagger = world.time + + //now we'll go through all the subsystems we want to offset and give them a next_fire for(var/datum/controller/subsystem/SS as anything in current_runlevel_subsystems) - if(SS.next_fire <= world.time) - stagger += world.tick_lag * rand(1, 5) - SS.next_fire = stagger + //we only want to offset it if it's new and also behind + if(SS.next_fire > world.time || (SS in old_subsystems)) + continue + SS.next_fire = world.time + world.tick_lag * rand(0, DS2TICKS(min(SS.wait, 2 SECONDS))) subsystems_to_check = current_runlevel_subsystems else diff --git a/code/controllers/subsystems/player_tips.dm b/code/controllers/subsystems/player_tips.dm new file mode 100644 index 00000000000..7ac58b52bd0 --- /dev/null +++ b/code/controllers/subsystems/player_tips.dm @@ -0,0 +1,16 @@ +/* +Player tips procs and lists are defined under /code/modules/player_tips_vr +*/ +SUBSYSTEM_DEF(player_tips) + name = "Periodic Player Tips" + priority = FIRE_PRIORITY_PLAYERTIPS + runlevels = RUNLEVEL_GAME + + wait = 3000 //We check if it's time to send a tip every 5 minutes (300 seconds) + var/static/datum/player_tips/player_tips = new + + + + +/datum/controller/subsystem/player_tips/fire() + player_tips.send_tips() diff --git a/code/controllers/subsystems/xenoarch.dm b/code/controllers/subsystems/xenoarch.dm index 111653fc681..45a437b9668 100644 --- a/code/controllers/subsystems/xenoarch.dm +++ b/code/controllers/subsystems/xenoarch.dm @@ -31,13 +31,13 @@ SUBSYSTEM_DEF(xenoarch) /datum/controller/subsystem/xenoarch/proc/SetupXenoarch() for(var/turf/simulated/mineral/M in world) - if(!M.density || (M.z in using_map.xenoarch_exempt_levels)) + if(!M.density) continue if(isnull(M.geologic_data)) M.geologic_data = new /datum/geosample(M) - if(!prob(XENOARCH_SPAWN_CHANCE)) + if((M.z in using_map.xenoarch_exempt_levels) || !prob(XENOARCH_SPAWN_CHANCE)) continue var/farEnough = 1 diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm index 04f489be7c4..8328a4f47c8 100644 --- a/code/datums/datacore.dm +++ b/code/datums/datacore.dm @@ -355,7 +355,7 @@ var/global/list/PDA_Manifest = list() G.fields["p_stat"] = "Active" G.fields["m_stat"] = "Stable" G.fields["sex"] = gender2text(H.gender) - G.fields["species"] = H.get_species() + G.fields["species"] = "[H.custom_species ? "[H.custom_species] ([H.species.name])" : H.species.name]" //VOREStation Edit G.fields["home_system"] = H.home_system G.fields["citizenship"] = H.citizenship G.fields["faction"] = H.personal_faction @@ -365,6 +365,7 @@ var/global/list/PDA_Manifest = list() //Medical Record var/datum/data/record/M = CreateMedicalRecord(H.real_name, id, hidden) + M.fields["species"] = "[H.custom_species ? "[H.custom_species] ([H.species.name])" : H.species.name]" //VOREStation Edit M.fields["b_type"] = H.b_type M.fields["b_dna"] = H.dna.unique_enzymes M.fields["id_gender"] = gender2text(H.identifying_gender) @@ -377,6 +378,7 @@ var/global/list/PDA_Manifest = list() //Security Record var/datum/data/record/S = CreateSecurityRecord(H.real_name, id, hidden) + S.fields["species"] = "[H.custom_species ? "[H.custom_species] ([H.species.name])" : H.species.name]" //VOREStation Edit if(H.get_FBP_type()) S.fields["brain_type"] = H.get_FBP_type() else @@ -401,7 +403,7 @@ var/global/list/PDA_Manifest = list() L.fields["b_dna"] = H.dna.unique_enzymes L.fields["enzymes"] = H.dna.SE // Used in respawning L.fields["identity"] = H.dna.UI // " - L.fields["species"] = H.get_species() + L.fields["species"] = "[H.custom_species ? "[H.custom_species] ([H.species.name])" : H.species.name]" //VOREStation Edit L.fields["home_system"] = H.home_system L.fields["citizenship"] = H.citizenship L.fields["faction"] = H.personal_faction @@ -468,6 +470,7 @@ var/global/list/PDA_Manifest = list() var/datum/data/record/R = new /datum/data/record() R.name = "Security Record #[id]" R.fields["name"] = name + R.fields["species"] = SPECIES_HUMAN R.fields["id"] = id R.fields["brain_type"] = "Unknown" R.fields["criminal"] = "None" @@ -490,6 +493,7 @@ var/global/list/PDA_Manifest = list() M.name = "Medical Record #[id]" M.fields["id"] = id M.fields["name"] = name + M.fields["species"] = SPECIES_HUMAN M.fields["b_type"] = "AB+" M.fields["b_dna"] = md5(name) M.fields["id_gender"] = "Unknown" diff --git a/code/datums/ghost_query.dm b/code/datums/ghost_query.dm index 6a342f58203..47519813e8e 100644 --- a/code/datums/ghost_query.dm +++ b/code/datums/ghost_query.dm @@ -198,3 +198,12 @@ Would you like to play as the soul imprisoned within?" be_special_flag = BE_CURSEDSWORD cutoff_number = 1 + +/datum/ghost_query/shipwreck_survivor + role_name = "Shipwreck survivor" + question = "A person suspended in cryosleep has been discovered by a crewmember \ + aboard a wrecked spaceship \ + and they are attempting to open the cryopod.\n \ + Would you like to play as the occupant? \n \ + You MUST NOT use your station character!!!" + cutoff_number = 1 diff --git a/code/datums/supplypacks/recreation.dm b/code/datums/supplypacks/recreation.dm index 40caa4c405b..ca19cc342af 100644 --- a/code/datums/supplypacks/recreation.dm +++ b/code/datums/supplypacks/recreation.dm @@ -72,15 +72,16 @@ /obj/item/device/camera_film = 2, /obj/item/weapon/storage/photo_album, /obj/item/weapon/packageWrap, - /obj/item/weapon/reagent_containers/glass/paint/red, - /obj/item/weapon/reagent_containers/glass/paint/green, - /obj/item/weapon/reagent_containers/glass/paint/blue, - /obj/item/weapon/reagent_containers/glass/paint/yellow, - /obj/item/weapon/reagent_containers/glass/paint/purple, - /obj/item/weapon/reagent_containers/glass/paint/black, - /obj/item/weapon/reagent_containers/glass/paint/white, /obj/item/poster/custom, - /obj/item/weapon/wrapping_paper = 3 + /obj/item/weapon/wrapping_paper = 3, + /obj/structure/easel, + /obj/item/paint_brush, + /obj/item/paint_palette, + /obj/item/canvas = 3, + /obj/item/canvas/nineteen_nineteen = 2, + /obj/item/canvas/twentythree_nineteen = 2, + /obj/item/canvas/twentythree_twentythree = 2, + /obj/item/canvas/twentyfour_twentyfour = 2 ) cost = 10 containertype = /obj/structure/closet/crate/allico @@ -94,7 +95,17 @@ contains = list( /obj/item/device/pipe_painter = 2, /obj/item/device/floor_painter = 2, - ///obj/item/device/closet_painter = 2 + /obj/item/weapon/reagent_containers/glass/paint/red, + /obj/item/weapon/reagent_containers/glass/paint/green, + /obj/item/weapon/reagent_containers/glass/paint/blue, + /obj/item/weapon/reagent_containers/glass/paint/yellow, + /obj/item/weapon/reagent_containers/glass/paint/violet, + /obj/item/weapon/reagent_containers/glass/paint/cyan, + /obj/item/weapon/reagent_containers/glass/paint/orange, + /obj/item/weapon/reagent_containers/glass/paint/purple, + /obj/item/weapon/reagent_containers/glass/paint/grey, + /obj/item/weapon/reagent_containers/glass/paint/black, + /obj/item/weapon/reagent_containers/glass/paint/white = 3 ) /datum/supply_pack/recreation/cheapbait diff --git a/code/datums/underwear/bottom.dm b/code/datums/underwear/bottom.dm index 3458c6bab2c..7f16ba66b73 100644 --- a/code/datums/underwear/bottom.dm +++ b/code/datums/underwear/bottom.dm @@ -72,4 +72,19 @@ /datum/category_item/underwear/bottom/thinpanties name = "Panties, Thin" icon_state = "thinpanties" + has_color = TRUE + +/datum/category_item/underwear/bottom/neko + name = "Panties, Neko" + icon_state = "panties_neko" + has_color = TRUE + +/datum/category_item/underwear/bottom/swimbottom + name = "Swimming Bottoms" + icon_state = "swimbottom" + has_color = TRUE + +/datum/category_item/underwear/bottom/onepiece + name = "Swimming One Piece" + icon_state = "onepiece" has_color = TRUE \ No newline at end of file diff --git a/code/datums/underwear/socks.dm b/code/datums/underwear/socks.dm index 72803644dfb..ac29b579d19 100644 --- a/code/datums/underwear/socks.dm +++ b/code/datums/underwear/socks.dm @@ -188,4 +188,24 @@ /datum/category_item/underwear/socks/rippedpantyhose name = "Pantyhose, Ripped" - icon_state = "rippedpantyhose" \ No newline at end of file + icon_state = "rippedpantyhose" + +/datum/category_item/underwear/socks/stirrup + name = "Normal, stirrup" + icon_state = "socks_norm-stir" + has_color = TRUE + +/datum/category_item/underwear/socks/stirrup_knee + name = "Knee, stirrup" + icon_state = "socks_knee-stir" + has_color = TRUE + +/datum/category_item/underwear/socks/stirrup_thigh + name = "Thigh, stirrup" + icon_state = "socks_thigh-stir" + has_color = TRUE + +/datum/category_item/underwear/socks/stirrup_thigh_black + name = "Black Stirrup Stockings" + icon_state = "leggings-stir-black" + has_color = TRUE \ No newline at end of file diff --git a/code/datums/underwear/top.dm b/code/datums/underwear/top.dm index 3811bf4fbd7..5af7870f04e 100644 --- a/code/datums/underwear/top.dm +++ b/code/datums/underwear/top.dm @@ -77,3 +77,22 @@ icon_state = "onesleeve" has_color = TRUE +/datum/category_item/underwear/top/neko + name = "Neko bra" + icon_state = "bra_neko" + has_color = TRUE + +/datum/category_item/underwear/top/tape + name = "Tape" + icon_state = "pasties_alt" + has_color = TRUE + +/datum/category_item/underwear/top/sarashi + name = "Sarashi" + icon_state = "bandages" + has_color = TRUE + +/datum/category_item/underwear/top/swimtop + name = "Swimming Top" + icon_state = "swimtop" + has_color = TRUE \ No newline at end of file diff --git a/code/datums/underwear/undershirts.dm b/code/datums/underwear/undershirts.dm index 11c4f1f6b32..2c32ad8e767 100644 --- a/code/datums/underwear/undershirts.dm +++ b/code/datums/underwear/undershirts.dm @@ -206,4 +206,24 @@ /datum/category_item/underwear/undershirt/dress_shirt name = "Dress shirt, masculine" icon_state = "undershirt_dress" + has_color = TRUE + +/datum/category_item/underwear/undershirt/midriff + name = "Tanktop, midriff" + icon_state = "tank_midriff" + has_color = TRUE + +/datum/category_item/underwear/undershirt/midriffshort + name = "Tanktop, midriff, short" + icon_state = "tank_midriff_short" + has_color = TRUE + +/datum/category_item/underwear/undershirt/shibari + name = "Shibari Binding" + icon_state = "shibari" + has_color = TRUE + +/datum/category_item/underwear/undershirt/leotard + name = "Leotard" + icon_state = "leotard" has_color = TRUE \ No newline at end of file diff --git a/code/game/antagonist/outsider/shipwreck_survivor.dm b/code/game/antagonist/outsider/shipwreck_survivor.dm new file mode 100644 index 00000000000..6fdcc47b971 --- /dev/null +++ b/code/game/antagonist/outsider/shipwreck_survivor.dm @@ -0,0 +1,45 @@ +var/datum/antagonist/shipwreck_survivor/survivors + +//Shipwreck survivors can only spawn from ghost_pods at time of this commit. +//These are NOT meant to be real antagonists +//They are, at best, comparable to ERT. +/datum/antagonist/SURVIVOR + id = MODE_SURVIVOR + role_type = BE_SURVIVOR + role_text = "Shipwreck Survivor" + role_text_plural = "Shipwreck Survivors" + bantype = "Shipwreck Survivor" //also blocked by GhostRoles ban, in current implementation at least + welcome_text = "Something disastrous happened to the ship you were on! You awaken to your supposed rescuers in pain..." + antag_text = "You are a NOT an antagonist! All rules apply to you as well. Your job is to help make the world seem more alive. \n \ + You are not an existing station character, but some average person who has suffered a terrible accident. \ + Feel free to make up what happened to the ship you awakened on as you please, \ + but listening to your rescuers for context might help improve your mutual immersion! \n \ + Please play along. It is OK to not be co-operative, but 'yes, and' and \ + 'no, but' are better ways to approach things than to shut them down outright.\n\n \ + Please ahelp if you are uncertain about anything pertaining to this role. \ + It is always better to be safe than sorry! \n\n \ + You will receive the option to set your ambitions. Please remember the server rules \ + abuse can mean being banned from ghost roles \n \ + You should use your ambitions to flesh out why your ship got wrecked \ + and how you wish to proceed now that you were rescued. \n \ + You DON'T need to set your ambitions. Feel free to ignore them." + + antag_sound = 'sound/voice/hiss1.ogg' + + can_speak_aooc = FALSE + can_hear_aooc = FALSE + +/datum/antagonist/SURVIVOR/greet(var/datum/mind/player) + to_chat(player.current, SPAN_WARNING("You are a NOT an antagonist! All rules apply to you as well. Your job is to help make the world seem more alive. \n \ + You are not an existing station character, but some average person who has suffered a terrible accident. \ + Feel free to make up what happened to the ship you awakened on as you please, \ + but listening to your rescuers for context might help improve your mutual immersion! \n \ + Please play along. It is OK to not be co-operative, but 'yes, and' and \ + 'no, but' are better ways to approach things than to shut them down outright.\n\n \ + Please ahelp if you are uncertain about anything pertaining to this role. \ + It is always better to be safe than sorry! \n\n \ + You will receive the option to set your ambitions. Please remember the server rules \ + abuse can mean being banned from ghost roles \n \ + You should use your ambitions to flesh out why your ship got wrecked \ + and how you wish to proceed now that you were rescued. \n \ + You DON'T need to set your ambitions. Feel free to ignore them.")) diff --git a/code/game/atoms.dm b/code/game/atoms.dm index d3207d02935..e2993681208 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -211,6 +211,9 @@ found += A.search_contents_for(path,filter_path) return found +/atom/proc/get_examine_desc() + return desc + //All atoms /atom/proc/examine(mob/user, var/infix = "", var/suffix = "") //This reformat names to get a/an properly working on item descriptions when they are bloody @@ -225,14 +228,13 @@ else f_name += "oil-stained [name][infix]." - var/list/output = list("\icon[src.examine_icon()][bicon(src)] That's [f_name] [suffix]", desc) + var/list/output = list("\icon[src.examine_icon()][bicon(src)] That's [f_name] [suffix]", get_examine_desc()) if(user.client?.prefs.examine_text_mode == EXAMINE_MODE_INCLUDE_USAGE) output += description_info if(user.client?.prefs.examine_text_mode == EXAMINE_MODE_SWITCH_TO_PANEL) user.client.statpanel = "Examine" // Switch to stat panel - SEND_SIGNAL(src, COMSIG_PARENT_EXAMINE, user, output) return output diff --git a/code/game/dna/dna2.dm b/code/game/dna/dna2.dm index df62ad8ecf4..791524d221b 100644 --- a/code/game/dna/dna2.dm +++ b/code/game/dna/dna2.dm @@ -118,6 +118,8 @@ var/global/list/datum/dna/gene/dna_genes[0] var/custom_ask var/custom_whisper var/custom_exclaim + var/list/custom_heat = list() + var/list/custom_cold = list() // VOREStation // New stuff @@ -144,6 +146,8 @@ var/global/list/datum/dna/gene/dna_genes[0] new_dna.custom_ask=custom_ask //VOREStaton Edit new_dna.custom_whisper=custom_whisper //VOREStaton Edit new_dna.custom_exclaim=custom_exclaim //VOREStaton Edit + new_dna.custom_heat=custom_heat //VOREStation Edit + new_dna.custom_cold=custom_cold //VOREStation Edit var/list/body_markings_genetic = (body_markings - body_marking_nopersist_list) new_dna.body_markings=body_markings_genetic.Copy() for(var/b=1;b<=DNA_SE_LENGTH;b++) @@ -216,6 +220,8 @@ var/global/list/datum/dna/gene/dna_genes[0] src.custom_ask = character.custom_ask src.custom_whisper = character.custom_whisper src.custom_exclaim = character.custom_exclaim + src.custom_heat = character.custom_heat + src.custom_cold = character.custom_cold // +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 d5cdc700c73..9b57cd87e12 100644 --- a/code/game/dna/dna2_helpers.dm +++ b/code/game/dna/dna2_helpers.dm @@ -244,6 +244,8 @@ H.custom_whisper = dna.custom_whisper H.custom_exclaim = dna.custom_exclaim H.species.blood_color = dna.blood_color + H.custom_heat = dna.custom_heat + H.custom_cold = dna.custom_cold var/datum/species/S = H.species S.produceCopy(dna.species_traits, H, dna.base_species) // VOREStation Edit End diff --git a/code/game/jobs/job/job.dm b/code/game/jobs/job/job.dm index cf09d52861b..443b188b60f 100644 --- a/code/game/jobs/job/job.dm +++ b/code/game/jobs/job/job.dm @@ -70,6 +70,7 @@ if(CLASS_MIDDLE) income = 1 if(CLASS_LOWMID) income = 0.75 if(CLASS_LOWER) income = 0.50 + if(CLASS_BROKE) income = 0 //VOREStation Add - Rent's not cheap //give them an account in the station database var/money_amount = (rand(15,40) + rand(15,40)) * income * economic_modifier * ECO_MODIFIER //VOREStation Edit - Smoothed peaks, ECO_MODIFIER rather than per-species ones. @@ -182,4 +183,4 @@ return TRUE if(brain_type in banned_job_species) return TRUE - */ \ No newline at end of file + */ diff --git a/code/game/machinery/computer/medical.dm b/code/game/machinery/computer/medical.dm index 63b067d5425..5f588f4d9b7 100644 --- a/code/game/machinery/computer/medical.dm +++ b/code/game/machinery/computer/medical.dm @@ -33,6 +33,7 @@ field_edit_questions = list( // General "sex" = "Please select new sex:", + "species" = "Please input new species:", "age" = "Please input new age:", "fingerprint" = "Please input new fingerprint hash:", "p_stat" = "Please select new physical status:", @@ -137,6 +138,7 @@ fields[++fields.len] = FIELD("Name", active1.fields["name"], null) fields[++fields.len] = FIELD("ID", active1.fields["id"], null) fields[++fields.len] = FIELD("Sex", active1.fields["sex"], "sex") + fields[++fields.len] = FIELD("Species", active1.fields["species"], "species") fields[++fields.len] = FIELD("Age", "[active1.fields["age"]]", "age") fields[++fields.len] = FIELD("Fingerprint", active1.fields["fingerprint"], "fingerprint") fields[++fields.len] = FIELD("Physical Status", active1.fields["p_stat"], "p_stat") diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm index 4222e1264cd..9c8771eeb30 100644 --- a/code/game/machinery/computer/security.dm +++ b/code/game/machinery/computer/security.dm @@ -31,6 +31,7 @@ "name" = "Please enter new name:", "id" = "Please enter new id:", "sex" = "Please select new sex:", + "species" = "Please input new species:", "age" = "Please input new age:", "rank" = "Please enter new rank:", "fingerprint" = "Please input new fingerprint hash:", @@ -148,6 +149,7 @@ fields[++fields.len] = FIELD("ID", active1.fields["id"], "id") fields[++fields.len] = FIELD("Entity Classification", active1.fields["brain_type"], "brain_type") fields[++fields.len] = FIELD("Sex", active1.fields["sex"], "sex") + fields[++fields.len] = FIELD("Species", active1.fields["species"], "species") fields[++fields.len] = FIELD("Age", "[active1.fields["age"]]", "age") fields[++fields.len] = FIELD("Rank", active1.fields["rank"], "rank") fields[++fields.len] = FIELD("Fingerprint", active1.fields["fingerprint"], "fingerprint") diff --git a/code/game/machinery/computer/skills.dm b/code/game/machinery/computer/skills.dm index 7fe2e803648..b30aa5e6a35 100644 --- a/code/game/machinery/computer/skills.dm +++ b/code/game/machinery/computer/skills.dm @@ -36,6 +36,7 @@ "name" = "Please input new name:", "id" = "Please input new ID:", "sex" = "Please select new sex:", + "species" = "Please input new species:", "age" = "Please input new age:", "fingerprint" = "Please input new fingerprint hash:", ) @@ -109,6 +110,7 @@ fields[++fields.len] = FIELD("Name", active1.fields["name"], "name") fields[++fields.len] = FIELD("ID", active1.fields["id"], "id") fields[++fields.len] = FIELD("Sex", active1.fields["sex"], "sex") + fields[++fields.len] = FIELD("Species", active1.fields["species"], "species") fields[++fields.len] = FIELD("Age", active1.fields["age"], "age") fields[++fields.len] = FIELD("Fingerprint", active1.fields["fingerprint"], "fingerprint") fields[++fields.len] = FIELD("Physical Status", active1.fields["p_stat"], null) diff --git a/code/game/machinery/frame.dm b/code/game/machinery/frame.dm index 6c71e63207d..c3fa1701fd4 100644 --- a/code/game/machinery/frame.dm +++ b/code/game/machinery/frame.dm @@ -202,6 +202,12 @@ frame_class = FRAME_CLASS_MACHINE frame_size = 3 +/datum/frame/frame_types/injector_maker + name = "Ready-to-Use Medicine 3000" + frame_class = FRAME_CLASS_MACHINE + circuit = /obj/machinery/atmospheric_field_generator + frame_size = 3 + ////////////////////////////// // Frame Object (Structure) ////////////////////////////// diff --git a/code/game/mecha/combat/combat.dm b/code/game/mecha/combat/combat.dm index 7661bb32557..88dace7ff97 100644 --- a/code/game/mecha/combat/combat.dm +++ b/code/game/mecha/combat/combat.dm @@ -7,7 +7,6 @@ maint_access = 0 //add_req_access = 0 //operation_req_access = list(access_hos) - damage_absorption = list("brute"=0.7,"fire"=1,"bullet"=0.7,"laser"=0.85,"energy"=1,"bomb"=0.8) var/am = "d3c2fbcadca903a41161ccc9df9cf948" max_hull_equip = 2 diff --git a/code/game/mecha/combat/durand.dm b/code/game/mecha/combat/durand.dm index 19bd2b9c53e..4ea027f154d 100644 --- a/code/game/mecha/combat/durand.dm +++ b/code/game/mecha/combat/durand.dm @@ -8,7 +8,6 @@ health = 300 maxhealth = 300 //Don't forget to update the /old variant if you change this number. deflect_chance = 20 - damage_absorption = list("brute"=0.5,"fire"=1.1,"bullet"=0.65,"laser"=0.85,"energy"=0.9,"bomb"=0.8) max_temperature = 30000 infra_luminosity = 8 force = 40 @@ -85,4 +84,4 @@ ..() health = 25 maxhealth = 250 //Just slightly worse. - cell.charge = rand(0, (cell.charge/2)) \ No newline at end of file + cell.charge = rand(0, (cell.charge/2)) diff --git a/code/game/mecha/combat/gorilla.dm b/code/game/mecha/combat/gorilla.dm index cb9b00ecf26..e306455de45 100644 --- a/code/game/mecha/combat/gorilla.dm +++ b/code/game/mecha/combat/gorilla.dm @@ -11,7 +11,6 @@ maxhealth = 5000 opacity = 0 // Because there's big tall legs to look through. Also it looks fucky if this is set to 1. deflect_chance = 50 - damage_absorption = list("brute"=0.1,"fire"=0.8,"bullet"=0.1,"laser"=0.6,"energy"=0.7,"bomb"=0.7) //values show how much damage will pass through, not how much will be absorbed. max_temperature = 35000 //Just a bit better than the Durand. infra_luminosity = 3 wreckage = /obj/effect/decal/mecha_wreckage/gorilla diff --git a/code/game/mecha/combat/gygax.dm b/code/game/mecha/combat/gygax.dm index b2b5fe613f7..1fa6933add7 100644 --- a/code/game/mecha/combat/gygax.dm +++ b/code/game/mecha/combat/gygax.dm @@ -8,7 +8,6 @@ health = 250 maxhealth = 250 //Don't forget to update the /old variant if you change this number. deflect_chance = 15 - damage_absorption = list("brute"=0.75,"fire"=1,"bullet"=0.8,"laser"=0.7,"energy"=0.85,"bomb"=1) max_temperature = 25000 infra_luminosity = 6 wreckage = /obj/effect/decal/mecha_wreckage/gygax @@ -55,7 +54,6 @@ health = 400 maxhealth = 400 deflect_chance = 25 - damage_absorption = list("brute"=0.6,"fire"=0.8,"bullet"=0.6,"laser"=0.5,"energy"=0.65,"bomb"=0.8) max_temperature = 45000 overload_coeff = 1 wreckage = /obj/effect/decal/mecha_wreckage/gygax/dark @@ -92,7 +90,6 @@ maxhealth = 150 deflect_chance = 20 step_in = 2 - damage_absorption = list("brute"=0.9,"fire"=1,"bullet"=0.9,"laser"=0.8,"energy"=0.9,"bomb"=1) max_temperature = 20000 overload_coeff = 1 wreckage = /obj/effect/decal/mecha_wreckage/gygax/serenity @@ -148,4 +145,4 @@ ..() health = 25 maxhealth = 250 //Just slightly worse. - cell.charge = rand(0, (cell.charge/2)) \ No newline at end of file + cell.charge = rand(0, (cell.charge/2)) diff --git a/code/game/mecha/combat/marauder.dm b/code/game/mecha/combat/marauder.dm index c2184938478..8fc089c4955 100644 --- a/code/game/mecha/combat/marauder.dm +++ b/code/game/mecha/combat/marauder.dm @@ -8,7 +8,6 @@ health = 350 maxhealth = 350 //Don't forget to update the /old variant if you change this number. deflect_chance = 25 - damage_absorption = list("brute"=0.5,"fire"=0.7,"bullet"=0.45,"laser"=0.6,"energy"=0.7,"bomb"=0.7) max_temperature = 60000 infra_luminosity = 3 operation_req_access = list(access_cent_specops) diff --git a/code/game/mecha/combat/phazon.dm b/code/game/mecha/combat/phazon.dm index 8ec100ad1ea..04e3869cc1c 100644 --- a/code/game/mecha/combat/phazon.dm +++ b/code/game/mecha/combat/phazon.dm @@ -9,7 +9,6 @@ health = 200 //God this is low maxhealth = 200 //Don't forget to update the /old variant if you change this number. deflect_chance = 30 - damage_absorption = list("brute"=0.7,"fire"=0.7,"bullet"=0.7,"laser"=0.7,"energy"=0.7,"bomb"=0.7) max_temperature = 25000 infra_luminosity = 3 wreckage = /obj/effect/decal/mecha_wreckage/phazon @@ -38,6 +37,7 @@ cloak_possible = TRUE phasing_possible = TRUE switch_dmg_type_possible = TRUE + var/list/inherent_damage_absorption = list("brute"=0.7,"fire"=0.7,"bullet"=0.7,"laser"=0.7,"energy"=0.7,"bomb"=0.7) /obj/mecha/combat/phazon/equipped/Initialize() . = ..() @@ -92,7 +92,7 @@ health = 350 maxhealth = 350 deflect_chance = 30 - damage_absorption = list("brute"=0.6,"fire"=0.7,"bullet"=0.7,"laser"=0.9,"energy"=0.7,"bomb"=0.5) + inherent_damage_absorption = list("brute"=0.6,"fire"=0.7,"bullet"=0.7,"laser"=0.9,"energy"=0.7,"bomb"=0.5) max_temperature = 10000 infra_luminosity = 3 wreckage = /obj/effect/decal/mecha_wreckage/janus @@ -125,7 +125,7 @@ src.visible_message("The [src.name] absorbs the incoming projectile's force, negating it!") src.log_append_to_last("Armor negated.") return - else if((Proj.damage && !Proj.nodamage) && istype(Proj, /obj/item/projectile/beam) && prob(max(1, (50 - round((Proj.damage / 2) * damage_absorption["laser"])) * (1 - (Proj.armor_penetration / 100))))) // Base 50% chance to deflect a beam,lowered by half the beam's damage scaled to laser absorption, then multiplied by the remaining percent of non-penetrated armor, with a minimum chance of 1%. + else if((Proj.damage && !Proj.nodamage) && istype(Proj, /obj/item/projectile/beam) && prob(max(1, (50 - round((Proj.damage / 2) * inherent_damage_absorption["laser"])) * (1 - (Proj.armor_penetration / 100))))) // Base 50% chance to deflect a beam,lowered by half the beam's damage scaled to laser absorption, then multiplied by the remaining percent of non-penetrated armor, with a minimum chance of 1%. src.occupant_message("The armor reflects the incoming beam, negating it!") src.visible_message("The [src.name] reflects the incoming beam, negating it!") src.log_append_to_last("Armor reflected.") @@ -134,7 +134,7 @@ ..() /obj/mecha/combat/phazon/janus/dynattackby(obj/item/weapon/W as obj, mob/user as mob) - if(prob(max(1, (50 - round((W.force / 2) * damage_absorption["brute"])) * (1 - (W.armor_penetration / 100))))) + if(prob(max(1, (50 - round((W.force / 2) * inherent_damage_absorption["brute"])) * (1 - (W.armor_penetration / 100))))) src.occupant_message("The armor absorbs the incoming attack's force, negating it!") src.visible_message("The [src.name] absorbs the incoming attack's force, negating it!") src.log_append_to_last("Armor absorbed.") @@ -162,4 +162,4 @@ ..() health = 25 maxhealth = 150 //Just slightly worse. - cell.charge = rand(0, (cell.charge/2)) \ No newline at end of file + cell.charge = rand(0, (cell.charge/2)) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index 63d23047496..f5821b18d19 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -44,17 +44,6 @@ var/health = 300 //Health is health var/maxhealth = 300 //Maxhealth is maxhealth. var/deflect_chance = 10 //Chance to deflect the incoming projectiles, hits, or lesser the effect of ex_act. - //the values in this list show how much damage will pass through, not how much will be absorbed. - var/list/damage_absorption = list( - "brute"=0.8, - "fire"=1.2, - "bullet"=0.9, - "laser"=1, - "energy"=1, - "bomb"=1, - "bio"=1, - "rad"=1 - ) var/damage_minimum = 10 //Incoming damage lower than this won't actually deal damage. Scrapes shouldn't be a real thing. var/minimum_penetration = 15 //Incoming damage won't be fully applied if you don't have at least 20. Almost all AP clears this. @@ -1043,15 +1032,8 @@ /obj/mecha/proc/get_damage_absorption() var/obj/item/mecha_parts/component/armor/AC = internal_components[MECH_ARMOR] - - if(!istype(AC)) - return - - else - if(AC.get_efficiency() > 0.25) - return AC.damage_absorption - - return + if(istype(AC) && AC.get_efficiency() > 0.25) + return AC.damage_absorption /obj/mecha/proc/absorbDamage(damage,damage_type) return call((proc_res["dynabsorbdamage"]||src), "dynabsorbdamage")(damage,damage_type) diff --git a/code/game/mecha/micro/micro.dm b/code/game/mecha/micro/micro.dm index 97d6728f54e..d1e5aedf592 100644 --- a/code/game/mecha/micro/micro.dm +++ b/code/game/mecha/micro/micro.dm @@ -26,7 +26,6 @@ max_micro_weapon_equip = 1 //add_req_access = 0 //operation_req_access = list(access_hos) - damage_absorption = list("brute"=1,"fire"=1,"bullet"=1,"laser"=1,"energy"=1,"bomb"=1) var/am = "d3c2fbcadca903a41161ccc9df9cf948" damage_minimum = 0 //Incoming damage lower than this won't actually deal damage. Scrapes shouldn't be a real thing. minimum_penetration = 0 //Incoming damage won't be fully applied if you don't have at least 20. Almost all AP clears this. diff --git a/code/game/mecha/micro/security.dm b/code/game/mecha/micro/security.dm index d6d054a4f5a..777ae8912bb 100644 --- a/code/game/mecha/micro/security.dm +++ b/code/game/mecha/micro/security.dm @@ -22,7 +22,6 @@ health = 150 step_energy_drain = 4 // less efficient than base micromech, but still a micromech. deflect_chance = 10 - damage_absorption = list("brute"=0.75,"fire"=1,"bullet"=0.8,"laser"=0.7,"energy"=0.85,"bomb"=1) max_temperature = 15000 infra_luminosity = 6 wreckage = /obj/effect/decal/mecha_wreckage/micro/sec/polecat @@ -45,7 +44,6 @@ dir_in = 2 //Facing south. health = 100 deflect_chance = 5 - damage_absorption = list("brute"=1,"fire"=1,"bullet"=0.9,"laser"=0.8,"energy"=0.85,"bomb"=1) max_temperature = 5000 wreckage = /obj/effect/decal/mecha_wreckage/micro/sec/weasel internal_damage_threshold = 20 diff --git a/code/game/mecha/micro/utility.dm b/code/game/mecha/micro/utility.dm index 9ceaa2bae9d..4587a89a217 100644 --- a/code/game/mecha/micro/utility.dm +++ b/code/game/mecha/micro/utility.dm @@ -9,7 +9,6 @@ dir_in = 2 //Facing south. health = 100 deflect_chance = 10 - damage_absorption = list("brute"=0.9,"fire"=1,"bullet"=1,"laser"=1,"energy"=1,"bomb"=1) max_temperature = 15000 infra_luminosity = 6 wreckage = /obj/effect/decal/mecha_wreckage/micro/utility/gopher diff --git a/code/game/mecha/working/ripley.dm b/code/game/mecha/working/ripley.dm index 61b4d90183d..8d4ee98fbf9 100644 --- a/code/game/mecha/working/ripley.dm +++ b/code/game/mecha/working/ripley.dm @@ -59,7 +59,6 @@ max_temperature = 65000 health = 250 lights_power = 8 - damage_absorption = list("fire"=0.5,"bullet"=0.8,"bomb"=0.5) wreckage = /obj/effect/decal/mecha_wreckage/ripley/firefighter max_hull_equip = 2 max_weapon_equip = 0 diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 47d3843b7c9..204a8669d58 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -503,17 +503,22 @@ var/list/global/slot_flags_enumeration = list( return if(!usr.canmove || usr.stat || usr.restrained() || !Adjacent(usr)) return - if((!istype(usr, /mob/living/carbon)) || (istype(usr, /mob/living/carbon/brain)))//Is humanoid, and is not a brain + if(isanimal(usr)) //VOREStation Edit Start - Allows simple mobs with hands to use the pickup verb + var/mob/living/simple_mob/s = usr + if(!s.has_hands) + to_chat(usr, "You can't pick things up!") + return + else if((!istype(usr, /mob/living/carbon)) || (istype(usr, /mob/living/carbon/brain)))//Is humanoid, and is not a brain to_chat(usr, "You can't pick things up!") return - var/mob/living/carbon/C = usr + var/mob/living/L = usr if( usr.stat || usr.restrained() )//Is not asleep/dead and is not restrained to_chat(usr, "You can't pick things up!") return if(src.anchored) //Object isn't anchored to_chat(usr, "You can't pick that up!") return - if(C.get_active_hand()) //Hand is not full + if(L.get_active_hand()) //Hand is not full //VOREStation Edit End to_chat(usr, "Your hand is full.") return if(!istype(src.loc, /turf)) //Object is on a turf diff --git a/code/game/objects/items/devices/advnifrepair.dm b/code/game/objects/items/devices/advnifrepair.dm index 913aad68ad6..ca3e455acc7 100644 --- a/code/game/objects/items/devices/advnifrepair.dm +++ b/code/game/objects/items/devices/advnifrepair.dm @@ -24,7 +24,7 @@ /obj/item/device/nifrepairer/attackby(obj/W, mob/user) if(istype(W,/obj/item/stack/nanopaste)) var/obj/item/stack/nanopaste/np = W - if(np.use(1) && supply.get_free_space() >= efficiency) + if((supply.get_free_space() >= efficiency) && np.use(1)) to_chat(user, "You convert some nanopaste into programmed nanites inside \the [src].") supply.add_reagent(id = "nifrepairnanites", amount = efficiency) update_icon() diff --git a/code/game/objects/items/devices/powersink.dm b/code/game/objects/items/devices/powersink.dm index cc902d3b6da..339b57f0558 100644 --- a/code/game/objects/items/devices/powersink.dm +++ b/code/game/objects/items/devices/powersink.dm @@ -4,6 +4,7 @@ name = "power sink" desc = "A nulling power sink which drains energy from electrical systems." icon_state = "powersink0" + icon = 'icons/obj/device.dmi' w_class = ITEMSIZE_LARGE throwforce = 5 throw_speed = 1 diff --git a/code/game/objects/items/weapons/capture_crystal.dm b/code/game/objects/items/weapons/capture_crystal.dm index 4cc748af13d..36447ce9cc3 100644 --- a/code/game/objects/items/weapons/capture_crystal.dm +++ b/code/game/objects/items/weapons/capture_crystal.dm @@ -451,7 +451,9 @@ //Let's let our mob out! /obj/item/capture_crystal/proc/unleash(mob/living/user, atom/target) if(!user && !target) //We got thrown but we're not sure who did it, let's go to where the crystal is - bound_mob.forceMove(src.drop_location()) + var/drop_loc = get_turf(src) + if (drop_loc) + bound_mob.forceMove(drop_loc) return if(!target) //We know who wants to let us out, but they didn't say where, so let's drop us on them bound_mob.forceMove(user.drop_location()) diff --git a/code/game/objects/items/weapons/circuitboards/circuitboards_vr.dm b/code/game/objects/items/weapons/circuitboards/circuitboards_vr.dm index 174e1cde971..62281667512 100644 --- a/code/game/objects/items/weapons/circuitboards/circuitboards_vr.dm +++ b/code/game/objects/items/weapons/circuitboards/circuitboards_vr.dm @@ -2,6 +2,17 @@ #error T_BOARD macro is not defined but we need it! #endif +/obj/item/weapon/circuitboard/get_examine_desc() + . = ..() + if(LAZYLEN(req_components)) + var/list/nice_list = list() + for(var/B in req_components) + var/atom/A = B + if(!ispath(A)) + continue + nice_list += list("[req_components[A]] [initial(A.name)]") + . += "Required components: [english_list(nice_list)]." + // VOREStation specific circuit boards! // Board for the parts lathe in partslathe.dm diff --git a/code/game/objects/items/weapons/circuitboards/frame.dm b/code/game/objects/items/weapons/circuitboards/frame.dm index 7ef7c4bfefc..000cd011f6f 100644 --- a/code/game/objects/items/weapons/circuitboards/frame.dm +++ b/code/game/objects/items/weapons/circuitboards/frame.dm @@ -264,4 +264,17 @@ /obj/item/weapon/stock_parts/micro_laser/high = 2, //field emitters /obj/item/weapon/stock_parts/scanning_module = 1, //atmosphere sensor /obj/item/weapon/stock_parts/capacitor/adv = 1, //for the JUICE - /obj/item/stack/cable_coil = 10) \ No newline at end of file + /obj/item/stack/cable_coil = 10) + + +/obj/item/weapon/circuitboard/injector_maker + name = T_BOARD("Ready-to-Use Medicine 3000") + build_path = /obj/machinery/injector_maker + board_type = new /datum/frame/frame_types/injector_maker + origin_tech = list(TECH_BIO = 3, TECH_ENGINEERING = 2, TECH_MATERIAL = 2) + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 2, + /obj/item/weapon/stock_parts/manipulator = 1, + /obj/item/weapon/stock_parts/micro_laser = 1, + /obj/item/weapon/stock_parts/console_screen = 1 + ) diff --git a/code/game/objects/items/weapons/clown_items.dm b/code/game/objects/items/weapons/clown_items.dm index c3a94fb1003..d7208d5db37 100644 --- a/code/game/objects/items/weapons/clown_items.dm +++ b/code/game/objects/items/weapons/clown_items.dm @@ -54,7 +54,7 @@ wet() else to_chat(user, "You clean \the [target.name].") - target.clean_blood() + target.clean_blood(TRUE) return //attack_as_weapon diff --git a/code/game/objects/items/weapons/id cards/station_ids.dm b/code/game/objects/items/weapons/id cards/station_ids.dm index 9154f348438..9d1d52109a6 100644 --- a/code/game/objects/items/weapons/id cards/station_ids.dm +++ b/code/game/objects/items/weapons/id cards/station_ids.dm @@ -13,6 +13,7 @@ slot_flags = SLOT_ID | SLOT_EARS var/age = "\[UNSET\]" + var/species = "\[UNSET\]" var/blood_type = "\[UNSET\]" var/dna_hash = "\[UNSET\]" var/fingerprint_hash = "\[UNSET\]" @@ -61,6 +62,7 @@ id_card.age = 0 id_card.registered_name = real_name id_card.sex = capitalize(gender) + id_card.species = SPECIES_HUMAN id_card.set_id_photo(src) if(dna) @@ -72,6 +74,7 @@ /mob/living/carbon/human/set_id_info(var/obj/item/weapon/card/id/id_card) ..() id_card.age = age + id_card.species = "[custom_species ? "[custom_species] ([species.name])" : species.name]" id_card.sex = capitalize(name_gender()) /obj/item/weapon/card/id/tgui_data(mob/user) @@ -79,6 +82,7 @@ data["registered_name"] = registered_name data["sex"] = sex + data["species"] = species data["age"] = age data["assignment"] = assignment data["fingerprint_hash"] = fingerprint_hash diff --git a/code/game/objects/items/weapons/paint.dm b/code/game/objects/items/weapons/paint.dm index 80ec8d7f7c5..a86c3d4bd4f 100644 --- a/code/game/objects/items/weapons/paint.dm +++ b/code/game/objects/items/weapons/paint.dm @@ -27,44 +27,52 @@ var/global/list/cached_icons = list() return ..() /obj/item/weapon/reagent_containers/glass/paint/New() - if(paint_type && length(paint_type) > 0) - name = paint_type + " " + name ..() - reagents.add_reagent("water", volume*3/5) - reagents.add_reagent("plasticide", volume/5) - if(paint_type == "white") //why don't white crayons exist - reagents.add_reagent("aluminum", volume/5) - else if (paint_type == "black") - reagents.add_reagent("carbon", volume/5) - else - reagents.add_reagent("marker_ink_[paint_type]", volume/5) - reagents.handle_reactions() + if(paint_type) + reagents.add_reagent("paint", volume, paint_type) /obj/item/weapon/reagent_containers/glass/paint/red icon_state = "paint_red" - paint_type = "red" + paint_type = "#FF0000" /obj/item/weapon/reagent_containers/glass/paint/yellow icon_state = "paint_yellow" - paint_type = "yellow" + paint_type = "#FFFF00" /obj/item/weapon/reagent_containers/glass/paint/green icon_state = "paint_green" - paint_type = "green" + paint_type = "#00FF00" /obj/item/weapon/reagent_containers/glass/paint/blue icon_state = "paint_blue" - paint_type = "blue" + paint_type = "#0000FF" -/obj/item/weapon/reagent_containers/glass/paint/purple +/obj/item/weapon/reagent_containers/glass/paint/violet icon_state = "paint_violet" - paint_type = "purple" + paint_type = "#FF00FF" /obj/item/weapon/reagent_containers/glass/paint/black icon_state = "paint_black" - paint_type = "black" + paint_type = "#000000" + +/obj/item/weapon/reagent_containers/glass/paint/grey + icon_state = "paint_neutral" + paint_type = "#808080" + +/obj/item/weapon/reagent_containers/glass/paint/orange + icon_state = "paint_orange" + paint_type = "#FFA500" + +/obj/item/weapon/reagent_containers/glass/paint/purple + icon_state = "paint_purple" + paint_type = "#A500FF" + +/obj/item/weapon/reagent_containers/glass/paint/cyan + icon_state = "paint_cyan" + paint_type = "#00FFFF" /obj/item/weapon/reagent_containers/glass/paint/white + name = "paint remover bucket" icon_state = "paint_white" - paint_type = "white" + paint_type = "#FFFFFF" diff --git a/code/game/objects/structures/artstuff.dm b/code/game/objects/structures/artstuff.dm index 9bcd59b39f0..e3faa052f0f 100644 --- a/code/game/objects/structures/artstuff.dm +++ b/code/game/objects/structures/artstuff.dm @@ -248,7 +248,7 @@ framed_offset_y = 6 /obj/item/canvas/twentyfour_twentyfour - name = "ai universal standard canvas" + //name = "ai universal standard canvas" // Uncomment this when AI can actually //desc = "Besides being very large, the AI can accept these as a display from their internal database after you've hung it up." // Not yet icon_state = "24x24" width = 24 diff --git a/code/game/objects/structures/crates_lockers/__closets.dm b/code/game/objects/structures/crates_lockers/__closets.dm index 454a070cfe4..cf196ddf0a0 100644 --- a/code/game/objects/structures/crates_lockers/__closets.dm +++ b/code/game/objects/structures/crates_lockers/__closets.dm @@ -397,6 +397,13 @@ if(ishuman(usr) || isrobot(usr)) add_fingerprint(usr) toggle(usr) + else if(isanimal(usr)) //VOREStation Addition Start + var/mob/living/simple_mob/s = usr + if(s.has_hands) + add_fingerprint(usr) + toggle(usr) + else + to_chat(usr, "This mob type can't use this verb.") //VOREStation Addition End else to_chat(usr, "This mob type can't use this verb.") diff --git a/code/game/objects/structures/flora/flora.dm b/code/game/objects/structures/flora/flora.dm index 2b03156385e..a6850cd7690 100644 --- a/code/game/objects/structures/flora/flora.dm +++ b/code/game/objects/structures/flora/flora.dm @@ -607,7 +607,7 @@ to forming buds, the petals of which secrete the luminescent sap containing the pollen at the time of blooming. Certain \ horticulturists have found ways of halting this process prior to the secretion of the sap, leaving the flower's petals \ bright, at the cost of making that bud sterile." - value = CATALOGUER_REWARD_HARD + value = CATALOGUER_REWARD_MEDIUM /obj/structure/flora/sif/frostbelle name = "frostbelle shrub" diff --git a/code/game/objects/structures/ghost_pods/survivor.dm b/code/game/objects/structures/ghost_pods/survivor.dm new file mode 100644 index 00000000000..62dbc2441da --- /dev/null +++ b/code/game/objects/structures/ghost_pods/survivor.dm @@ -0,0 +1,138 @@ +//Based on /manual/human but not created as a child for better control over how we create a mob. +/obj/structure/ghost_pod/manual/survivor + name = "Emergency Cryopod" + desc = "A damaged cryopod smeared with blood. An injured body seems frozen in time within." + description_info = "This contains a body, which may wake at any time. The external controls\ + seem to be functioning, though the warning lights that flash give no solace.." + ghost_query_type = /datum/ghost_query/shipwreck_survivor + var/occupant_type = "shipwreck survivor" + + icon = 'icons/obj/Cryogenic2.dmi' + icon_state = "sleeper_1" + icon_state_opened = "sleeper_0" + density = TRUE + + var/allow_appearance_change = TRUE + var/special_role = MODE_SURVIVOR //Set this to NULL as GM if you don't want the "survivor" stuff to fire. + var/list/clothing_possibilities + + var/start_injured = FALSE //failsafe to prevent accidentally making a pod that deals damage when not intended + + var/suffer_brute = FALSE + var/brute_severity = 20 //We inflict UP TO this much damage. Range is 1 to this value + var/brute_instances = 3 //We inflict damage this many times. Helps spread it around multiple limbs! + + + var/suffer_burn = FALSE + var/burn_severity = 20 + var/burn_instances = 3 + + var/suffer_toxloss = FALSE + var/tox_severity = 20 + + var/suffer_oxloss = FALSE + var/oxy_severity = 20 + + var/suffer_cloneloss = FALSE + var/clone_severity = 5 + +/obj/structure/ghost_pod/manual/survivor/Initialize() + . = ..() + + handle_clothing_setup() + +/obj/structure/ghost_pod/manual/survivor/proc/handle_clothing_setup() + clothing_possibilities = list() + + clothing_possibilities |= subtypesof(/obj/item/clothing/under/utility) + clothing_possibilities |= subtypesof(/obj/item/clothing/head/beret) + clothing_possibilities |= /obj/item/clothing/shoes/black + clothing_possibilities |= /obj/item/device/radio/headset + +/obj/structure/ghost_pod/manual/survivor/create_occupant(var/mob/M) + ..() + var/turf/T = get_turf(src) + var/mob/living/carbon/human/H = new(src) + if(M.mind) + M.mind.transfer_to(H) + to_chat(M, "You are a [occupant_type]!") + H.ckey = M.ckey + visible_message("As \the [src] opens, the pipes on \the [src] surge, before it grows dark.") + log_and_message_admins("successfully opened \a [src] and got a [occupant_type].") + + var/list/uniform_options + var/list/shoe_options + var/list/head_options + var/list/headset_options + + if(clothing_possibilities && clothing_possibilities.len) + for(var/path in clothing_possibilities) + if(ispath(path, /obj/item/clothing/under)) + if(!uniform_options) + uniform_options = list() + uniform_options |= path + if(ispath(path, /obj/item/clothing/shoes)) + if(!shoe_options) + shoe_options = list() + shoe_options |= path + if(ispath(path, /obj/item/clothing/head)) + if(!head_options) + head_options = list() + head_options |= path + if(ispath(path, /obj/item/device/radio/headset)) + if(!headset_options) + headset_options = list() + headset_options |= path + + if(uniform_options && uniform_options.len) + var/newpath = pick(uniform_options) + var/obj/item/clothing/C = new newpath(H) + H.equip_to_appropriate_slot(C) + + if(shoe_options && shoe_options.len) + var/newpath = pick(shoe_options) + var/obj/item/clothing/C = new newpath(H) + H.equip_to_appropriate_slot(C) + + if(head_options && head_options.len) + var/newpath = pick(head_options) + var/obj/item/clothing/C = new newpath(H) + H.equip_to_appropriate_slot(C) + + if(headset_options && headset_options.len) + var/newpath = pick(headset_options) + var/obj/item/C = new newpath(H) + H.equip_to_appropriate_slot(C) + + var/newname = sanitize(tgui_input_text(H, "Your mind feels foggy, and you recall your name might be [H.real_name]. Would you like to change your name?", "Name change", null, MAX_NAME_LEN), MAX_NAME_LEN) + if (newname) + H.real_name = newname + + icon_state = icon_state_opened + + H.forceMove(T) + + if(special_role) + var/datum/antagonist/role = all_antag_types[special_role] //Explicitly NOT an antagonist. + if(role) + if(role.add_antagonist(H.mind, 1, 1, 0, 1, 1)) + log_admin("\The [src] made [key_name(src)] into a [role.role_text].") + + if(start_injured) //Doublechecking if we actually want them to be injured + if(suffer_brute) + for(var/br = 1, br < brute_instances, br++) + H.adjustBruteLoss(rand(1,brute_severity)) + if(suffer_burn) + for(var/bu = 1, bu < burn_instances, bu++) + H.adjustFireLoss(rand(1,burn_severity)) + if(suffer_oxloss) + H.adjustOxyLoss(rand(1,oxy_severity)) + if(suffer_toxloss) + H.adjustToxLoss(rand(1,tox_severity)) + if(suffer_cloneloss) + H.adjustCloneLoss(rand(1,clone_severity)) + + if(allow_appearance_change) + H.change_appearance(APPEARANCE_ALL, H, check_species_whitelist = 1) + + visible_message("\The [src] [pick("gurgles", "seizes", "clangs")] before releasing \the [H]!") diff --git a/code/game/objects/structures/janicart.dm b/code/game/objects/structures/janicart.dm index 1aeb9cdf4cd..84cb98b9635 100644 --- a/code/game/objects/structures/janicart.dm +++ b/code/game/objects/structures/janicart.dm @@ -38,7 +38,7 @@ GLOBAL_LIST_BOILERPLATE(all_janitorial_carts, /obj/structure/janitorialcart) to_chat(user, "There's no room in [src] for [I].") return FALSE - if(!user.unEquip(I, 0, src)) + if(!user.canUnEquip(I)) to_chat(user, "[I] is stuck to your hand.") return FALSE @@ -83,6 +83,7 @@ GLOBAL_LIST_BOILERPLATE(all_janitorial_carts, /obj/structure/janitorialcart) to_chat(user, "There's no room in [src] for [I].") return FALSE + user.drop_from_inventory(I, src) update_icon() to_chat(user, "You put [I] into [src].") return TRUE diff --git a/code/game/objects/structures/morgue.dm b/code/game/objects/structures/morgue.dm index 4e67afbc462..befc35be268 100644 --- a/code/game/objects/structures/morgue.dm +++ b/code/game/objects/structures/morgue.dm @@ -12,7 +12,7 @@ /obj/structure/morgue name = "morgue" - desc = "Used to keep bodies in untill someone fetches them." + desc = "A refrigerated unit used to store bodies, or for surreptitious naps." icon = 'icons/obj/stationobjs.dmi' icon_state = "morgue1" dir = EAST diff --git a/code/game/objects/structures/simple_doors.dm b/code/game/objects/structures/simple_doors.dm index ea70fa44a64..4c49624d925 100644 --- a/code/game/objects/structures/simple_doors.dm +++ b/code/game/objects/structures/simple_doors.dm @@ -14,7 +14,7 @@ var/oreAmount = 7 var/knock_sound = 'sound/machines/door/knock_glass.ogg' var/knock_hammer_sound = 'sound/weapons/sonic_jackhammer.ogg' - + /obj/structure/simple_door/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) TemperatureAct(exposed_temperature) @@ -171,7 +171,7 @@ return /obj/structure/simple_door/bullet_act(var/obj/item/projectile/Proj) - hardness -= Proj.force/10 + take_damage(Proj.damage/10) CheckHardness() /obj/structure/simple_door/take_damage(var/damage) diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm index b6c5885ac4e..aff55b72256 100644 --- a/code/game/objects/structures/watercloset.dm +++ b/code/game/objects/structures/watercloset.dm @@ -194,7 +194,7 @@ wash(M) process_heat(M) for (var/atom/movable/G in src.loc) - G.clean_blood() + G.clean_blood(TRUE) else soundloop.stop() diff --git a/code/game/turfs/flooring/seasonal.dm b/code/game/turfs/flooring/seasonal.dm index 19eca39da11..9095abc85c5 100644 --- a/code/game/turfs/flooring/seasonal.dm +++ b/code/game/turfs/flooring/seasonal.dm @@ -41,8 +41,7 @@ var/world_time_season /obj/structure/flora/tree/jungle ) animal_types = list( - /mob/living/simple_mob/vore/redpanda = 40, - /mob/living/simple_mob/vore/redpanda/fae = 2, + /mob/living/simple_mob/vore/redpanda = 5, /mob/living/simple_mob/vore/sheep = 20, /mob/living/simple_mob/vore/rabbit/black = 20, /mob/living/simple_mob/vore/rabbit/white = 20, @@ -50,7 +49,12 @@ var/world_time_season /mob/living/simple_mob/vore/leopardmander = 2, /mob/living/simple_mob/vore/horse/big = 10, /mob/living/simple_mob/vore/bigdragon/friendly = 1, - /mob/living/simple_mob/vore/alienanimals/dustjumper = 20 + /mob/living/simple_mob/vore/alienanimals/dustjumper = 20, + /mob/living/simple_mob/vore/bee = 20, + /mob/living/simple_mob/vore/horse/big = 5, + /mob/living/simple_mob/animal/wolf = 5, + /mob/living/simple_mob/animal/wolf/direwolf = 1, + /mob/living/simple_mob/animal/wolf/direwolf/dog = 1 ) grass_types = list( /obj/structure/flora/ausbushes/sparsegrass, @@ -73,8 +77,7 @@ var/world_time_season /obj/structure/flora/tree/jungle ) animal_types = list( - /mob/living/simple_mob/vore/redpanda = 40, - /mob/living/simple_mob/vore/redpanda/fae = 2, + /mob/living/simple_mob/vore/redpanda = 1, /mob/living/simple_mob/vore/sheep = 20, /mob/living/simple_mob/vore/rabbit/black = 20, /mob/living/simple_mob/vore/rabbit/white = 20, @@ -82,7 +85,13 @@ var/world_time_season /mob/living/simple_mob/vore/leopardmander = 2, /mob/living/simple_mob/vore/horse/big = 10, /mob/living/simple_mob/vore/bigdragon/friendly = 1, - /mob/living/simple_mob/vore/alienanimals/dustjumper = 20 + /mob/living/simple_mob/vore/alienanimals/dustjumper = 20, + /mob/living/simple_mob/vore/bee = 5, + /mob/living/simple_mob/vore/horse/big = 5, + /mob/living/simple_mob/vore/pakkun = 2, + /mob/living/simple_mob/vore/fennix = 1, + /mob/living/simple_mob/animal/wolf/direwolf/dog = 1, + /mob/living/simple_mob/animal/passive/bird/parrot = 1 ) grass_types = list( /obj/structure/flora/ausbushes/sparsegrass, @@ -102,7 +111,11 @@ var/world_time_season /mob/living/simple_mob/vore/rabbit/white = 20, /mob/living/simple_mob/vore/rabbit/brown = 20, /mob/living/simple_mob/vore/horse/big = 10, - /mob/living/simple_mob/vore/alienanimals/dustjumper = 20 + /mob/living/simple_mob/vore/alienanimals/dustjumper = 20, + /mob/living/simple_mob/vore/horse/big = 1, + /mob/living/simple_mob/animal/wolf = 1, + /mob/living/simple_mob/animal/wolf/direwolf = 1, + /mob/living/simple_mob/animal/wolf/direwolf/dog = 1 ) grass_types = list( /obj/structure/flora/ausbushes/sparsegrass, @@ -121,7 +134,14 @@ var/world_time_season animal_types = list( /mob/living/simple_mob/vore/rabbit/white = 40, - /mob/living/simple_mob/vore/redpanda = 10 + /mob/living/simple_mob/vore/redpanda = 10, + /mob/living/simple_mob/animal/wolf = 10, + /mob/living/simple_mob/animal/wolf/direwolf = 1, + /mob/living/simple_mob/animal/wolf/direwolf/dog = 1, + /mob/living/simple_mob/otie/friendly = 2, + /mob/living/simple_mob/otie/friendly/chubby = 1, + /mob/living/simple_mob/otie/red/friendly = 1, + /mob/living/simple_mob/otie/red/chubby = 1 ) if(prob(snow_chance)) chill() diff --git a/code/game/turfs/simulated/outdoors/survival_action_vr.dm b/code/game/turfs/simulated/outdoors/survival_action_vr.dm index c7f90171c76..9f889594938 100644 --- a/code/game/turfs/simulated/outdoors/survival_action_vr.dm +++ b/code/game/turfs/simulated/outdoors/survival_action_vr.dm @@ -1,9 +1,12 @@ +var/static/list/has_rocks = list("dirt5", "dirt6", "dirt7", "dirt8", "dirt9") + /turf/simulated/floor/outdoors/newdirt/attack_hand(mob/user) if(user.pulling) return ..() - var/static/list/has_rocks = list("dirt5", "dirt6", "dirt7", "dirt8", "dirt9") if(!Adjacent(user)) return ..() + if(user.a_intent != I_HELP) + return ..() if(icon_state in has_rocks) user.visible_message("[user] loosens rocks from \the [src]...", "You loosen rocks from \the [src]...") if(do_after(user, 5 SECONDS, exclusive = TASK_USER_EXCLUSIVE)) @@ -76,4 +79,4 @@ S.pixel_y = rand(-6,6) sticks = FALSE else - to_chat(user, "You don't see any loose sticks...") \ No newline at end of file + to_chat(user, "You don't see any loose sticks...") diff --git a/code/modules/admin/DB ban/functions.dm b/code/modules/admin/DB ban/functions.dm index af8799004ba..dfd236c0d92 100644 --- a/code/modules/admin/DB ban/functions.dm +++ b/code/modules/admin/DB ban/functions.dm @@ -279,7 +279,8 @@ output += "" - output += "
Add custom ban: (ONLY use this if you can't ban through any other method)" + output += "[HrefTokenFormField()]" + output += "Add custom ban: (ONLY use this if you can't ban through any other method)" output += "" output += "" output += "" output += "
Ban type:
" - output += "
Search:" + output += "[HrefTokenFormField()]" + output += "" output += "" output += "" diff --git a/code/modules/admin/fix_player_notes_listing.dm b/code/modules/admin/fix_player_notes_listing.dm new file mode 100644 index 00000000000..3ab0f6c4bc3 --- /dev/null +++ b/code/modules/admin/fix_player_notes_listing.dm @@ -0,0 +1,16 @@ +/proc/fix_player_notes_listing() + var/list/has_notes = list() + // flist() dir names include the / + for(var/subdir in flist("data/player_saves/")) + for(var/ckey in flist("data/player_saves/[subdir]")) + if(fexists("data/player_saves/[subdir][ckey]info.sav")) + has_notes += copytext(ckey, 1, -1) // Trim the tailing / + + //Updating list of keys with notes on them + var/savefile/note_list = new("data/player_notes.sav") + var/list/note_keys + note_list >> note_keys + if(!note_keys) note_keys = list() + note_keys |= has_notes + note_list << note_keys + del(note_list) // savefile, so NOT qdel diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index 2d7e434ac99..30c474f6255 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -1535,7 +1535,7 @@ for (var/page = 1, page <= B.pages.len, page++) var/obj/pageobj = B.pages[page] - data += "Page [page] - [pageobj.name]
" + data += "Page [page] - [pageobj.name]
" usr << browse(data, "window=[B.name]") else diff --git a/code/modules/admin/verbs/adminsay.dm b/code/modules/admin/verbs/adminsay.dm index b9332751b56..308cc34d5ab 100644 --- a/code/modules/admin/verbs/adminsay.dm +++ b/code/modules/admin/verbs/adminsay.dm @@ -2,7 +2,7 @@ set category = "Special Verbs" set name = "Asay" //Gave this shit a shorter name so you only have to time out "asay" rather than "admin say" to use it --NeoFite set hidden = 1 - if(!check_rights(R_ADMIN|R_STEALTH)) //VOREStation Edit + if(!check_rights(R_ADMIN)) //VOREStation Edit return msg = sanitize(msg) @@ -11,11 +11,9 @@ log_adminsay(msg,src) - //VOREStation Edit Start - Adds R_STEALTH for(var/client/C in GLOB.admins) - if(check_rights(R_ADMIN|R_STEALTH)) + if(check_rights(R_ADMIN)) to_chat(C, "" + create_text_tag("admin", "ADMIN:", C) + " [key_name(usr, 1)]([admin_jump_link(mob, src)]): [msg]") - //VOREStation Edit End feedback_add_details("admin_verb","M") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -24,7 +22,7 @@ set name = "Msay" set hidden = 1 - if(!check_rights(R_ADMIN|R_MOD|R_SERVER|R_STEALTH)) //VOREStation Edit + if(!check_rights(R_ADMIN|R_MOD|R_SERVER)) //VOREStation Edit return msg = sanitize(msg) @@ -37,7 +35,7 @@ if(check_rights(R_ADMIN, 0)) sender_name = "[sender_name]" for(var/client/C in GLOB.admins) - if(check_rights(R_ADMIN|R_MOD|R_SERVER|R_STEALTH)) //VOREStation Edit + if(check_rights(R_ADMIN|R_MOD|R_SERVER)) //VOREStation Edit to_chat(C, "" + create_text_tag("mod", "MOD:", C) + " [sender_name]([admin_jump_link(mob, C.holder)]): [msg]") feedback_add_details("admin_verb","MS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -47,7 +45,7 @@ set name = "Esay" set hidden = 1 - if(!check_rights(R_ADMIN|R_MOD|R_EVENT|R_SERVER|R_STEALTH)) //VOREStation Edit + if(!check_rights(R_ADMIN|R_MOD|R_EVENT|R_SERVER)) //VOREStation Edit return msg = sanitize(msg) @@ -62,4 +60,4 @@ for(var/client/C in GLOB.admins) to_chat(C, "" + create_text_tag("event", "EVENT:", C) + " [sender_name]([admin_jump_link(mob, C.holder)]): [msg]") - feedback_add_details("admin_verb","GS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! \ No newline at end of file + feedback_add_details("admin_verb","GS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! diff --git a/code/modules/ai/ai_holder_targeting.dm b/code/modules/ai/ai_holder_targeting.dm index e3d98f1620d..63424e4b9af 100644 --- a/code/modules/ai/ai_holder_targeting.dm +++ b/code/modules/ai/ai_holder_targeting.dm @@ -70,10 +70,10 @@ // Step 4, give us our selected target. /datum/ai_holder/proc/give_target(new_target, urgent = FALSE) ai_log("give_target() : Given '[new_target]', urgent=[urgent].", AI_LOG_TRACE) - + if(target) remove_target() - + target = new_target if(target != null) @@ -280,7 +280,7 @@ // Checks to see if an atom attacked us lately /datum/ai_holder/proc/check_attacker(var/atom/movable/A) - return (A in attackers) + return (A.name in attackers) // We were attacked by this thing recently /datum/ai_holder/proc/add_attacker(var/atom/movable/A) diff --git a/code/modules/client/client procs.dm b/code/modules/client/client procs.dm index eafa4e05a06..99d56623b3c 100644 --- a/code/modules/client/client procs.dm +++ b/code/modules/client/client procs.dm @@ -70,7 +70,7 @@ if(href_list["irc_msg"]) if(!holder && received_irc_pm < world.time - 6000) //Worse they can do is spam IRC for 10 minutes - to_chat(usr, "You are no longer able to use this, it's been more then 10 minutes since an admin on IRC has responded to you") + to_chat(usr, "You are no longer able to use this, it's been more than 10 minutes since an admin on IRC has responded to you") return if(mute_irc) to_chat(usr, "") diff --git a/code/modules/client/preference_setup/general/03_body.dm b/code/modules/client/preference_setup/general/03_body.dm index a084e29ffae..9be079fd827 100644 --- a/code/modules/client/preference_setup/general/03_body.dm +++ b/code/modules/client/preference_setup/general/03_body.dm @@ -338,8 +338,18 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O character.set_gender(pref.biological_gender) // Destroy/cyborgize organs and limbs. - character.synthetic = null //Clear the existing var. - for(var/name in list(BP_HEAD, BP_L_HAND, BP_R_HAND, BP_L_ARM, BP_R_ARM, BP_L_FOOT, BP_R_FOOT, BP_L_LEG, BP_R_LEG, BP_GROIN, BP_TORSO)) + //VOREStation Edit + character.synthetic = pref.species == "Protean" ? all_robolimbs["protean"] : null //Clear the existing var. (unless protean, then switch it to the normal protean limb) + var/list/organs_to_edit = list() + for (var/name in list(BP_TORSO, BP_HEAD, BP_GROIN, BP_L_ARM, BP_R_ARM, BP_L_HAND, BP_R_HAND, BP_L_LEG, BP_R_LEG, BP_L_FOOT, BP_R_FOOT)) + var/obj/item/organ/external/O = character.organs_by_name[name] + if (O) + var/x = organs_to_edit.Find(O.parent_organ) + if (x == 0) + organs_to_edit += name + else + organs_to_edit.Insert(x+(O.robotic == ORGAN_NANOFORM ? 1 : 0), name) + for(var/name in organs_to_edit) //VOREStation edit end var/status = pref.organ_data[name] var/obj/item/organ/external/O = character.organs_by_name[name] if(O) @@ -830,9 +840,10 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O /* VOREStation Removal - No markings whitelist, let people mix/match for(var/M in usable_markings) var/datum/sprite_accessory/S = usable_markings[M] + var/datum/species/spec = GLOB.all_species[pref.species] if(!S.species_allowed.len) continue - else if(!(pref.species in S.species_allowed)) + else if(!(pref.species in S.species_allowed) && !(pref.custom_base in S.species_allowed) && !(spec.base_species in S.species_allowed)) usable_markings -= M */ //VOREStation Removal End var/new_marking = tgui_input_list(user, "Choose a body marking:", "Character Preference", usable_markings) diff --git a/code/modules/client/preference_setup/global/setting_datums.dm b/code/modules/client/preference_setup/global/setting_datums.dm index 01c6b4da971..f8c0615ef95 100644 --- a/code/modules/client/preference_setup/global/setting_datums.dm +++ b/code/modules/client/preference_setup/global/setting_datums.dm @@ -368,6 +368,12 @@ var/list/_client_preferences_by_type enabled_description = "Hear" disabled_description = "Silent" +/datum/client_preference/player_tips + description = "Receive Tips Periodically" + key = "RECEIVE_TIPS" + enabled_description = "Enabled" + disabled_description = "Disabled" + /datum/client_preference/pain_frequency description = "Pain Messages Cooldown" key = "PAIN_FREQUENCY" @@ -375,6 +381,7 @@ var/list/_client_preferences_by_type enabled_description = "Extended" disabled_description = "Default" + /******************** * Staff Preferences * ********************/ diff --git a/code/modules/client/preference_setup/loadout/loadout_accessories_vr.dm b/code/modules/client/preference_setup/loadout/loadout_accessories_vr.dm index 17aacdd3b3b..8fa00e9e413 100644 --- a/code/modules/client/preference_setup/loadout/loadout_accessories_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_accessories_vr.dm @@ -139,3 +139,20 @@ Talon pin /datum/gear/accessory/altevian_badge display_name = "altevian badge" path = /obj/item/clothing/accessory/altevian_badge + +/datum/gear/accessory/maid_neck + display_name = "maid neck cover" + path = /obj/item/clothing/accessory/maid_neck + +/datum/gear/accessory/maid_corset + display_name = "maid corset" + path = /obj/item/clothing/accessory/maidcorset + +//Antediluvian accessories +/datum/gear/accessory/antediluvian + display_name = "antediluvian bracers" + path = /obj/item/clothing/accessory/antediluvian + +/datum/gear/accessory/antediluvian/loin + display_name = "antediluvian loincloth" + path = /obj/item/clothing/accessory/antediluvian/loincloth \ No newline at end of file diff --git a/code/modules/client/preference_setup/loadout/loadout_gloves_vr.dm b/code/modules/client/preference_setup/loadout/loadout_gloves_vr.dm index 269f9e7aa90..cfc0a6b1053 100644 --- a/code/modules/client/preference_setup/loadout/loadout_gloves_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_gloves_vr.dm @@ -25,4 +25,8 @@ /datum/gear/gloves/siren display_name = "gloves, Siren" - path = /obj/item/clothing/gloves/fluff/siren \ No newline at end of file + path = /obj/item/clothing/gloves/fluff/siren + +/datum/gear/gloves/maid_arms + display_name = "maid arm covers" + path = /obj/item/clothing/accessory/maid_arms diff --git a/code/modules/client/preference_setup/loadout/loadout_head_vr.dm b/code/modules/client/preference_setup/loadout/loadout_head_vr.dm index 43f8451dbe2..64e08314750 100644 --- a/code/modules/client/preference_setup/loadout/loadout_head_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_head_vr.dm @@ -11,14 +11,21 @@ display_name = "basic headband" path = /obj/item/clothing/head/fluff/headbando -/datum/gear/head/maid - display_name = "maid headband" - path = /obj/item/clothing/head/headband/maid - /datum/gear/head/headbando/New() ..() gear_tweaks += gear_tweak_free_color_choice +/datum/gear/head/maid + display_name = "maid headband selection" + path = /obj/item/clothing/head/headband/maid + +/datum/gear/head/maid/New() + ..() + var/list/headbands_list = list() + for(var/obj/item/clothing/head/bands as anything in typesof(/obj/item/clothing/head/headband/maid)) + headbands_list[initial(bands.name)] = bands + gear_tweaks += new/datum/gear_tweak/path(sortAssoc(headbands_list)) + //Detective alternative /datum/gear/head/detective_alt display_name = "cyberscope headgear, detective" @@ -57,6 +64,30 @@ ..() gear_tweaks += gear_tweak_free_color_choice +/datum/gear/head/wedding + display_name = "wedding veil" + path = /obj/item/clothing/head/wedding + +/datum/gear/head/wedding/New() + ..() + gear_tweaks += gear_tweak_free_color_choice + +/datum/gear/head/halo/alt + display_name = "halo, alt" + path = /obj/item/clothing/head/halo/alt + +/datum/gear/head/buckethat + display_name = "hat, bucket" + path = /obj/item/clothing/head/buckethat + +/datum/gear/head/buckethat/New() + ..() + gear_tweaks += gear_tweak_free_color_choice + +/datum/gear/head/nonla + display_name = "hat, non la" + path = /obj/item/clothing/head/nonla + /* Talon hats */ diff --git a/code/modules/client/preference_setup/loadout/loadout_mask.dm b/code/modules/client/preference_setup/loadout/loadout_mask.dm index af33ec77873..79cced4864a 100644 --- a/code/modules/client/preference_setup/loadout/loadout_mask.dm +++ b/code/modules/client/preference_setup/loadout/loadout_mask.dm @@ -68,4 +68,11 @@ for(var/gaiter in typesof(/obj/item/clothing/accessory/gaiter)) var/obj/item/clothing/accessory/gaiter_type = gaiter gaiters[initial(gaiter_type.name)] = gaiter_type - gear_tweaks += new/datum/gear_tweak/path(sortTim(gaiters, /proc/cmp_text_asc)) \ No newline at end of file + gear_tweaks += new/datum/gear_tweak/path(sortTim(gaiters, /proc/cmp_text_asc)) + +/datum/gear/mask/lace + display_name = "lace veil" + path = /obj/item/clothing/mask/lacemask + +/datum/gear/mask/lace/New() + gear_tweaks += gear_tweak_free_color_choice \ No newline at end of file diff --git a/code/modules/client/preference_setup/loadout/loadout_shoes_vr.dm b/code/modules/client/preference_setup/loadout/loadout_shoes_vr.dm index dab191f306c..d1fe32ad15c 100644 --- a/code/modules/client/preference_setup/loadout/loadout_shoes_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_shoes_vr.dm @@ -20,3 +20,19 @@ /datum/gear/shoes/toeless display_name = "toe-less jackboots" path = /obj/item/clothing/shoes/boots/jackboots/toeless + +/datum/gear/shoes/singer_blue + display_name = "blue performer's boots" + path = /obj/item/clothing/shoes/boots/singer + +/datum/gear/shoes/singer_yellow + display_name = "yellow performer's boots" + path = /obj/item/clothing/shoes/boots/singer/yellow + +/datum/gear/shoes/antediluvian + display_name = "legwraps, antediluvian" + path = /obj/item/clothing/shoes/antediluvian + +/datum/gear/shoes/flats/alt + display_name = "flats, alt" + path = /obj/item/clothing/shoes/flats/white/color/alt \ No newline at end of file diff --git a/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm b/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm index b55654dd40a..4aa596d59a7 100644 --- a/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm @@ -152,3 +152,164 @@ Talon winter coat /datum/gear/suit/cyberpunk_recolorable/New() gear_tweaks += gear_tweak_free_color_choice + +/datum/gear/suit/shrine_maiden + display_name = "shrine maiden costume" + path = /obj/item/clothing/suit/shrine_maiden + +//Antediluvian cloak +/datum/gear/suit/cloak_ante + display_name = "cloak, antediluvian" + path = /obj/item/clothing/accessory/poncho/roles/cloak/antediluvian + cost = 1 + +//Chaplain cloaks +/datum/gear/suit/cloak_chaplain + display_name = "cloak, chaplain" + path = /obj/item/clothing/accessory/poncho/roles/cloak/chapel + cost = 1 + +/datum/gear/suit/cloak_chaplain/alt + display_name = "cloak, chaplain, alt" + path = /obj/item/clothing/accessory/poncho/roles/cloak/chapel/alt + cost = 1 + +//Half cloak +/datum/gear/suit/cloak_half + display_name = "cloak, half, colorable" + path = /obj/item/clothing/accessory/poncho/roles/cloak/half + cost = 1 + +/datum/gear/suit/cloak_half/New() + gear_tweaks += gear_tweak_free_color_choice + +//Shoulder cloak +/datum/gear/suit/cloak_shoulder + display_name = "cloak, shoulder" + path = /obj/item/clothing/accessory/poncho/roles/cloak/shoulder + cost = 1 + +/datum/gear/suit/cloak_shoulder/New() + gear_tweaks += gear_tweak_free_color_choice + +/datum/gear/suit/cloak_shoulder_right + display_name = "cloak, shoulder right" + path = /obj/item/clothing/accessory/poncho/roles/cloak/shoulder/right + cost = 1 + +/datum/gear/suit/cloak_shoulder_right/New() + gear_tweaks += gear_tweak_free_color_choice + +//Mantles, mostly for heads of staff +/datum/gear/suit/roles/mantle + display_name = "mantle, colorable" + path = /obj/item/clothing/accessory/poncho/roles/cloak/mantle + cost = 1 + +/datum/gear/suit/roles/mantle/New() + gear_tweaks += gear_tweak_free_color_choice + +/datum/gear/suit/roles/mantles + display_name = "mantle selection" + path = /obj/item/clothing/accessory/poncho/roles/cloak/mantle/cargo + cost = 1 + +/datum/gear/suit/roles/mantles/New() + ..() + var/list/mantles = list( + "orange mantle"=/obj/item/clothing/accessory/poncho/roles/cloak/mantle/cargo, + "black mantle"=/obj/item/clothing/accessory/poncho/roles/cloak/mantle/security, + "white mantle"=/obj/item/clothing/accessory/poncho/roles/cloak/mantle/engineering, + "purple mantle"=/obj/item/clothing/accessory/poncho/roles/cloak/mantle/research, + "cyan mantle"=/obj/item/clothing/accessory/poncho/roles/cloak/mantle/medical, + "blue mantle"=/obj/item/clothing/accessory/poncho/roles/cloak/mantle/hop, + "gold mantle"=/obj/item/clothing/accessory/poncho/roles/cloak/mantle/cap + ) + gear_tweaks += new/datum/gear_tweak/path(mantles) + +//Boat cloaks +/datum/gear/suit/roles/boatcloak + display_name = "boat cloak, colorable" + path = /obj/item/clothing/accessory/poncho/roles/cloak/boat + +/datum/gear/suit/roles/boatcloak/New() + gear_tweaks += gear_tweak_free_color_choice + +/datum/gear/suit/roles/capboatcloak + display_name = "boat cloak, site manager" + path = /obj/item/clothing/accessory/poncho/roles/cloak/boat/cap + allowed_roles = list("Site Manager") + +/datum/gear/suit/roles/hopboatcloak + display_name = "boat cloak, head of personnel" + path = /obj/item/clothing/accessory/poncho/roles/cloak/boat/hop + allowed_roles = list("Head of Personnel") + +/datum/gear/suit/roles/boatcloaks + display_name = "boat cloak selection" + path = /obj/item/clothing/accessory/poncho/roles/cloak/boat/security + +/datum/gear/suit/roles/boatcloaks/New() + ..() + var/list/boatcloaks = list( + "security boat cloak"=/obj/item/clothing/accessory/poncho/roles/cloak/boat/security, + "engineering boat cloak"=/obj/item/clothing/accessory/poncho/roles/cloak/boat/engineering, + "atmospherics boat cloak"=/obj/item/clothing/accessory/poncho/roles/cloak/boat/atmos, + "medical boat cloak"=/obj/item/clothing/accessory/poncho/roles/cloak/boat/medical, + "service boat cloak"=/obj/item/clothing/accessory/poncho/roles/cloak/boat/service, + "cargo boat cloak"=/obj/item/clothing/accessory/poncho/roles/cloak/boat/cargo, + "mining boat cloak"=/obj/item/clothing/accessory/poncho/roles/cloak/boat/mining, + "research boat cloak"=/obj/item/clothing/accessory/poncho/roles/cloak/boat/science + ) + gear_tweaks += new/datum/gear_tweak/path(boatcloaks) + +//Shrouds +/datum/gear/suit/roles/shroud + display_name = "shroud, colorable" + path = /obj/item/clothing/accessory/poncho/roles/cloak/shroud + +/datum/gear/suit/roles/shroud/New() + gear_tweaks += gear_tweak_free_color_choice + +/datum/gear/suit/roles/capshroud + display_name = "shroud, site manager" + path = /obj/item/clothing/accessory/poncho/roles/cloak/shroud/cap + allowed_roles = list("Site Manager") + +/datum/gear/suit/roles/hopshroud + display_name = "shroud, head of personnel" + path = /obj/item/clothing/accessory/poncho/roles/cloak/shroud/hop + allowed_roles = list("Head of Personnel") + +/datum/gear/suit/roles/shrouds + display_name = "shroud selection" + path = /obj/item/clothing/accessory/poncho/roles/cloak/shroud/security + +/datum/gear/suit/roles/shrouds/New() + ..() + var/list/shrouds = list( + "security shroud"=/obj/item/clothing/accessory/poncho/roles/cloak/shroud/security, + "engineering shroud"=/obj/item/clothing/accessory/poncho/roles/cloak/shroud/engineering, + "atmospherics shroud"=/obj/item/clothing/accessory/poncho/roles/cloak/shroud/atmos, + "medical shroud"=/obj/item/clothing/accessory/poncho/roles/cloak/shroud/medical, + "service shroud"=/obj/item/clothing/accessory/poncho/roles/cloak/shroud/service, + "cargo shroud"=/obj/item/clothing/accessory/poncho/roles/cloak/shroud/cargo, + "mining shroud"=/obj/item/clothing/accessory/poncho/roles/cloak/shroud/mining, + "research shroud"=/obj/item/clothing/accessory/poncho/roles/cloak/shroud/science + ) + gear_tweaks += new/datum/gear_tweak/path(shrouds) + +//Actually colorable hoodies +/datum/gear/suit/roles/choodies + display_name = "hoodie selection, colorable" + path = /obj/item/clothing/suit/storage/hooded/toggle/colorable + +/datum/gear/suit/roles/choodies/New() + ..() + var/list/choodies = list( + "normal hoodie"=/obj/item/clothing/suit/storage/hooded/toggle/colorable, + "sleeveless hoodie"=/obj/item/clothing/suit/storage/hooded/toggle/colorable/sleeveless, + "cropped hoodie"=/obj/item/clothing/suit/storage/hooded/toggle/colorable/cropped + ) + gear_tweaks += gear_tweak_free_color_choice + gear_tweaks += new/datum/gear_tweak/path(choodies) \ No newline at end of file diff --git a/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm b/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm index f2d4993ffc2..46d8624c4dc 100644 --- a/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm @@ -212,6 +212,14 @@ Qipao display_name = "qipao, white" path = /obj/item/clothing/under/qipao/white +/datum/gear/uniform/qipao_colorable_alt + display_name = "qipao, colorable alt" + path = /obj/item/clothing/under/qipao/white/colorable + +/datum/gear/uniform/qipao_colorable_alt/New() + ..() + gear_tweaks += gear_tweak_free_color_choice + /* Bluespace jumpsuit */ @@ -295,7 +303,7 @@ Talon jumpsuit //Feminine Colored Jumpsuits. -/datum/gear/suit/f_jumpsuit_alt +/datum/gear/uniform/f_jumpsuit_alt display_name = "Colored Feminine Jumpsuit" path = /obj/item/clothing/under/color/fjumpsuit @@ -311,4 +319,44 @@ Talon jumpsuit /datum/gear/uniform/modernsec display_name = "undersuit, security, modernized (Security)" allowed_roles = list("Head of Security", "Warden", "Detective", "Security Officer") - path = /obj/item/clothing/under/rank/security/modern \ No newline at end of file + path = /obj/item/clothing/under/rank/security/modern + +/datum/gear/uniform/singer_blue + display_name = "blue singer dress" + path = /obj/item/clothing/under/dress/singer + +/datum/gear/uniform/singer_yellow + display_name = "yellow singer dress" + path = /obj/item/clothing/under/dress/singer/yellow + +//Antediluvian corsets from CitRP +/datum/gear/uniform/antediluvian + display_name = "corset, antediluvian" + path = /obj/item/clothing/under/dress/antediluvian + +/datum/gear/uniform/antediluvianalt + display_name = "corset, antediluvian alt" + path = /obj/item/clothing/under/dress/antediluvian/sheerless + +//Colorable skirts +/datum/gear/uniform/coloredskirts + display_name = "skirt selection, colorable" + path = /obj/item/clothing/under/skirt/colorable + +/datum/gear/uniform/coloredskirts/New() + ..() + var/list/skirts = list( + "casual skirt"=/obj/item/clothing/under/skirt/colorable, + "puffy skirt"=/obj/item/clothing/under/skirt/colorable/puffy, + "skater skirt"=/obj/item/clothing/under/skirt/colorable/skater, + "pleated skirt"=/obj/item/clothing/under/skirt/colorable/pleated, + "pencil skirt"=/obj/item/clothing/under/skirt/colorable/pencil, + "plaid skirt"=/obj/item/clothing/under/skirt/colorable/plaid, + "tube skirt"=/obj/item/clothing/under/skirt/colorable/tube, + "long skirt"=/obj/item/clothing/under/skirt/colorable/long, + "high skirt"=/obj/item/clothing/under/skirt/colorable/high, + "swept skirt"=/obj/item/clothing/under/skirt/colorable/swept, + "jumper skirt"=/obj/item/clothing/under/skirt/colorable/jumper, + "jumper dress"=/obj/item/clothing/under/skirt/colorable/jumperdress + ) + gear_tweaks += list(new/datum/gear_tweak/path(skirts), gear_tweak_free_color_choice) \ No newline at end of file diff --git a/code/modules/client/preference_setup/loadout/loadout_utility.dm b/code/modules/client/preference_setup/loadout/loadout_utility.dm index 3d2dcb20a41..21ed953a42f 100644 --- a/code/modules/client/preference_setup/loadout/loadout_utility.dm +++ b/code/modules/client/preference_setup/loadout/loadout_utility.dm @@ -145,6 +145,11 @@ ) gear_tweaks += new/datum/gear_tweak/path(wheelchairs) +/datum/gear/utility/lantern + display_name = "lantern" + path = /obj/item/device/flashlight/lantern + cost = 2 + /**************** modular computers ****************/ diff --git a/code/modules/client/preference_setup/vore/07_traits.dm b/code/modules/client/preference_setup/vore/07_traits.dm index 5a9922dd4ff..a98a276e394 100644 --- a/code/modules/client/preference_setup/vore/07_traits.dm +++ b/code/modules/client/preference_setup/vore/07_traits.dm @@ -15,6 +15,9 @@ var/custom_ask = null var/custom_exclaim = null + var/list/custom_heat = list() + var/list/custom_cold = list() + var/list/pos_traits = list() // What traits they've selected for their custom species var/list/neu_traits = list() var/list/neg_traits = list() @@ -25,6 +28,81 @@ var/dirty_synth = 0 //Are you a synth var/gross_meatbag = 0 //Where'd I leave my Voight-Kampff test kit? +/datum/preferences/proc/get_custom_bases_for_species(var/new_species) + if (!new_species) + new_species = species + var/list/choices + var/datum/species/spec = GLOB.all_species[new_species] + if (spec.selects_bodytype == SELECTS_BODYTYPE_SHAPESHIFTER) + choices = spec.get_valid_shapeshifter_forms() + choices = choices.Copy() + else if (spec.selects_bodytype == SELECTS_BODYTYPE_CUSTOM) + choices = GLOB.custom_species_bases.Copy() + if(new_species != SPECIES_CUSTOM) + choices = (choices | new_species) + return choices + +/datum/category_item/player_setup_item/vore/traits/proc/get_html_for_trait(var/datum/trait/trait, var/list/trait_prefs = null) + . = "" + if (!LAZYLEN(trait.has_preferences)) + return + . = "
" + if (altered) + switch(trait.category) + if (1) //TRAIT_TYPE_POSITIVE + pref.pos_traits[trait.type] = trait_prefs + if (0) //TRAIT_TYPE_NEUTRAL + pref.neu_traits[trait.type] = trait_prefs + if (-1)//TRAIT_TYPE_NEGATIVE + pref.neg_traits[trait.type] = trait_prefs + +/datum/category_item/player_setup_item/vore/traits/proc/get_pref_choice_from_trait(var/mob/user, var/datum/trait/trait, var/preference) + if (!trait || !preference) + return + var/list/trait_prefs + var/datum/trait/instance = all_traits[trait] + var/list/traitlist + switch(instance.category) + if (1) + traitlist = pref.pos_traits + if (0) + traitlist = pref.neu_traits + if (-1) + traitlist = pref.neg_traits + if (!LAZYLEN(instance.has_preferences) || !(preference in instance.has_preferences) || !traitlist) + return + if (!LAZYLEN(traitlist[trait])) + traitlist[trait] = instance.get_default_prefs() + trait_prefs = traitlist[trait] + if (!(preference in trait_prefs)) + trait_prefs[preference] = instance.default_value_for_pref(preference) //won't be called at all often + switch(instance.has_preferences[preference][1]) + if (1) //TRAIT_PREF_TYPE_BOOLEAN + trait_prefs[preference] = !trait_prefs[preference] + if (2) //TRAIT_PREF_TYPE_COLOR + var/new_color = input(user, "Choose the color for this trait preference:", "Trait Preference", trait_prefs[preference]) as color|null + if (new_color) + trait_prefs[preference] = new_color + // Definition of the stuff for Ears /datum/category_item/player_setup_item/vore/traits name = "Traits" @@ -47,6 +125,9 @@ S["custom_ask"] >> pref.custom_ask S["custom_exclaim"] >> pref.custom_exclaim + S["custom_heat"] >> pref.custom_heat + S["custom_cold"] >> pref.custom_cold + /datum/category_item/player_setup_item/vore/traits/save_character(var/savefile/S) S["custom_species"] << pref.custom_species S["custom_base"] << pref.custom_base @@ -64,6 +145,9 @@ S["custom_ask"] << pref.custom_ask S["custom_exclaim"] << pref.custom_exclaim + S["custom_heat"] << pref.custom_heat + S["custom_cold"] << pref.custom_cold + /datum/category_item/player_setup_item/vore/traits/sanitize_character() if(!pref.pos_traits) pref.pos_traits = list() if(!pref.neu_traits) pref.neu_traits = list() @@ -122,7 +206,9 @@ var/datum/species/selected_species = GLOB.all_species[pref.species] if(selected_species.selects_bodytype) - // Allowed! + if (!(pref.custom_base in pref.get_custom_bases_for_species())) + pref.custom_base = SPECIES_HUMAN + //otherwise, allowed! else if(!pref.custom_base || !(pref.custom_base in GLOB.custom_species_bases)) pref.custom_base = SPECIES_HUMAN @@ -131,12 +217,26 @@ pref.custom_ask = lowertext(trim(pref.custom_ask)) pref.custom_exclaim = lowertext(trim(pref.custom_exclaim)) + if (islist(pref.custom_heat)) //don't bother checking these for actual singular message length, they should already have been checked and it'd take too long every time it's sanitized + if (length(pref.custom_heat) > 10) + pref.custom_heat.Cut(11) + else + pref.custom_heat = list() + if (islist(pref.custom_cold)) + if (length(pref.custom_cold) > 10) + pref.custom_cold.Cut(11) + else + pref.custom_cold = list() + /datum/category_item/player_setup_item/vore/traits/copy_to_mob(var/mob/living/carbon/human/character) character.custom_species = pref.custom_species character.custom_say = lowertext(trim(pref.custom_say)) character.custom_ask = lowertext(trim(pref.custom_ask)) character.custom_whisper = lowertext(trim(pref.custom_whisper)) character.custom_exclaim = lowertext(trim(pref.custom_exclaim)) + character.custom_heat = pref.custom_heat + character.custom_cold = pref.custom_cold + if(character.isSynthetic()) //Checking if we have a synth on our hands, boys. pref.dirty_synth = 1 @@ -185,21 +285,21 @@ . += "" . += "Neutral Trait +
" . += "" . += "Negative 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. @@ -223,6 +323,14 @@ . += "Set Exclaim Verb" . += "(Reset)" . += "
" + . += "Custom heat Discomfort: " + . += "Set Heat Messages" + . += "(Reset)" + . += "
" + . += "Custom Cold Discomfort: " + . += "Set Cold Messages" + . += "(Reset)" + . += "
" /datum/category_item/player_setup_item/vore/traits/OnTopic(var/href,var/list/href_list, var/mob/user) if(!CanUseTopic(user)) @@ -236,15 +344,7 @@ return TOPIC_REFRESH else if(href_list["custom_base"]) - var/list/choices - var/datum/species/spec = GLOB.all_species[pref.species] - if (spec.selects_bodytype == SELECTS_BODYTYPE_SHAPESHIFTER && istype(spec, /datum/species/shapeshifter)) - var/datum/species/spec_shifter = spec - choices = spec_shifter.get_valid_shapeshifter_forms() - else - choices = GLOB.custom_species_bases - if(pref.species != SPECIES_CUSTOM) - choices = (choices | pref.species) + var/list/choices = pref.get_custom_bases_for_species() var/text_choice = tgui_input_list(usr, "Pick an icon set for your species:","Icon Base", choices) if(text_choice in choices) pref.custom_base = text_choice @@ -289,6 +389,11 @@ instance.remove_pref(pref) return TOPIC_REFRESH + else if(href_list["clicked_trait_pref"]) + var/datum/trait/trait = text2path(href_list["clicked_trait_pref"]) + get_pref_choice_from_trait(user, trait, href_list["pref"]) + return TOPIC_REFRESH + else if(href_list["custom_say"]) var/say_choice = sanitize(tgui_input_text(usr, "This word or phrase will appear instead of 'says': [pref.real_name] says, \"Hi.\"", "Custom Say", pref.custom_say, 12), 12) if(say_choice) @@ -313,6 +418,40 @@ pref.custom_exclaim = exclaim_choice return TOPIC_REFRESH + else if(href_list["custom_heat"]) + tgui_alert(user, "You are setting custom heat messages. These will overwrite your species' defaults. To return to defaults, click reset.") + var/old_message = pref.custom_heat.Join("\n\n") + var/new_message = sanitize(tgui_input_text(usr,"Use double enter between messages to enter a new one. Must be at least 3 characters long, 160 characters max and up to 10 messages are allowed.","Heat Discomfort messages",old_message, multiline= TRUE, prevent_enter = TRUE), MAX_MESSAGE_LEN,0,0,0) + if(length(new_message) > 0) + var/list/raw_list = splittext(new_message,"\n\n") + if(raw_list.len > 10) + raw_list.Cut(11) + for(var/i = 1, i <= raw_list.len, i++) + if(length(raw_list[i]) < 3 || length(raw_list[i]) > 160) + raw_list.Cut(i,i) + else + raw_list[i] = readd_quotes(raw_list[i]) + ASSERT(raw_list.len <= 10) + pref.custom_heat = raw_list + return TOPIC_REFRESH + + else if(href_list["custom_cold"]) + tgui_alert(user, "You are setting custom cold messages. These will overwrite your species' defaults. To return to defaults, click reset.") + var/old_message = pref.custom_heat.Join("\n\n") + var/new_message = sanitize(tgui_input_text(usr,"Use double enter between messages to enter a new one. Must be at least 3 characters long, 160 characters max and up to 10 messages are allowed.","Cold Discomfort messages",old_message, multiline= TRUE, prevent_enter = TRUE), MAX_MESSAGE_LEN,0,0,0) + if(length(new_message) > 0) + var/list/raw_list = splittext(new_message,"\n\n") + if(raw_list.len > 10) + raw_list.Cut(11) + for(var/i = 1, i <= raw_list.len, i++) + if(length(raw_list[i]) < 3 || length(raw_list[i]) > 160) + raw_list.Cut(i,i) + else + raw_list[i] = readd_quotes(raw_list[i]) + ASSERT(raw_list.len <= 10) + pref.custom_cold = raw_list + return TOPIC_REFRESH + else if(href_list["reset_say"]) var/say_choice = tgui_alert(usr, "Reset your Custom Say Verb?","Reset Verb",list("Yes","No")) if(say_choice == "Yes") @@ -337,6 +476,18 @@ pref.custom_exclaim = null return TOPIC_REFRESH + else if(href_list["reset_cold"]) + var/cold_choice = tgui_alert(usr, "Reset your Custom Cold Discomfort messages?", "Reset Discomfort",list("Yes","No")) + if(cold_choice == "Yes") + pref.custom_cold = list() + return TOPIC_REFRESH + + else if(href_list["reset_heat"]) + var/heat_choice = tgui_alert(usr, "Reset your Custom Heat Discomfort messages?", "Reset Discomfort",list("Yes","No")) + if(heat_choice == "Yes") + pref.custom_heat = list() + return TOPIC_REFRESH + else if(href_list["add_trait"]) var/mode = text2num(href_list["add_trait"]) var/list/picklist @@ -416,12 +567,10 @@ if(pref.dirty_synth && !(instance.can_take & SYNTHETICS)) tgui_alert_async(usr, "The trait you've selected can only be taken by organic characters!", "Error") - pref.dirty_synth = 0 //Just to be sure return TOPIC_REFRESH if(pref.gross_meatbag && !(instance.can_take & ORGANICS)) tgui_alert_async(usr, "The trait you've selected can only be taken by synthetic characters!", "Error") - pref.gross_meatbag = 0 //Just to be sure return TOPIC_REFRESH if(pref.species in instance.banned_species) @@ -457,7 +606,7 @@ return TOPIC_REFRESH instance.apply_pref(pref) - mylist += path + mylist[path] = instance.get_default_prefs() return TOPIC_REFRESH return ..() diff --git a/code/modules/client/preference_setup/vore/08_nif.dm b/code/modules/client/preference_setup/vore/08_nif.dm index c6183413442..d502fb447bf 100644 --- a/code/modules/client/preference_setup/vore/08_nif.dm +++ b/code/modules/client/preference_setup/vore/08_nif.dm @@ -26,6 +26,9 @@ pref.nif_path = null //Kill! WARNING("Loaded a NIF but it was an invalid path, [pref.real_name]") + if (ispath(pref.nif_path, /obj/item/device/nif/protean) && pref.species != SPECIES_PROTEAN) //no free nifs + pref.nif_path = null + if(ispath(pref.nif_path) && isnull(pref.nif_durability)) //How'd you lose this? pref.nif_durability = initial(pref.nif_path.durability) //Well, have a new one, my bad. WARNING("Loaded a NIF but with no durability, [pref.real_name]") diff --git a/code/modules/client/preference_setup/vore/09_misc.dm b/code/modules/client/preference_setup/vore/09_misc.dm index 94fe6b01532..d83063d6657 100644 --- a/code/modules/client/preference_setup/vore/09_misc.dm +++ b/code/modules/client/preference_setup/vore/09_misc.dm @@ -59,6 +59,8 @@ return TOPIC_REFRESH else if(href_list["directory_ad"]) var/msg = sanitize(tgui_input_text(user,"Write your advertisement here!", "Flavor Text", html_decode(pref.directory_ad), multiline = TRUE, prevent_enter = TRUE), extra = 0) //VOREStation Edit: separating out OOC notes + if(!msg) + return pref.directory_ad = msg return TOPIC_REFRESH else if(href_list["toggle_sensor_setting"]) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 8d23ca6e5f1..4f114e3b96e 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -410,6 +410,7 @@ var/list/preferences_datums = list() var/name var/nickname //vorestation edit - This set appends nicknames to the save slot var/list/charlist = list() + var/default //VOREStation edit for(var/i=1, i<= config.character_slots, i++) S.cd = "/character[i]" S["real_name"] >> name @@ -420,10 +421,12 @@ var/list/preferences_datums = list() name = "â–º[i] - [name]" else name = "[i] - [name]" + if (i == default_slot) //VOREStation edit + default = "[name][nickname ? " ([nickname])" : ""]" charlist["[name][nickname ? " ([nickname])" : ""]"] = i selecting_slots = TRUE - var/choice = tgui_input_list(user, "Select a character to load:", "Load Slot", charlist) + var/choice = tgui_input_list(user, "Select a character to load:", "Load Slot", charlist, default) selecting_slots = FALSE if(!choice) return diff --git a/code/modules/client/preferences_vr.dm b/code/modules/client/preferences_vr.dm index 494c7cb075e..77656ebff37 100644 --- a/code/modules/client/preferences_vr.dm +++ b/code/modules/client/preferences_vr.dm @@ -121,6 +121,21 @@ feedback_add_details("admin_verb", "TSoundMentorhelps") +/client/verb/toggle_player_tips() + set name = "Toggle Receiving Player Tips" + set category = "Preferences" + set desc = "When toggled on, you receive tips periodically on roleplay and gameplay." + + var/pref_path = /datum/client_preference/player_tips + + toggle_preference(pref_path) + + to_chat(src, "You are [ (is_preference_enabled(pref_path)) ? "now" : "no longer"] periodically receiving advice on gameplay and roleplay.") + + SScharacter_setup.queue_preferences_save(prefs) + + feedback_add_details("admin_verb", "TReceivePlayerTips") + /client/verb/toggle_pain_frequency() set name = "Toggle Pain Frequency" set category = "Preferences" diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index de99f048030..d347881b409 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -214,7 +214,8 @@ throwforce = 2 slot_flags = SLOT_EARS sprite_sheets = list( - SPECIES_TESHARI = 'icons/inventory/ears/mob_teshari.dmi') + SPECIES_TESHARI = 'icons/inventory/ears/mob_teshari.dmi', + SPECIES_VOX = 'icons/inventory/hands/mob_vox.dmi') /obj/item/clothing/ears/attack_hand(mob/user as mob) if (!user) return @@ -1056,4 +1057,4 @@ for(var/mob/living/M in contents) M.forceMove(get_turf(src)) return ..() -//Vorestation edit end \ No newline at end of file +//Vorestation edit end diff --git a/code/modules/clothing/clothing_vr.dm b/code/modules/clothing/clothing_vr.dm index fe3f99c9474..b56e84921e0 100644 --- a/code/modules/clothing/clothing_vr.dm +++ b/code/modules/clothing/clothing_vr.dm @@ -100,6 +100,7 @@ /obj/item/clothing/ears sprite_sheets = list( SPECIES_TESHARI = 'icons/inventory/ears/mob_teshari.dmi', + SPECIES_VOX = 'icons/inventory/ears/mob_vox.dmi', SPECIES_WEREBEAST = 'icons/inventory/ears/mob_vr_werebeast.dmi') /obj/item/clothing/relaymove(var/mob/living/user,var/direction) diff --git a/code/modules/clothing/glasses/glasses_vr.dm b/code/modules/clothing/glasses/glasses_vr.dm index 880547db4b0..b573fbee349 100644 --- a/code/modules/clothing/glasses/glasses_vr.dm +++ b/code/modules/clothing/glasses/glasses_vr.dm @@ -122,6 +122,7 @@ item_state = "tajblind" prescription = 1 body_parts_covered = EYES + sprite_sheets = list(SPECIES_VOX = 'icons/inventory/eyes/mob_vox.dmi') /obj/item/clothing/glasses/hud/health/tajblind name = "lightweight veil" @@ -131,6 +132,7 @@ icon_state = "tajblind_med" item_state = "tajblind_med" body_parts_covered = EYES + sprite_sheets = list(SPECIES_VOX = 'icons/inventory/eyes/mob_vox.dmi') /obj/item/clothing/glasses/sunglasses/sechud/tajblind name = "sleek veil" @@ -141,6 +143,7 @@ item_state = "tajblind_sec" prescription = 1 body_parts_covered = EYES + sprite_sheets = list(SPECIES_VOX = 'icons/inventory/eyes/mob_vox.dmi') /obj/item/clothing/glasses/meson/prescription/tajblind name = "industrial veil" @@ -151,6 +154,7 @@ item_state = "tajblind_meson" off_state = "tajblind" body_parts_covered = EYES + sprite_sheets = list(SPECIES_VOX = 'icons/inventory/eyes/mob_vox.dmi') /obj/item/clothing/glasses/material/prescription/tajblind name = "mining veil" @@ -161,6 +165,7 @@ item_state = "tajblind_meson" off_state = "tajblind" body_parts_covered = EYES + sprite_sheets = list(SPECIES_VOX = 'icons/inventory/eyes/mob_vox.dmi') /obj/item/clothing/glasses sprite_sheets = list( diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm index 8d7ec44f549..709c6ea1560 100644 --- a/code/modules/clothing/gloves/miscellaneous.dm +++ b/code/modules/clothing/gloves/miscellaneous.dm @@ -172,5 +172,3 @@ name = "water wings" desc = "Swim aids designed to help a wearer float in water and learn to swim." icon_state = "waterwings" - - diff --git a/code/modules/clothing/head/hood_vr.dm b/code/modules/clothing/head/hood_vr.dm index cc911db7c85..fe11d5a900b 100644 --- a/code/modules/clothing/head/hood_vr.dm +++ b/code/modules/clothing/head/hood_vr.dm @@ -32,9 +32,28 @@ /obj/item/clothing/head/hood/winter/talon name = "Talon winter hood" desc = "A cozy winter hood attached to a heavy winter jacket." - icon_override = 'icons/inventory/head/mob_vr.dmi' + icon = 'icons/inventory/head/item_vr.dmi' + default_worn_icon = 'icons/inventory/head/mob_vr.dmi' icon_state = "winterhood_talon" +// Centcom Winter Hood +/obj/item/clothing/head/hood/winter/centcom + name = "centcom winter hood" + desc = "A cozy winter hood attached to a heavy winter jacket." + icon = 'icons/inventory/head/item_vr.dmi' + default_worn_icon = 'icons/inventory/head/mob_vr.dmi' + icon_state = "winterhood_centcom" + armor = list(melee = 40, bullet = 45, laser = 45, energy = 35, bomb = 40, bio = 25, rad = 25, fire = 35, acid = 50) + +// SAR Winter Hood +/obj/item/clothing/head/hood/winter/medical/sar + name = "search and rescue winter hood" + desc = "A cozy winter hood attached to a heavy winter jacket." + icon = 'icons/inventory/head/item_vr.dmi' + default_worn_icon = 'icons/inventory/head/mob_vr.dmi' + icon_state = "winterhood_sar" + armor = list(melee = 15, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 5) + //Food costumes // Hotdog suit hood /obj/item/clothing/head/hood_vr/hotdog_hood @@ -52,4 +71,25 @@ icon = 'icons/inventory/head/mob_vr.dmi' icon_override = 'icons/inventory/head/mob_vr.dmi' icon_state = "turnip_hood" - flags_inv = HIDEEARS|BLOCKHAIR \ No newline at end of file + flags_inv = HIDEEARS|BLOCKHAIR + +/obj/item/clothing/head/hood/winter + sprite_sheets = list( SPECIES_TESHARI = 'icons/inventory/head/mob_vr_teshari.dmi', + SPECIES_VOX = 'icons/inventory/head/mob_vox.dmi') + +//Better hoodies hood +/obj/item/clothing/head/hood/toggleable + name = "super special hood" + desc = "This hood is so special that you weren't even supposed to lay eyes on it! Tell a developer!" + var/open = FALSE + +/obj/item/clothing/head/hood/toggleable/colorable + name = "hoodie hood" + desc = "It's the hood part of a hoodie. What kind of hoodie would it be without one? A poser, obviously." + icon = 'icons/inventory/head/item_vr.dmi' + icon_override = 'icons/inventory/head/mob_vr.dmi' + icon_state = "choodie" + +/obj/item/clothing/head/hood/toggleable/colorable/update_icon() + . = ..() + icon_state = "[initial(icon_state)][open ? "_open" : ""]" \ No newline at end of file diff --git a/code/modules/clothing/head/misc.dm b/code/modules/clothing/head/misc.dm index 3883d9d0e38..f0851e780a3 100644 --- a/code/modules/clothing/head/misc.dm +++ b/code/modules/clothing/head/misc.dm @@ -14,7 +14,12 @@ name = "halo" desc = "a small metal ring, floating above it's wearer." icon_state = "halo" - + +/obj/item/clothing/head/headband/maid/modern + name = "modern maid headband" + desc = "Just like from my Japanese cartoons!" + icon_state = "maid_headband" + /obj/item/clothing/head/pin icon_state = "pin" addblends = "pin_a" diff --git a/code/modules/clothing/head/misc_vr.dm b/code/modules/clothing/head/misc_vr.dm index 1547f16b5b6..0137b1be122 100644 --- a/code/modules/clothing/head/misc_vr.dm +++ b/code/modules/clothing/head/misc_vr.dm @@ -92,8 +92,34 @@ name = "pizza delivery visor" desc = "A fancy visor showing alignment to pizza delivery service. Extremely risky career choice." icon_state = "pizzadelivery" + +/obj/item/clothing/head/wedding + name = "wedding veil" + desc = "A lace veil worn over the face, typically by a bride during their wedding." icon = 'icons/inventory/head/item_vr.dmi' icon_override = 'icons/inventory/head/mob_vr.dmi' + icon_state = "weddingveil" + +/obj/item/clothing/head/halo/alt + name = "metal halo" + desc = "A halo made of a light metal. This one doesn't float, but it's still a circle on your head!" + icon = 'icons/inventory/head/item_vr.dmi' + icon_override = 'icons/inventory/head/mob_vr.dmi' + icon_state = "halo_alt" + +/obj/item/clothing/head/buckethat + name = "bucket hat" + desc = "Turns out these are actually called 'gatsby caps' but telling people you wear a bucket is slightly more interesting, so that's what it's called." + icon = 'icons/inventory/head/item_vr.dmi' + icon_override = 'icons/inventory/head/mob_vr.dmi' + icon_state = "buckethat" + +/obj/item/clothing/head/nonla + name = "non la" + desc = "A conical hat typically woven from leaves, good for keeping the sun AND rain off your head, in case it happens to be sunny while raining." + icon = 'icons/inventory/head/item_vr.dmi' + icon_override = 'icons/inventory/head/mob_vr.dmi' + icon_state = "nonla" //////////TALON HATS////////// diff --git a/code/modules/clothing/masks/miscellaneous_vr.dm b/code/modules/clothing/masks/miscellaneous_vr.dm index 7792ecc8e3c..f728dc20fed 100644 --- a/code/modules/clothing/masks/miscellaneous_vr.dm +++ b/code/modules/clothing/masks/miscellaneous_vr.dm @@ -1,4 +1,11 @@ /obj/item/clothing/mask/emotions sprite_sheets = list( SPECIES_TESHARI = 'icons/inventory/face/mob_vr_teshari.dmi' - ) \ No newline at end of file + ) + +/obj/item/clothing/mask/lacemask + name = "lace mask" + desc = "A sheer lace mask that rests above the nose and trails down below the chin." + icon = 'icons/inventory/face/item_vr.dmi' + icon_state = "lace_mask" + icon_override = 'icons/inventory/face/mob_vr.dmi' \ No newline at end of file diff --git a/code/modules/clothing/shoes/boots.dm b/code/modules/clothing/shoes/boots.dm index 886364a44f6..3b67295c31b 100644 --- a/code/modules/clothing/shoes/boots.dm +++ b/code/modules/clothing/shoes/boots.dm @@ -241,3 +241,13 @@ icon_state = "jackboots" armor = list(melee = 80, bullet = 60, laser = 50,energy = 25, bomb = 50, bio = 10, rad = 0) siemens_coefficient = 0.6 + +/obj/item/clothing/shoes/boots/singer + name = "blue performer's boots" + desc = "These boots were made for dancing." + icon_state = "bsing" + +/obj/item/clothing/shoes/boots/singer/yellow + name = "yellow performer's boots" + desc = "These boots were made for dancing." + icon_state = "ysing" diff --git a/code/modules/clothing/shoes/miscellaneous_vr.dm b/code/modules/clothing/shoes/miscellaneous_vr.dm index 0e7accaa346..f7cd8bd0975 100644 --- a/code/modules/clothing/shoes/miscellaneous_vr.dm +++ b/code/modules/clothing/shoes/miscellaneous_vr.dm @@ -39,14 +39,14 @@ playsound(src, 'sound/effects/stealthoff.ogg', 50, 1, 1) user.visible_message("[user] dashes forward into the air!") user.throw_at(target, jumpdistance, jumpspeed) - recharging_time = world.time + recharging_rate + recharging_time = world.time + recharging_rate /obj/item/clothing/shoes/magboots/adv name = "advanced magboots" desc = "Advanced magnetic boots for a trained user. They have a lower magnetic force, allowing the user to move more quickly." icon = 'icons/inventory/feet/item_vr.dmi' icon_override = 'icons/inventory/feet/mob_vr.dmi' - + icon_state = "advmag0" item_flags = PHORONGUARD item_state_slots = list(slot_r_hand_str = "magboots", slot_l_hand_str = "magboots") @@ -69,13 +69,13 @@ icon = 'icons/inventory/feet/item_vr.dmi' icon_override = 'icons/inventory/feet/item_vr.dmi' armor = list(melee = 80, bullet = 50, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0) - + /obj/item/clothing/shoes/knight/black name = "knight boots" desc = "A pair of olde knight boots." icon_state = "knight_boots2" item_state = "knight_boots2" - + // Costume Versions Here /obj/item/clothing/shoes/knight_costume name = "knight boots" @@ -84,9 +84,25 @@ item_state = "knight_boots1" icon = 'icons/inventory/feet/item_vr.dmi' icon_override = 'icons/inventory/feet/item_vr.dmi' - + /obj/item/clothing/shoes/knight_costume/black name = "knight boots" desc = "A pair of olde knight boots." icon_state = "knight_boots2" - item_state = "knight_boots2" \ No newline at end of file + item_state = "knight_boots2" + +//Antediluvian legwraps +/obj/item/clothing/shoes/antediluvian + name = "antediluvian legwraps" + desc = "A pair of wraps with gold inlay that cut off around the ankle." + icon = 'icons/inventory/feet/item_vr.dmi' + icon_override = 'icons/inventory/feet/mob_vr.dmi' + icon_state = "antediluvian" + item_state = "antediluvian" + +//Alternative flats +/obj/item/clothing/shoes/flats/white/color/alt + icon = 'icons/inventory/feet/item_vr.dmi' + icon_override = 'icons/inventory/feet/mob_vr.dmi' + icon_state = "flatsalt" + item_state = "flatsalt" \ No newline at end of file diff --git a/code/modules/clothing/suits/hooded.dm b/code/modules/clothing/suits/hooded.dm index d0606960e77..9c360ca207d 100644 --- a/code/modules/clothing/suits/hooded.dm +++ b/code/modules/clothing/suits/hooded.dm @@ -32,8 +32,8 @@ ..() /obj/item/clothing/suit/storage/hooded/proc/RemoveHood() - icon_state = toggleicon hood_up = FALSE + update_icon() hood.canremove = TRUE // This shouldn't matter anyways but just incase. if(ishuman(hood.loc)) var/mob/living/carbon/H = hood.loc @@ -55,16 +55,20 @@ to_chat(H, "You're already wearing something on your head!") return else + if(color != hood.color) + hood.color = color H.equip_to_slot_if_possible(hood,slot_head,0,0,1) hood_up = TRUE hood.canremove = FALSE - icon_state = "[toggleicon]_t" + update_icon() H.update_inv_wear_suit() - if(color != hood.color) - hood.color = color else RemoveHood() +/obj/item/clothing/suit/storage/hooded/update_icon() + . = ..() + icon_state = "[toggleicon][hood_up ? "_t" : ""]" + /obj/item/clothing/suit/storage/hooded/costume body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS flags_inv = HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER @@ -207,7 +211,7 @@ desc = "A heavy winter jacket. A white star of life is emblazoned on the back, with the words search and rescue written underneath." icon_state = "coatsar" armor = list(melee = 15, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 5) - hoodtype = /obj/item/clothing/head/hood/winter/medical + hoodtype = /obj/item/clothing/head/hood/winter/medical/sar //VOREStation edit: sar winter hood allowed = list (/obj/item/weapon/gun, /obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight, /obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes, /obj/item/weapon/storage/box/matches, /obj/item/weapon/reagent_containers/food/drinks/flask, /obj/item/device/suit_cooling_unit, /obj/item/device/analyzer, /obj/item/stack/medical, /obj/item/weapon/dnainjector, /obj/item/weapon/reagent_containers/dropper, /obj/item/weapon/reagent_containers/syringe, /obj/item/weapon/reagent_containers/hypospray, diff --git a/code/modules/clothing/suits/hooded_vr.dm b/code/modules/clothing/suits/hooded_vr.dm index d6f1465f455..f8a0cc46afe 100644 --- a/code/modules/clothing/suits/hooded_vr.dm +++ b/code/modules/clothing/suits/hooded_vr.dm @@ -74,7 +74,7 @@ name = "Talon winter coat" desc = "A cozy winter coat, covered in thick fur and baring the colors of ITV Talon." icon = 'icons/inventory/suit/item_vr.dmi' - icon_override = 'icons/inventory/suit/mob_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' icon_state = "taloncoat" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) hoodtype = /obj/item/clothing/head/hood/winter/talon @@ -145,3 +145,37 @@ name = "yellow-trimmed hoodie" desc = "A warm jacket, now featuring a hood and an eye-catching yellow trim!" icon_state = "hoodie_yellowtrim" + +// CC Winter Coat +/obj/item/clothing/suit/storage/hooded/wintercoat/centcom + name = "centcom winter coat" + desc = "A cozy winter coat, covered in green fur and the colors of CentCom. Armored for extra protection." + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "coatcentcom" + armor = list(melee = 40, bullet = 45, laser = 45, energy = 35, bomb = 40, bio = 25, rad = 25, fire = 35, acid = 50) //there is no cc armor here to base it off so, here's the values from the original cc coat + hoodtype = /obj/item/clothing/head/hood/winter/centcom + +/obj/item/clothing/suit/storage/hooded/wintercoat + sprite_sheets = list( SPECIES_TESHARI = 'icons/inventory/suit/mob_vr_teshari.dmi', + SPECIES_VOX = 'icons/inventory/suit/mob_vox.dmi') + +//Hoodies worth their weight in gold (as in you can unbutton them and toggle the hood independently) +/obj/item/clothing/suit/storage/hooded/toggle/colorable + name = "hoodie" + desc = "A rather plain hoodie. If you can't find it in your closet, chances are your significant other is borrowing it." + icon = 'icons/inventory/suit/item_vr.dmi' + icon_override = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "choodie" + hoodtype = /obj/item/clothing/head/hood/toggleable/colorable + open = FALSE + +/obj/item/clothing/suit/storage/hooded/toggle/colorable/sleeveless + name = "sleeveless hoodie" + desc = "Either your arms were too hot or the sleeves vaporized when you gave someone a 'gunshow' with your muscles. Either way, the sleeves are missing." + icon_state = "choodie_sleeveless" + +/obj/item/clothing/suit/storage/hooded/toggle/colorable/cropped + name = "cropped hoodie" + desc = "It's not that this is a size too small, you just like showing off your tum. I guess." + icon_state = "choodie_crop" \ No newline at end of file diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index 0c637046943..b2df62ef7c2 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -277,6 +277,12 @@ flags_inv = HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER item_state_slots = list(slot_r_hand_str = "red_labcoat", slot_l_hand_str = "red_labcoat") +/obj/item/clothing/suit/shrine_maiden + name = "shrine maiden costume" + desc = "Makes you want to exterminate some troublesome youkai." + icon_state = "shrine_maiden" + body_parts_covered = LOWER_TORSO|UPPER_TORSO|LEGS|ARMS + /* * Misc */ @@ -1043,4 +1049,4 @@ icon_state = "marine" body_parts_covered = FEET|LOWER_TORSO|UPPER_TORSO|LEGS flags_inv = HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - item_state_slots = list(slot_r_hand_str = "green_labcoat", slot_l_hand_str = "green_labcoat") \ No newline at end of file + item_state_slots = list(slot_r_hand_str = "green_labcoat", slot_l_hand_str = "green_labcoat") diff --git a/code/modules/clothing/suits/storage.dm b/code/modules/clothing/suits/storage.dm index b962e88e67a..7d201bc7d65 100644 --- a/code/modules/clothing/suits/storage.dm +++ b/code/modules/clothing/suits/storage.dm @@ -68,19 +68,27 @@ if(open == 1) //Will check whether icon state is currently set to the "open" or "closed" state and switch it around with a message to the user open = 0 - icon_state = initial(icon_state) + update_icon() flags_inv = HIDETIE|HIDEHOLSTER to_chat(usr, "You button up the coat.") else if(open == 0) open = 1 - icon_state = "[icon_state]_open" + update_icon() flags_inv = HIDEHOLSTER to_chat(usr, "You unbutton the coat.") else //in case some goofy admin switches icon states around without switching the icon_open or icon_closed to_chat(usr, "You attempt to button-up the velcro on your [src], before promptly realising how silly you are.") return - update_clothing_icon() //so our overlays update + if(istype(hood,/obj/item/clothing/head/hood/toggleable)) //checks if a hood (which you should use) is attached + var/obj/item/clothing/head/hood/toggleable/T = hood + T.open = open //copy the jacket's open state to the hood + T.update_icon(usr) //usr as an arg to fix a weird runtime + T.update_clothing_icon() + update_clothing_icon() //so our overlays update +/obj/item/clothing/suit/storage/hooded/toggle/update_icon() + . = ..() + icon_state = "[toggleicon][open ? "_open" : ""][hood_up ? "_t" : ""]" //New Vest 4 pocket storage and badge toggles, until suit accessories are a thing. /obj/item/clothing/suit/storage/vest/heavy/New() diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm index fe8c02477b6..f1385484783 100644 --- a/code/modules/clothing/under/accessories/accessory.dm +++ b/code/modules/clothing/under/accessories/accessory.dm @@ -171,6 +171,24 @@ name = "white bow tie" icon_state = "whitebowtie" +/obj/item/clothing/accessory/maid_neck + name = "maid neck cover" + desc = "A neckpiece for a maid costume, it smells faintly of disappointment." + icon_state = "maid_neck" + +/obj/item/clothing/accessory/maidcorset + name = "maid corset" + desc = "The final touch that holds it all together." + icon_state = "maidcorset" + +/obj/item/clothing/accessory/maid_arms + name = "maid arm covers" + desc = "Cylindrical looking tubes that go over your arms, weird." + slot_flags = SLOT_OCLOTHING | SLOT_GLOVES | SLOT_TIE + body_parts_covered = ARMS + description_info = "Wearable as gloves, or attachable to uniforms. May visually conflict with actual gloves when attached to uniforms. Caveat emptor." + icon_state = "maid_arms" + /obj/item/clothing/accessory/stethoscope name = "stethoscope" desc = "An outdated medical apparatus for listening to the sounds of the human body. It also makes you look like you know what you're doing." @@ -583,4 +601,4 @@ /obj/item/clothing/accessory/pride/vore name = "vore pride pin" - icon_state = "pride_vore" \ No newline at end of file + icon_state = "pride_vore" diff --git a/code/modules/clothing/under/accessories/accessory_vr.dm b/code/modules/clothing/under/accessories/accessory_vr.dm index 13b42366ded..f998677f768 100644 --- a/code/modules/clothing/under/accessories/accessory_vr.dm +++ b/code/modules/clothing/under/accessories/accessory_vr.dm @@ -416,4 +416,254 @@ icon_state = "casinoslave_owned" item_state = "casinoslave_owned" - overlay_state = "casinoslave_owned" \ No newline at end of file + overlay_state = "casinoslave_owned" + +//The gold trim from one of the qipaos, separated to an accessory to preserve the color +/obj/item/clothing/accessory/qipaogold + name = "gold trim" + desc = "Gold trim belonging to a qipao. Why would you remove this?" + icon = 'icons/inventory/accessory/item_vr.dmi' + icon_override = 'icons/inventory/accessory/mob_vr.dmi' + icon_state = "qipaogold" + item_state = "qipaogold" + overlay_state = "qipaogold" + +//Antediluvian accessory set +/obj/item/clothing/accessory/antediluvian + name = "antediluvian bracers" + desc = "A pair of metal bracers with gold inlay. They're thin and light." + icon = 'icons/inventory/accessory/item_vr.dmi' + icon_override = 'icons/inventory/accessory/mob_vr.dmi' + icon_state = "antediluvian" + item_state = "antediluvian" + overlay_state = "antediluvian" + body_parts_covered = ARMS + +/obj/item/clothing/accessory/antediluvian/loincloth + name = "antediluvian loincloth" + desc = "A lengthy loincloth that drapes over the loins, obviously. It's quite long." + icon_state = "antediluvian_loin" + item_state = "antediluvian_loin" + overlay_state = "antediluvian_loin" + body_parts_covered = LOWER_TORSO + +//The cloaks below belong to this _vr file but their sprites are contained in non-_vr icon files due to +//the way the poncho/cloak equipped() proc works. Sorry for the inconvenience +/obj/item/clothing/accessory/poncho/roles/cloak/antediluvian + name = "antediluvian cloak" + desc = "A regal looking cloak of white with specks of gold woven into the fabric." + icon_state = "antediluvian_cloak" + item_state = "antediluvian_cloak" + +//Other clothes that I'm too lazy to port to Polaris +/obj/item/clothing/accessory/poncho/roles/cloak/chapel + name = "bishop's cloak" + desc = "An elaborate white and gold cloak." + icon_state = "bishopcloak" + item_state = "bishopcloak" + +/obj/item/clothing/accessory/poncho/roles/cloak/chapel/alt + name = "antibishop's cloak" + desc = "An elaborate black and gold cloak. It looks just a little bit evil." + icon_state = "blackbishopcloak" + item_state = "blackbishopcloak" + +/obj/item/clothing/accessory/poncho/roles/cloak/half + name = "rough half cloak" + desc = "The latest fashion innovations by the Nanotrasen Uniform & Fashion Department have provided the brilliant invention of slicing a regular cloak in half! All the ponce, half the cost!" + icon_state = "roughcloak" + item_state = "roughcloak" + action_button_name = "Adjust Cloak" + +/obj/item/clothing/accessory/poncho/roles/cloak/half/update_clothing_icon() + . = ..() + if(ismob(src.loc)) + var/mob/M = src.loc + M.update_inv_wear_suit() + +/obj/item/clothing/accessory/poncho/roles/cloak/half/attack_self(mob/user as mob) + if(src.icon_state == initial(icon_state)) + src.icon_state = "[icon_state]_open" + src.item_state = "[item_state]_open" + flags_inv = HIDETIE|HIDEHOLSTER + to_chat(user, "You flip the cloak over your shoulder.") + else + src.icon_state = initial(icon_state) + src.item_state = initial(item_state) + flags_inv = HIDEHOLSTER + to_chat(user, "You pull the cloak over your shoulder.") + update_clothing_icon() + +/obj/item/clothing/accessory/poncho/roles/cloak/shoulder + name = "shoulder cloak" + desc = "A small cape that primarily covers the left shoulder. Might help you stand out more, not necessarily for the right reasons." + icon_state = "cape_left" + item_state = "cape_left" + +/obj/item/clothing/accessory/poncho/roles/cloak/shoulder/right + desc = "A small cape that primarily covers the right shoulder. It might look a tad cooler if it was longer." + icon_state = "cape_right" + item_state = "cape_right" + +//Mantles +/obj/item/clothing/accessory/poncho/roles/cloak/mantle + name = "shoulder mantle" + desc = "Not a cloak and not really a cape either, but a silky fabric that rests on the neck and shoulders alone." + icon_state = "mantle" + item_state = "mantle" + +/obj/item/clothing/accessory/poncho/roles/cloak/mantle/cargo + name = "cargo mantle" + desc = "A shoulder mantle bearing the colors of the Supply department, with a gold lapel emblazoned upon the front." + icon_state = "qmmantle" + item_state = "qmmantle" + +/obj/item/clothing/accessory/poncho/roles/cloak/mantle/security + name = "security mantle" + desc = "A shoulder mantle bearing the colors of the Security department, featuring rugged molding around the collar." + icon_state = "hosmantle" + item_state = "hosmantle" + +/obj/item/clothing/accessory/poncho/roles/cloak/mantle/engineering + name = "engineering mantle" + desc = "A shoulder mantle bearing the colors of the Engineering department, accenting the pristine white fabric." + icon_state = "cemantle" + item_state = "cemantle" + +/obj/item/clothing/accessory/poncho/roles/cloak/mantle/research + name = "research mantle" + desc = "A shoulder mantle bearing the colors of the Research department, the material slick and hydrophobic." + icon_state = "rdmantle" + item_state = "rdmantle" + +/obj/item/clothing/accessory/poncho/roles/cloak/mantle/medical + name = "medical mantle" + desc = "A shoulder mantle bearing the general colors of the Medical department, dyed a sterile nitrile cyan." + icon_state = "cmomantle" + item_state = "cmomantle" + +/obj/item/clothing/accessory/poncho/roles/cloak/mantle/hop + name = "head of personnel mantle" + desc = "A shoulder mantle bearing the colors of the Head of Personnel's uniform, featuring the typical royal blue contrasted by authoritative red." + icon_state = "hopmantle" + item_state = "hopmantle" + +/obj/item/clothing/accessory/poncho/roles/cloak/mantle/cap + name = "site manager mantle" + desc = "A shoulder mantle bearing the colors usually found on a Site Manager, a commanding blue with regal gold inlay." + icon_state = "capmantle" + item_state = "capmantle" + +//Boat cloaks +/obj/item/clothing/accessory/poncho/roles/cloak/boat + name = "boat cloak" + desc = "A cloak that might've been worn on boats once or twice. It's just a flappy cape otherwise." + icon_state = "boatcloak" + item_state = "boatcloak" + +/obj/item/clothing/accessory/poncho/roles/cloak/boat/cap + name = "site manager boat cloak" + icon_state = "capboatcloak" + item_state = "capboatcloak" + +/obj/item/clothing/accessory/poncho/roles/cloak/boat/hop + name = "head of personnel boat cloak" + icon_state = "hopboatcloak" + item_state = "hopboatcloak" + +/obj/item/clothing/accessory/poncho/roles/cloak/boat/security + name = "security boat cloak" + icon_state = "secboatcloak" + item_state = "secboatcloak" + +/obj/item/clothing/accessory/poncho/roles/cloak/boat/engineering + name = "engineering boat cloak" + icon_state = "engboatcloak" + item_state = "engboatcloak" + +/obj/item/clothing/accessory/poncho/roles/cloak/boat/atmos + name = "atmospherics boat cloak" + icon_state = "atmosboatcloak" + item_state = "atmosboatcloak" + +/obj/item/clothing/accessory/poncho/roles/cloak/boat/medical + name = "medical boat cloak" + icon_state = "medboatcloak" + item_state = "medboatcloak" + +/obj/item/clothing/accessory/poncho/roles/cloak/boat/service + name = "service boat cloak" + icon_state = "botboatcloak" + item_state = "botboatcloak" + +/obj/item/clothing/accessory/poncho/roles/cloak/boat/cargo + name = "cargo boat cloak" + icon_state = "supboatcloak" + item_state = "supboatcloak" + +/obj/item/clothing/accessory/poncho/roles/cloak/boat/mining + name = "mining boat cloak" + icon_state = "minboatcloak" + item_state = "minboatcloak" + +/obj/item/clothing/accessory/poncho/roles/cloak/boat/science + name = "research boat cloak" + icon_state = "sciboatcloak" + item_state = "sciboatcloak" + +//Shrouds +/obj/item/clothing/accessory/poncho/roles/cloak/shroud + name = "shroud cape" + desc = "A sharp looking cape that covers more of one side than the other. Just a bit edgy." + icon_state = "shroud" + item_state = "shroud" + +/obj/item/clothing/accessory/poncho/roles/cloak/shroud/cap + name = "site manager shroud" + icon_state = "capshroud" + item_state = "capshroud" + +/obj/item/clothing/accessory/poncho/roles/cloak/shroud/hop + name = "head of personnel shroud" + icon_state = "hopshroud" + item_state = "hopshroud" + +/obj/item/clothing/accessory/poncho/roles/cloak/shroud/security + name = "security shroud" + icon_state = "secshroud" + item_state = "secshroud" + +/obj/item/clothing/accessory/poncho/roles/cloak/shroud/engineering + name = "engineering shroud" + icon_state = "engshroud" + item_state = "engshroud" + +/obj/item/clothing/accessory/poncho/roles/cloak/shroud/atmos + name = "atmospherics shroud" + icon_state = "atmosshroud" + item_state = "atmosshroud" + +/obj/item/clothing/accessory/poncho/roles/cloak/shroud/medical + name = "medical shroud" + icon_state = "medshroud" + item_state = "medshroud" + +/obj/item/clothing/accessory/poncho/roles/cloak/shroud/service + name = "service shroud" + icon_state = "botshroud" + item_state = "botshroud" + +/obj/item/clothing/accessory/poncho/roles/cloak/shroud/cargo + name = "cargo shroud" + icon_state = "supshroud" + item_state = "supshroud" + +/obj/item/clothing/accessory/poncho/roles/cloak/shroud/mining + name = "mining shroud" + icon_state = "minshroud" + item_state = "minshroud" + +/obj/item/clothing/accessory/poncho/roles/cloak/shroud/science + name = "research shroud" + icon_state = "scishroud" + item_state = "scishroud" \ No newline at end of file diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm index 144a7e39f4a..083588739fb 100644 --- a/code/modules/clothing/under/miscellaneous.dm +++ b/code/modules/clothing/under/miscellaneous.dm @@ -360,6 +360,11 @@ desc = "You must be a bit risque teasing all of them in a maid uniform!" icon_state = "sexymaid" +/obj/item/clothing/under/dress/maid/under_maid + name = "modern maid costume" + desc = "You're going to use this for housekeeping, right?" + icon_state = "under_maid" + /obj/item/clothing/under/dress/dress_fire name = "flame dress" desc = "A small black dress with blue flames print on it." @@ -587,6 +592,16 @@ desc = "A waistline this high is just made for ripping bodices, swashing buckles, or - just occasionally - sucking blood." icon_state = "gayvampire" +/obj/item/clothing/under/dress/singer + name = "blue singer dress" + desc = "Just looking at this makes you want to sing." + icon_state = "bsing" + +/obj/item/clothing/under/dress/singer/yellow + name = "yellow singer dress" + desc = "Just looking at this makes you want to sing." + icon_state = "ysing" + /* * Wedding Stuff */ diff --git a/code/modules/clothing/under/miscellaneous_vr.dm b/code/modules/clothing/under/miscellaneous_vr.dm index 712395d81ee..70acebabcb9 100644 --- a/code/modules/clothing/under/miscellaneous_vr.dm +++ b/code/modules/clothing/under/miscellaneous_vr.dm @@ -205,6 +205,10 @@ icon_state = "qipao_white" item_state = "qipao_white" +/obj/item/clothing/under/qipao/white/colorable + name = "qipao" + starting_accessories = list(/obj/item/clothing/accessory/qipaogold) + /obj/item/clothing/under/qipao/red name = "red qipao" icon_state = "qipao_red" @@ -488,3 +492,98 @@ item_state = "qipao2" worn_state = "qipao2" body_parts_covered = UPPER_TORSO|LOWER_TORSO + +/obj/item/clothing/under/dress/antediluvian + name = "antediluvian corset" + desc = "A regal black and gold tight corset with silky sleeves. A sheer bodystocking accompanies it." + icon = 'icons/inventory/uniform/item_vr.dmi' + default_worn_icon = 'icons/inventory/uniform/mob_vr.dmi' + icon_state = "antediluvian" + item_state = "antediluvian" + worn_state = "antediluvian" + body_parts_covered = UPPER_TORSO|LOWER_TORSO + +/obj/item/clothing/under/dress/antediluvian/sheerless + desc = "A regal black and gold tight corset with silky sleeves. This one is just the corset and sleeves, sans lace stockings and gloves." + worn_state = "antediluvian_c" + +//Colorable skirts +/obj/item/clothing/under/skirt/colorable + name = "skirt" + desc = "A rather plain looking skirt." + icon = 'icons/inventory/uniform/item_vr.dmi' + default_worn_icon = 'icons/inventory/uniform/mob_vr.dmi' + icon_state = "skirt_casual" + item_state = "skirt_casual" + worn_state = "skirt_casual" + +/obj/item/clothing/under/skirt/colorable/puffy + icon_state = "skirt_puffy" + item_state = "skirt_puffy" + worn_state = "skirt_puffy" + +/obj/item/clothing/under/skirt/colorable/skater + desc = "A skirt with loose frills." + icon_state = "skirt_skater" + item_state = "skirt_skater" + worn_state = "skirt_skater" + +/obj/item/clothing/under/skirt/colorable/pleated + desc = "A short skirt featuring pleat trailing up from the hem." + icon_state = "skirt_pleated" + item_state = "skirt_pleated" + worn_state = "skirt_pleated" + +/obj/item/clothing/under/skirt/colorable/pencil + name = "pencil skirt" + desc = "A short skirt that's almost as thin as a pencil. Almost." + icon_state = "skirt_pencil" + item_state = "skirt_pencil" + worn_state = "skirt_pencil" + +/obj/item/clothing/under/skirt/colorable/plaid + name = "plaid skirt" + desc = "A skirt featuring a plaid pattern." + icon_state = "skirt_plaid" + item_state = "skirt_plaid" + worn_state = "skirt_plaid" + +/obj/item/clothing/under/skirt/colorable/tube + desc = "A long thin skirt that trails beyond the knees." + icon_state = "skirt_tube" + item_state = "skirt_tube" + worn_state = "skirt_tube" + +/obj/item/clothing/under/skirt/colorable/long + name = "long skirt" + icon_state = "skirt_long" + item_state = "skirt_long" + worn_state = "skirt_long" + +/obj/item/clothing/under/skirt/colorable/high + name = "high skirt" + desc = "A skirt that rests at the waist instead of the hips." + icon_state = "skirt_high" + item_state = "skirt_high" + worn_state = "skirt_high" + +/obj/item/clothing/under/skirt/colorable/swept + name = "swept skirt" + desc = "A skirt with an angled hem; shorter on one side, longer on the other, like a sweep." + icon_state = "skirt_swept" + item_state = "skirt_swept" + worn_state = "skirt_swept" + +/obj/item/clothing/under/skirt/colorable/jumper + name = "jumper skirt" + desc = "A skirt that's held up by suspenders." + icon_state = "skirt_jumper" + item_state = "skirt_jumper" + worn_state = "skirt_jumper" + +/obj/item/clothing/under/skirt/colorable/jumperdress + name = "jumper dress" + desc = "A dress held up by suspenders. Not quite a skirt anymore." + icon_state = "skirt_jumperdress" + item_state = "skirt_jumperdress" + worn_state = "skirt_jumperdress" \ No newline at end of file diff --git a/code/modules/economy/vending_machines_vr.dm b/code/modules/economy/vending_machines_vr.dm index cfc09e2e3e5..1161a8604ab 100644 --- a/code/modules/economy/vending_machines_vr.dm +++ b/code/modules/economy/vending_machines_vr.dm @@ -1434,7 +1434,17 @@ /obj/item/clothing/shoes/knight_costume = 3, /obj/item/clothing/shoes/knight_costume/black = 3, /obj/item/clothing/suit/storage/hooded/foodcostume/hotdog = 3, - /obj/item/clothing/suit/storage/hooded/foodcostume/turnip = 3) + /obj/item/clothing/suit/storage/hooded/foodcostume/turnip = 3, + /obj/item/clothing/under/dress/singer = 3, + /obj/item/clothing/shoes/boots/singer = 3, + /obj/item/clothing/under/dress/singer/yellow = 3, + /obj/item/clothing/shoes/boots/singer/yellow = 3, + /obj/item/clothing/under/dress/maid/under_maid = 3, + /obj/item/clothing/accessory/maid_neck = 3, + /obj/item/clothing/accessory/maid_arms = 3, + /obj/item/clothing/head/headband/maid/modern = 3, + /obj/item/clothing/accessory/maidcorset = 3, + /obj/item/clothing/suit/shrine_maiden = 3) prices = list(/obj/item/clothing/suit/storage/hooded/costume/carp = 200, /obj/item/clothing/suit/storage/hooded/costume/carp = 200, /obj/item/clothing/suit/chickensuit = 200, @@ -1501,7 +1511,17 @@ /obj/item/clothing/shoes/knight_costume = 200, /obj/item/clothing/shoes/knight_costume/black = 200, /obj/item/clothing/suit/storage/hooded/foodcostume/hotdog = 200, - /obj/item/clothing/suit/storage/hooded/foodcostume/turnip = 200) + /obj/item/clothing/suit/storage/hooded/foodcostume/turnip = 200, + /obj/item/clothing/under/dress/singer = 200, + /obj/item/clothing/shoes/boots/singer = 50, + /obj/item/clothing/under/dress/singer/yellow = 200, + /obj/item/clothing/shoes/boots/singer/yellow = 50, + /obj/item/clothing/under/dress/maid/under_maid = 200, + /obj/item/clothing/accessory/maid_neck = 25, + /obj/item/clothing/accessory/maid_arms = 25, + /obj/item/clothing/head/headband/maid/modern = 25, + /obj/item/clothing/accessory/maidcorset = 25, + /obj/item/clothing/suit/shrine_maiden = 200) premium = list(/obj/item/clothing/suit/imperium_monk = 3, /obj/item/clothing/suit/barding/agatha = 2, /obj/item/clothing/suit/barding/alt_agatha = 2, @@ -1660,7 +1680,17 @@ /obj/item/clothing/gloves/combat/knight_costume = 3, /obj/item/clothing/gloves/combat/knight_costume/brown = 3, /obj/item/clothing/shoes/knight_costume = 3, - /obj/item/clothing/shoes/knight_costume/black = 3) + /obj/item/clothing/shoes/knight_costume/black = 3, + /obj/item/clothing/under/dress/singer = 3, + /obj/item/clothing/shoes/boots/singer = 3, + /obj/item/clothing/under/dress/singer/yellow = 3, + /obj/item/clothing/shoes/boots/singer/yellow = 3, + /obj/item/clothing/under/dress/maid/under_maid = 3, + /obj/item/clothing/accessory/maid_neck = 3, + /obj/item/clothing/accessory/maid_arms = 3, + /obj/item/clothing/head/headband/maid/modern = 3, + /obj/item/clothing/accessory/maidcorset = 3, + /obj/item/clothing/suit/shrine_maiden = 3) // Event Loadout Vending Machines Start @@ -2443,7 +2473,17 @@ /obj/item/clothing/suit/barding/mason = 2, /obj/item/clothing/suit/drake_cloak = 2, /obj/item/clothing/head/syndicatefake = 1, - /obj/item/clothing/suit/syndicatefake = 1 + /obj/item/clothing/suit/syndicatefake = 1, + /obj/item/clothing/under/dress/singer = 3, + /obj/item/clothing/shoes/boots/singer = 3, + /obj/item/clothing/under/dress/singer/yellow = 3, + /obj/item/clothing/shoes/boots/singer/yellow = 3, + /obj/item/clothing/under/dress/maid/under_maid = 3, + /obj/item/clothing/accessory/maid_neck = 3, + /obj/item/clothing/accessory/maid_arms = 3, + /obj/item/clothing/head/headband/maid/modern = 3, + /obj/item/clothing/accessory/maidcorset = 3, + /obj/item/clothing/suit/shrine_maiden = 3 ) // Event Loadout Vending Machines End diff --git a/code/modules/emotes/definitions/audible.dm b/code/modules/emotes/definitions/audible.dm index ac4c767721f..4a16b81edc1 100644 --- a/code/modules/emotes/definitions/audible.dm +++ b/code/modules/emotes/definitions/audible.dm @@ -190,6 +190,21 @@ emote_sound = 'sound/effects/warble.ogg' // Copyright CC BY 3.0 alienistcog (freesound.org) for the sound. emote_message_3p = "warbles." +/decl/emote/audible/croon + key = "croon" + emote_message_3p = "croons..." + emote_sound = list('sound/voice/croon1.ogg', 'sound/voice/croon2.ogg') + +/decl/emote/audible/lwarble + key = "lwarble" + emote_message_3p = "lets out a low, throaty warble!" + emote_sound = 'sound/voice/lwarble.ogg' + +/decl/emote/audible/croak_skrell + key = "scroak" + emote_message_3p = "croaks!" + emote_sound = 'sound/voice/croak_skrell.ogg' + /decl/emote/audible/vox_shriek key = "shriek" emote_message_3p = "SHRIEKS!" diff --git a/code/modules/emotes/definitions/audible_furry_vr.dm b/code/modules/emotes/definitions/audible_furry_vr.dm index 385759bc8da..a3ac8727f90 100644 --- a/code/modules/emotes/definitions/audible_furry_vr.dm +++ b/code/modules/emotes/definitions/audible_furry_vr.dm @@ -123,7 +123,7 @@ /decl/emote/audible/croak key = "croak" emote_message_3p = "rumbles their throat, puffs their cheeks and croaks." - emote_sound = 'sound/voice/Croak.ogg' + emote_sound = 'sound/voice/croak_frog.ogg' /decl/emote/audible/gao key = "gao" emote_message_3p = "lets out a gao." @@ -198,6 +198,10 @@ emote_sound = pick(smolsound) else emote_sound = pick(bigsound) + else if(istype(user, /mob/living/silicon/pai)) + var/mob/living/silicon/pai/me = user + if(me.chassis == "teppi") + emote_sound = pick(bigsound) else if(user.size_multiplier >= 1.5) emote_sound = pick(bigsound) else diff --git a/code/modules/emotes/definitions/audible_scream_vr.dm b/code/modules/emotes/definitions/audible_scream_vr.dm index f2c69ba3c31..c063a87a176 100644 --- a/code/modules/emotes/definitions/audible_scream_vr.dm +++ b/code/modules/emotes/definitions/audible_scream_vr.dm @@ -1,12 +1,13 @@ /decl/emote/audible/scream/get_emote_sound(var/atom/user) - var/mob/living/carbon/human/H = user - if(H.get_gender() == FEMALE) - return list( - "sound" = H.species.female_scream_sound, - "vol" = emote_volume - ) - else - return list( - "sound" = H.species.male_scream_sound, - "vol" = emote_volume - ) + if(ishuman(user)) + var/mob/living/carbon/human/H = user + if(H.get_gender() == FEMALE) + return list( + "sound" = H.species.female_scream_sound, + "vol" = emote_volume + ) + else + return list( + "sound" = H.species.male_scream_sound, + "vol" = emote_volume + ) \ No newline at end of file diff --git a/code/modules/emotes/definitions/audible_snap.dm b/code/modules/emotes/definitions/audible_snap.dm index d098839f5b8..24d78db239e 100644 --- a/code/modules/emotes/definitions/audible_snap.dm +++ b/code/modules/emotes/definitions/audible_snap.dm @@ -13,7 +13,14 @@ var/obj/item/organ/external/L = H.get_organ(limb) if(istype(L) && L.is_usable() && !L.splinted) return TRUE - return FALSE + else if(isanimal(user)) //VOREStation Addition Start + var/mob/living/simple_mob/S = user + if(S.has_hands) + return TRUE + else if(ispAI(user)) + return TRUE + else //VOREStation Addition End + return FALSE /decl/emote/audible/snap/do_emote(var/atom/user, var/extra_params) if(!can_snap(user)) diff --git a/code/modules/emotes/definitions/visible.dm b/code/modules/emotes/definitions/visible.dm index d37058626d2..78cfa4ec7d3 100644 --- a/code/modules/emotes/definitions/visible.dm +++ b/code/modules/emotes/definitions/visible.dm @@ -116,7 +116,7 @@ /decl/emote/visible/faint/do_extra(var/mob/user) . = ..() - if(istype(user) && !user.sleeping) + if(iscarbon(user) && !user.sleeping) user.Sleeping(10) /decl/emote/visible/frown diff --git a/code/modules/events/roaming_wildlife.dm b/code/modules/events/roaming_wildlife.dm index 840350031f2..55ef610664c 100644 --- a/code/modules/events/roaming_wildlife.dm +++ b/code/modules/events/roaming_wildlife.dm @@ -1,6 +1,10 @@ /datum/event/roaming_wildlife announceWhen = 10 + var/threat_level + var/spawn_count + var/location_amount + /datum/event/roaming_wildlife/start() var/list/possible_spawns = list() for(var/obj/effect/landmark/C in landmarks_list) @@ -13,10 +17,6 @@ if(!(possible_spawns.len)) return - var/threat_level - var/spawn_count - var/location_amount - var/points_to_spend switch(severity) @@ -60,12 +60,39 @@ step_away(L, WL) /datum/event/roaming_wildlife/announce() - var/message - switch(severity) - if(EVENT_LEVEL_MUNDANE) - message = "Minor movements of local wildlife have been detected within proximity of the facility." - if(EVENT_LEVEL_MODERATE) - message = "Notable amount of local wildlife has been detected entering area surrounding the facility. Take caution." - if(EVENT_LEVEL_MAJOR) - message = "A particularly large shift within wildlife movement has been detected. Take caution." + var/gamount_message + var/amount_message + var/threat_message + + switch(threat_level) + if(1) + threat_message = "completely harmless" + if(2) + threat_message = "docile but easily agitated" + if(3) + threat_message = "hostile" + if(4) + threat_message = "highly hostile and dangerous" + switch(spawn_count) + if(1) + amount_message = "singular straggler[location_amount == 1 ? "" : "s"]" + if(2 to 4) + amount_message = "small grouping[location_amount == 1 ? "" : "s"]" + if(5 to 8) + amount_message = "moderate pack[location_amount == 1 ? "" : "s"]" + else + amount_message = "large swarm[location_amount == 1 ? "" : "s"]" + switch(location_amount) + if(1) + gamount_message = "a single" + if(2 to 4) + gamount_message = "a few" + if(5 to 9) + gamount_message = "several" + else + gamount_message = "numerous" + + var/message = "Movements of [gamount_message] group[location_amount == 1 ? "" : "s"] of wildlife have been detected in regions surrounding [using_map.full_name]. The wildlife group[location_amount == 1 ? "" : "s"] [location_amount == 1 ? "is" : "are"] [threat_message] and \ + [location_amount == 1 ? "is" : "are"] comprised of [amount_message].[threat_level > 2 ? " Take caution." : ""]" + command_announcement.Announce(message, "Wildlife Monitoring") diff --git a/code/modules/food/food/snacks.dm b/code/modules/food/food/snacks.dm index c6468ca9492..3201a3778cd 100644 --- a/code/modules/food/food/snacks.dm +++ b/code/modules/food/food/snacks.dm @@ -91,6 +91,8 @@ if(istype(M, /mob/living/carbon)) //TODO: replace with standard_feed_mob() call. + var/swallow_whole = FALSE + var/obj/belly/belly_target // These are surprise tools that will help us later var/fullness = M.nutrition + (M.reagents.get_reagent_amount("nutriment") * 25) if(M == user) //If you're eating it yourself @@ -151,6 +153,12 @@ unconcious = TRUE blocked = H.check_mouth_coverage() + if(isliving(user)) // We definitely are, but never hurts to check + var/mob/living/L = user + swallow_whole = L.stuffing_feeder + if(swallow_whole) + belly_target = M.vore_selected + if(unconcious) to_chat(user, "You can't feed [H] through \the [blocked] while they are unconcious!") return @@ -159,21 +167,44 @@ to_chat(user, "\The [blocked] is in the way!") return - user.visible_message("[user] attempts to feed [M] [src].") + if(swallow_whole) + if(!(M.feeding)) + to_chat(user, "You can't feed [H] a whole [src] as they refuse to be fed whole things!") + return + if(!belly_target) + to_chat(user, "You can't feed [H] a whole [src] as they don't appear to have a belly to fit it!") + return + + if(swallow_whole) + user.visible_message("[user] attempts to make [M] consume [src] whole into their [belly_target].") + else + user.visible_message("[user] attempts to feed [M] [src].") + + var/feed_duration = 3 SECONDS + if(swallow_whole) + feed_duration = 5 SECONDS user.setClickCooldown(user.get_attack_speed(src)) - if(!do_mob(user, M)) return + if(!do_mob(user, M, feed_duration)) return - //Do we really care about this - add_attack_logs(user,M,"Fed with [src.name] containing [reagentlist(src)]", admin_notify = FALSE) + if(swallow_whole && !belly_target) return // Just in case we lost belly mid-feed - user.visible_message("[user] feeds [M] [src].") + if(swallow_whole) + add_attack_logs(user,M,"Whole-fed with [src.name] containing [reagentlist(src)] into [belly_target]", admin_notify = FALSE) + user.visible_message("[user] successfully forces [src] into [M]'s [belly_target].") + else + add_attack_logs(user,M,"Fed with [src.name] containing [reagentlist(src)]", admin_notify = FALSE) + user.visible_message("[user] feeds [M] [src].") else to_chat(user, "This creature does not seem to have a mouth!") return - if(reagents) //Handle ingestion of the reagent. + if(swallow_whole) + user.drop_item() + forceMove(belly_target) + return 1 + else if(reagents) //Handle ingestion of the reagent. playsound(M,'sound/items/eatfood.ogg', rand(10,50), 1) if(reagents.total_volume) if(reagents.total_volume > bitesize) @@ -1101,10 +1132,12 @@ to_chat(user, "The heating chemicals have already been spent.") return has_been_heated = 1 - user.visible_message("[user] crushes \the [src] package.", "You crush \the [src] package and feel a comfortable heat build up.") + user.visible_message("[user] crushes \the [src] package.", "You crush \the [src] package and feel a comfortable heat build up. Now just to wait for it to be ready.") spawn(200) - to_chat(user, "You think \the [src] is ready to eat about now.") - heat() + if(src) + if(src.loc == user) + to_chat(user, "You think \the [src] is ready to eat about now.") + heat() /obj/item/weapon/reagent_containers/food/snacks/brainburger name = "brainburger" @@ -4269,7 +4302,7 @@ icon_state = "bakedbeans" bitesize = 2 -/obj/item/weapon/reagent_containers/food/snacks/berrymuffin/berry/Initialize() +/obj/item/weapon/reagent_containers/food/snacks/beans/Initialize() . = ..() reagents.add_reagent("bean_protein", 6) diff --git a/code/modules/food/food/z_custom_food_vr.dm b/code/modules/food/food/z_custom_food_vr.dm index fdbca07fda3..8df9ab5dbad 100644 --- a/code/modules/food/food/z_custom_food_vr.dm +++ b/code/modules/food/food/z_custom_food_vr.dm @@ -55,7 +55,7 @@ var/global/ingredientLimit = 20 if(src.addTop) cut_overlay(topping) - if(!fullyCustom && !stackIngredients && our_overlays.len) + if(!fullyCustom && !stackIngredients && LAZYLEN(our_overlays)) cut_overlay(filling) //we can't directly modify the overlay, so we have to remove it and then add it again var/newcolor = S.filling_color != "#FFFFFF" ? S.filling_color : AverageColor(getFlatIcon(S, S.dir, 0), 1, 1) filling.color = BlendRGB(filling.color, newcolor, 1/ingredients.len) diff --git a/code/modules/lighting/lighting_fake_sun_vr.dm b/code/modules/lighting/lighting_fake_sun_vr.dm index 41fb677fb69..98f3674337b 100644 --- a/code/modules/lighting/lighting_fake_sun_vr.dm +++ b/code/modules/lighting/lighting_fake_sun_vr.dm @@ -102,7 +102,7 @@ for(var/turf/T as anything in all_turfs) if(T.is_outdoors()) turfs_to_use += T - + if(!turfs_to_use.len) warning("Fake sun placed on a level where it can't find any outdoor turfs to color at [x],[y],[z].") return @@ -131,23 +131,14 @@ "color" = "#F4EA55" ), list( - "brightness" = 1.0, + "brightness" = 4.0, "color" = "#F07AD8" ), list( - "brightness" = 1.0, - "color" = "#b4361f" - ), - - list( - "brightness" = 0.7, + "brightness" = 4.0, "color" = "#f3932d" - ), - - list( - "brightness" = 0.1, - "color" = "#B92B00" ) + ) /obj/effect/fake_sun/cool diff --git a/code/modules/mining/machinery/machine_processing.dm b/code/modules/mining/machinery/machine_processing.dm index c6a3d35ddf8..62842e9ebbe 100644 --- a/code/modules/mining/machinery/machine_processing.dm +++ b/code/modules/mining/machinery/machine_processing.dm @@ -253,6 +253,12 @@ ore_chunk.stored_ore[ore] = 0 qdel(ore_chunk) + for(var/obj/item/weapon/ore/O in input.loc) + if(!isnull(ores_stored[O.material])) + ores_stored[O.material]++ + points += (ore_values[O.material]*points_mult) + qdel(O) + if(!active) return diff --git a/code/modules/mob/holder.dm b/code/modules/mob/holder.dm index 5e4ff61e0e3..33f4694b7fa 100644 --- a/code/modules/mob/holder.dm +++ b/code/modules/mob/holder.dm @@ -50,6 +50,7 @@ var/list/holder_mob_icon_cache = list() /obj/item/weapon/holder/Exited(atom/movable/thing, atom/OldLoc) if(thing == held_mob) held_mob.transform = original_transform + held_mob.update_transform() //VOREStation edit held_mob.vis_flags = original_vis_flags held_mob = null ..() @@ -70,11 +71,14 @@ var/list/holder_mob_icon_cache = list() /obj/item/weapon/holder/proc/dump_mob() if(!held_mob) return - held_mob.transform = original_transform - held_mob.vis_flags = original_vis_flags - held_mob.forceMove(get_turf(src)) - held_mob.reset_view(null) - held_mob = null + if (held_mob.loc == src || isnull(held_mob.loc)) //VOREStation edit + held_mob.transform = original_transform + held_mob.update_transform() //VOREStation edit + held_mob.vis_flags = original_vis_flags + held_mob.forceMove(get_turf(src)) + held_mob.reset_view(null) + held_mob = null + invisibility = INVISIBILITY_ABSTRACT //VOREStation edit /obj/item/weapon/holder/throw_at(atom/target, range, speed, thrower) if(held_mob) diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index 848c08b9f17..34e91035862 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -167,7 +167,10 @@ var/list/_human_default_emotes = list( /decl/emote/visible/bounce, /decl/emote/visible/jiggle, /decl/emote/visible/lightup, - /decl/emote/visible/vibrate + /decl/emote/visible/vibrate, + /decl/emote/audible/croon, + /decl/emote/audible/lwarble, + /decl/emote/audible/croak_skrell //VOREStation Add End ) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 6626ff10e67..ad8214e4711 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -387,6 +387,7 @@ if (R.fields["id"] == E.fields["id"]) if(hasHUD(usr,"security")) to_chat(usr, "Name: [R.fields["name"]] Criminal Status: [R.fields["criminal"]]") + to_chat(usr, "Species: [R.fields["species"]]") to_chat(usr, "Minor Crimes: [R.fields["mi_crim"]]") to_chat(usr, "Details: [R.fields["mi_crim_d"]]") to_chat(usr, "Major Crimes: [R.fields["ma_crim"]]") @@ -503,6 +504,7 @@ if (R.fields["id"] == E.fields["id"]) if(hasHUD(usr,"medical")) to_chat(usr, "Name: [R.fields["name"]] Blood Type: [R.fields["b_type"]]") + to_chat(usr, "Species: [R.fields["species"]]") to_chat(usr, "DNA: [R.fields["b_dna"]]") to_chat(usr, "Minor Disabilities: [R.fields["mi_dis"]]") to_chat(usr, "Details: [R.fields["mi_dis_d"]]") @@ -584,6 +586,7 @@ if (R.fields["id"] == E.fields["id"]) if(hasHUD(usr,"best")) to_chat(usr, "Name: [R.fields["name"]]") + to_chat(usr, "Species: [R.fields["species"]]") to_chat(usr, "Assignment: [R.fields["real_rank"]] ([R.fields["rank"]])") to_chat(usr, "Home System: [R.fields["home_system"]]") to_chat(usr, "Citizenship: [R.fields["citizenship"]]") diff --git a/code/modules/mob/living/carbon/human/say.dm b/code/modules/mob/living/carbon/human/say.dm index b2232f84343..a1f0e78564c 100644 --- a/code/modules/mob/living/carbon/human/say.dm +++ b/code/modules/mob/living/carbon/human/say.dm @@ -129,7 +129,7 @@ message_data[2] = pick(M.say_verbs) . = 1 - if(CE_SPEEDBOOST in chem_effects || is_jittery) // motor mouth + else if(CE_SPEEDBOOST in chem_effects || is_jittery) // motor mouth // Despite trying to url/html decode these, byond is just being bad and I dunno. var/static/regex/speedboost_initial = new (@"&[a-z]{2,5};|&#\d{2};","g") // Not herestring because bad vs code syntax highlight panics at apostrophe @@ -137,6 +137,7 @@ for(var/datum/multilingual_say_piece/S in message_data[1]) S.message = speedboost_initial.Replace(S.message, "") S.message = speedboost_main.Replace(S.message, "") + . = 1 else . = ..(message_data) diff --git a/code/modules/mob/living/carbon/human/species/outsider/vox.dm b/code/modules/mob/living/carbon/human/species/outsider/vox.dm index e9dfc67f57b..a23d3fd1096 100644 --- a/code/modules/mob/living/carbon/human/species/outsider/vox.dm +++ b/code/modules/mob/living/carbon/human/species/outsider/vox.dm @@ -50,7 +50,7 @@ flags = NO_SCAN | NO_DEFIB spawn_flags = SPECIES_IS_WHITELISTED - appearance_flags = HAS_EYE_COLOR | HAS_HAIR_COLOR + appearance_flags = HAS_EYE_COLOR | HAS_HAIR_COLOR | HAS_SKIN_COLOR blood_color = "#9066BD" flesh_color = "#808D11" @@ -110,4 +110,4 @@ H.internal = H.r_hand H.internal = locate(/obj/item/weapon/tank) in H.contents if(istype(H.internal,/obj/item/weapon/tank) && H.internals) - H.internals.icon_state = "internal1" \ No newline at end of file + H.internals.icon_state = "internal1" diff --git a/code/modules/mob/living/carbon/human/species/species_getters.dm b/code/modules/mob/living/carbon/human/species/species_getters.dm index 27bb09baa6f..fc59efd67ef 100644 --- a/code/modules/mob/living/carbon/human/species/species_getters.dm +++ b/code/modules/mob/living/carbon/human/species/species_getters.dm @@ -90,10 +90,18 @@ */ var/discomfort_message + var/list/custom_cold = H.custom_cold + var/list/custom_heat = H.custom_heat if(msg_type == ENVIRONMENT_COMFORT_MARKER_COLD && length(cold_discomfort_strings) /*&& !covered*/) - discomfort_message = pick(cold_discomfort_strings) + if(custom_cold && custom_cold.len > 0) + discomfort_message = pick(custom_cold) + else + discomfort_message = pick(cold_discomfort_strings) else if(msg_type == ENVIRONMENT_COMFORT_MARKER_HOT && length(heat_discomfort_strings) /*&& covered*/) - discomfort_message = pick(heat_discomfort_strings) + if(custom_heat && custom_heat.len > 0) + discomfort_message = pick(custom_heat) + else + discomfort_message = pick(heat_discomfort_strings) if(discomfort_message && prob(5)) to_chat(H, SPAN_DANGER(discomfort_message)) 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 f0d32c7d965..c7d5a9caea7 100644 --- a/code/modules/mob/living/carbon/human/species/station/station.dm +++ b/code/modules/mob/living/carbon/human/species/station/station.dm @@ -373,6 +373,13 @@ O_INTESTINE = /obj/item/organ/internal/intestine/skrell ) + default_emotes = list( + /decl/emote/audible/warble, + /decl/emote/audible/lwarble, + /decl/emote/audible/croon, + /decl/emote/audible/croak + ) + /datum/species/skrell/can_breathe_water() return TRUE 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 8c7eed018ad..20b5b0bf5db 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 @@ -383,7 +383,11 @@ min_age = 18 inherent_verbs = list(/mob/living/carbon/human/proc/tie_hair) //Get ya quills done did icobase = 'icons/mob/human_races/r_vox_old.dmi' + tail = "voxtail" + tail_animation = 'icons/mob/species/vox/tail.dmi' deform = 'icons/mob/human_races/r_def_vox_old.dmi' + color_mult = 1 + descriptors = list( /datum/mob_descriptor/vox_markings = 0 ) diff --git a/code/modules/mob/living/carbon/human/species/station/traits_vr/_traits.dm b/code/modules/mob/living/carbon/human/species/station/traits_vr/_traits.dm index 6abec0e5170..46a4b4c1d57 100644 --- a/code/modules/mob/living/carbon/human/species/station/traits_vr/_traits.dm +++ b/code/modules/mob/living/carbon/human/species/station/traits_vr/_traits.dm @@ -4,4 +4,11 @@ #define TRAIT_VARCHANGE_LESS_BETTER -1 #define TRAIT_VARCHANGE_ALWAYS_OVERRIDE 0 -#define TRAIT_VARCHANGE_MORE_BETTER 1 \ No newline at end of file +#define TRAIT_VARCHANGE_MORE_BETTER 1 + +#define TRAIT_PREF_TYPE_BOOLEAN 1 +#define TRAIT_PREF_TYPE_COLOR 2 + +#define TRAIT_NO_VAREDIT_TARGET 0 +#define TRAIT_VAREDIT_TARGET_SPECIES 1 +#define TRAIT_VAREDIT_TARGET_MOB 2 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 3751f324541..025b4e283ef 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 @@ -138,6 +138,16 @@ ..(S,H) H.verbs |= /mob/living/carbon/human/proc/slime_feed +/datum/trait/neutral/stuffing_feeder + name = "Food Stuffer" + desc = "Allows you to feed food to other people whole, rather than bite by bite." + cost = 0 + custom_only = FALSE + +/datum/trait/neutral/stuffing_feeder/apply(var/datum/species/S,var/mob/living/carbon/human/H) + ..(S,H) + H.verbs |= /mob/living/proc/toggle_stuffing_mode + /datum/trait/neutral/hard_vore name = "Brutal Predation" desc = "Allows you to tear off limbs & tear out internal organs." @@ -185,6 +195,7 @@ cost = 0 custom_only = FALSE var_changes = list("has_glowing_eyes" = 1) + has_preferences = list("has_glowing_eyes" = list(TRAIT_PREF_TYPE_BOOLEAN, "Glowing on spawn", TRAIT_VAREDIT_TARGET_SPECIES)) /datum/trait/neutral/glowing_eyes/apply(var/datum/species/S,var/mob/living/carbon/human/H) ..(S,H) @@ -195,13 +206,14 @@ desc = "Your body glows about as much as a PDA light! Settable color and toggle in Abilities tab ingame." cost = 0 custom_only = FALSE + has_preferences = list("glow_toggle" = list(TRAIT_PREF_TYPE_BOOLEAN, "Glowing on spawn", TRAIT_VAREDIT_TARGET_MOB, FALSE), \ + "glow_color" = list(TRAIT_PREF_TYPE_COLOR, "Glow color", TRAIT_VAREDIT_TARGET_MOB)) -/datum/trait/neutral/glowing_body/apply(var/datum/species/S,var/mob/living/carbon/human/H) +/datum/trait/neutral/glowing_body/apply(var/datum/species/S,var/mob/living/carbon/human/H, var/list/trait_prefs = null) ..(S,H) H.verbs |= /mob/living/proc/glow_toggle H.verbs |= /mob/living/proc/glow_color - //Allergen traits! Not available to any species with a base allergens var. /datum/trait/neutral/allergy name = "Allergy: Gluten" @@ -424,7 +436,7 @@ cost = 0 custom_only = FALSE var_changes = list("chem_strength_alcohol" = 1.5) - + /datum/trait/neutral/alcohol_tolerance_reset name = "Liver of Unremarkableness" desc = "This trait exists to reset alcohol (in)tolerance for non-custom species to baseline normal. It can only be taken by Skrell, Tajara, Unathi, Diona, and Prometheans, as it would have no effect on other species." @@ -703,8 +715,8 @@ cost = 0 custom_only = FALSE can_take = SYNTHETICS + has_preferences = list("pain" = list(TRAIT_PREF_TYPE_BOOLEAN, "Enabled on spawn", TRAIT_VAREDIT_TARGET_MOB, FALSE)) - -/datum/trait/neutral/synth_cosmetic_pain/apply(var/datum/species/S,var/mob/living/carbon/human/H) +/datum/trait/neutral/synth_cosmetic_pain/apply(var/datum/species/S,var/mob/living/carbon/human/H, var/trait_prefs = null) ..(S,H) H.verbs |= /mob/living/carbon/human/proc/toggle_pain_module diff --git a/code/modules/mob/living/carbon/human/species/station/traits_vr/positive.dm b/code/modules/mob/living/carbon/human/species/station/traits_vr/positive.dm index c5355ac536f..4bb31acc986 100644 --- a/code/modules/mob/living/carbon/human/species/station/traits_vr/positive.dm +++ b/code/modules/mob/living/carbon/human/species/station/traits_vr/positive.dm @@ -107,6 +107,7 @@ name = "Winged Flight" desc = "Allows you to fly by using your wings. Don't forget to bring them!" cost = 0 + has_preferences = list("flight_vore" = list(TRAIT_PREF_TYPE_BOOLEAN, "Flight Vore enabled on spawn", TRAIT_VAREDIT_TARGET_MOB, FALSE)) /datum/trait/positive/winged_flight/apply(var/datum/species/S,var/mob/living/carbon/human/H) ..(S,H) @@ -155,6 +156,8 @@ desc = "You can produce silk and create various articles of clothing and objects." cost = 2 var_changes = list("is_weaver" = 1) + has_preferences = list("silk_production" = list(TRAIT_PREF_TYPE_BOOLEAN, "Silk production on spawn", TRAIT_VAREDIT_TARGET_SPECIES), \ + "silk_color" = list(TRAIT_PREF_TYPE_COLOR, "Silk color", TRAIT_VAREDIT_TARGET_SPECIES)) /datum/trait/positive/weaver/apply(var/datum/species/S,var/mob/living/carbon/human/H) ..() 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 03e3966ff95..0de5ae30974 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 @@ -13,15 +13,25 @@ var/list/allowed_species // VORESTATION EDIT:chomp port. A list of species that CAN take this trait, use this if only a few species can use it. -shark var/custom_only = TRUE // Trait only available for custom species var/varchange_type = TRAIT_VARCHANGE_ALWAYS_OVERRIDE //Mostly used for non-custom species. + var/has_preferences //if set, should be a list of the preferences for this trait in the format: list("identifier/name of var to edit" = list(typeofpref, "text to display in prefs", TRAIT_NO_VAREDIT_TARGET/TRAIT_VAREDIT_TARGET_SPECIES/etc, (optional: default value)), etc) typeofpref should follow the defines in _traits.dm (eg. TRAIT_PREF_TYPE_BOOLEAN) //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) +/datum/trait/proc/apply(var/datum/species/S,var/mob/living/carbon/human/H, var/trait_prefs = null) //VOREStation edit: trait_prefs is a list in the format: list(identifier = value, etc) ASSERT(S) if(var_changes) for(var/V in var_changes) if((category == TRAIT_TYPE_POSITIVE && ((varchange_type == TRAIT_VARCHANGE_LESS_BETTER && var_changes[V] > S.vars[V]) || (varchange_type == TRAIT_VARCHANGE_MORE_BETTER && var_changes[V] < S.vars[V]))) || (category == TRAIT_TYPE_NEGATIVE && ((varchange_type == TRAIT_VARCHANGE_LESS_BETTER && var_changes[V] < S.vars[V]) || (varchange_type == TRAIT_VARCHANGE_MORE_BETTER && var_changes[V] > S.vars[V])))) continue S.vars[V] = var_changes[V] + if (trait_prefs) + for (var/trait in trait_prefs) + switch(has_preferences[trait][3]) + if(TRAIT_NO_VAREDIT_TARGET) + continue + if(TRAIT_VAREDIT_TARGET_SPECIES) + S.vars[trait] = trait_prefs[trait] + if(TRAIT_VAREDIT_TARGET_MOB) + H.vars[trait] = trait_prefs[trait] return //Applying trait to preferences rather than just us. @@ -44,3 +54,23 @@ for(var/V in var_changes_pref) P.vars[V] = initial(P.vars[V]) return + +//VOREStation edit: trait preferences +/datum/trait/proc/get_default_prefs() + if (!LAZYLEN(has_preferences)) + return null + var/prefs = list() + for (var/j in has_preferences) + var/default = default_value_for_pref(j) + prefs[j] = default + return prefs + +/datum/trait/proc/default_value_for_pref(var/pref) + if (length(has_preferences[pref]) > 3) //custom default + return has_preferences[pref][4] + switch(has_preferences[pref][1]) + if(TRAIT_PREF_TYPE_BOOLEAN) //boolean + return TRUE + if(TRAIT_PREF_TYPE_COLOR) //color + return "#ffffff" + return diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index faa62c27d4e..03a36ceddf4 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -384,7 +384,17 @@ return result /mob/living/proc/setMaxHealth(var/newMaxHealth) - health = (health/maxHealth) * (newMaxHealth) //VOREStation Add - Adjust existing health + var/h_mult = maxHealth / newMaxHealth //VOREStation Add Start - Calculate change multiplier + if(bruteloss) //In case a damage value is 0, divide by 0 bad + bruteloss = round(bruteloss / h_mult) //Health is calculated on life based on damage types, so we update the damage and let life handle health + if(fireloss) + fireloss = round(fireloss / h_mult) + if(toxloss) + toxloss = round(toxloss / h_mult) + if(oxyloss) + oxyloss = round(oxyloss / h_mult) + if(cloneloss) + cloneloss = round(cloneloss / h_mult) //VOREStation Add End maxHealth = newMaxHealth /mob/living/Stun(amount) diff --git a/code/modules/mob/living/living_defines_vr.dm b/code/modules/mob/living/living_defines_vr.dm index 06eeee7ac37..2a547811c2f 100644 --- a/code/modules/mob/living/living_defines_vr.dm +++ b/code/modules/mob/living/living_defines_vr.dm @@ -10,4 +10,7 @@ var/custom_say = null var/custom_ask = null var/custom_exclaim = null - var/custom_whisper = null \ No newline at end of file + var/custom_whisper = null +//custom temperature discomfort vars + var/list/custom_heat = list() + var/list/custom_cold = list() diff --git a/code/modules/mob/living/silicon/emote.dm b/code/modules/mob/living/silicon/emote.dm index 5bb86dac682..728b4d9f846 100644 --- a/code/modules/mob/living/silicon/emote.dm +++ b/code/modules/mob/living/silicon/emote.dm @@ -17,7 +17,8 @@ var/list/_silicon_default_emotes = list( /mob/living/silicon/pai/get_available_emotes() - var/list/fulllist = global._silicon_default_emotes.Copy() + var/list/fulllist = list() + fulllist |= _silicon_default_emotes fulllist |= _robot_default_emotes fulllist |= _human_default_emotes - return fulllist \ No newline at end of file + return fulllist diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/succlet.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/succlet.dm new file mode 100644 index 00000000000..7fa998d5e6e --- /dev/null +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/succlet.dm @@ -0,0 +1,242 @@ +/datum/category_item/catalogue/fauna/succlet + name = "Alien Wildlife - Succlet" + desc = "Succlet is a friend to fungus. It finds pleasure in absorbing the nutrients of treats, and decomposing other organisms.\ + It is unclear how it manages to move, but succlet can be found seemingly randomly about any environment it has been invited to.\ + Succlets are known to attempt to convince people to obtain additional succlets, and should not be listened to, as once one invites a succlet into their home\ + it will never leave, and will eat their treats forever. It should be noted that despite being a worthless treat stealing creature succlet has not been to prison." + value = CATALOGUER_REWARD_TRIVIAL + +/mob/living/simple_mob/vore/alienanimals/succlet + name = "succlet" + desc = "A soft, fuzzy, innocent looking star shaped creature." + + icon_state = "succlet" + icon_living = "succlet" + icon_dead = "succlet" + icon_rest = "succlet" + icon = 'icons/mob/alienanimals_x32.dmi' + + maxHealth = 10 + health = 10 + movement_cooldown = 1000 + + response_help = "hugs" + response_disarm = "rudely paps" + response_harm = "punches" + + harm_intent_damage = 1 + melee_damage_lower = 1 + melee_damage_upper = 1 + + mob_size = MOB_SMALL + friendly = list("hugs") + + catalogue_data = list(/datum/category_item/catalogue/fauna/succlet) + ai_holder_type = null + say_list_type = /datum/say_list/succlet + player_msg = "You can move with ALT+click. You can only move when no one will see you, unless you are targetting someone. If no one else will see you move, and you can eat the target, then you will be able to move to them. Use your power to responsibly, and move confusingly right to left as if to distract them." + has_langs = list(LANGUAGE_ANIMAL) + + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 + maxbodytemp = 9999 + unsuitable_atoms_damage = 0 + + vore_active = 1 + vore_capacity = 1 + vore_bump_chance = 0 + vore_default_mode = DM_SELECT + vore_icons = SA_ICON_LIVING + vore_stomach_name = "stummy" + vore_default_item_mode = IM_DIGEST + + vore_taste = "some kind of snack from a distant unseen universe" + vore_smell = "some kind of snack from a distant unseen universe" + + var/succlet_move_chance = 2 + var/succlet_weaken_rate = 5 + var/succlet_last_health = 10 + +/datum/say_list/succlet + speak = list("...") + emote_hear = list("...") + emote_see = list("...") + say_maybe_target = list("...") + say_got_target = list("...") + +/mob/living/simple_mob/vore/alienanimals/succlet/init_vore() + ..() + var/obj/belly/B = vore_selected + B.name = "stummy" + B.desc = "It's a star shaped stomach. A stummy, if you will. It's warm and soft, not unlike plush, but it's tight!" + B.mode_flags = DM_FLAG_THICKBELLY | DM_FLAG_NUMBING + B.belly_fullscreen = "yet_another_tumby" + B.digest_brute = 0 + B.digest_burn = 0 + B.digest_oxy = 12 + B.digestchance = 0 + B.absorbchance = 0 + B.escapechance = 10 + B.selective_preference = DM_ABSORB + +/mob/living/simple_mob/vore/alienanimals/succlet/checkMoveCooldown() + return FALSE + +/mob/living/simple_mob/vore/alienanimals/succlet/AltClickOn(atom/A) + if(get_dist(get_turf(src),get_turf(A)) > 1) + succlet_move(A) + else + . = ..() + +/mob/living/simple_mob/vore/alienanimals/succlet/Life() + . = ..() + if(stat) + return + if(client) + return + if(isbelly(loc)) //No teleporting out of bellies + return + if(prob(succlet_move_chance) || health < succlet_last_health) //This chance can be adjusted, but moving is probably pretty resource expensive on the server, so the chance should stay low + var/list/mylist = list() //Look I'm just saying, you can make it higher if you want but don't cry to me if the server lags, I made this as a joke + for(var/mob/M in view(world.view, get_turf(src))) //Is there anyone nearby to target? + if(istype(M, /mob/living/simple_mob/vore/alienanimals/succlet)) + continue + if(isobserver(M)) + continue + if(M.stat) + continue + if(ismob(M)) + mylist |= M + if(mylist.len > 0) + succlet_move(pick(mylist)) + else + for(var/turf/T in view(world.view, get_turf(src))) //No, so let's pick a turf to travel to + if(isturf(T)) + mylist |= T + succlet_move(pick(mylist)) + succlet_last_health = health //The succlet will try to move if it has taken damage + +/mob/living/simple_mob/vore/alienanimals/succlet/death() + . = ..() + spawn(10) + qdel(src) + +/mob/living/simple_mob/vore/alienanimals/succlet/attackby(var/obj/item/O, var/mob/user) + if(istype(O, /obj/item/weapon/newspaper) && !ckey && isturf(user.loc)) + user.visible_message("[user] swats [src] with [O]!") + release_vore_contents() + else + ..() + +/mob/living/simple_mob/vore/alienanimals/succlet/proc/succlet_move(var/target) + if(!target) + return + if(isbelly(loc)) //No teleporting out of bellies + return + var/turf/target_turf + var/mob/living/l + + if(isliving(target)) + l = target + if(l.devourable && l.allowmobvore && l.can_be_drop_prey) + target_turf = get_turf(l) + else + to_chat(src, "You can't move on to [l], they are watching...") + return + else if(isturf(target)) + target_turf = target + + if(target_turf) + + if(target_turf.density) + return + for(var/atom/A in target_turf) + if(ismob(A)) + continue + else if(A.density && !(A.flags & ON_BORDER)) + to_chat(src, "You can't move there...") + return + else + return + + var/my_turf = get_turf(src) + for(var/atom/M in view(world.view, my_turf)) //Is anyone who is not us or our target around where we are? + if(isliving(M) && M != src && M != target && !istype(M, /mob/observer) && !M.invisibility && !istype(M,/mob/living/simple_mob/vore/alienanimals/succlet)) + var/mob/living/check = M + if(check.stat) + to_chat(src, "You can't move, [check] is watching...") + return + else if (!check.eye_blind) + to_chat(src, "You can't move, [check] is watching...") + return + for(var/atom/T in view(world.view, target_turf)) //Is anyone at our target? + if(isliving(T) && T != src && T != target && !istype(T, /mob/observer) && !T.invisibility && !istype(T,/mob/living/simple_mob/vore/alienanimals/succlet)) + var/mob/living/check = T + if(check.stat) + to_chat(src, "You can't move, [check] is watching...") + return + else if (!check.eye_blind) + to_chat(src, "You can't move, [check] is watching...") + return + forceMove(target_turf) + if(l) + l.Weaken(succlet_weaken_rate) + animal_nom(l) + l.stop_pulling() + + +/mob/living/simple_mob/vore/alienanimals/succlet/big + desc = "A big soft, fuzzy, innocent looking star shaped creature." + icon_state = "big_succlet" + icon_living = "big_succlet" + icon_dead = "big_succlet" + icon_rest = "big_succlet" + succlet_weaken_rate = 30 //Big + +/mob/living/simple_mob/vore/alienanimals/succlet/dark + icon_state = "dark_succlet" + icon_living = "dark_succlet" + icon_dead = "dark_succlet" + icon_rest = "dark_succlet" + +/mob/living/simple_mob/vore/alienanimals/succlet/poison + desc = "A soft, fuzzy, innocent looking star shaped creature. It looks like it could be poisonous." + icon_state = "poison_succlet" + icon_living = "poison_succlet" + icon_dead = "poison_succlet" + icon_rest = "poison_succlet" + +/mob/living/simple_mob/vore/alienanimals/succlet/poison/attack_hand(mob/user) + . = ..() + if(user.a_intent != I_HELP) + if(isliving(user)) + var/mob/living/l = user + to_chat(l, "You feel \the [src]'s sting!!!") + l.hallucination += 25 + l.adjustHalLoss(200) + l.adjustToxLoss(10) + +/mob/living/simple_mob/vore/alienanimals/succlet/moss + icon_state = "moss_succlet" + icon_living = "moss_succlet" + icon_dead = "moss_succlet" + icon_rest = "moss_succlet" + vore_taste = "moss" + vore_smell = "moss" + +/mob/living/simple_mob/vore/alienanimals/succlet/king + desc = "A big soft, fuzzy, innocent looking star shaped creature. It looks regal with its crown!" + icon_state = "king_succlet" + icon_living = "king_succlet" + icon_dead = "king_succlet" + icon_rest = "king_succlet" + succlet_weaken_rate = 60 //The weight of authority is heavy! + vore_taste = "the king of snacks from a distant unseen universe" + vore_smell = "the king of snacks from a distant unseen universe" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/animal.dm b/code/modules/mob/living/simple_mob/subtypes/animal/animal.dm index 563b2925291..6ef2c176f57 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/animal.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/animal.dm @@ -24,4 +24,17 @@ ) /decl/mob_organ_names/quadruped //Most subtypes have this basic body layout. - hit_zones = list("head", "torso", "left foreleg", "right foreleg", "left hind leg", "right hind leg", "tail") \ No newline at end of file + hit_zones = list("head", "torso", "left foreleg", "right foreleg", "left hind leg", "right hind leg", "tail") + +/mob/living/simple_mob/animal/get_examine_desc() + return flavor_text || desc + +/mob/living/simple_mob/animal/verb/set_flavour_text() + set name = "Set Flavour Text" + set category = "IC" + set desc = "Set your flavour text." + set src = usr + var/new_flavour_text = sanitize((input("Please describe yourself.", "Flavour Text", flavor_text) as message|null), MAX_MESSAGE_LEN) + if(length(new_flavour_text) && !QDELETED(src)) + flavor_text = new_flavour_text + to_chat(src, SPAN_NOTICE("Your flavour text has been updated.")) diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/mecha.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/mecha.dm index eaa796f45cf..f07eef358cd 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/mecha.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/mecha/mecha.dm @@ -17,7 +17,6 @@ organ_names = /decl/mob_organ_names/mecha - // Very close to the base 'damage_absorption' var on the base mecha class. armor = list( "melee" = 20, "bullet" = 10, diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander.dm b/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander.dm index 4d1322ab85f..1b64dec16a3 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/leopardmander.dm @@ -7,6 +7,7 @@ icon_dead = "leopardmander-dead" icon_living = "leopardmander" icon_state = "leopardmander" + icon_rest = "leopardmander-rest" faction = "neutral" meat_amount = 40 //I mean... meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat @@ -34,13 +35,12 @@ can_buckle = TRUE buckle_movable = TRUE buckle_lying = FALSE - vore_icons = SA_ICON_LIVING vore_bump_chance = 50 vore_digest_chance = 0 vore_escape_chance = 50 vore_pounce_chance = 100 vore_active = 1 - vore_icons = 4 + vore_icons = SA_ICON_LIVING|SA_ICON_REST vore_capacity = 4 swallowTime = 100 vore_default_mode = DM_HEAL @@ -116,6 +116,7 @@ icon_dead = "leopardmander_blue-dead" icon_living = "leopardmander_blue" icon_state = "leopardmander_blue" + icon_rest = "leopardmander_blue-rest" /mob/living/simple_mob/vore/leopardmander/exotic name = "glass-belly leopardmander" @@ -124,6 +125,7 @@ icon_dead = "leopardmander_exotic-dead" icon_living = "leopardmander_exotic" icon_state = "leopardmander_exotic" + icon_rest = "leopardmander_exotic-rest" glow_toggle = TRUE //Glow! glow_range = 2 diff --git a/code/modules/mob/new_player/sprite_accessories.dm b/code/modules/mob/new_player/sprite_accessories.dm index a64def1f497..aae978f405c 100644 --- a/code/modules/mob/new_player/sprite_accessories.dm +++ b/code/modules/mob/new_player/sprite_accessories.dm @@ -29,7 +29,7 @@ var/gender = NEUTER // Restrict some styles to specific species. Set to null to perform no checking. - var/list/species_allowed = list(SPECIES_HUMAN,SPECIES_PROMETHEAN,SPECIES_HUMAN_VATBORN) + var/list/species_allowed = list() // Whether or not the accessory can be affected by colouration var/do_colouration = 1 @@ -2093,10 +2093,12 @@ shaved //Empty list is unrestricted. Should only restrict the ones that make NO SENSE on other species, //like Tajaran inner-ear coloring overlay stuff. species_allowed = list() + //This lets all races use color_blend_mode = ICON_ADD var/genetic = TRUE + var/organ_override = FALSE var/body_parts = list() //A list of bodyparts this covers, in organ_tag defines //Reminder: BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND,BP_TORSO,BP_GROIN,BP_HEAD @@ -2266,19 +2268,19 @@ shaved name = "Color Bands (Face)" icon_state = "bandsface" body_parts = list(BP_HEAD) - species_allowed = list(SPECIES_TAJ,SPECIES_UNATHI) + //species_allowed = list(SPECIES_TAJ,SPECIES_UNATHI) //Removing Polaris whitelits /datum/sprite_accessory/marking/bandsface_human name = "Color Bands (Face)" icon_state = "bandshumanface" body_parts = list(BP_HEAD) - species_allowed = list(SPECIES_HUMAN,SPECIES_HUMAN_VATBORN,SPECIES_SKRELL) + //species_allowed = list(SPECIES_HUMAN,SPECIES_HUMAN_VATBORN,SPECIES_SKRELL) //Removing Polaris whitelits /datum/sprite_accessory/marking/tiger_stripes name = "Tiger Stripes" icon_state = "tiger" body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_TORSO,BP_GROIN) - species_allowed = list(SPECIES_TAJ) //There's a tattoo for non-cats + //species_allowed = list(SPECIES_TAJ) //Removing Polaris whitelits //There's a tattoo for non-cats /datum/sprite_accessory/marking/tigerhead name = "Tiger Stripes (Head, Minor)" @@ -2289,7 +2291,7 @@ shaved name = "Tiger Stripes (Head, Major)" icon_state = "tigerface" body_parts = list(BP_HEAD) - species_allowed = list(SPECIES_TAJ) //There's a tattoo for non-cats + //species_allowed = list(SPECIES_TAJ) //Removing Polaris whitelits //There's a tattoo for non-cats /datum/sprite_accessory/marking/backstripe name = "Back Stripe" @@ -2385,7 +2387,7 @@ shaved name = "Full Face Paint" icon_state = "fullface" body_parts = list(BP_HEAD) - species_allowed = list(SPECIES_HUMAN,SPECIES_HUMAN_VATBORN,SPECIES_SKRELL) + //species_allowed = list(SPECIES_HUMAN,SPECIES_HUMAN_VATBORN,SPECIES_SKRELL) //Removing Polaris whitelits /datum/sprite_accessory/marking/lips name = "Lips" @@ -2807,55 +2809,55 @@ shaved name = "Socks Coloration (Taj)" icon_state = "taj_pawsocks" body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND) - species_allowed = list(SPECIES_TAJ) + //species_allowed = list(SPECIES_TAJ) //Removing Polaris whitelits /datum/sprite_accessory/marking/una_paw_socks name = "Socks Coloration (Una)" icon_state = "una_pawsocks" body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND) - species_allowed = list(SPECIES_UNATHI) + //species_allowed = list(SPECIES_UNATHI) //Removing Polaris whitelits /datum/sprite_accessory/marking/paw_socks name = "Socks Coloration (Generic)" icon_state = "pawsocks" body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND) - species_allowed = list(SPECIES_TAJ, SPECIES_UNATHI) + //species_allowed = list(SPECIES_TAJ, SPECIES_UNATHI) //Removing Polaris whitelits /datum/sprite_accessory/marking/paw_socks_belly name = "Socks,Belly Coloration (Generic)" icon_state = "pawsocksbelly" body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND,BP_GROIN,BP_TORSO) - species_allowed = list(SPECIES_TAJ, SPECIES_UNATHI) + //species_allowed = list(SPECIES_TAJ, SPECIES_UNATHI) //Removing Polaris whitelits /datum/sprite_accessory/marking/belly_hands_feet name = "Hands,Feet,Belly Color (Minor)" icon_state = "bellyhandsfeetsmall" body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND,BP_GROIN,BP_TORSO) - species_allowed = list(SPECIES_TAJ, SPECIES_UNATHI) + //species_allowed = list(SPECIES_TAJ, SPECIES_UNATHI) //Removing Polaris whitelits /datum/sprite_accessory/marking/hands_feet_belly_full name = "Hands,Feet,Belly Color (Major)" icon_state = "bellyhandsfeet" body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND,BP_GROIN,BP_TORSO) - species_allowed = list(SPECIES_TAJ, SPECIES_UNATHI) + //SPECIES_TAJ, SPECIES_UNATHI) //Removing Polaris whitelits /datum/sprite_accessory/marking/hands_feet_belly_full_female name = "Hands,Feet,Belly Color (Major, Female)" icon_state = "bellyhandsfeet_female" body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND,BP_GROIN,BP_TORSO) - species_allowed = list(SPECIES_TAJ) + //species_allowed = list(SPECIES_TAJ) //Removing Polaris whitelits /datum/sprite_accessory/marking/patches name = "Color Patches" icon_state = "patches" body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND,BP_TORSO,BP_GROIN) - species_allowed = list(SPECIES_TAJ) + //species_allowed = list(SPECIES_TAJ) //Removing Polaris whitelits /datum/sprite_accessory/marking/patchesface name = "Color Patches (Face)" icon_state = "patchesface" body_parts = list(BP_HEAD) - species_allowed = list(SPECIES_TAJ) + //species_allowed = list(SPECIES_TAJ) //Removing Polaris whitelits //Taj specific stuff @@ -2863,74 +2865,74 @@ shaved name = "Belly Fur (Taj)" icon_state = "taj_belly" body_parts = list(BP_TORSO) - species_allowed = list(SPECIES_TAJ) + //species_allowed = list(SPECIES_TAJ) //Removing Polaris whitelits /datum/sprite_accessory/marking/taj_bellyfull name = "Belly Fur Wide (Taj)" icon_state = "taj_bellyfull" body_parts = list(BP_TORSO) - species_allowed = list(SPECIES_TAJ) + //species_allowed = list(SPECIES_TAJ) //Removing Polaris whitelits /datum/sprite_accessory/marking/taj_earsout name = "Outer Ear (Taj)" icon_state = "taj_earsout" body_parts = list(BP_HEAD) - species_allowed = list(SPECIES_TAJ) + //species_allowed = list(SPECIES_TAJ) //Removing Polaris whitelits /datum/sprite_accessory/marking/taj_earsin name = "Inner Ear (Taj)" icon_state = "taj_earsin" body_parts = list(BP_HEAD) - species_allowed = list(SPECIES_TAJ) + //species_allowed = list(SPECIES_TAJ) //Removing Polaris whitelits /datum/sprite_accessory/marking/taj_nose name = "Nose Color (Taj)" icon_state = "taj_nose" body_parts = list(BP_HEAD) - species_allowed = list(SPECIES_TAJ) + //species_allowed = list(SPECIES_TAJ) //Removing Polaris whitelits /datum/sprite_accessory/marking/taj_crest name = "Chest Fur Crest (Taj)" icon_state = "taj_crest" body_parts = list(BP_TORSO) - species_allowed = list(SPECIES_TAJ) + //species_allowed = list(SPECIES_TAJ) //Removing Polaris whitelits /datum/sprite_accessory/marking/taj_muzzle name = "Muzzle Color (Taj)" icon_state = "taj_muzzle" body_parts = list(BP_HEAD) - species_allowed = list(SPECIES_TAJ) + //species_allowed = list(SPECIES_TAJ) //Removing Polaris whitelits /datum/sprite_accessory/marking/taj_face name = "Cheeks Color (Taj)" icon_state = "taj_face" body_parts = list(BP_HEAD) - species_allowed = list(SPECIES_TAJ) + //species_allowed = list(SPECIES_TAJ) //Removing Polaris whitelits /datum/sprite_accessory/marking/taj_all name = "All Taj Head (Taj)" icon_state = "taj_all" body_parts = list(BP_HEAD) - species_allowed = list(SPECIES_TAJ) + //species_allowed = list(SPECIES_TAJ) //Removing Polaris whitelits //Una specific stuff /datum/sprite_accessory/marking/una_face name = "Face Color (Una)" icon_state = "una_face" body_parts = list(BP_HEAD) - species_allowed = list(SPECIES_UNATHI) + //species_allowed = list(SPECIES_UNATHI) //Removing Polaris whitelits /datum/sprite_accessory/marking/una_facelow name = "Face Color Low (Una)" icon_state = "una_facelow" body_parts = list(BP_HEAD) - species_allowed = list(SPECIES_UNATHI) + //species_allowed = list(SPECIES_UNATHI) //Removing Polaris whitelits /datum/sprite_accessory/marking/una_scutes name = "Scutes (Una)" icon_state = "una_scutes" body_parts = list(BP_TORSO) - species_allowed = list(SPECIES_UNATHI) + //species_allowed = list(SPECIES_UNATHI) //Removing Polaris whitelits //Tesh stuff. @@ -2952,41 +2954,41 @@ shaved name = "Leaves (Diona)" icon_state = "diona_leaves" body_parts = list(BP_L_FOOT, BP_R_FOOT, BP_L_LEG, BP_R_LEG, BP_L_ARM, BP_R_ARM, BP_L_HAND, BP_R_HAND, BP_TORSO, BP_GROIN, BP_HEAD) - species_allowed = list(SPECIES_DIONA) + //species_allowed = list(SPECIES_DIONA) //Removing Polaris whitelits /datum/sprite_accessory/marking/diona_thorns name = "Thorns (Diona)" icon_state = "diona_thorns" body_parts =list(BP_TORSO, BP_HEAD) - species_allowed = list(SPECIES_DIONA) + //species_allowed = list(SPECIES_DIONA) //Removing Polaris whitelits do_colouration = 0 /datum/sprite_accessory/marking/diona_flowers name = "Flowers (Diona)" icon_state = "diona_flowers" body_parts =list(BP_TORSO, BP_HEAD) - species_allowed = list(SPECIES_DIONA) + //species_allowed = list(SPECIES_DIONA) //Removing Polaris whitelits do_colouration = 0 /datum/sprite_accessory/marking/diona_moss name = "Moss (Diona)" icon_state = "diona_moss" body_parts =list(BP_TORSO) - species_allowed = list(SPECIES_DIONA) + //species_allowed = list(SPECIES_DIONA) //Removing Polaris whitelits do_colouration = 0 /datum/sprite_accessory/marking/diona_mushroom name = "Mushroom (Diona)" icon_state = "diona_mushroom" body_parts =list(BP_HEAD) - species_allowed = list(SPECIES_DIONA) + //species_allowed = list(SPECIES_DIONA) //Removing Polaris whitelits do_colouration = 0 /datum/sprite_accessory/marking/diona_antennae name = "Antennae (Diona)" icon_state = "diona_antennae" body_parts =list(BP_HEAD) - species_allowed = list(SPECIES_DIONA) + //species_allowed = list(SPECIES_DIONA) //Removing Polaris whitelits do_colouration = 0 //Skrell stuff. @@ -2995,7 +2997,7 @@ shaved name = "Countershading (Skrell)" icon_state = "skr_shade" body_parts = list(BP_TORSO, BP_GROIN, BP_HEAD) - species_allowed = list(SPECIES_SKRELL) + //species_allowed = list(SPECIES_SKRELL) //Removing Polaris whitelits /datum/sprite_accessory/marking/skrell/stripes name = "Poison Dart Stripes (Skrell)" @@ -3009,7 +3011,7 @@ shaved icon_state = "aug_backports" genetic = FALSE body_parts = list(BP_TORSO) - species_allowed = list(SPECIES_HUMAN,SPECIES_SKRELL,SPECIES_TAJ,SPECIES_HUMAN_VATBORN,SPECIES_UNATHI,SPECIES_ZADDAT) + species_allowed = list() //Removing Polaris whitelits /datum/sprite_accessory/marking/aug/diode name = "Augment (Backports Diode, Back)" @@ -3047,7 +3049,7 @@ shaved name = "Augment (Lower Jaw, Head)" icon_state = "aug_lowerjaw" body_parts = list(BP_HEAD) - species_allowed = list(SPECIES_HUMAN,SPECIES_SKRELL,SPECIES_HUMAN_VATBORN,SPECIES_ZADDAT) + species_allowed = list() //Removing Polaris whitelits /datum/sprite_accessory/marking/aug/scalpports name = "Augment (Scalp Ports)" @@ -3489,27 +3491,64 @@ shaved /datum/sprite_accessory/skin/human name = "Default human skin" icon_state = "default" - species_allowed = list(SPECIES_HUMAN,SPECIES_HUMAN_VATBORN) + //species_allowed = list(SPECIES_HUMAN,SPECIES_HUMAN_VATBORN) //Removing Polaris whitelits /datum/sprite_accessory/skin/human_tatt01 name = "Tatt01 human skin" icon_state = "tatt1" - species_allowed = list(SPECIES_HUMAN,SPECIES_HUMAN_VATBORN) + //species_allowed = list(SPECIES_HUMAN,SPECIES_HUMAN_VATBORN) //Removing Polaris whitelits /datum/sprite_accessory/skin/tajaran name = "Default tajaran skin" icon_state = "default" icon = 'icons/mob/human_races/r_tajaran.dmi' - species_allowed = list(SPECIES_TAJ) + //species_allowed = list(SPECIES_TAJ) //Removing Polaris whitelits /datum/sprite_accessory/skin/unathi name = "Default Unathi skin" icon_state = "default" icon = 'icons/mob/human_races/r_lizard.dmi' - species_allowed = list(SPECIES_UNATHI) + //species_allowed = list(SPECIES_UNATHI) //Removing Polaris whitelits /datum/sprite_accessory/skin/skrell name = "Default skrell skin" icon_state = "default" icon = 'icons/mob/human_races/r_skrell.dmi' - species_allowed = list(SPECIES_SKRELL) + //species_allowed = list(SPECIES_SKRELL) //Removing Polaris whitelits + +//Vox Exclusives +/datum/sprite_accessory/marking/vox + name = "Vox Beak" + icon = 'icons/mob/human_races/markings_vox.dmi' + icon_state = "vox_beak" + species_allowed = list(SPECIES_VOX) + color_blend_mode = ICON_MULTIPLY + body_parts = list(BP_HEAD) + +/datum/sprite_accessory/marking/vox/voxtalons + name = "Vox scales" + icon_state = "vox_talons" + color_blend_mode = ICON_MULTIPLY + body_parts = list(BP_R_ARM,BP_L_ARM,BP_R_HAND,BP_L_HAND,BP_R_LEG,BP_L_LEG,BP_R_FOOT,BP_L_FOOT) + +/datum/sprite_accessory/marking/vox/voxclaws + name = "Vox Claws" + icon_state = "Voxclaws" + color_blend_mode = ICON_MULTIPLY + body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_HAND,BP_R_HAND) + +/datum/sprite_accessory/marking/vox/vox_alt + name = "Vox Alternate" + icon_state = "bay_vox" + body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND,BP_TORSO,BP_GROIN,BP_HEAD) + +/datum/sprite_accessory/marking/vox/vox_alt_eyes + name = "Alternate Vox Eyes" + icon_state = "bay_vox_eyes" + body_parts = list(BP_HEAD) + +/datum/sprite_accessory/marking/vox/voxscales + name = "Alternate Vox scales" + icon_state = "Voxscales" + color_blend_mode = ICON_MULTIPLY + body_parts = list(BP_R_ARM,BP_L_ARM,BP_R_HAND,BP_L_HAND,BP_R_LEG,BP_L_LEG,BP_R_FOOT,BP_L_FOOT) diff --git a/code/modules/mob/new_player/sprite_accessories_ear_vr.dm b/code/modules/mob/new_player/sprite_accessories_ear_vr.dm index a80cd390699..2a4750f2ee7 100644 --- a/code/modules/mob/new_player/sprite_accessories_ear_vr.dm +++ b/code/modules/mob/new_player/sprite_accessories_ear_vr.dm @@ -32,6 +32,14 @@ // Ears avaliable to anyone +/datum/sprite_accessory/ears/alien_slug + name = "Alien slug antennae" + desc = "" + icon = 'icons/mob/vore/ears_vr.dmi' + icon_state = "alien_slug" + do_colouration = 1 + color_blend_mode = ICON_MULTIPLY + /datum/sprite_accessory/ears/taj_ears name = "tajaran, colorable (old)" species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW, SPECIES_ALTEVIAN) //This lets all races use @@ -887,4 +895,9 @@ icon = 'icons/mob/vore/ears_vr.dmi' icon_state = "curly_bug_tesh" do_colouration = 1 - color_blend_mode = ICON_MULTIPLY \ No newline at end of file + color_blend_mode = ICON_MULTIPLY + +/datum/sprite_accessory/ears/syrishroom + name = "Orange Mushroom Cap" + icon = 'icons/mob/vore/ears_vr.dmi' + icon_state = "syrishroom" \ No newline at end of file diff --git a/code/modules/mob/new_player/sprite_accessories_extra.dm b/code/modules/mob/new_player/sprite_accessories_extra.dm index 0e8b603a7f9..3569d1badd6 100644 --- a/code/modules/mob/new_player/sprite_accessories_extra.dm +++ b/code/modules/mob/new_player/sprite_accessories_extra.dm @@ -1,7 +1,7 @@ /datum/sprite_accessory/marking/vr icon = 'icons/mob/human_races/markings_alt.dmi' - species_allowed = list(SPECIES_EVENT1, SPECIES_EVENT2, SPECIES_EVENT3) + species_allowed = list() /datum/sprite_accessory/marking/vr/vulp_belly name = "belly fur (Vulp)" @@ -68,14 +68,14 @@ icon_state = "sergal_full" color_blend_mode = ICON_MULTIPLY body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND,BP_GROIN,BP_TORSO,BP_HEAD) - species_allowed = list("Sergal") + //species_allowed = list("Sergal") //Removing Polaris whitelits /datum/sprite_accessory/marking/vr/sergal_full_female name = "Sergal Markings (Female)" icon_state = "sergal_full_female" color_blend_mode = ICON_MULTIPLY body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND,BP_GROIN,BP_TORSO,BP_HEAD) - species_allowed = list("Sergal") + //species_allowed = list("Sergal") //Removing Polaris whitelits /datum/sprite_accessory/marking/vr/monoeye name = "Monoeye" @@ -337,6 +337,7 @@ icon_state = "tesh-feathers" color_blend_mode = ICON_MULTIPLY body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_HAND,BP_R_HAND) + species_allowed = list(SPECIES_TESHARI) /datum/sprite_accessory/marking/vr/harpy_feathers name = "Rapala leg Feather" @@ -406,13 +407,13 @@ name = "Anime Eyes Outer" icon_state = "animeeyesouter" body_parts = list(BP_HEAD) - +/* /datum/sprite_accessory/marking/vr/panda_eye_marks name = "Panda Eye Markings" icon_state = "eyes_panda" body_parts = list(BP_HEAD) species_allowed = list(SPECIES_EVENT1, SPECIES_EVENT2, SPECIES_EVENT3) - +*/ /datum/sprite_accessory/marking/vr/catwomantorso name = "Catwoman chest stripes" icon_state = "catwomanchest" @@ -442,6 +443,7 @@ icon_state = "teshi_sf" color_blend_mode = ICON_MULTIPLY body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_HAND,BP_R_HAND,BP_TORSO) + species_allowed = list(SPECIES_TESHARI) /datum/sprite_accessory/marking/vr/spirit_lights name = "Ward - Spirit FBP Lights" @@ -564,7 +566,7 @@ shadekin_snoot icon_state = "dnose" color_blend_mode = ICON_MULTIPLY body_parts = list(BP_HEAD) - + /datum/sprite_accessory/marking/vr/vulp_skull name = "Vulpkanin Skull Face" icon_state = "vulp_skull" @@ -612,13 +614,14 @@ shadekin_snoot icon_state = "chest_fluff" color_blend_mode = ICON_MULTIPLY body_parts = list(BP_TORSO) - + /datum/sprite_accessory/marking/vr/tesh_skull name = "Teshari Skull Face" icon_state = "teshari_skull" color_blend_mode = ICON_MULTIPLY body_parts = list(BP_HEAD) - + species_allowed = list(SPECIES_TESHARI) + /datum/sprite_accessory/marking/vr/shoulder_fluff name = "Shoulder Fluff" icon_state = "shoulder_markings" diff --git a/code/modules/mob/new_player/sprite_accessories_extra_vr.dm b/code/modules/mob/new_player/sprite_accessories_extra_vr.dm index e3ee23efe41..942f49087da 100644 --- a/code/modules/mob/new_player/sprite_accessories_extra_vr.dm +++ b/code/modules/mob/new_player/sprite_accessories_extra_vr.dm @@ -2,9 +2,8 @@ //Reminder: BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND,BP_TORSO,BP_GROIN,BP_HEAD /datum/sprite_accessory/marking //Override for base markings - var/organ_override = FALSE color_blend_mode = ICON_ADD - species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW, SPECIES_ALTEVIAN) //This lets all races use + species_allowed = list() //This lets all races use /datum/sprite_accessory/marking/vr_vulp_belly name = "belly fur (Vulp)" @@ -82,7 +81,7 @@ icon_state = "sergal_full" color_blend_mode = ICON_MULTIPLY body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND,BP_GROIN,BP_TORSO,BP_HEAD) - species_allowed = list("Sergal") + //species_allowed = list("Sergal") //Removing Polaris whitelits /datum/sprite_accessory/marking/vr_sergal_full_female name = "Sergal Markings (Female)" @@ -90,7 +89,7 @@ icon_state = "sergal_full_female" color_blend_mode = ICON_MULTIPLY body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND,BP_GROIN,BP_TORSO,BP_HEAD) - species_allowed = list("Sergal") + //("Sergal") /datum/sprite_accessory/marking/vr_monoeye name = "Monoeye" @@ -402,6 +401,7 @@ icon_state = "tesh-feathers" color_blend_mode = ICON_MULTIPLY body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_HAND,BP_R_HAND) + species_allowed = list(SPECIES_TESHARI) /datum/sprite_accessory/marking/vr_harpy_feathers name = "Rapala leg Feather" @@ -489,7 +489,7 @@ icon = 'icons/mob/human_races/markings_vr.dmi' icon_state = "eyes_panda" body_parts = list(BP_HEAD) - species_allowed = list(SPECIES_EVENT1, SPECIES_EVENT2, SPECIES_EVENT3) + //species_allowed = list(SPECIES_EVENT1, SPECIES_EVENT2, SPECIES_EVENT3) //Removing Polaris whitelits /datum/sprite_accessory/marking/vr_catwomantorso name = "Catwoman chest stripes" @@ -525,6 +525,7 @@ icon_state = "teshi_sf" color_blend_mode = ICON_MULTIPLY body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_HAND,BP_R_HAND,BP_TORSO) + species_allowed = list(SPECIES_TESHARI) /datum/sprite_accessory/marking/vr_spirit_lights name = "Ward - Spirit FBP Lights" @@ -681,19 +682,6 @@ body_parts = list(BP_L_FOOT,BP_R_FOOT) //CitRP stuff -/datum/sprite_accessory/marking/vr_vox_alt - name = "Vox Alternate" - icon = 'icons/mob/human_races/markings_vr.dmi' - icon_state = "bay_vox" - body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND,BP_TORSO,BP_GROIN,BP_HEAD) - species_allowed = list(SPECIES_VOX) - -/datum/sprite_accessory/marking/vr_vox_alt_eyes - name = "Alternate Vox Eyes" - icon = 'icons/mob/human_races/markings_vr.dmi' - icon_state = "bay_vox_eyes" - body_parts = list(BP_HEAD) - species_allowed = list(SPECIES_VOX) /datum/sprite_accessory/marking/vr_c_beast_body name = "Cyber Body" @@ -769,27 +757,6 @@ body_parts = list(BP_L_LEG,BP_R_LEG,BP_L_HAND,BP_R_HAND,BP_TORSO,BP_GROIN,BP_HEAD) species_allowed = list(SPECIES_TESHARI) -/datum/sprite_accessory/marking/vr_voxscales - name = "Vox Scales" - icon = 'icons/mob/human_races/markings_vr.dmi' - icon_state = "Voxscales" - color_blend_mode = ICON_MULTIPLY - body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_LEG,BP_R_LEG,BP_L_ARM,BP_R_ARM,BP_L_HAND,BP_R_HAND,BP_HEAD) - -/datum/sprite_accessory/marking/vr_voxclaws - name = "Vox Claws" - icon = 'icons/mob/human_races/markings_vr.dmi' - icon_state = "Voxclaws" - color_blend_mode = ICON_MULTIPLY - body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_HAND,BP_R_HAND) - -/datum/sprite_accessory/marking/vr_voxbeak - name = "Vox Beak" - icon = 'icons/mob/human_races/markings_vr.dmi' - icon_state = "Voxscales" - color_blend_mode = ICON_MULTIPLY - body_parts = list(BP_HEAD) - /datum/sprite_accessory/marking/vr_unathihood name = "Cobra Hood" icon = 'icons/mob/human_races/markings_vr.dmi' @@ -901,6 +868,7 @@ icon_state = "tesh-beak" color_blend_mode = ICON_MULTIPLY body_parts = list(BP_HEAD) + species_allowed = list(SPECIES_TESHARI) /datum/sprite_accessory/marking/vr_tesh_beak_alt name = "Teshari beak, rounded" @@ -908,6 +876,7 @@ icon_state = "tesh-beak-alt" color_blend_mode = ICON_MULTIPLY body_parts = list(BP_HEAD) + species_allowed = list(SPECIES_TESHARI) /datum/sprite_accessory/marking/vr_generic_hooves name = "Generic Hooves" @@ -917,4 +886,3 @@ body_parts = list(BP_L_FOOT,BP_R_FOOT) hide_body_parts = list(BP_L_FOOT,BP_R_FOOT) organ_override = TRUE - diff --git a/code/modules/mob/new_player/sprite_accessories_tail_vr.dm b/code/modules/mob/new_player/sprite_accessories_tail_vr.dm index 8ebeda1b664..8c5483c7d1a 100644 --- a/code/modules/mob/new_player/sprite_accessories_tail_vr.dm +++ b/code/modules/mob/new_player/sprite_accessories_tail_vr.dm @@ -22,6 +22,15 @@ // Everyone tails +/datum/sprite_accessory/tail/alien_slug + name = "Alien slug tail" + desc = "" + icon = 'icons/mob/vore/tails_vr.dmi' + icon_state = "alien_slug" + do_colouration = 1 + color_blend_mode = ICON_MULTIPLY + extra_overlay = "alien_slug_markings" + /datum/sprite_accessory/tail/invisible name = "hide species-sprite tail" icon = null diff --git a/code/modules/modular_computers/computers/modular_computer/core.dm b/code/modules/modular_computers/computers/modular_computer/core.dm index 8639aadb63b..827b7204f80 100644 --- a/code/modules/modular_computers/computers/modular_computer/core.dm +++ b/code/modules/modular_computers/computers/modular_computer/core.dm @@ -291,4 +291,10 @@ if(autorun.stored_data == program) autorun.stored_data = null else - autorun.stored_data = program \ No newline at end of file + autorun.stored_data = program + +/obj/item/modular_computer/proc/find_file_by_uid(var/uid) + if(hard_drive) + . = hard_drive.find_file_by_uid(uid) + if(portable_drive && !.) + . = portable_drive.find_file_by_uid(uid) \ No newline at end of file diff --git a/code/modules/modular_computers/file_system/programs/generic/file_browser.dm b/code/modules/modular_computers/file_system/programs/generic/file_browser.dm index 30719cf0be1..54e66497ea7 100644 --- a/code/modules/modular_computers/file_system/programs/generic/file_browser.dm +++ b/code/modules/modular_computers/file_system/programs/generic/file_browser.dm @@ -25,7 +25,7 @@ switch(action) if("PRG_openfile") - open_file = params["name"] + open_file = params["uid"] return TRUE if("PRG_newtextfile") if(!HDD) @@ -33,19 +33,20 @@ var/newname = sanitize(tgui_input_text(usr, "Enter file name or leave blank to cancel:", "File rename")) if(!newname) return - var/datum/computer_file/data/F = new/datum/computer_file/data() + if(HDD.find_file_by_name(newname)) + error = "I/O error: File already exists." + return + var/datum/computer_file/data/F = new/datum/computer_file/data/text() F.filename = newname - F.filetype = "TXT" HDD.store_file(F) return TRUE if("PRG_closefile") open_file = null - error = null return TRUE if("PRG_clone") if(!HDD) return - var/datum/computer_file/F = HDD.find_file_by_name(params["name"]) + var/datum/computer_file/F = HDD.find_file_by_uid(params["uid"]) if(!F || !istype(F)) return var/datum/computer_file/C = F.clone(1) @@ -56,7 +57,7 @@ return if(!open_file) return - var/datum/computer_file/data/F = HDD.find_file_by_name(open_file) + var/datum/computer_file/data/F = computer.find_file_by_uid(open_file) if(!F || !istype(F)) return if(F.do_not_edit && (tgui_alert(usr, "WARNING: This file is not compatible with editor. Editing it may result in permanently corrupted formatting or damaged data consistency. Edit anyway?", "Incompatible File", list("No", "Yes")) == "No")) @@ -65,82 +66,86 @@ var/oldtext = html_decode(F.stored_data) oldtext = replacetext(oldtext, "\[br\]", "\n") - var/newtext = sanitize(replacetext(tgui_input_text(usr, "Editing file [open_file]. You may use most tags used in paper formatting:", "Text Editor", oldtext, MAX_TEXTFILE_LENGTH, TRUE, prevent_enter = TRUE), "\n", "\[br\]"), MAX_TEXTFILE_LENGTH) + var/newtext = sanitize(replacetext(tgui_input_text(usr, "Editing file [F.filename].[F.filetype]. You may use most tags used in paper formatting:", "Text Editor", oldtext, MAX_TEXTFILE_LENGTH, TRUE, prevent_enter = TRUE), "\n", "\[br\]"), MAX_TEXTFILE_LENGTH) if(!newtext) return if(F) var/datum/computer_file/data/backup = F.clone() - HDD.remove_file(F) + F.holder.remove_file(F) F.stored_data = newtext F.calculate_size() // We can't store the updated file, it's probably too large. Print an error and restore backed up version. // This is mostly intended to prevent people from losing texts they spent lot of time working on due to running out of space. // They will be able to copy-paste the text from error screen and store it in notepad or something. - if(!HDD.store_file(F)) + if(!F.holder.store_file(F)) error = "I/O error: Unable to overwrite file. Hard drive is probably full. You may want to backup your changes before closing this window:

[html_decode(F.stored_data)]

" - HDD.store_file(backup) + F.holder.store_file(backup) return TRUE if("PRG_printfile") if(!HDD) return if(!open_file) return - var/datum/computer_file/data/F = HDD.find_file_by_name(open_file) + var/datum/computer_file/data/F = computer.find_file_by_uid(open_file) if(!F || !istype(F)) return if(!computer.nano_printer) error = "Missing Hardware: Your computer does not have required hardware to complete this operation." - return + return TRUE if(!computer.nano_printer.print_text(pencode2html(F.stored_data))) error = "Hardware error: Printer was unable to print the file. It may be out of paper." - return + return TRUE return TRUE if("PRG_deletefile") if(!HDD) return - var/datum/computer_file/file = HDD.find_file_by_name(params["name"]) + var/datum/computer_file/file = computer.find_file_by_uid(params["uid"]) if(!file || file.undeletable) return - HDD.remove_file(file) - return TRUE - if("PRG_usbdeletefile") - if(!RHDD) - return - var/datum/computer_file/file = RHDD.find_file_by_name(params["name"]) - if(!file || file.undeletable) - return - RHDD.remove_file(file) + file.holder.remove_file(file) return TRUE if("PRG_rename") if(!HDD) return - var/datum/computer_file/file = HDD.find_file_by_name(params["name"]) + var/datum/computer_file/file = computer.find_file_by_uid(params["uid"]) if(!file) return var/newname = params["new_name"] if(!newname) return + if(file.holder.find_file_by_name(newname)) + error = "I/O error: File already exists." + return TRUE file.filename = newname return TRUE if("PRG_copytousb") if(!HDD || !RHDD) return - var/datum/computer_file/F = HDD.find_file_by_name(params["name"]) + var/datum/computer_file/F = HDD.find_file_by_uid(params["uid"]) if(!F) return var/datum/computer_file/C = F.clone(FALSE) + if(!RHDD.try_store_file(C)) + error = "I/O error: File already exists or insufficient space on drive." + return TRUE RHDD.store_file(C) return TRUE if("PRG_copyfromusb") if(!HDD || !RHDD) return - var/datum/computer_file/F = RHDD.find_file_by_name(params["name"]) + var/datum/computer_file/F = RHDD.find_file_by_uid(params["uid"]) if(!F || !istype(F)) return var/datum/computer_file/C = F.clone(FALSE) + if(!HDD.try_store_file(C)) + error = "I/O error: File already exists or insufficient space on drive." + return TRUE HDD.store_file(C) return TRUE + if("PRG_clearerror") + error = null + return TRUE /datum/computer_file/program/filemanager/tgui_data(mob/user) var/list/data = get_header_data() @@ -163,10 +168,10 @@ if(open_file) var/datum/computer_file/data/file - if(!computer || !computer.hard_drive) + if(!computer || (!computer.hard_drive && computer.portable_drive)) data["error"] = "I/O ERROR: Unable to access hard drive." else - file = HDD.find_file_by_name(open_file) + file = computer.find_file_by_uid(open_file) if(!istype(file)) data["error"] = "I/O ERROR: Unable to open file." else @@ -178,6 +183,7 @@ files += list(list( "name" = F.filename, "type" = F.filetype, + "uid" = F.uid, "size" = F.size, "undeletable" = F.undeletable )) @@ -189,6 +195,7 @@ usbfiles += list(list( "name" = F.filename, "type" = F.filetype, + "uid" = F.uid, "size" = F.size, "undeletable" = F.undeletable )) diff --git a/code/modules/modular_computers/hardware/hard_drive.dm b/code/modules/modular_computers/hardware/hard_drive.dm index e365ff16e62..09ccde9e499 100644 --- a/code/modules/modular_computers/hardware/hard_drive.dm +++ b/code/modules/modular_computers/hardware/hard_drive.dm @@ -161,6 +161,21 @@ return F return null +// Tries to find the file by unique ID. Returns null on failure +/obj/item/weapon/computer_hardware/hard_drive/proc/find_file_by_uid(var/uid) + if(!check_functionality()) + return null + + if(!uid) + return null + + if(!stored_files) + return null + + for(var/datum/computer_file/F in stored_files) + if(F.uid == uid) + return F + /obj/item/weapon/computer_hardware/hard_drive/Destroy() if(holder2 && (holder2.hard_drive == src)) holder2.hard_drive = null diff --git a/code/modules/multiz/movement.dm b/code/modules/multiz/movement.dm index 1b4f600a0b3..9001505ce1c 100644 --- a/code/modules/multiz/movement.dm +++ b/code/modules/multiz/movement.dm @@ -173,6 +173,9 @@ if(Process_Spacemove()) return TRUE + if(has_hands) + return TRUE + /mob/living/carbon/human/can_ztravel() if(incapacitated()) return FALSE diff --git a/code/modules/persistence/effects/filth_vr.dm b/code/modules/persistence/effects/filth_vr.dm index deea9cb877e..34733d4bc81 100644 --- a/code/modules/persistence/effects/filth_vr.dm +++ b/code/modules/persistence/effects/filth_vr.dm @@ -4,6 +4,8 @@ /datum/persistent/filth/CreateEntryInstance(var/turf/creating, var/list/token) var/_path = token["path"] + if (isspace(creating) || iswall(creating) ||isopenspace(creating)) + return if (saves_dirt) new _path(creating, token["age"]+1, token["dirt"]) else diff --git a/code/modules/player_tips_vr/player_tips_controller_vr.dm b/code/modules/player_tips_vr/player_tips_controller_vr.dm new file mode 100644 index 00000000000..90a542838a8 --- /dev/null +++ b/code/modules/player_tips_vr/player_tips_controller_vr.dm @@ -0,0 +1,49 @@ +/*Main file that controls frequency of OOC player tips +Whether player tips start firing at all is determined by a global preference +Weighted list of player tips held in a separate file. +Controlled by the player_tips subsystem under code/controllers/subsystems/player_tips + +*/ + +/datum/player_tips + var/min_tip_delay = 45 MINUTES + var/max_tip_delay = 75 MINUTES + var/tip_delay = 5 MINUTES //10 minute initial delay for first tip of the day. Timer starts 5 minutes after game starts, plus 5 minutes here. Gets overwritten afterwards + var/last_tip_time = 0 + var/last_tip = null + var/list/HasReceived = list() //Tracking who received tips. We let them know how to turn them off if they're not on this list. Stores CKeys until round-end. + +//Called every 5 minutes as defined in the subsystem. +/datum/player_tips/proc/send_tips() + if(world.time > last_tip_time + tip_delay) + last_tip_time = world.time + tip_delay = rand(min_tip_delay, max_tip_delay) + var/tip = pick_tip("none") //"none" picks a random topic of advice. + var/stopWhile = 0 + while(tip == last_tip) //Prevent posting the same tip twice in a row if possible, but don't force it. + tip = pick_tip("none") + stopWhile = stopWhile + 1 + if(stopWhile >= 10) + break + last_tip = tip + for(var/mob/M in player_list) + if(M.is_preference_enabled(/datum/client_preference/player_tips)) + if(!M.key && !(M.key in HasReceived)) + to_chat(M, SPAN_WARNING("You have periodic player tips enabled. You may turn them off at any time with the Toggle Receiving Player Tips verb in Preferences, or in character set up under the OOC tab!\n Player tips appear every 45-75 minutes.")) + HasReceived.Add(M.key) + to_chat(M, SPAN_NOTICE("[tip]")) + + + + + +/mob/living/verb/request_automated_advice() + set name = "Request Automated Advice" + set desc = "Sends you advice from a list of possibilities. You can choose to request a specific topic." + set category = "OOC" + + var/choice = tgui_input_list(src, "What topic would you like to receive advice on?", "Select Topic", list("none","general","gameplay","roleplay","lore","cancel")) + if(choice == "cancel") + return + var/static/datum/player_tips/player_tips = new + to_chat(src, SPAN_NOTICE("[player_tips.pick_tip(choice)]")) diff --git a/code/modules/player_tips_vr/player_tips_list_vr.dm b/code/modules/player_tips_vr/player_tips_list_vr.dm new file mode 100644 index 00000000000..ede4646f3f5 --- /dev/null +++ b/code/modules/player_tips_vr/player_tips_list_vr.dm @@ -0,0 +1,96 @@ +/* List of player tips +Weighted to emphasize more important over less.area +Weights are not additive. You can have multiple prob(50) items. +prob(50) makes it half as likely to appear and so forth. +When editing the list, please try and keep similar probabilities near each other. High on top, low on bottom */ + +//argument determines if to pick a random tip or use a forced choice. +/datum/player_tips/proc/pick_tip(var/isSpecific) + var/choice = null + if(!(isSpecific == "none" || isSpecific == "general" || isSpecific == "gameplay" || isSpecific == "roleplay" || isSpecific == "lore" )) + choice = "none" //Making sure that wrong arguments still give tips. + if(isSpecific == "none") + choice = pick ( + prob(50); "gameplay", + prob(40); "general", + prob(40); "roleplay", + prob(20); "lore" + ) + else + choice = isSpecific + + switch(choice) + if("general") + var/info = "The following is a general tip to playing on VOREStation! \n" + return pick( + prob(60); "[info] Got a question about gameplay, roleplay or the setting? Press F1 to Mentorhelp!", + prob(60); "[info] We have a wiki that is actively updated! Please check it out at https://wiki.vore-station.net/Main_Page for help!", + prob(60); "[info] Unsure about rules? Press F1 and ask our admins for clarification - they are happy to help.", + prob(50); "[info] To make this server fun for all types of vore enjoyment, including conflicting desires, we have a firm policy of Bystander Consent, be mindful of those around you! https://wiki.vore-station.net/Rules#Bystander_Consent_Policy", + prob(35); "[info] Our discord is an excellent resource to stay up to date about changes and events! If wanting to separate your kink and real identities, Discord has a built in means to swap accounts within the client. It is OK to lurk!", + prob(35); "[info] Encountered what seems like a bug? Even if uncertain, feel free to go ahead and report it at https://github.com/VOREStation/VOREStation/issues !", + prob(30); "[info] Having difficulties getting started? Pressing F3 to speak and typing '; Hello! I'm a new hire. Could someone please give me a tour?' or as appropriate for your character is a good way to start! More help available at: https://wiki.vore-station.net/The_Basics", + prob(30); "[info] Building a custom-species, or just trying to spice up a canon one? Take a look at our possible traits at https://wiki.vore-station.net/Traits", + prob(30); "[info] Don't be afraid to approach your fellow players for advice! Learning things ICly can help build powerful bonds!", + prob(30); "[info] Need some guideance making a character or with roleplay concepts? Our discord's Cadet-Academy and Lore channels are happy to help!", + prob(30); "[info] Want to try out a new department? Consider joining as an intern when it's well-staffed. Our players enjoy teaching eager students. You can approach such roleplay as simply getting taught the local technologies, procedures - you don't need to be 'fresh out of school' to justify it!", + prob(5); "[info] Got another tip for the list? Please let us know on Discord/Dev-suggestions!" + ) + + + if("gameplay") + var/info = "The following is a gameplay-focused tip to playing on VOREStation \n" + return pick( + prob(50); "[info] To talk to your fellow coworkers, use ';'! You may append it by an exclamation mark, like ';!' to perform an audiable emote. ", + prob(50); "[info] Lost on the map? You can find In-Character help by speaking on the Common Radio. You can do this by pressing F3 and typing ' ; ' before your message. Your fellow co-workers will likely help. If OOC help is preferred, press F1 for mentorhelp. ", + prob(50); "[info] You may set your suit sensors by clicking on the icon in the bottom left corner, then right click the clothes that appear right above it. It is recommended to turn on suit sensors to 'TRACKING' before doing anything dangerous like mining, and to turn them off before digestion scenes as prey.", + prob(35); "[info] You can insert your I.D into your PDA. This frees up your belt from having to carry your PDA. Furthermore, by clicking and dragging the PDA to game screen, you can use it without holding it!", + prob(35); "[info] It is never a bad idea to visit the medbay if you get injured - small burns and cuts can get infected and become harder to treat! If there is no medical staff, bathrooms and the bar often has a NanoMed on the wall - with ointments to disinfect cuts and burns, bandages to treat bruises and encourage healing.", + prob(35); "[info] Your vore-bellies have multiple add-ons! Muffling is excellent to ensure your prey does not accidentally inform everyone about their predicament, and jam suit sensors is a great courtesy to avoid medical being worried about your prey!", + prob(25); "[info] Two control modes exist for SS13 - hotkey ON and hotkey OFF. You can swap between the two modes by pressing TAB. In hotkey mode, to chat you need to press T to say anything which creates a small talking bubble. You can consult our list of hotkeys at https://wiki.vore-station.net/Keyboard_Shortcuts", + prob(25); "[info] Do you want to shift your character around, for instance to appear as if leaning on the wall? Press CTRL + SHIFT + arrow keys to do so! Moving resets this.", + prob(25); "[info] Emergency Fire Doors seal breaches and keep active fires out. Please do not open them without good reason.", + prob(25); "[info] The kitchen's Oven can fit multiple ingredients in one slot if you pull the baking tray out first. This is required for most recipes, and the Grille and Deep Frier work the same way!", + prob(10); "[info] You can keep a single item between rounds using secure lockboxes! Beware! You can only store 1 item across all characters! To find these lockboxes, feel free to ask over radio!", + prob(10); "[info] Not every hostile NPC you encounter while mining or exploring need to be defeated. Sometimes, it's better to avoid or run away from them. For example, star-treaders are slow and weak but have lots of HP - it is better to just run away." + ) + + if("roleplay") + var/info = "The following is a roleplay-focused tip to playing on VOREStation \n" + return pick( + prob(45); "[info] Our server has a strong 'Bystander Consent' policy, meaning that scenes are expected to be mindful of the preferences of those around them in public, not just their partners. When in doubt, keep it subtle, and communicate via looc!", + prob(40); "[info] Please avoid a character that knows everything. Having only a small set of jobs you are capable of doing can help flesh out your character! It's OK for things to break and fail if nobody is around to fix it - you do not need to do others' jobs.", + prob(40); "[info] Just because you see something doesn't mean your character has to. A courtesy 'missing' of contraband or scene details can go a long way towards preserving everyone's fun!", + prob(40); "[info] Embrace the limits of your character's skillsets! Seeking out other players to help you with a more challenging task might build friendships, or even lead to a scene!", + prob(35); "[info] Slowing down when meeting another player can help with finding roleplay! Your fellow player might be typing up a greeting or an emote, and if you run off you won't see it!", + prob(35); "[info] Having difficulty finding scenes? The number one tip that people should take for finding scenes is to be active! Generally speaking, people are more likely to interact with you if you are moving about and doing things. Sitting at a table passively might make others think you are AFK or busy!", + prob(25); "[info] It is a good idea to wait a few moments after using mechanics like lick, hug or headpat on another player. They might be typing up a response or wish to reciprocate, and if you run away you might miss out!", + prob(25); "[info] Participating in an away mission and see something acting strange? Try emoting or talking to it before resorting to fighting. It may be a GM event!", + prob(25); "[info] It is always a good idea to communicate on your department's private channel (whose key you can learn by examining your headset) when responding to an emergency! This lets your coworkers know if they might be needed!", + prob(25); "[info] While following the SOP is not mandatory, and you are free to break it (albeit, with potential in-character consequences), departments like security and medical do well to be familiar with them! https://wiki.vore-station.net/Standard_Operating_Procedure", + prob(25); "[info] Think a player is acting especially antagonistic? It might be better to Ahelp (with F1) rather than try to deal with it icly, staff can make sure it's all okay.", + prob(20); "[info] See a minor infraction as Security with a minimal time punishment? Consider using your ticket printer to give a non obtrusive punishment.", + prob(20); "[info] Unwilling vore may be a crime, but not every instance of it you see may be so. It's better to default to not accusing people of felonies!", + prob(15); "[info] We are a heavy roleplay server. This does not neccessarily mean 'serious' roleplay, levity and light-hearted RP is more than welcome! Please do not ignore people just because it is unlikely you will be able to scene.", + prob(10); "[info] Sending faxes to central command, using the 'pray' verb or pressing F1 to ahelp are highly encouraged when exploring the gateway or overmap locations! Letting GMs know something fun is happening allows them to spice things up and make the world feel alive!" + ) + + if("lore") + var/info = "The following is tip for understanding the lore of VOREStation \n" + return pick( + prob(75); "[info] Our lore significantly differs from that of other servers. You can find the key differences at https://wiki.vore-station.net/Key_differences#We_have_a_well_fleshed_out_lore._We_are_not_comically_grimdark,_but_neither_a_utopia.", + prob(75); "[info] You can find a short summary of our setting that everyone should know at https://wiki.vore-station.net/Vital_Lore", + prob(75); "[info] Unlike other servers, our synthetics (cyborgs, positronics) are more often than not have equal rights as humanity. Drones, inspired by realistic A.I, are more complicated https://wiki.vore-station.net/Synthetics", + prob(75); "[info] Unlike other servers, all species are allowed to be heads of staff. While discrimination definitely occurs, out in the isolated colonies things are much more cosmopolitan https://wiki.vore-station.net/Commonwealth_of_Sol-Procyon#Baby,_lock_the_door._They_are_out", + prob(50); "[info] Unlike other servers, Tajara and Unathi were not uplifted by humanity and are instead their own cultures and can generally find themselves being treated as legal equals in human controlled space. https://wiki.vore-station.net/Backstory#Catalogued_Species", + prob(50); "[info] You are currently working in the Virgo-Erigone system. It is part of the Coreward Periphery, and quite isolated thanks to being a long distance away from any major faction. https://wiki.vore-station.net/File:Virgo_map.png", + prob(50); "[info] The majority of employees live at the colony of Al'Qasbah. Most people live underground, with only the wealthiest living out in the habitation bubble. This is the place the tram/shuttle takes you at the end of the round. https://wiki.vore-station.net/Al%27Qasbah", + prob(25); "[info] The Virgo-Erigone system is natively inhabited by the Zorren, a traditionalist, interstellar-capable fox-like alien species. https://wiki.vore-station.net/Zorren", + prob(10); "[info] Earth is very far from Virgo-Eirogne, taking months of travel through stutter drives or use of expensive Bluespace Gates to cut the time down to a few weeks. https://wiki.vore-station.net/Infrastructure#Bluespace_Gate", + prob(10); "[info] Thaler is a universal currency. Its value is set to 1 second of FTL 'bluespace' travel. While ubiquitous in frontier worlds, it has an unfavourable exchange rate with most currencies used by well-settled regions, limiting immigration to places such as Earth. https://wiki.vore-station.net/Thaler", + prob(10); "[info] Sol is where NanoTrasen is headquartered, and follows its laws and customs, even out in its distant colonies. https://wiki.vore-station.net/Commonwealth_of_Sol-Procyon#Culture_and_Society", + prob(10); "[info] In certain silicon jobs or bodies there may be hard-wired functions ('laws') to limit dangerous behaviors or to encourage productivity. Remember that these are tied to the body, not the mind controlling the body! https://wiki.vore-station.net/Cyborg", + prob(5); "[info] Positronic minds are valued for their resilience, self sufficiency, and resistance to tampering. Each one is comparable to a typical human mind in capability, with similar properties of memory and cognitive alacrity.", + prob(5); "[info] Drones are much like our A.I in real life at their lower levels. At higher sophistication, they become like classic sci-fi robots. Drones' personalities can be overwritten by a skilled coder, memories tampered with.", + prob(5); "[info] Cyborgs are organic brains in a jar. While historically, wiping their minds to use as a wetware processor had been a thing - today, this only happens where Commonwealth law does not reach." + ) diff --git a/code/modules/projectiles/guns/projectile/revolver.dm b/code/modules/projectiles/guns/projectile/revolver.dm index 8e18fd1be17..7429fe21e43 100644 --- a/code/modules/projectiles/guns/projectile/revolver.dm +++ b/code/modules/projectiles/guns/projectile/revolver.dm @@ -217,16 +217,12 @@ * Mako */ /obj/item/weapon/gun/projectile/revolver/lemat - name = "\improper \"Mako\" Revolver" - desc = "The Bishamonten P100 Mako is a 9 shot revolver with a secondary firing barrel loading shotgun shells. \ - For when you really need something dead. A rare yet deadly collector's item. Uses .38-Special and 12g rounds depending on the barrel." - description_fluff = "The Bishamonten Company operated from roughly 2150-2280 - the height of the first \ - extrasolar colonisation boom - before filing for bankruptcy and selling off its assets to various companies \ - that would go on to become today’s TSCs. Focused on sleek ‘futurist’ designs which have largely fallen out of \ - fashion but remain popular with collectors and people hoping to make some quick thalers from replica weapons. \ - Bishamonten weapons tended to be form over function - despite their flashy looks, most were completely \ - unremarkable one way or another as weapons and used very standard firing mechanisms - the Mako was a notable \ - exception, and original examples are much sought after." + name = "Mako revolver" + desc = "The Bishamonten P100 Mako is a 9 shot revolver with a secondary firing barrel loading shotgun shells. For when you really need something dead. A rare yet deadly collector's item. Uses .38-Special and 12g rounds depending on the barrel." + description_fluff = "The Bishamonten Company operated from roughly 2150-2280 - the height of the first extrasolar colonisation boom - before filing for bankruptcy and selling off its assets to various companies that would go on to become today’s TSCs. \ + Focused on sleek ‘futurist’ designs which have largely fallen out of fashion but remain popular with collectors and people hoping to make some quick thalers from replica weapons. \ + Bishamonten weapons tended to be form over function - despite their flashy looks, most were completely unremarkable one way or another as weapons, and used very standard firing mechanisms - \ + the Mako was a notable exception, so original examples are much sought after." icon_state = "combatrevolver" item_state = "revolver" origin_tech = list(TECH_COMBAT = 2, TECH_MATERIAL = 2) diff --git a/code/modules/reagents/machinery/injector_maker.dm b/code/modules/reagents/machinery/injector_maker.dm new file mode 100644 index 00000000000..2c561dcc7b2 --- /dev/null +++ b/code/modules/reagents/machinery/injector_maker.dm @@ -0,0 +1,281 @@ +/obj/machinery/injector_maker + name = "Ready-to-Use Medicine 3000" + desc = "Fills plastic autoinjectors with chemicals! Molds new injectors if needed! \n Add a beaker or a bottle filled with chemicals and an autoinjector of appropriate size or sheets of plastic to use!" + icon = 'icons/obj/chemical_vr.dmi' + icon_state = "injector" + use_power = USE_POWER_IDLE + anchored = TRUE + density = FALSE + layer = ABOVE_WINDOW_LAYER + vis_flags = VIS_HIDE + unacidable = TRUE + clicksound = "button" + clickvol = 60 + idle_power_usage = 5 + active_power_usage = 100 + circuit = /obj/item/weapon/circuitboard/injector_maker + var/obj/item/weapon/reagent_containers/beaker = null + var/list/beaker_reagents_list = list() + + + var/count_large_injector = 0 + var/count_small_injector = 0 + var/capacity_large_injector = 40 + var/capacity_small_injector = 40 + + var/count_plastic = 0 //Given in "units", not sheets + var/value_plastic = 2000 //1 sheet translates to 2000 units + var/cost_plastic_small = 30 + var/cost_plastic_large = 1500 + var/capacity_plastic = 60000 // cost_plastic_large * 40 + + +/obj/machinery/injector_maker/Initialize() + . = ..() + default_apply_parts() + +/obj/machinery/injector_maker/update_icon() + if(!beaker && !count_plastic && !count_small_injector && !count_large_injector) //Empty + icon_state = "injector" + else if(beaker != null && !count_plastic && !count_small_injector && !count_large_injector ) //Has just beaker + icon_state = "injector_b" + else if(!beaker && !count_plastic && (count_large_injector > 0 || count_small_injector > 0)) //Has just injectors + icon_state = "injector_i" + else if(!beaker && count_plastic > 0 && !count_large_injector && !count_small_injector) //Has just plastic + icon_state = "injector_p" + else if(beaker != null && !count_plastic && (count_large_injector > 0 || count_small_injector > 0)) //beaker + injectors + icon_state = "injector_ib" + else if(beaker != null && count_plastic > 0 && !count_large_injector && !count_small_injector) //beaker + plastic + icon_state = "injector_pb" + else if(beaker != null && count_plastic > 0 && (count_large_injector > 0 || count_small_injector > 0)) //Has everything + icon_state = "injector_ipb" + return + + +/obj/machinery/injector_maker/attackby(var/obj/item/O as obj, var/mob/user as mob) + + if (istype(O, /obj/item/device/multitool)) + return ..() + + if(istype(O,/obj/item/weapon/reagent_containers/glass) || \ + istype(O,/obj/item/weapon/reagent_containers/food/drinks/glass2) || \ + istype(O,/obj/item/weapon/reagent_containers/food/drinks/shaker)) + + if (beaker) + return 1 + else + src.beaker = O + user.drop_item() + O.loc = src + update_icon() + src.updateUsrDialog() + return 0 + + + + if(istype(O,/obj/item/weapon/reagent_containers/hypospray/autoinjector/empty)) + var/obj/item/weapon/reagent_containers/hypospray/autoinjector/empty/E = O + if(src.count_small_injector >= src.capacity_small_injector) + to_chat(user, SPAN_WARNING("Storage is full! It can only hold [capacity_small_injector]")) + return + if(E.reagents.total_volume > 0) + to_chat(user, SPAN_WARNING("You cannot put a filled injector into the machine!")) + return + src.count_small_injector = src.count_small_injector + 1 + qdel(E) + update_icon() + if(istype(O,/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/empty)) + var/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/empty/E = O + if(src.count_large_injector >= src.capacity_large_injector) + to_chat(user, SPAN_WARNING("Storage is full! It can only hold [capacity_large_injector]")) + return + if(E.reagents.total_volume > 0) + to_chat(user, SPAN_WARNING("You cannot put a filled injector into the machine!")) + return + src.count_large_injector = src.count_large_injector + 1 + qdel(E) + update_icon() + + + if(istype(O,/obj/item/stack/material)) + if(O.get_material_name() == MAT_PLASTIC) + var/obj/item/stack/S = O + var/input_amount = tgui_input_number(user, "How many sheets would you like to add?", "Add plastic", 0, S.get_amount(), 0, 0, TRUE) + if(input_amount == 0) + return + var/plastic_input = input_amount * value_plastic + var/free_space = capacity_plastic - src.count_plastic + if(plastic_input > free_space) + to_chat(user, SPAN_WARNING("Storage is full! There is only [free_space] units worth of space left!")) + else + S.use(input_amount) + src.count_plastic = src.count_plastic + plastic_input + update_icon() + + +/obj/machinery/injector_maker/AltClick(mob/user) + . = ..() + if(beaker) + if(!user.incapacitated() && Adjacent(user)) + user.put_in_hands(beaker) + else + beaker.forceMove(drop_location()) + src.beaker = null + update_icon() + +/obj/machinery/injector_maker/examine(mob/user) + . = ..() + if(!in_range(user, src) && !issilicon(user) && !isobserver(user)) + . += "You're too far away to examine [src]'s contents and display!" + return + + if(beaker) + . += "\The [src] contains:" + if(beaker) + . += "- \A [beaker]." + + . += "\The [src] contains [src.count_small_injector] small injectors and [src.count_large_injector] large injectors.\n " + . += " It can hold [capacity_small_injector] small and [capacity_large_injector] large injectors respectively.\n " + . += " \The [src] contains [src.count_plastic] units of plastic. It can hold up to [capacity_plastic] units.\n " + + if(!(stat & (NOPOWER|BROKEN))) + . += "The status display reads the following reagents:\n" + if(beaker) + for(var/datum/reagent/R in beaker.reagents.reagent_list) + . += "- [R.volume] units of [R.name]." + +/obj/machinery/injector_maker/attack_hand(mob/user as mob) + interact(user) + +/obj/machinery/injector_maker/interact(mob/user as mob) + if(user.incapacitated() || !beaker) + return + + var/choice = tgui_input_list(user, "There are [src.count_small_injector] small and [src.count_large_injector] large injectors left.", "Choose what to do", list("large injector", "small injector", "eject beaker", "cancel")) + + switch(choice) + if("cancel") + return + if("eject beaker") + if(!user.incapacitated() && Adjacent(user)) + user.put_in_hands(beaker) + else + beaker.forceMove(drop_location()) + src.beaker = null + update_icon() + + + if("small injector") + var/material = tgui_input_list(user, "Use autoinjector storage, or mold new injectors to fill?", "Choose Material", list("mold plastic", "use injectors")) + switch(material) + if("mold plastic") + if(src.count_plastic < cost_plastic_small) + to_chat(user, SPAN_WARNING("Not enough plastic! Need at least [cost_plastic_small] units.")) + return + if("use injectors") + if(!src.count_small_injector) + to_chat(user, SPAN_WARNING("Small injector rack is empty!")) + return + if(!beaker.reagents.total_volume) + to_chat(user, SPAN_WARNING("Chemical storage is empty!")) + return + var/injector_amount = tgui_input_number(user, "How many injectors would you like?", "Make small injectors", 0, 100, 0, 0, TRUE) + if(injector_amount > 0) + switch(material) + if("mold plastic") + var/plastic_cost = cost_plastic_small * injector_amount + if(src.count_plastic < plastic_cost) + to_chat(user, SPAN_WARNING("Not enough plastic! Need at least [plastic_cost] units.")) + return + if("use injectors") + if(src.count_small_injector < injector_amount) + to_chat(user, SPAN_WARNING("Not enough autoinjectors! You only have [src.count_small_injector]")) + return + var/name = sanitize(tgui_input_text(user, "Name Injector", "Naming", null, 32, 0, 0, 0, 0),MAX_MESSAGE_LEN,0,0,0) + make_injector("large injector", injector_amount, name, material, user) + update_icon() + + + if("large injector") + var/material = tgui_input_list(user, "Use autoinjector storage, or mold new injectors to fill?", "Choose Material", list("mold plastic", "use injectors")) + switch(material) + if("mold plastic") + if(src.count_plastic < cost_plastic_large) + to_chat(user, SPAN_WARNING("Not enough plastic! Need at least [cost_plastic_large] units.")) + return + if("use injectors") + if(!src.count_large_injector) + to_chat(user, SPAN_WARNING("Large injector rack is empty!")) + return + if(!beaker.reagents.total_volume) + to_chat(user, SPAN_WARNING("Chemical storage is empty!")) + return + var/injector_amount = tgui_input_number(user, "How many injectors would you like?", "Make large injectors", 0, 100, 0, 0, TRUE) + if(injector_amount > 0) + switch(material) + if("mold plastic") + var/plastic_cost = cost_plastic_large * injector_amount + if(src.count_plastic < plastic_cost) + to_chat(user, SPAN_WARNING("Not enough plastic! Need at least [plastic_cost] units.")) + return + if("use injectors") + if(src.count_large_injector < injector_amount) + to_chat(user, SPAN_WARNING("Not enough autoinjectors! You only have [src.count_large_injector]")) + return + var/name = sanitize(tgui_input_text(user, "Name Injector", "Naming", null, 32, 0, 0, 0, 0),MAX_MESSAGE_LEN,0,0,0) + make_injector("large injector", injector_amount, name, material,user) + update_icon() + + +/obj/machinery/injector_maker/proc/make_injector(var/size, var/amount, var/new_name, var/material, mob/user as mob) + if(!beaker) + return + var/amount_per_injector = null + var/proceed = "Yes" //Defaulting to Yes. We only check if the amount/injector gets under max volume + switch(size) + if("small injector") + amount_per_injector = CLAMP(beaker.reagents.total_volume / amount, 0, 5) + if("large injector") + amount_per_injector = CLAMP(beaker.reagents.total_volume / amount, 0, 15) + if((size == "small injector" && amount_per_injector < 5) || size == "large injector" && amount_per_injector < 15) + proceed = tgui_alert(usr, "Heads up! Less than max volume per injector!\n Making [amount] [size](s) filled with [amount_per_injector] total reagent volume each!","Proceed?",list("No","Yes")) + if(proceed == "No" || !amount_per_injector) + return + for(var/i, i < amount, i++) + switch(size) + if("small injector") + switch(material) + if("mold plastic") + if(src.count_plastic < cost_plastic_small) + return + else + src.count_plastic = src.count_plastic - cost_plastic_small + if("use injectors") + if(!src.count_small_injector) + return + else + src.count_small_injector = src.count_small_injector - 1 + var/obj/item/weapon/reagent_containers/hypospray/autoinjector/empty/P = new(loc) + beaker.reagents.trans_to_obj(P, amount_per_injector) + P.update_icon() + if(new_name) + P.name = new_name + + + if("large injector") + switch(material) + if("mold plastic") + if(src.count_plastic < cost_plastic_large) + return + else + src.count_plastic = src.count_plastic - cost_plastic_large + if("use injectors") + if(!src.count_large_injector) + return + else + src.count_large_injector = src.count_large_injector - 1 + var/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/empty/P = new(loc) + beaker.reagents.trans_to_obj(P, amount_per_injector) + P.update_icon() + if(new_name) + P.name = new_name diff --git a/code/modules/reagents/reagents/medicine.dm b/code/modules/reagents/reagents/medicine.dm index fa961b278ab..8316cfefa5b 100644 --- a/code/modules/reagents/reagents/medicine.dm +++ b/code/modules/reagents/reagents/medicine.dm @@ -1407,7 +1407,7 @@ reagent_state = LIQUID color = "#80af9c" metabolism = REM * 0.002 - overdose = REAGENTS_OVERDOSE * 0.25 + overdose = REAGENTS_OVERDOSE scannable = 1 /datum/reagent/earthsblood diff --git a/code/modules/reagents/reagents/other.dm b/code/modules/reagents/reagents/other.dm index 117ed6a2ce9..bc12d163fe1 100644 --- a/code/modules/reagents/reagents/other.dm +++ b/code/modules/reagents/reagents/other.dm @@ -443,7 +443,7 @@ ..() if(iscarbon(M)) var/mob/living/carbon/C = M - C.clean_blood() + C.clean_blood(TRUE) /datum/reagent/space_cleaner/touch_obj(var/obj/O) ..() diff --git a/code/modules/shieldgen/directional_shield.dm b/code/modules/shieldgen/directional_shield.dm index 209dc9ca9a4..b298e028a72 100644 --- a/code/modules/shieldgen/directional_shield.dm +++ b/code/modules/shieldgen/directional_shield.dm @@ -66,7 +66,7 @@ /obj/effect/directional_shield/bullet_act(var/obj/item/projectile/P) adjust_health(-P.get_structure_damage()) - P.on_hit() + P.on_hit(src) playsound(src, 'sound/effects/EMPulse.ogg', 75, 1) // All the shields tied to their projector are one 'unit', and don't have individualized health values like most other shields. diff --git a/code/modules/tgui/modules/agentcard.dm b/code/modules/tgui/modules/agentcard.dm index 0bdbd967ce6..fd84c98760f 100644 --- a/code/modules/tgui/modules/agentcard.dm +++ b/code/modules/tgui/modules/agentcard.dm @@ -19,6 +19,7 @@ entries += list(list("name" = "Name", "value" = S.registered_name)) entries += list(list("name" = "Photo", "value" = "Update")) entries += list(list("name" = "Sex", "value" = S.sex)) + entries += list(list("name" = "Species", "value" = S.species)) entries += list(list("name" = "Factory Reset", "value" = "Use With Care")) data["entries"] = entries @@ -119,6 +120,12 @@ S.sex = new_sex to_chat(usr, "Sex changed to '[new_sex]'.") . = TRUE + if("species") + var/new_species = sanitize(tgui_input_text(usr,"What species would you like to put on this card?","Agent Card Species", S.species)) + if(!isnull(new_species) && tgui_status(usr, state) == STATUS_INTERACTIVE) + S.species = new_species + to_chat(usr, "Species changed to '[new_species]'.") + . = TRUE if("factoryreset") if(tgui_alert(usr, "This will factory reset the card, including access and owner. Continue?", "Factory Reset", list("No", "Yes")) == "Yes" && tgui_status(usr, state) == STATUS_INTERACTIVE) S.age = initial(S.age) @@ -136,6 +143,7 @@ S.registered_name = initial(S.registered_name) S.unset_registered_user() S.sex = initial(S.sex) + S.species = initial(S.species) S.update_icon() to_chat(usr, "All information has been deleted from \the [src].") . = TRUE diff --git a/code/modules/vore/eating/living_vr.dm b/code/modules/vore/eating/living_vr.dm index 6bd5e983ad6..9e37b888cea 100644 --- a/code/modules/vore/eating/living_vr.dm +++ b/code/modules/vore/eating/living_vr.dm @@ -42,6 +42,7 @@ var/can_be_drop_pred = FALSE var/allow_spontaneous_tf = FALSE // Obviously. var/next_preyloop // For Fancy sound internal loop + var/stuffing_feeder = FALSE // Can feed foods to others whole, like trash eater can eat them on their own. 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. @@ -595,6 +596,10 @@ to_chat(user, "They aren't able to be devoured.") log_and_message_admins("[key_name_admin(src)] attempted to devour [key_name_admin(prey)] against their prefs ([prey ? ADMIN_JMP(prey) : "null"])") return FALSE + if(prey.absorbed || pred.absorbed) + to_chat(user, "They aren't aren't in a state to be devoured.") + return FALSE + // Slipnoms from chompstation downstream, credit to cadyn for the original PR. // Prepare messages if(prey.is_slipping) @@ -1019,6 +1024,14 @@ else //Not the droids we're looking for. to_chat(src, "You pause for a moment to examine [I] and realize it's not even worth the energy to chew.") //If it ain't ore or the type of sheets we can eat, bugger off! +/mob/living/proc/toggle_stuffing_mode() + set name = "Toggle feeding mode" + set category = "Abilities" + set desc = "Switch whether you will try to feed other people food whole or normally, bite by bite." + + stuffing_feeder = !stuffing_feeder + to_chat(src, "You will [stuffing_feeder ? "now" : "no longer"] try to feed food whole.") + /mob/living/proc/switch_scaling() set name = "Switch scaling mode" set category = "Preferences" diff --git a/code/modules/vore/eating/vorepanel_vr.dm b/code/modules/vore/eating/vorepanel_vr.dm index 98a1c7ff12f..54c0dc25a52 100644 --- a/code/modules/vore/eating/vorepanel_vr.dm +++ b/code/modules/vore/eating/vorepanel_vr.dm @@ -797,7 +797,9 @@ var/mob/living/carbon/human/h = l thismuch = thismuch * h.species.digestion_nutrition_modifier l.adjust_nutrition(thismuch) - b.handle_digestion_death(ourtarget) + ourtarget.death() // To make sure all on-death procs get properly called + if(ourtarget) + b.handle_digestion_death(ourtarget) if("Absorb") if(tgui_alert(ourtarget, "\The [usr] is attempting to instantly absorb you. Is this something you are okay with happening to you?","Instant Absorb", list("No", "Yes")) != "Yes") to_chat(usr, "\The [ourtarget] declined your absorb attempt.") diff --git a/code/modules/vore/fluffstuff/custom_boxes_vr.dm b/code/modules/vore/fluffstuff/custom_boxes_vr.dm index 9ab72130f02..2c771bd4567 100644 --- a/code/modules/vore/fluffstuff/custom_boxes_vr.dm +++ b/code/modules/vore/fluffstuff/custom_boxes_vr.dm @@ -227,7 +227,7 @@ /obj/item/clothing/head/fluff/nikki, /obj/item/clothing/under/skirt/outfit/fluff/nikki, /obj/item/clothing/shoes/fluff/nikki) - + // DefiintelyNotARock:Aku Zoles /obj/item/weapon/storage/secure/briefcase/dealer name = "Aku's Dealer briefcase" @@ -299,6 +299,18 @@ Swimsuits, for general use, to avoid arriving to work with your swimsuit. name = "Cow Bikini Swimsuit capsule" has_items = list(/obj/item/clothing/under/swimsuit/cowbikini) +/obj/item/weapon/storage/box/fluff/swimsuit/stripperpink + name = "Skimpy Pink Swimsuit capsule" + has_items = list(/obj/item/clothing/under/swimsuit/stripper/stripper_pink) + +/obj/item/weapon/storage/box/fluff/swimsuit/strippergreen + name = "Skimpy Green Swimsuit capsule" + has_items = list(/obj/item/clothing/under/swimsuit/stripper/stripper_green) + +/obj/item/weapon/storage/box/fluff/swimsuit/mankini + name = "Pink Mankini capsule" + has_items = list(/obj/item/clothing/under/swimsuit/stripper/mankini) + //Monkey boxes for the new primals we have /obj/item/weapon/storage/box/monkeycubes/sobakacubes name = "sobaka cube box" diff --git a/code/modules/vore/resizing/holder_vr.dm b/code/modules/vore/resizing/holder_vr.dm new file mode 100644 index 00000000000..2d79d5eda93 --- /dev/null +++ b/code/modules/vore/resizing/holder_vr.dm @@ -0,0 +1,59 @@ +/obj/item/weapon/holder/dropped(mob/user) + if (held_mob?.loc != src || isturf(loc)) + var/held = held_mob + dump_mob() + held_mob = held + +/obj/item/weapon/holder/attack_hand(mob/living/user as mob) //straight up just copypasted from objects/items.dm with a few things changed (doesn't called dropped unless +actually dropped+) + if (!user) return + if(anchored) + to_chat(user, span("notice", "\The [src] won't budge, you can't pick it up!")) + return + if (hasorgans(user)) + var/mob/living/carbon/human/H = user + var/obj/item/organ/external/temp = H.organs_by_name["r_hand"] + if (user.hand) + temp = H.organs_by_name["l_hand"] + if(temp && !temp.is_usable()) + to_chat(user, "You try to move your [temp.name], but cannot!") + return + if(!temp) + to_chat(user, "You try to use your hand, but realize it is no longer attached!") + return + if(held_mob == user) return // No picking your own micro self up + + var/old_loc = src.loc + if (istype(src.loc, /obj/item/weapon/storage)) + var/obj/item/weapon/storage/S = src.loc + if(!S.remove_from_storage(src)) + return + + src.pickup(user) + src.throwing = 0 + if (src.loc == user) + if(!mob_can_unequip(user, user.get_inventory_slot(src))) //VOREStation Edit + return + else //VOREStation Edit + user.temporarilyRemoveItemFromInventory(src) + else + if(isliving(src.loc)) + return + + if(user.put_in_active_hand(src)) + if(isturf(old_loc)) + var/obj/effect/temporary_effect/item_pickup_ghost/ghost = new(old_loc) + ghost.assumeform(src) + ghost.animate_towards(user) + else if (old_loc == user) //VOREStation Edit + dropInto(user.drop_location()) + dropped(user) + //VORESTATION EDIT START. This handles possessed items. + if(src.possessed_voice && src.possessed_voice.len && !(user.ckey in warned_of_possession)) //Is this item possessed? + warned_of_possession |= user.ckey + tgui_alert_async(user,{" + THIS ITEM IS POSSESSED BY A PLAYER CURRENTLY IN THE ROUND. This could be by anomalous means or otherwise. + If this is not something you wish to partake in, it is highly suggested you place the item back down. + If this is fine to you, ensure that the other player is fine with you doing things to them beforehand! + "},"OOC Warning") + //VORESTATION EDIT END. + return \ No newline at end of file diff --git a/code/modules/vore/resizing/resize_vr.dm b/code/modules/vore/resizing/resize_vr.dm index 9fa0f6243a8..7a8511c8980 100644 --- a/code/modules/vore/resizing/resize_vr.dm +++ b/code/modules/vore/resizing/resize_vr.dm @@ -271,7 +271,20 @@ return FALSE var/mob/living/carbon/human/prey = tmob - if(!istype(prey)) + var/can_pass = TRUE + var/size_ratio_needed = (a_intent == I_DISARM || a_intent == I_HURT) ? 0.75 : (a_intent == I_GRAB ? 0.5 : 0) + if (isturf(prey.loc)) + for (var/atom/movable/M in prey.loc) + if (prey == M || pred == M) + continue + if (istype(M, /mob/living)) + var/mob/living/L = M + if (!M.CanPass(src, prey.loc) && !(get_effective_size(FALSE) - L.get_effective_size(TRUE) >= size_ratio_needed || L.lying)) + can_pass = FALSE + continue + if (!M.CanPass(src, prey.loc)) + can_pass = FALSE + if(!istype(prey) || !can_pass) //If they're not human, steppy shouldn't happen return FALSE diff --git a/code/modules/xenobio/items/slimepotions.dm b/code/modules/xenobio/items/slimepotions.dm index fa1484e0d9d..8148ef2e439 100644 --- a/code/modules/xenobio/items/slimepotions.dm +++ b/code/modules/xenobio/items/slimepotions.dm @@ -68,6 +68,7 @@ desc = "A potent chemical mix that nullifies a slime's hunger, causing it to become docile and tame. It might also work on other creatures?" icon_state = "potlightpink" description_info = "The target needs to be alive, not already passive, and be an animal or slime type entity." + var/currently_using = FALSE // To avoid same potion being usable multiple times /obj/item/slimepotion/docility/attack(mob/living/simple_mob/M, mob/user) if(!istype(M)) @@ -79,7 +80,11 @@ if(!M.has_AI()) to_chat(user, span("warning", "\The [M] is too strongly willed for this to affect them.")) // Most likely player controlled. return + if(currently_using) + to_chat(user, span("warning", "This agent has already been used!")) // Possibly trying to cheese the dialogue box and use same potion on multiple targets. + return + currently_using = TRUE var/datum/ai_holder/AI = M.ai_holder // Slimes. diff --git a/config/alienwhitelist.txt b/config/alienwhitelist.txt index 97fbdabcd46..7d65606c78d 100644 --- a/config/alienwhitelist.txt +++ b/config/alienwhitelist.txt @@ -16,6 +16,7 @@ beyondmylife - Protean bothnevarbackwards - Diona bricker98 - Protean bricker98 - Black-Eyed Shadekin +burritojustice - Protean camanis - Protean cameron653 - Protean cgr - Protean @@ -37,6 +38,7 @@ digitalsquirrel95 - Black-Eyed Shadekin digitalsquirrel95 - Protean draycu - Vox essbie - Black-Eyed Shadekin +exgame - Vox falloutdog3 - Black-Eyed Shadekin flaktual - Vox flurriee - Protean @@ -55,6 +57,7 @@ idcaboutaname - Protean idcaboutaname - Black-Eyed Shadekin inuzari - Diona iivoracious - Black-Eyed Shadekin +irkallaepsilon - Protean jademanique - Black-Eyed Shadekin jademanique - Protean jademanique - Teppi diff --git a/config/jukebox.json b/config/jukebox.json index 9955f683740..05bc23ec30c 100644 --- a/config/jukebox.json +++ b/config/jukebox.json @@ -4744,5 +4744,25 @@ "secret": false, "lobby": false, "jukebox": true +}, +{ +"url": "https://files.catbox.moe/n10l5v.mp3", +"title": "Sucklet's Song", +"duration": 1840, +"artist": "emamouse", +"genre": "Folk and Indie", +"secret": true, +"lobby": false, +"jukebox": true +}, +{ +"url": "https://files.catbox.moe/6m88w6.mp3", +"title": "King Sucklet", +"duration": 1370, +"artist": "emamouse", +"genre": "Folk and Indie", +"secret": true, +"lobby": false, +"jukebox": true } ] diff --git a/icons/_nanomaps/tether_nanomap_z1.png b/icons/_nanomaps/tether_nanomap_z1.png index cc281d14321..f6188b78814 100644 Binary files a/icons/_nanomaps/tether_nanomap_z1.png and b/icons/_nanomaps/tether_nanomap_z1.png differ diff --git a/icons/_nanomaps/tether_nanomap_z2.png b/icons/_nanomaps/tether_nanomap_z2.png index 5f1eacdb197..53492f77eec 100644 Binary files a/icons/_nanomaps/tether_nanomap_z2.png and b/icons/_nanomaps/tether_nanomap_z2.png differ diff --git a/icons/_nanomaps/tether_nanomap_z3.png b/icons/_nanomaps/tether_nanomap_z3.png index 09b99241f47..45438a40d92 100644 Binary files a/icons/_nanomaps/tether_nanomap_z3.png and b/icons/_nanomaps/tether_nanomap_z3.png differ diff --git a/icons/_nanomaps/tether_nanomap_z4.png b/icons/_nanomaps/tether_nanomap_z4.png index c2623219ee4..510d22b3d61 100644 Binary files a/icons/_nanomaps/tether_nanomap_z4.png and b/icons/_nanomaps/tether_nanomap_z4.png differ diff --git a/icons/inventory/accessory/item.dmi b/icons/inventory/accessory/item.dmi index 2dd848102b7..ddda9fff643 100644 Binary files a/icons/inventory/accessory/item.dmi and b/icons/inventory/accessory/item.dmi differ diff --git a/icons/inventory/accessory/item_vr.dmi b/icons/inventory/accessory/item_vr.dmi index a21b81c2b4f..21eaf66ec1c 100644 Binary files a/icons/inventory/accessory/item_vr.dmi and b/icons/inventory/accessory/item_vr.dmi differ diff --git a/icons/inventory/accessory/mob.dmi b/icons/inventory/accessory/mob.dmi index e6bac630bde..04030363cee 100644 Binary files a/icons/inventory/accessory/mob.dmi and b/icons/inventory/accessory/mob.dmi differ diff --git a/icons/inventory/accessory/mob_vr.dmi b/icons/inventory/accessory/mob_vr.dmi index a738336ba1f..1ae86050c76 100644 Binary files a/icons/inventory/accessory/mob_vr.dmi and b/icons/inventory/accessory/mob_vr.dmi differ diff --git a/icons/inventory/back/mob_vox.dmi b/icons/inventory/back/mob_vox.dmi new file mode 100644 index 00000000000..b3c7e2dde1b Binary files /dev/null and b/icons/inventory/back/mob_vox.dmi differ diff --git a/icons/inventory/ears/mob_vox.dmi b/icons/inventory/ears/mob_vox.dmi new file mode 100644 index 00000000000..09fea15502e Binary files /dev/null and b/icons/inventory/ears/mob_vox.dmi differ diff --git a/icons/inventory/eyes/mob_vox.dmi b/icons/inventory/eyes/mob_vox.dmi index e021abfd672..f6cfbf5b2ea 100644 Binary files a/icons/inventory/eyes/mob_vox.dmi and b/icons/inventory/eyes/mob_vox.dmi differ diff --git a/icons/inventory/face/item_vr.dmi b/icons/inventory/face/item_vr.dmi index c621b7dadd9..e8fe7376554 100644 Binary files a/icons/inventory/face/item_vr.dmi and b/icons/inventory/face/item_vr.dmi differ diff --git a/icons/inventory/face/mob_vox.dmi b/icons/inventory/face/mob_vox.dmi index 29b7d76ef96..de6101e2a78 100644 Binary files a/icons/inventory/face/mob_vox.dmi and b/icons/inventory/face/mob_vox.dmi differ diff --git a/icons/inventory/face/mob_vr.dmi b/icons/inventory/face/mob_vr.dmi index fb826bda1d7..5181307aa3b 100644 Binary files a/icons/inventory/face/mob_vr.dmi and b/icons/inventory/face/mob_vr.dmi differ diff --git a/icons/inventory/feet/item.dmi b/icons/inventory/feet/item.dmi index af898b6e8f3..37cd05ce5e5 100644 Binary files a/icons/inventory/feet/item.dmi and b/icons/inventory/feet/item.dmi differ diff --git a/icons/inventory/feet/item_vr.dmi b/icons/inventory/feet/item_vr.dmi index ef79bb38c99..3ac5e1b9f2c 100644 Binary files a/icons/inventory/feet/item_vr.dmi and b/icons/inventory/feet/item_vr.dmi differ diff --git a/icons/inventory/feet/mob.dmi b/icons/inventory/feet/mob.dmi index 12a4fc9e3dd..0852e750f1d 100644 Binary files a/icons/inventory/feet/mob.dmi and b/icons/inventory/feet/mob.dmi differ diff --git a/icons/inventory/feet/mob_vox.dmi b/icons/inventory/feet/mob_vox.dmi index 5bdbcefc54a..8512234e6dd 100644 Binary files a/icons/inventory/feet/mob_vox.dmi and b/icons/inventory/feet/mob_vox.dmi differ diff --git a/icons/inventory/feet/mob_vr.dmi b/icons/inventory/feet/mob_vr.dmi index f341eb6f283..1a393e68db3 100644 Binary files a/icons/inventory/feet/mob_vr.dmi and b/icons/inventory/feet/mob_vr.dmi differ diff --git a/icons/inventory/hands/item.dmi b/icons/inventory/hands/item.dmi index 556cfcfb569..05dbda93cfa 100644 Binary files a/icons/inventory/hands/item.dmi and b/icons/inventory/hands/item.dmi differ diff --git a/icons/inventory/hands/mob.dmi b/icons/inventory/hands/mob.dmi index e3912aa2696..eac6c88a5fe 100644 Binary files a/icons/inventory/hands/mob.dmi and b/icons/inventory/hands/mob.dmi differ diff --git a/icons/inventory/hands/mob_vox.dmi b/icons/inventory/hands/mob_vox.dmi index 16fbe55fee0..936dbc337a1 100644 Binary files a/icons/inventory/hands/mob_vox.dmi and b/icons/inventory/hands/mob_vox.dmi differ diff --git a/icons/inventory/head/item.dmi b/icons/inventory/head/item.dmi index 90de50558ee..6aeead5a247 100644 Binary files a/icons/inventory/head/item.dmi and b/icons/inventory/head/item.dmi differ diff --git a/icons/inventory/head/item_vr.dmi b/icons/inventory/head/item_vr.dmi index d8e7dbd97fb..4d677f12655 100644 Binary files a/icons/inventory/head/item_vr.dmi and b/icons/inventory/head/item_vr.dmi differ diff --git a/icons/inventory/head/mob.dmi b/icons/inventory/head/mob.dmi index 27db023df8d..2974d0d8838 100644 Binary files a/icons/inventory/head/mob.dmi and b/icons/inventory/head/mob.dmi differ diff --git a/icons/inventory/head/mob_vox.dmi b/icons/inventory/head/mob_vox.dmi index f1570089c8a..c1fa4ed377e 100644 Binary files a/icons/inventory/head/mob_vox.dmi and b/icons/inventory/head/mob_vox.dmi differ diff --git a/icons/inventory/head/mob_vr.dmi b/icons/inventory/head/mob_vr.dmi index 52e3a4121f3..9e478ee9d3d 100644 Binary files a/icons/inventory/head/mob_vr.dmi and b/icons/inventory/head/mob_vr.dmi differ diff --git a/icons/inventory/head/mob_vr_teshari.dmi b/icons/inventory/head/mob_vr_teshari.dmi index 7616f260958..35b31920532 100644 Binary files a/icons/inventory/head/mob_vr_teshari.dmi and b/icons/inventory/head/mob_vr_teshari.dmi differ diff --git a/icons/inventory/suit/item.dmi b/icons/inventory/suit/item.dmi index 541a40a4b3b..d9b40912173 100644 Binary files a/icons/inventory/suit/item.dmi and b/icons/inventory/suit/item.dmi differ diff --git a/icons/inventory/suit/item_vr.dmi b/icons/inventory/suit/item_vr.dmi index 2ec42eea27c..e7116d9dc77 100644 Binary files a/icons/inventory/suit/item_vr.dmi and b/icons/inventory/suit/item_vr.dmi differ diff --git a/icons/inventory/suit/mob.dmi b/icons/inventory/suit/mob.dmi index 6b6ffed503e..8a3d269acd5 100644 Binary files a/icons/inventory/suit/mob.dmi and b/icons/inventory/suit/mob.dmi differ diff --git a/icons/inventory/suit/mob_vox.dmi b/icons/inventory/suit/mob_vox.dmi index 529cb628314..afb8a2a2006 100644 Binary files a/icons/inventory/suit/mob_vox.dmi and b/icons/inventory/suit/mob_vox.dmi differ diff --git a/icons/inventory/suit/mob_vr.dmi b/icons/inventory/suit/mob_vr.dmi index 8743a62765b..91c916553af 100644 Binary files a/icons/inventory/suit/mob_vr.dmi and b/icons/inventory/suit/mob_vr.dmi differ diff --git a/icons/inventory/suit/mob_vr_teshari.dmi b/icons/inventory/suit/mob_vr_teshari.dmi index 04ea0d2e7ca..80f67332cb2 100644 Binary files a/icons/inventory/suit/mob_vr_teshari.dmi and b/icons/inventory/suit/mob_vr_teshari.dmi differ diff --git a/icons/inventory/uniform/item.dmi b/icons/inventory/uniform/item.dmi index f7a81879956..e22f9dcd279 100644 Binary files a/icons/inventory/uniform/item.dmi and b/icons/inventory/uniform/item.dmi differ diff --git a/icons/inventory/uniform/item_vr.dmi b/icons/inventory/uniform/item_vr.dmi index 7a5e4a27e72..40659b94f8d 100644 Binary files a/icons/inventory/uniform/item_vr.dmi and b/icons/inventory/uniform/item_vr.dmi differ diff --git a/icons/inventory/uniform/mob.dmi b/icons/inventory/uniform/mob.dmi index 8d890717535..ad2aebade96 100644 Binary files a/icons/inventory/uniform/mob.dmi and b/icons/inventory/uniform/mob.dmi differ diff --git a/icons/inventory/uniform/mob_vox.dmi b/icons/inventory/uniform/mob_vox.dmi index 870fa34d38f..03c5ce75f40 100644 Binary files a/icons/inventory/uniform/mob_vox.dmi and b/icons/inventory/uniform/mob_vox.dmi differ diff --git a/icons/inventory/uniform/mob_vr.dmi b/icons/inventory/uniform/mob_vr.dmi index 081e660d6da..400e781f9ec 100644 Binary files a/icons/inventory/uniform/mob_vr.dmi and b/icons/inventory/uniform/mob_vr.dmi differ diff --git a/icons/mob/alienanimals_x32.dmi b/icons/mob/alienanimals_x32.dmi index 1fef85f4d81..de9fc66ab29 100644 Binary files a/icons/mob/alienanimals_x32.dmi and b/icons/mob/alienanimals_x32.dmi differ diff --git a/icons/mob/human.dmi b/icons/mob/human.dmi index 9a0255de62d..8d0a1f5e2e0 100644 Binary files a/icons/mob/human.dmi and b/icons/mob/human.dmi differ diff --git a/icons/mob/human_races/markings_vox.dmi b/icons/mob/human_races/markings_vox.dmi new file mode 100644 index 00000000000..e60cb65e383 Binary files /dev/null and b/icons/mob/human_races/markings_vox.dmi differ diff --git a/icons/mob/human_races/markings_vr.dmi b/icons/mob/human_races/markings_vr.dmi index 0b2bc13a733..0b92c0db207 100644 Binary files a/icons/mob/human_races/markings_vr.dmi and b/icons/mob/human_races/markings_vr.dmi differ diff --git a/icons/mob/human_races/r_vox_old.dmi b/icons/mob/human_races/r_vox_old.dmi index f212822aafb..cf0c3e88f80 100644 Binary files a/icons/mob/human_races/r_vox_old.dmi and b/icons/mob/human_races/r_vox_old.dmi differ diff --git a/icons/mob/screen_full_vore.dmi b/icons/mob/screen_full_vore.dmi index 9dd6b841f0f..a89c272c84d 100644 Binary files a/icons/mob/screen_full_vore.dmi and b/icons/mob/screen_full_vore.dmi differ diff --git a/icons/mob/species/vox/tail.dmi b/icons/mob/species/vox/tail.dmi new file mode 100644 index 00000000000..c0d181051ad Binary files /dev/null and b/icons/mob/species/vox/tail.dmi differ diff --git a/icons/mob/vore/ears_vr.dmi b/icons/mob/vore/ears_vr.dmi index e38d45d4caa..035eeb4e86a 100644 Binary files a/icons/mob/vore/ears_vr.dmi and b/icons/mob/vore/ears_vr.dmi differ diff --git a/icons/mob/vore/tails_vr.dmi b/icons/mob/vore/tails_vr.dmi index d0f37de5f12..2b72c13a36a 100644 Binary files a/icons/mob/vore/tails_vr.dmi and b/icons/mob/vore/tails_vr.dmi differ diff --git a/icons/mob/vore128x64.dmi b/icons/mob/vore128x64.dmi index 120f630d333..a8422c16bda 100644 Binary files a/icons/mob/vore128x64.dmi and b/icons/mob/vore128x64.dmi differ diff --git a/icons/obj/chemical_vr.dmi b/icons/obj/chemical_vr.dmi index a08a052c90f..f6669126d83 100644 Binary files a/icons/obj/chemical_vr.dmi and b/icons/obj/chemical_vr.dmi differ diff --git a/icons/obj/items.dmi b/icons/obj/items.dmi index 6b748673b50..88fe643156e 100644 Binary files a/icons/obj/items.dmi and b/icons/obj/items.dmi differ diff --git a/icons/obj/overmap_vr.dmi b/icons/obj/overmap_vr.dmi index 44ea512b349..dae175f2141 100644 Binary files a/icons/obj/overmap_vr.dmi and b/icons/obj/overmap_vr.dmi differ diff --git a/maps/cynosure/datums/random_map.dm b/maps/cynosure/datums/random_map.dm index 31d4daa9aa8..a800cb284ec 100644 --- a/maps/cynosure/datums/random_map.dm +++ b/maps/cynosure/datums/random_map.dm @@ -45,22 +45,22 @@ else if(prob(1)) new /obj/structure/flora/mushroom(T) if(5 to 6) - if(prob(1)) + if(prob(5)) new /obj/structure/flora/tree/sif(T) - else if(prob(1)) + else if(prob(5)) new /obj/structure/flora/sif/tendrils(T) + else if (prob(5)) + new /obj/structure/flora/sif/eyes(T) else if(prob(1)) new /obj/structure/flora/sif/frostbelle(T) - else if (prob(1)) - new /obj/structure/flora/sif/eyes(T) if(7 to 8) if(prob(5)) new /obj/structure/flora/tree/sif(T) - else if(prob(1)) + else if(prob(5)) new /obj/structure/flora/sif/frostbelle(T) - else if(prob(1)) + else if(prob(5)) new /obj/structure/flora/sif/eyes(T) - else if(prob(1)) + else if(prob(5)) new /obj/structure/flora/sif/tendrils(T) /datum/random_map/noise/sif/forest diff --git a/maps/groundbase/gb-z1.dmm b/maps/groundbase/gb-z1.dmm index 2f056c8f100..fb77f6f0cbd 100644 --- a/maps/groundbase/gb-z1.dmm +++ b/maps/groundbase/gb-z1.dmm @@ -1395,10 +1395,11 @@ /obj/effect/floor_decal/techfloor/orange{ dir = 9 }, -/obj/machinery/firealarm{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/station_map{ + dir = 4; + pixel_x = -32 + }, /turf/simulated/floor/tiled/techfloor, /area/groundbase/civilian/arrivals) "de" = ( @@ -7828,6 +7829,10 @@ /obj/machinery/alarm, /turf/simulated/floor/tiled/dark, /area/groundbase/medical/autoresleeving) +"rG" = ( +/obj/structure/undies_wardrobe, +/turf/simulated/floor/tiled, +/area/groundbase/civilian/apparel) "rH" = ( /obj/machinery/atmospherics/portables_connector{ dir = 8 @@ -12823,9 +12828,6 @@ /obj/effect/floor_decal/corner_techfloor_grid{ dir = 5 }, -/obj/machinery/light{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/effect/landmark{ name = "JoinLateCryo" @@ -14849,6 +14851,9 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/light{ + dir = 4 + }, /turf/simulated/floor/tiled/techfloor, /area/groundbase/civilian/arrivals) "IP" = ( @@ -17616,10 +17621,11 @@ /obj/effect/floor_decal/techfloor/orange{ dir = 5 }, -/obj/machinery/light{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/station_map{ + dir = 8; + pixel_x = 32 + }, /turf/simulated/floor/tiled/techfloor, /area/groundbase/civilian/arrivals) "PA" = ( @@ -18032,6 +18038,9 @@ /obj/machinery/camera/network/civilian{ dir = 1 }, +/obj/machinery/firealarm{ + dir = 8 + }, /turf/simulated/floor/tiled/techfloor, /area/groundbase/civilian/arrivals) "QH" = ( @@ -21175,6 +21184,9 @@ dir = 10 }, /obj/machinery/atmospherics/unary/vent_pump/on, +/obj/machinery/light{ + dir = 4 + }, /turf/simulated/floor, /area/groundbase/civilian/arrivals) "Ym" = ( @@ -22897,9 +22909,9 @@ FF FF FF FF -MO -MO -MO +ce +ce +ce FF FF FF @@ -23038,11 +23050,11 @@ nC nC NC ce -Bk +FF ce ce ce -Bk +FF FF FF MO @@ -23184,7 +23196,7 @@ ce ce ce ce -Bk +FF FF FF FF @@ -23321,7 +23333,7 @@ MO MO MO Fi -Bk +FF ce ce ce @@ -23698,7 +23710,7 @@ ce ce ce Bk -ce +Bk ce ce ce @@ -31001,7 +31013,7 @@ PM PM jY jC -jY +hq PM PM hq @@ -33000,7 +33012,7 @@ hr hr bL Pb -BS +rG BS zj dk @@ -37924,7 +37936,7 @@ Bk Bk ce Bk -ce +Bk ce Bk ce @@ -38058,7 +38070,7 @@ Bk Bk Bk Bk -ce +Bk ce Bk Bk @@ -38825,8 +38837,8 @@ ce ce ce ce -ce -ce +Bk +Bk Bk Cw vu @@ -40382,7 +40394,7 @@ qE qE qE ce -ce +Bk ce ce ce @@ -40524,8 +40536,8 @@ Lb qE qE ce -ce -ce +Bk +Bk Bk ce ce @@ -40709,9 +40721,9 @@ ce ce ce ce -ce -ce -ce +Bk +Bk +Bk Bk Bk ce diff --git a/maps/groundbase/gb-z2.dmm b/maps/groundbase/gb-z2.dmm index 53f92b7838a..27353d94d07 100644 --- a/maps/groundbase/gb-z2.dmm +++ b/maps/groundbase/gb-z2.dmm @@ -2739,6 +2739,9 @@ /obj/machinery/light{ dir = 8 }, +/obj/machinery/injector_maker{ + pixel_x = -29 + }, /turf/simulated/floor/tiled/white, /area/groundbase/medical/Chemistry) "hK" = ( @@ -5318,6 +5321,7 @@ /area/groundbase/medical/triage) "pp" = ( /obj/machinery/light, +/obj/structure/undies_wardrobe, /turf/simulated/floor/tiled/dark, /area/groundbase/dorms) "pq" = ( @@ -14966,6 +14970,10 @@ /obj/machinery/camera/network/medbay{ dir = 1 }, +/obj/structure/table/glass, +/obj/machinery/injector_maker{ + pixel_y = -31 + }, /turf/simulated/floor/tiled/white, /area/groundbase/medical/triage) "QG" = ( diff --git a/maps/groundbase/groundbase_events.dm b/maps/groundbase/groundbase_events.dm index 5cf4f0d5610..265e1faad36 100644 --- a/maps/groundbase/groundbase_events.dm +++ b/maps/groundbase/groundbase_events.dm @@ -41,7 +41,7 @@ new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Lore News", /datum/event/lore_news, 400), new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Vermin Infestation",/datum/event/infestation, 50, list(ASSIGNMENT_JANITOR = 25), 1), new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Wallrot", /datum/event/wallrot, 0, list(ASSIGNMENT_ENGINEER = 30), 1, min_jobs = list(ASSIGNMENT_ENGINEER = 1)), - new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Passing Wildlife", /datum/event/roaming_wildlife, 30, list(ASSIGNMENT_SECURITY = 15), min_jobs = list(ASSIGNMENT_SECURITY = 1)) + new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Passing Wildlife", /datum/event/roaming_wildlife, 40, list(ASSIGNMENT_SECURITY = 20), min_jobs = list(ASSIGNMENT_SECURITY = 1)) ) add_disabled_events(list( new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Ian Storm", /datum/event/ianstorm, 1, list(), 1), @@ -67,7 +67,7 @@ new /datum/event_meta(EVENT_LEVEL_MODERATE, "Drone Pod Drop", /datum/event/drone_pod_drop, 40, list(ASSIGNMENT_SCIENTIST = 40), 1), new /datum/event_meta(EVENT_LEVEL_MODERATE, "Morph Spawn", /datum/event/morph_spawn, 75, list(ASSIGNMENT_ANY = 5), 0), new /datum/event_meta(EVENT_LEVEL_MODERATE, "Maintenance Predator", /datum/event/maintenance_predator, 100, list(ASSIGNMENT_ANY = 5), 0), - new /datum/event_meta(EVENT_LEVEL_MODERATE, "Roaming Wildlife", /datum/event/roaming_wildlife, 0, list(ASSIGNMENT_SECURITY = 15, ASSIGNMENT_MEDICAL = 5), min_jobs = list(ASSIGNMENT_SECURITY = 2)) + new /datum/event_meta(EVENT_LEVEL_MODERATE, "Roaming Wildlife", /datum/event/roaming_wildlife, 20, list(ASSIGNMENT_SECURITY = 20, ASSIGNMENT_MEDICAL = 5), min_jobs = list(ASSIGNMENT_SECURITY = 2)) ) add_disabled_events(list( new /datum/event_meta(EVENT_LEVEL_MODERATE, "Appendicitis", /datum/event/spontaneous_appendicitis, 0, list(ASSIGNMENT_MEDICAL = 30), 1), diff --git a/maps/offmap_vr/om_ships/abductor.dm b/maps/offmap_vr/om_ships/abductor.dm index 74bb329a594..bb731632e51 100644 --- a/maps/offmap_vr/om_ships/abductor.dm +++ b/maps/offmap_vr/om_ships/abductor.dm @@ -28,7 +28,9 @@ /obj/effect/overmap/visitable/ship/abductor name = "strange spacecraft" desc = "Spacefaring vessel." - icon_state = "unkn_r" + icon = 'icons/obj/overmap_vr.dmi' + icon_state = "abductor" + color = "#134956" scanner_desc = @{"[i]Registration[/i]: Unknown [i]Class[/i]: Corvette [i]Transponder[/i]: No transponder detected." diff --git a/maps/stellar_delight/stellar_delight2.dmm b/maps/stellar_delight/stellar_delight2.dmm index 3c45547994e..95df34bba21 100644 --- a/maps/stellar_delight/stellar_delight2.dmm +++ b/maps/stellar_delight/stellar_delight2.dmm @@ -4177,6 +4177,9 @@ /obj/item/weapon/reagent_containers/glass/beaker/large, /obj/item/weapon/reagent_containers/dropper, /obj/machinery/atmospherics/unary/vent_pump/on, +/obj/machinery/injector_maker{ + pixel_y = 21 + }, /turf/simulated/floor/tiled/eris/white/bluecorner, /area/medical/chemistry) "jg" = ( @@ -4436,9 +4439,6 @@ /area/stellardelight/deck2/fore) "jK" = ( /obj/structure/table/glass, -/obj/machinery/camera/network/medbay{ - dir = 4 - }, /turf/simulated/floor/tiled/eris/white/bluecorner, /area/stellardelight/deck2/triage) "jL" = ( @@ -22226,6 +22226,9 @@ /obj/machinery/camera/network/medbay{ dir = 8 }, +/obj/machinery/injector_maker{ + pixel_x = 29 + }, /turf/simulated/floor/tiled/eris/white/bluecorner, /area/stellardelight/deck2/triage) "WZ" = ( diff --git a/maps/submaps/admin_use_vr/ert.dm b/maps/submaps/admin_use_vr/ert.dm index bfa9a49c5c0..4bed750cbab 100644 --- a/maps/submaps/admin_use_vr/ert.dm +++ b/maps/submaps/admin_use_vr/ert.dm @@ -93,6 +93,10 @@ name = "\improper NRV Von Braun - Cannon Control Room" icon_state = "security_sub" +/area/ship/ert/brig + name = "\improper NRV Von Braun - Prisoner Holding Area" + icon_state = "brig" + /area/shuttle/ert_ship_boat name = "\improper NRB Robineau" icon_state = "yellow" diff --git a/maps/submaps/admin_use_vr/ert.dmm b/maps/submaps/admin_use_vr/ert.dmm index f05405e90f7..ecce2e4fd4e 100644 --- a/maps/submaps/admin_use_vr/ert.dmm +++ b/maps/submaps/admin_use_vr/ert.dmm @@ -14,15 +14,71 @@ /turf/simulated/floor/reinforced/airless, /area/ship/ert/barracks) "ac" = ( +/obj/effect/shuttle_landmark/premade/ert_ship_port, +/turf/space, +/area/space) +"ad" = ( +/obj/machinery/light/no_nightshift, +/obj/machinery/porta_turret/stationary/CIWS, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/barracks) +"ae" = ( /obj/machinery/light/no_nightshift, /obj/machinery/porta_turret/stationary/CIWS, /turf/simulated/floor/reinforced/airless, /area/ship/ert/dock_port) -"ad" = ( +"af" = ( /obj/structure/hull_corner, /turf/simulated/floor/reinforced/airless, /area/ship/ert/dock_port) -"ae" = ( +"ag" = ( +/obj/machinery/door/airlock/external, +/obj/effect/map_helper/airlock/door/ext_door, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_port) +"ah" = ( +/obj/structure/hull_corner{ + dir = 8 + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/barracks) +"aj" = ( +/obj/machinery/power/pointdefense{ + id_tag = "vonbraun_pd" + }, +/obj/structure/cable/yellow{ + d2 = 2; + icon_state = "0-2" + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/engine) +"al" = ( +/obj/structure/hull_corner/long_horiz{ + dir = 6 + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/hallways_aft) +"ap" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/firedoor/border_only, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/door/blast/regular/open{ + dir = 4; + id = "braun_blast_shields"; + name = "Blast Shield" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"aq" = ( +/obj/machinery/atmospherics/pipe/simple/visible, +/obj/machinery/meter, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"au" = ( /obj/machinery/door/airlock/external, /obj/effect/map_helper/airlock/door/ext_door, /obj/machinery/airlock_sensor/airlock_exterior{ @@ -33,252 +89,99 @@ /obj/effect/map_helper/airlock/sensor/ext_sensor, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/dock_port) -"af" = ( -/obj/machinery/light/no_nightshift, -/turf/simulated/floor/reinforced/airless, +"av" = ( +/turf/simulated/floor/tiled/techmaint, /area/ship/ert/mech_bay) -"ag" = ( -/obj/machinery/power/pointdefense{ - id_tag = "vonbraun_pd" - }, -/obj/structure/cable/yellow{ - d2 = 2; - icon_state = "0-2" - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/mech_bay) -"ah" = ( -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/mech_bay) -"ai" = ( -/obj/machinery/porta_turret/stationary/CIWS, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/mech_bay) -"aj" = ( -/obj/machinery/light/no_nightshift, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/engine) -"ak" = ( -/obj/machinery/atmospherics/pipe/simple/visible{ - dir = 6 - }, -/turf/simulated/wall/rshull, -/area/ship/ert/dock_port) -"al" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 8 - }, -/obj/effect/map_helper/airlock/atmos/chamber_pump, -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/obj/structure/sign/vacuum{ - pixel_x = -32 - }, +"ay" = ( +/obj/effect/floor_decal/industrial/outline/grey, +/obj/machinery/gear_dispenser/suit/ert, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_port) -"am" = ( -/obj/machinery/airlock_sensor{ +/area/ship/ert/barracks) +"aB" = ( +/obj/structure/hull_corner, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/barracks) +"aC" = ( +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/wall/shull, +/area/ship/ert/med_surg) +"aD" = ( +/obj/item/weapon/circuitboard/aiupload, +/obj/item/weapon/circuitboard/borgupload, +/obj/item/weapon/circuitboard/smes, +/obj/item/weapon/aiModule/nanotrasen, +/obj/item/weapon/aiModule/reset, +/obj/item/weapon/aiModule/freeformcore, +/obj/item/weapon/aiModule/protectStation, +/obj/item/weapon/aiModule/quarantine, +/obj/item/weapon/aiModule/paladin, +/obj/item/weapon/aiModule/robocop, +/obj/item/weapon/aiModule/safeguard, +/obj/structure/table/steel_reinforced, +/obj/item/weapon/smes_coil, +/obj/item/weapon/smes_coil, +/obj/item/device/t_scanner/advanced{ + pixel_x = -3 + }, +/obj/item/device/t_scanner/advanced{ + pixel_x = 3 + }, +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + name = "VB APC - South"; + pixel_y = -24 + }, +/obj/structure/cable/yellow, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"aE" = ( +/obj/structure/table/rack/steel, +/obj/item/clothing/accessory/storage/black_vest{ + pixel_x = -4; + pixel_y = -4 + }, +/obj/item/clothing/accessory/storage/black_vest{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/clothing/accessory/storage/black_vest, +/obj/item/clothing/accessory/storage/black_vest{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/clothing/accessory/storage/black_vest{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/clothing/accessory/storage/black_vest{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + dir = 4; + name = "VB APC - East"; pixel_x = 24 }, -/obj/effect/map_helper/airlock/sensor/chamber_sensor, -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_port) -"an" = ( -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/structure/dispenser/oxygen, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"ao" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/tank/jetpack/oxygen{ - pixel_x = -4; - pixel_y = -4 - }, -/obj/item/weapon/tank/jetpack/oxygen{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/weapon/tank/jetpack/oxygen, -/obj/item/weapon/tank/jetpack/oxygen{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/tank/jetpack/oxygen{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/weapon/tank/jetpack/oxygen{ - pixel_x = 6; - pixel_y = 6 - }, +/obj/structure/cable/yellow, /obj/effect/floor_decal/industrial/outline/grey, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/barracks) -"ap" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/effect/floor_decal/industrial/outline/blue, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"aq" = ( -/obj/machinery/telecomms/relay, -/turf/simulated/floor/tiled/techfloor, +"aF" = ( +/obj/structure/hull_corner/long_horiz{ + dir = 6 + }, +/turf/simulated/floor/reinforced/airless, /area/ship/ert/atmos) -"ar" = ( -/obj/structure/table/rack/steel, -/obj/item/toy/plushie/squid/blue{ - desc = "A small, cute and loveable squid friend. This one is blue. Despite the name, it seems no more or less deadly than your regular plush squid."; - name = "NT 'Deathsquid' Plushie" - }, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/device/mapping_unit/deathsquad, -/obj/item/device/holomap_beacon/deathsquad, -/obj/item/device/holomap_beacon/deathsquad, -/obj/item/device/holomap_beacon/deathsquad, -/obj/item/device/holomap_beacon/deathsquad, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"as" = ( -/obj/machinery/light_switch{ - pixel_y = 23 - }, -/obj/structure/table/woodentable, -/obj/item/device/flashlight/lamp, -/obj/item/device/holomap_beacon/ert, -/obj/item/device/holomap_beacon/ert, -/obj/item/device/mapping_unit/ert, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"at" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"au" = ( -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/structure/table/rack/steel, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/item/weapon/rig/ert/medical, -/obj/item/weapon/rig/ert/medical, -/obj/item/weapon/rig/ert/medical, -/obj/item/weapon/rig/ert/medical, -/obj/item/weapon/rig/ert/medical, -/obj/item/weapon/rig/ert/medical, -/obj/item/clothing/suit/armor/vest/ert/medical, -/obj/item/clothing/suit/armor/vest/ert/medical, -/obj/item/clothing/suit/armor/vest/ert/medical, -/obj/item/clothing/suit/armor/vest/ert/medical, -/obj/item/clothing/suit/armor/vest/ert/medical, -/obj/item/clothing/suit/armor/vest/ert/medical, -/obj/item/clothing/head/helmet/ert/medical, -/obj/item/clothing/head/helmet/ert/medical, -/obj/item/clothing/head/helmet/ert/medical, -/obj/item/clothing/head/helmet/ert/medical, -/obj/item/clothing/head/helmet/ert/medical, -/obj/item/clothing/head/helmet/ert/medical, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"av" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/gunnery) -"aw" = ( -/obj/structure/table/rack/steel, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/clothing/mask/gas{ - pixel_x = -4; - pixel_y = -4 - }, -/obj/item/clothing/mask/gas{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/clothing/mask/gas, -/obj/item/clothing/mask/gas{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/clothing/mask/gas{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/clothing/mask/gas{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/item/clothing/mask/gas/half, -/obj/item/clothing/mask/gas/half, -/obj/item/clothing/mask/gas/half, -/obj/item/clothing/mask/gas/half, -/obj/item/clothing/mask/gas/half, -/obj/item/clothing/mask/gas/half, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"ax" = ( -/obj/structure/hull_corner{ - dir = 8 - }, -/turf/simulated/shuttle/plating/airless/carry, -/area/shuttle/ert_ship_boat) -"ay" = ( -/obj/structure/table/rack/steel, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/clothing/mask/gas{ - pixel_x = -4; - pixel_y = -4 - }, -/obj/item/clothing/mask/gas{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/clothing/mask/gas, -/obj/item/clothing/mask/gas{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/clothing/mask/gas{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/clothing/mask/gas{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/item/clothing/shoes/magboots/adv, -/obj/item/clothing/shoes/magboots/adv, -/obj/item/clothing/shoes/magboots/adv, -/obj/item/clothing/shoes/magboots/adv, -/obj/item/clothing/shoes/magboots/adv, -/obj/item/clothing/shoes/magboots/adv, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"az" = ( +"aG" = ( +/obj/machinery/light/no_nightshift, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/mech_bay) +"aH" = ( /obj/structure/table/rack/steel, /obj/item/weapon/storage/backpack/ert/security{ pixel_y = -3 @@ -305,231 +208,15 @@ /obj/item/clothing/suit/space/void/responseteam/security, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/barracks) -"aA" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/rig/ert/security, -/obj/item/weapon/rig/ert/security, -/obj/item/weapon/rig/ert/security, -/obj/item/weapon/rig/ert/security, -/obj/item/weapon/rig/ert/security, -/obj/item/weapon/rig/ert/security, -/obj/item/clothing/suit/armor/vest/ert/security, -/obj/item/clothing/suit/armor/vest/ert/security, -/obj/item/clothing/suit/armor/vest/ert/security, -/obj/item/clothing/suit/armor/vest/ert/security, -/obj/item/clothing/suit/armor/vest/ert/security, -/obj/item/clothing/suit/armor/vest/ert/security, -/obj/item/clothing/head/helmet/ert/security, -/obj/item/clothing/head/helmet/ert/security, -/obj/item/clothing/head/helmet/ert/security, -/obj/item/clothing/head/helmet/ert/security, -/obj/item/clothing/head/helmet/ert/security, -/obj/item/clothing/head/helmet/ert/security, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"aB" = ( -/obj/effect/floor_decal/industrial/outline/grey, -/obj/structure/table/rack/steel, -/obj/structure/table/rack/steel, -/obj/item/weapon/storage/belt/utility/chief/full{ - pixel_y = -2 - }, -/obj/item/weapon/storage/belt/utility/chief/full, -/obj/item/weapon/storage/belt/utility/chief/full{ - pixel_y = 2 - }, -/obj/item/weapon/storage/belt/utility/chief/full{ - pixel_y = 4 - }, -/obj/item/weapon/storage/belt/utility/chief/full{ - pixel_y = 6 - }, -/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/storage/belt/explorer/pathfinder{ - name = "ERT belt" - }, -/obj/item/weapon/storage/belt/explorer/pathfinder{ - name = "ERT belt" - }, -/obj/item/weapon/storage/belt/explorer/pathfinder{ - name = "ERT belt" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"aC" = ( -/obj/machinery/power/pointdefense{ - id_tag = "vonbraun_pd" - }, -/obj/structure/cable/yellow{ - d2 = 8; - icon_state = "0-8" - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/med_surg) -"aD" = ( -/obj/structure/table/steel_reinforced, -/obj/machinery/alarm/alarms_hidden{ - dir = 1; - pixel_y = -26 - }, -/obj/fiftyspawner/tritium, -/obj/fiftyspawner/tritium, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"aE" = ( -/obj/machinery/alarm/alarms_hidden{ - dir = 1; - pixel_y = -26 - }, -/obj/structure/table/rack/steel, -/obj/item/weapon/rig/ert/engineer, -/obj/item/weapon/rig/ert/engineer, -/obj/item/weapon/rig/ert/engineer, -/obj/item/weapon/rig/ert/engineer, -/obj/item/weapon/rig/ert/engineer, -/obj/item/weapon/rig/ert/engineer, -/obj/item/clothing/suit/armor/vest/ert/engineer, -/obj/item/clothing/suit/armor/vest/ert/engineer, -/obj/item/clothing/suit/armor/vest/ert/engineer, -/obj/item/clothing/suit/armor/vest/ert/engineer, -/obj/item/clothing/suit/armor/vest/ert/engineer, -/obj/item/clothing/suit/armor/vest/ert/engineer, -/obj/item/clothing/head/helmet/ert/engineer, -/obj/item/clothing/head/helmet/ert/engineer, -/obj/item/clothing/head/helmet/ert/engineer, -/obj/item/clothing/head/helmet/ert/engineer, -/obj/item/clothing/head/helmet/ert/engineer, -/obj/item/clothing/head/helmet/ert/engineer, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"aF" = ( -/obj/machinery/porta_turret/stationary/CIWS, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/atmos) -"aG" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/storage/backpack/ert/medical{ - pixel_y = -3 - }, -/obj/item/weapon/storage/backpack/ert/medical, -/obj/item/weapon/storage/backpack/ert/medical{ - pixel_y = 3 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/machinery/light/no_nightshift, -/obj/item/weapon/storage/backpack/ert/medical{ - pixel_y = 6 - }, -/obj/item/weapon/storage/backpack/ert/medical{ - pixel_y = 9 - }, -/obj/item/weapon/storage/backpack/ert/medical{ - pixel_y = 12 - }, -/obj/item/clothing/suit/space/void/responseteam/medical, -/obj/item/clothing/suit/space/void/responseteam/medical, -/obj/item/clothing/suit/space/void/responseteam/medical, -/obj/item/clothing/suit/space/void/responseteam/medical, -/obj/item/clothing/suit/space/void/responseteam/medical, -/obj/item/clothing/suit/space/void/responseteam/medical, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"aH" = ( -/obj/item/weapon/storage/belt/medical/emt{ - pixel_y = -4 - }, -/obj/item/weapon/storage/belt/medical/emt{ - pixel_y = -2 - }, -/obj/item/weapon/storage/belt/medical/emt, -/obj/item/weapon/storage/belt/medical/emt{ - pixel_y = 2 - }, -/obj/item/weapon/storage/belt/medical/emt{ - pixel_y = 4 - }, -/obj/item/weapon/storage/belt/medical/emt{ - pixel_y = 6 - }, -/obj/item/clothing/accessory/storage/white_vest{ - pixel_y = -4 - }, -/obj/item/clothing/accessory/storage/white_vest{ - pixel_y = -2 - }, -/obj/item/clothing/accessory/storage/white_vest, -/obj/item/clothing/accessory/storage/white_vest{ - pixel_y = 2 - }, -/obj/item/clothing/accessory/storage/white_vest{ - pixel_y = 4 - }, -/obj/item/clothing/accessory/storage/white_vest{ - pixel_y = 6 - }, -/obj/structure/table/rack/steel, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/weapon/storage/belt/explorer/pathfinder{ - name = "ERT belt" - }, -/obj/item/weapon/storage/belt/explorer/pathfinder{ - name = "ERT belt" - }, -/obj/item/weapon/storage/belt/explorer/pathfinder{ - name = "ERT belt" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"aI" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) "aJ" = ( -/obj/item/device/multitool/station_buffered, +/obj/machinery/atmospherics/pipe/simple/visible/universal, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/atmos) -"aK" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/effect/floor_decal/corner/white{ - dir = 10 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) "aQ" = ( -/obj/structure/table/steel_reinforced, -/obj/item/weapon/storage/firstaid/surgery, -/obj/machinery/light/no_nightshift{ - dir = 8 +/obj/structure/sign/department/operational{ + name = "MEDICAL & SURGERY" }, -/obj/item/weapon/surgical/bone_clamp, -/obj/item/weapon/surgical/scalpel/manager, -/obj/item/weapon/surgical/circular_saw/manager, -/obj/item/stack/nanopaste, -/turf/simulated/floor/tiled/white, +/turf/simulated/wall/shull, /area/ship/ert/med_surg) "aV" = ( /obj/machinery/power/pointdefense{ @@ -542,11 +229,502 @@ }, /turf/simulated/floor/reinforced/airless, /area/ship/ert/eng_storage) -"bp" = ( -/obj/machinery/atmospherics/pipe/simple/visible/universal, +"aZ" = ( +/obj/structure/table/steel_reinforced, +/obj/fiftyspawner/phoron, +/obj/fiftyspawner/glass, +/obj/fiftyspawner/glass, +/obj/fiftyspawner/glass, +/obj/fiftyspawner/glass, +/obj/fiftyspawner/steel, +/obj/fiftyspawner/steel, +/obj/fiftyspawner/steel, +/obj/fiftyspawner/steel, +/obj/fiftyspawner/plasteel, +/obj/fiftyspawner/plasteel, +/obj/fiftyspawner/plasteel, +/obj/fiftyspawner/plasteel, +/obj/fiftyspawner/rglass, +/obj/fiftyspawner/rglass, +/obj/fiftyspawner/rglass, +/obj/fiftyspawner/phoronglass, +/obj/fiftyspawner/phoronglass, +/obj/fiftyspawner/rods, +/obj/fiftyspawner/rods, +/obj/fiftyspawner/rods, +/obj/fiftyspawner/rods, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) +/area/ship/ert/eng_storage) +"be" = ( +/obj/machinery/light/no_nightshift{ + dir = 4 + }, +/obj/effect/floor_decal/corner/yellow{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/sign/warning/engineering_access{ + pixel_x = -32 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/floor_decal/corner/red{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"bn" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/obj/machinery/alarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/obj/effect/floor_decal/corner/white{ + dir = 8 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) "br" = ( +/obj/machinery/porta_turret/stationary/CIWS, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/mech_bay) +"bv" = ( +/obj/structure/cable/yellow{ + 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/glass_security{ + name = "ORB Control"; + req_one_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/mech_bay) +"bw" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/storage/box/frags{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/weapon/storage/box/frags{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + dir = 4; + name = "VB APC - East"; + pixel_x = 24 + }, +/obj/structure/cable/yellow, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_dl) +"bB" = ( +/obj/structure/hull_corner{ + dir = 1 + }, +/turf/space, +/area/space) +"bG" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"bI" = ( +/obj/structure/railing/grey{ + dir = 4 + }, +/obj/structure/railing/grey{ + dir = 1 + }, +/obj/item/weapon/paper/vonbraun_shields, +/obj/structure/table/steel_reinforced, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"bJ" = ( +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/gunnery) +"bM" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/structure/table/rack/steel, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/item/weapon/rig/ert/medical, +/obj/item/weapon/rig/ert/medical, +/obj/item/weapon/rig/ert/medical, +/obj/item/weapon/rig/ert/medical, +/obj/item/weapon/rig/ert/medical, +/obj/item/weapon/rig/ert/medical, +/obj/item/clothing/suit/armor/vest/ert/medical, +/obj/item/clothing/suit/armor/vest/ert/medical, +/obj/item/clothing/suit/armor/vest/ert/medical, +/obj/item/clothing/suit/armor/vest/ert/medical, +/obj/item/clothing/suit/armor/vest/ert/medical, +/obj/item/clothing/suit/armor/vest/ert/medical, +/obj/item/clothing/head/helmet/ert/medical, +/obj/item/clothing/head/helmet/ert/medical, +/obj/item/clothing/head/helmet/ert/medical, +/obj/item/clothing/head/helmet/ert/medical, +/obj/item/clothing/head/helmet/ert/medical, +/obj/item/clothing/head/helmet/ert/medical, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"bO" = ( +/obj/machinery/shipsensors{ + dir = 1 + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/atmos) +"bR" = ( +/obj/machinery/porta_turret/stationary/CIWS, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/atmos) +"bW" = ( +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/atmos) +"ca" = ( +/obj/machinery/porta_turret/stationary/CIWS, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/gunnery) +"cb" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"ch" = ( +/obj/machinery/power/pointdefense{ + id_tag = "vonbraun_pd" + }, +/obj/structure/cable/yellow{ + d2 = 2; + icon_state = "0-2" + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/gunnery) +"ci" = ( +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/med_surg) +"cl" = ( +/obj/effect/shuttle_landmark/premade/ert_ship_near_aft, +/turf/space, +/area/space) +"co" = ( +/obj/item/roller_holder, +/obj/item/roller/adv, +/obj/item/roller/adv{ + pixel_y = 6 + }, +/obj/item/roller/adv{ + pixel_y = 12 + }, +/obj/machinery/light/no_nightshift, +/obj/effect/floor_decal/industrial/outline, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"cs" = ( +/obj/machinery/light/no_nightshift, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/hallways_aft) +"cu" = ( +/obj/machinery/light/no_nightshift, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/barracks) +"cv" = ( +/obj/machinery/shieldgen, +/obj/effect/floor_decal/industrial/outline/blue, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"cz" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"cJ" = ( +/obj/machinery/power/pointdefense{ + id_tag = "vonbraun_pd" + }, +/obj/structure/cable/yellow{ + d2 = 4; + dir = 4; + icon_state = "0-4" + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/hallways_aft) +"cM" = ( +/obj/structure/table/steel_reinforced, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"cO" = ( +/obj/machinery/bodyscanner{ + dir = 8 + }, +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"cR" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/machinery/porta_turret/stationary/CIWS, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/med) +"cS" = ( +/turf/simulated/wall/shull, +/area/ship/ert/hallways_aft) +"cV" = ( +/obj/structure/table/steel_reinforced, +/obj/fiftyspawner/durasteel, +/obj/fiftyspawner/durasteel, +/obj/fiftyspawner/durasteel, +/obj/fiftyspawner/durasteel, +/obj/fiftyspawner/titanium_glass, +/obj/fiftyspawner/titanium_glass, +/obj/fiftyspawner/titanium_glass, +/obj/fiftyspawner/titanium_glass, +/obj/fiftyspawner/plastitanium_glass, +/obj/fiftyspawner/plastitanium_glass, +/obj/fiftyspawner/plastitanium_glass, +/obj/fiftyspawner/plastitanium_glass, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"cW" = ( +/obj/machinery/atmospherics/pipe/simple/visible{ + dir = 6 + }, +/turf/simulated/wall/rshull, +/area/ship/ert/dock_port) +"cY" = ( +/obj/machinery/atmospherics/unary/vent_pump/high_volume{ + dir = 8 + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/structure/sign/vacuum{ + pixel_x = -32 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_port) +"db" = ( +/obj/structure/cable/yellow{ + d2 = 2; + icon_state = "0-2" + }, +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + dir = 4; + name = "VB APC - East"; + pixel_x = 24 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/mech_bay) +"dd" = ( +/obj/machinery/airlock_sensor{ + pixel_x = 24 + }, +/obj/effect/map_helper/airlock/sensor/chamber_sensor, +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_port) +"dg" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/structure/dispenser/oxygen, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"dj" = ( +/obj/structure/table/rack/steel, +/obj/item/taperoll/engineering{ + pixel_x = -6; + pixel_y = -6 + }, +/obj/item/taperoll/engineering{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/taperoll/engineering{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/taperoll/engineering{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/effect/floor_decal/industrial/outline/yellow, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"dk" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/gun/projectile/heavysniper, +/obj/item/ammo_magazine/ammo_box/b145, +/obj/item/ammo_magazine/ammo_box/b145, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/machinery/alarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/obj/machinery/light/no_nightshift, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_dl) +"dn" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/effect/floor_decal/industrial/outline/blue, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"dq" = ( +/turf/simulated/wall/shull, +/area/ship/ert/med_surg) +"ds" = ( +/obj/machinery/door/blast/shutters{ + density = 0; + icon_state = "shutter0"; + id = "braun_cells_privacy"; + name = "Privacy Shutters"; + opacity = 0 + }, +/obj/structure/grille, +/obj/structure/window/titanium/full, +/obj/structure/window/titanium{ + dir = 1 + }, +/obj/structure/window/titanium, +/obj/structure/window/titanium{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable/yellow{ + d2 = 2; + icon_state = "0-2" + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/brig) +"dx" = ( +/obj/structure/cable/yellow{ + 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/techmaint, +/area/ship/ert/med) +"dA" = ( +/obj/effect/floor_decal/industrial/outline/blue, +/obj/machinery/portable_atmospherics/canister/carbon_dioxide/engine_setup, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"dC" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/bridge) +"dR" = ( +/obj/machinery/shield_capacitor, +/obj/effect/floor_decal/industrial/outline/blue, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"dT" = ( +/obj/effect/floor_decal/corner/red{ + dir = 9 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"dV" = ( +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"dW" = ( +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/wall/rshull, +/area/ship/ert/gunnery) +"dX" = ( /obj/structure/table/rack/steel, /obj/effect/floor_decal/industrial/outline/grey, /obj/item/weapon/tank/jetpack/carbondioxide{ @@ -572,83 +750,194 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/barracks) -"bt" = ( +"dY" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/blast/regular{ + closed_layer = 4; + dir = 4; + id = "NRV_DELTA"; + layer = 4 + }, +/obj/machinery/door/firedoor, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"dZ" = ( +/obj/machinery/recharge_station, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"ee" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/wall/rshull, +/area/ship/ert/mech_bay) +"ef" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/airlock/engineering{ + req_one_access = list(103) + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_port) +"es" = ( +/obj/machinery/door/airlock/glass_command{ + req_one_access = list(103) + }, /obj/structure/cable/yellow{ 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/no_nightshift, +/obj/machinery/door/firedoor/border_only, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/bridge) -"bv" = ( -/obj/structure/grille, -/obj/machinery/door/firedoor/border_only, -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced, -/turf/simulated/floor/airless, -/area/ship/ert/gunnery) -"bJ" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ +"et" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ dir = 8 }, -/obj/effect/map_helper/airlock/atmos/chamber_pump, -/obj/machinery/light/no_nightshift{ +/obj/effect/floor_decal/industrial/warning{ + dir = 8 + }, +/obj/structure/window/reinforced{ dir = 8 }, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_star) -"bM" = ( -/turf/simulated/wall/rshull, -/area/ship/ert/mech_bay) -"bO" = ( -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/atmos) -"bR" = ( -/obj/machinery/light/no_nightshift, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/atmos) -"bS" = ( +/area/ship/ert/engine) +"eG" = ( /obj/structure/cable/yellow{ d1 = 4; d2 = 8; icon_state = "4-8" }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ +/obj/machinery/door/firedoor/multi_tile{ + dir = 1; + req_one_access = list(103) + }, +/obj/machinery/door/airlock/multi_tile/glass{ + dir = 1; + name = "Outfitting"; + req_one_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"eH" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/wall/rshull, +/area/ship/ert/gunnery) +"eI" = ( +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/airlock/glass{ + req_one_access = list(103) + }, +/obj/structure/sign/warning/airlock{ + pixel_y = -32 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_star) +"eJ" = ( +/obj/machinery/shield_diffuser, +/obj/machinery/door/blast/regular/open{ + dir = 2; + id = "ERT_Blast_Windows"; + name = "Blast Shield" + }, +/obj/machinery/door/blast/regular{ + id = "ERT_Shuttle_Fore" + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/ert_ship_boat) +"eX" = ( +/obj/effect/landmark/late_antag/ert, +/obj/structure/table/bench/steel, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"fe" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 8 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways) +"ff" = ( +/obj/machinery/vending/food, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"fj" = ( +/obj/machinery/vending/security, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"fk" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/wall/rshull, +/area/ship/ert/gunnery) +"fn" = ( +/obj/machinery/power/pointdefense{ + id_tag = "vonbraun_pd" + }, +/obj/structure/cable/yellow{ + d2 = 4; + dir = 4; + icon_state = "0-4" + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/med) +"fo" = ( +/obj/machinery/light/no_nightshift{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 +/obj/effect/floor_decal/industrial/warning, +/obj/structure/table/steel_reinforced, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"fp" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 + }, +/obj/effect/landmark{ + name = "Commando" + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"fr" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 }, /obj/structure/cable/yellow{ d1 = 2; - d2 = 8; - icon_state = "2-8" + d2 = 4; + icon_state = "2-4" }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) -"bU" = ( -/obj/structure/hull_corner/long_horiz{ - dir = 5 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/hallways_aft) -"bW" = ( -/obj/structure/hull_corner/long_horiz{ - dir = 6 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/atmos) -"ca" = ( +/area/ship/ert/eng_storage) +"ft" = ( /obj/machinery/sleeper{ dir = 4 }, @@ -662,143 +951,635 @@ }, /turf/simulated/floor/tiled/white, /area/ship/ert/med_surg) -"ch" = ( -/obj/machinery/door/airlock/glass_external, -/obj/effect/map_helper/airlock/door/int_door, +"fu" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/unary/vent_scrubber/on, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_star) -"ci" = ( -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/med_surg) -"ck" = ( -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_star) -"cl" = ( -/obj/effect/shuttle_landmark/premade/ert_ship_near_aft, +/area/ship/ert/hallways_aft) +"fx" = ( +/obj/structure/table/rack/steel, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/clothing/mask/gas{ + pixel_x = -4; + pixel_y = -4 + }, +/obj/item/clothing/mask/gas{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/clothing/mask/gas, +/obj/item/clothing/mask/gas{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/clothing/mask/gas{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/clothing/mask/gas{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/item/clothing/shoes/magboots/adv, +/obj/item/clothing/shoes/magboots/adv, +/obj/item/clothing/shoes/magboots/adv, +/obj/item/clothing/shoes/magboots/adv, +/obj/item/clothing/shoes/magboots/adv, +/obj/item/clothing/shoes/magboots/adv, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"fE" = ( +/obj/structure/hull_corner{ + dir = 8 + }, /turf/space, /area/space) -"cs" = ( +"fS" = ( +/obj/machinery/alarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"fV" = ( +/obj/structure/bed/chair/bay/shuttle, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/ert_ship_boat) +"fW" = ( +/obj/effect/floor_decal/corner/yellow{ + dir = 8 + }, +/obj/effect/floor_decal/corner/red{ + dir = 6 + }, +/obj/machinery/light/no_nightshift, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/light_switch{ + dir = 1; + pixel_y = -23 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways) +"fZ" = ( +/obj/machinery/door/blast/regular{ + closed_layer = 4; + dir = 4; + id = "NRV_DELTA"; + layer = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"ga" = ( +/obj/structure/table/steel_reinforced, +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/item/device/defib_kit/compact/combat/loaded{ + pixel_y = -3 + }, +/obj/item/device/defib_kit/compact/combat/loaded{ + pixel_y = 3 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"gf" = ( +/obj/structure/table/steel_reinforced, +/obj/item/weapon/storage/firstaid/surgery, +/obj/item/weapon/storage/firstaid/surgery, +/obj/item/weapon/surgical/bone_clamp, +/obj/item/weapon/surgical/bone_clamp, +/obj/item/weapon/surgical/scalpel/manager, +/obj/item/weapon/surgical/scalpel/manager, +/obj/item/weapon/surgical/circular_saw/manager, +/obj/item/weapon/surgical/circular_saw/manager, +/obj/item/stack/nanopaste, +/obj/item/stack/nanopaste, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"gi" = ( +/obj/structure/closet/crate/medical, +/obj/item/weapon/storage/box/autoinjectors, +/obj/item/weapon/storage/box/beakers, +/obj/item/weapon/storage/box/bodybags, +/obj/item/weapon/storage/box/bodybags{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/storage/box/gloves, +/obj/item/weapon/storage/box/freezer, +/obj/item/weapon/storage/box/masks, +/obj/effect/floor_decal/industrial/outline, +/obj/item/weapon/storage/box/bodybags, +/obj/item/weapon/storage/box/bodybags, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"gk" = ( +/obj/machinery/light/no_nightshift, +/obj/machinery/teleport/hub, +/obj/effect/floor_decal/industrial/hatch/yellow, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/teleporter) +"gl" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/effect/landmark{ + name = "Commando" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"gn" = ( +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"go" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/wall/rshull, +/area/ship/ert/eng_storage) +"gp" = ( +/obj/effect/map_helper/airlock/sensor/chamber_sensor, +/obj/machinery/airlock_sensor{ + pixel_x = 24 + }, +/obj/effect/floor_decal/industrial/warning, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_star) +"gq" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 1 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"gs" = ( +/obj/machinery/door/airlock/external, +/obj/effect/map_helper/airlock/door/ext_door, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_star) +"gx" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/wall/rshull, +/area/ship/ert/hallways_aft) +"gA" = ( +/obj/machinery/atmospherics/pipe/manifold/visible{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"gF" = ( +/obj/structure/table/steel_reinforced, +/obj/item/rig_module/chem_dispenser/combat, +/obj/item/rig_module/chem_dispenser/combat, +/obj/item/rig_module/chem_dispenser/injector, +/obj/item/rig_module/chem_dispenser/injector, +/obj/item/rig_module/device/healthscanner, +/obj/item/rig_module/device/healthscanner, +/obj/item/rig_module/device/healthscanner, +/obj/item/rig_module/device/healthscanner, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/mech_bay) +"gN" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 9 + }, +/obj/machinery/firealarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"gP" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 + }, +/obj/effect/floor_decal/industrial/warning, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/teleporter) +"gQ" = ( +/obj/machinery/door/firedoor, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced, +/obj/machinery/door/blast/regular/open{ + dir = 8; + id = "ERT_Blast_Windows"; + name = "Blast Shield" + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/ert_ship_boat) +"gR" = ( /obj/machinery/atmospherics/pipe/tank/air{ dir = 4; start_pressure = 740.5 }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/dock_port) -"cu" = ( -/obj/machinery/light/no_nightshift, -/obj/machinery/porta_turret/stationary/CIWS, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/barracks) -"cv" = ( -/obj/machinery/shield_gen, -/obj/effect/floor_decal/industrial/outline/blue, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"cC" = ( -/obj/effect/floor_decal/corner/white{ - dir = 4 - }, -/obj/machinery/light_switch{ - dir = 8; - pixel_x = 23 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"cH" = ( -/obj/machinery/computer/ship/disperser{ - dir = 8 - }, -/obj/item/weapon/paper/vonbraun_cannon, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/gunnery) -"cJ" = ( -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/hallways_aft) -"cO" = ( -/obj/machinery/computer/operating, +"gT" = ( +/obj/machinery/cryopod/ert_ship, /turf/simulated/floor/tiled/white, /area/ship/ert/med_surg) -"cP" = ( -/obj/machinery/recharge_station, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"cS" = ( -/turf/simulated/wall/shull, -/area/ship/ert/hallways_aft) -"cV" = ( -/obj/machinery/vending/assist, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"cW" = ( -/obj/machinery/atmospherics/pipe/simple/visible{ - dir = 4 - }, -/obj/machinery/meter, -/obj/machinery/power/apc/hyper{ - alarms_hidden = 1; - dir = 1; - name = "VB APC - North"; - pixel_y = 24 +"gV" = ( +/obj/effect/floor_decal/corner/white{ + dir = 6 }, /obj/structure/cable/yellow{ - d2 = 2; - icon_state = "0-2" + d1 = 4; + d2 = 8; + icon_state = "4-8" }, -/obj/machinery/light/small{ +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_port) -"cY" = ( -/obj/machinery/firealarm/alarms_hidden{ - dir = 1; - pixel_y = -26 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"db" = ( -/obj/machinery/door/airlock/glass_external, -/obj/effect/map_helper/airlock/door/int_door, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/gunnery) -"dd" = ( -/obj/machinery/atmospherics/pipe/manifold/visible, -/turf/simulated/wall/shull, -/area/ship/ert/dock_port) -"dg" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 8 - }, -/obj/effect/map_helper/airlock/atmos/chamber_pump, -/obj/machinery/light/no_nightshift{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_port) -"dk" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/obj/machinery/portable_atmospherics/powered/pump/filled, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"dn" = ( -/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{ - dir = 8; - id_tag = "von_braun_port"; - master_tag = "von_braun_master"; - name = "Port Docking Control"; - pixel_x = 22 +/area/ship/ert/eng_storage) +"gW" = ( +/obj/structure/table/steel_reinforced, +/obj/item/rig_module/device/rcd{ + pixel_x = -4; + pixel_y = -4 + }, +/obj/item/rig_module/device/rcd{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/rig_module/device/plasmacutter{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/rig_module/device/plasmacutter{ + pixel_x = 4; + pixel_y = 4 }, /turf/simulated/floor/tiled/techfloor, +/area/ship/ert/mech_bay) +"gX" = ( +/obj/structure/table/rack/steel, +/obj/item/ammo_magazine/m9mmp90{ + pixel_x = 12 + }, +/obj/item/ammo_magazine/m9mmp90{ + pixel_x = 10 + }, +/obj/item/ammo_magazine/m9mmp90{ + pixel_x = 8 + }, +/obj/item/ammo_magazine/m9mmp90{ + pixel_x = 6 + }, +/obj/item/ammo_magazine/m9mmp90{ + pixel_x = 4 + }, +/obj/item/ammo_magazine/m9mmp90{ + pixel_x = 2 + }, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90{ + pixel_x = -2 + }, +/obj/item/ammo_magazine/m9mmp90{ + pixel_x = -4 + }, +/obj/item/ammo_magazine/m9mmp90{ + pixel_x = -6 + }, +/obj/item/ammo_magazine/m9mmp90{ + pixel_x = -8 + }, +/obj/item/ammo_magazine/m9mmp90{ + pixel_x = -10 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/weapon/gun/projectile/automatic/p90{ + pixel_y = -6 + }, +/obj/item/weapon/gun/projectile/automatic/p90{ + pixel_y = -2 + }, +/obj/item/weapon/gun/projectile/automatic/p90{ + pixel_y = 2 + }, +/obj/item/weapon/gun/projectile/automatic/p90{ + pixel_y = 6 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_dl) +"gY" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, +/obj/effect/catwalk_plated/techmaint, +/turf/simulated/floor/plating, +/area/ship/ert/brig) +"gZ" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + 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" + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"ha" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/airlock/highsecurity{ + name = "Teleporter Chamber"; + req_one_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/teleporter) +"hb" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/wall/rshull, +/area/ship/ert/med_surg) +"hc" = ( +/obj/machinery/sleep_console{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"hd" = ( +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + dir = 4; + name = "VB APC - East"; + pixel_x = 24 + }, +/obj/structure/cable/yellow, +/obj/machinery/embedded_controller/radio/docking_port_multi{ + child_names_txt = "Port Airlock Control;Starboard Airlock Control"; + child_tags_txt = "von_braun_port;von_braun_star"; + dir = 1; + id_tag = "von_braun_master"; + pixel_y = -22 + }, +/obj/machinery/light/no_nightshift, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"hj" = ( +/obj/structure/table/steel_reinforced, +/obj/item/rig_module/device/drill{ + pixel_y = -4 + }, +/obj/item/rig_module/device/drill{ + pixel_y = 4 + }, +/obj/item/rig_module/maneuvering_jets{ + pixel_x = -5 + }, +/obj/item/rig_module/maneuvering_jets{ + pixel_x = -2 + }, +/obj/item/rig_module/maneuvering_jets{ + pixel_x = 1 + }, +/obj/item/rig_module/maneuvering_jets{ + pixel_x = 4 + }, +/obj/item/rig_module/maneuvering_jets{ + pixel_x = 7 + }, +/obj/item/rig_module/maneuvering_jets{ + pixel_x = 10 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/mech_bay) +"hl" = ( +/obj/effect/floor_decal/corner/red{ + dir = 8 + }, +/obj/structure/reagent_dispensers/foam, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/floor_decal/industrial/outline, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"hq" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 23 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_star) +"hs" = ( +/obj/machinery/atmospherics/pipe/manifold/visible, +/turf/simulated/wall/shull, /area/ship/ert/dock_port) -"dp" = ( +"hv" = ( +/obj/structure/closet/medical_wall{ + pixel_x = 32 + }, +/obj/item/weapon/storage/firstaid/adv{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/weapon/storage/firstaid/adv{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/weapon/storage/firstaid/fire{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/storage/firstaid/fire{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/storage/firstaid/o2, +/obj/item/weapon/storage/firstaid/o2, +/obj/item/weapon/storage/firstaid/toxin{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/weapon/storage/firstaid/toxin{ + pixel_x = -2; + pixel_y = -2 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"hx" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"hA" = ( +/obj/machinery/power/pointdefense{ + id_tag = "vonbraun_pd" + }, +/obj/machinery/light/no_nightshift{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d2 = 4; + icon_state = "0-4" + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/engine) +"hF" = ( +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/teleporter) +"hN" = ( +/obj/structure/closet/wardrobe/ert, +/obj/item/modular_computer/tablet/preset/custom_loadout/elite, +/obj/item/weapon/storage/box/survival/comp{ + starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi) + }, +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/modular_computer/laptop/preset/custom_loadout/elite, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"hQ" = ( +/obj/machinery/door/airlock/glass_medical{ + name = "Medical Bay"; + req_access = list(103) + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"hS" = ( +/obj/structure/closet/wardrobe/ert, +/obj/item/modular_computer/tablet/preset/custom_loadout/elite, +/obj/item/weapon/storage/box/survival/comp{ + starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi) + }, +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/modular_computer/laptop/preset/custom_loadout/elite, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"hU" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/structure/ship_munition/disperser_charge/explosive, +/turf/simulated/floor/reinforced, +/area/ship/ert/hallways_aft) +"hV" = ( +/obj/structure/closet/crate{ + dir = 2 + }, +/obj/item/ammo_magazine/m9mml/ap, +/obj/item/ammo_magazine/m9mml/ap, +/obj/item/ammo_magazine/m9mml/ap, +/obj/item/ammo_magazine/m9mml/ap, +/obj/item/ammo_magazine/m9mml/ap, +/obj/item/ammo_magazine/m9mml/ap, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/effect/floor_decal/industrial/outline/red, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_dl) +"hY" = ( /obj/structure/table/rack/steel, /obj/item/weapon/rig/ert/assetprotection{ pixel_x = -4; @@ -824,31 +1605,60 @@ /obj/effect/floor_decal/industrial/outline/grey, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/barracks) -"dq" = ( +"ia" = ( +/turf/simulated/wall/shull, +/area/ship/ert/dock_port) +"ii" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"ij" = ( +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"ik" = ( +/obj/structure/table/rack/steel, +/obj/item/toy/plushie/squid/blue{ + desc = "A small, cute and loveable squid friend. This one is blue. Despite the name, it seems no more or less deadly than your regular plush squid."; + name = "NT 'Deathsquid' Plushie" + }, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/device/mapping_unit/deathsquad, +/obj/item/device/holomap_beacon/deathsquad, +/obj/item/device/holomap_beacon/deathsquad, +/obj/item/device/holomap_beacon/deathsquad, +/obj/item/device/holomap_beacon/deathsquad, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"ip" = ( +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"ir" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, /turf/simulated/wall/shull, /area/ship/ert/med_surg) -"ds" = ( -/obj/structure/table/rack, -/obj/item/weapon/storage/backpack/ert/commander, -/obj/item/clothing/suit/space/void/responseteam/command, -/obj/item/clothing/head/helmet/ert/command, -/obj/item/clothing/suit/armor/vest/ert/command, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"dx" = ( -/obj/effect/floor_decal/corner/white{ - dir = 9 +"is" = ( +/obj/machinery/computer/cryopod/ert{ + pixel_y = 32 }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) -"dA" = ( -/obj/machinery/door/airlock/glass_medical{ - name = "Medical Bay"; - req_access = list(103) - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"dB" = ( +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"iw" = ( +/obj/machinery/door/window/brigdoor/northleft, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"ix" = ( /obj/structure/table/rack/steel, /obj/item/clothing/suit/armor/swat{ pixel_x = -4; @@ -923,22 +1733,164 @@ /obj/effect/floor_decal/industrial/outline/grey, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/barracks) -"dT" = ( -/obj/machinery/door/firedoor, -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced, -/obj/machinery/door/blast/regular/open{ - dir = 8; - id = "ERT_Blast_Windows"; - name = "Blast Shield" +"iz" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" }, -/obj/structure/window/reinforced{ +/turf/simulated/wall/shull, +/area/ship/ert/mech_bay) +"iC" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"iD" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"iF" = ( +/obj/machinery/porta_turret/stationary/CIWS, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/med_surg) +"iG" = ( +/obj/machinery/vending/tool, +/obj/machinery/light/no_nightshift{ dir = 1 }, /turf/simulated/floor/tiled/techfloor, -/area/shuttle/ert_ship_boat) -"dV" = ( +/area/ship/ert/eng_storage) +"iK" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/table/steel_reinforced, +/obj/item/weapon/gun/energy/sizegun, +/obj/item/weapon/gun/energy/sizegun, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"iO" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_port) +"iR" = ( +/obj/machinery/airlock_sensor{ + pixel_y = 21 + }, +/obj/effect/map_helper/airlock/sensor/int_sensor, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_port) +"iT" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways) +"iW" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/firealarm/alarms_hidden{ + pixel_y = 26 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"iX" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/effect/landmark{ + name = "Commando" + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"iY" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"jb" = ( +/obj/machinery/autolathe{ + desc = "Your typical Autolathe. It appears to have much more options than your regular one, however..."; + hacked = 1; + name = "Unlocked Autolathe" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"jn" = ( +/obj/effect/floor_decal/corner/white{ + dir = 4 + }, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 23 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"jt" = ( +/obj/machinery/computer/ship/sensors, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, +/obj/structure/railing/grey{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"jv" = ( /obj/structure/table/rack/steel, /obj/item/clothing/glasses/thermal{ pixel_x = -4; @@ -964,727 +1916,342 @@ /obj/effect/floor_decal/industrial/outline/grey, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/barracks) -"dW" = ( -/obj/structure/hull_corner{ - dir = 8 - }, -/turf/space, -/area/space) -"dX" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/firedoor/border_only, -/obj/machinery/door/airlock/engineering{ - req_one_access = list(103) - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_port) -"dY" = ( -/obj/machinery/door/airlock/glass_external, -/obj/effect/map_helper/airlock/door/int_door, -/obj/machinery/door/firedoor/multi_tile, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_port) -"ee" = ( -/obj/machinery/door/airlock/glass_external, -/obj/effect/map_helper/airlock/door/int_door, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_port) -"ef" = ( -/obj/structure/table/rack/steel, -/obj/item/clothing/glasses/night{ - pixel_x = -4; - pixel_y = -4 - }, -/obj/item/clothing/glasses/night{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/clothing/glasses/night, -/obj/item/clothing/glasses/night{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/clothing/glasses/night{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/clothing/glasses/night{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/machinery/firealarm/alarms_hidden{ - pixel_y = 26 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"eg" = ( -/obj/structure/table/rack/steel, -/obj/item/clothing/glasses/night{ - pixel_x = -4; - pixel_y = -4 - }, -/obj/item/clothing/glasses/night{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/clothing/glasses/night, -/obj/item/clothing/glasses/night{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/clothing/glasses/night{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/clothing/glasses/night{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/machinery/atm{ - pixel_y = 26 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"ej" = ( -/obj/machinery/door/blast/regular{ - id = "Von_Braun_Cannon"; - name = "Cannon Firing Port" - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/gunnery) -"es" = ( -/obj/structure/closet/crate{ - dir = 2 - }, -/obj/item/ammo_magazine/m9mml/ap, -/obj/item/ammo_magazine/m9mml/ap, -/obj/item/ammo_magazine/m9mml/ap, -/obj/item/ammo_magazine/m9mml/ap, -/obj/item/ammo_magazine/m9mml/ap, -/obj/item/ammo_magazine/m9mml/ap, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/effect/floor_decal/industrial/outline/red, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_dl) -"et" = ( -/obj/machinery/atmospherics/pipe/manifold4w/visible/fuel, -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/blast/regular/open{ - id = "VB_Rear_Blast"; - name = "Blast Shield" - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/simulated/floor/plating, -/area/ship/ert/engine) -"eD" = ( -/obj/structure/hull_corner{ - dir = 4 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/med) -"eF" = ( -/obj/effect/floor_decal/industrial/warning, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/teleporter) -"eG" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, +"jy" = ( +/obj/item/device/aicard, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"eH" = ( -/obj/structure/sign/department/cargo{ - name = "ENGINEERING SUPPLIES" - }, -/turf/simulated/wall/rshull, -/area/ship/ert/bridge) -"eI" = ( -/obj/structure/cable/yellow{ - 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/techmaint, -/area/ship/ert/eng_storage) -"eL" = ( -/mob/living/simple_mob/animal/passive/mimepet, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"eO" = ( -/obj/effect/map_helper/airlock/atmos/chamber_pump, -/obj/effect/map_helper/airlock/sensor/chamber_sensor, -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 1 - }, -/obj/machinery/embedded_controller/radio/airlock/airlock_controller{ - id_tag = "vb_cannon_loader"; - pixel_x = 24; - pixel_y = 23 - }, -/obj/machinery/airlock_sensor{ - pixel_x = -25; - pixel_y = 22 - }, -/turf/simulated/floor/airless, -/area/ship/ert/gunnery) -"eP" = ( -/obj/structure/table/steel_reinforced, -/obj/machinery/atmospherics/unary/vent_pump/on, -/obj/item/weapon/storage/box/cdeathalarm_kit{ - pixel_x = -1; - pixel_y = -1 - }, -/obj/item/weapon/storage/box/cdeathalarm_kit{ - pixel_x = 1; - pixel_y = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"eX" = ( -/obj/structure/table/steel_reinforced, -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/obj/item/weapon/storage/box/backup_kit{ - pixel_x = -1; - pixel_y = -1 - }, -/obj/item/weapon/storage/box/backup_kit{ - pixel_x = 1; - pixel_y = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"ff" = ( -/obj/machinery/vending/fitness, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"fj" = ( -/obj/machinery/door/blast/regular{ - closed_layer = 4; - dir = 4; - id = "NRV_DELTA"; - layer = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"fk" = ( -/obj/machinery/atmospherics/pipe/simple/visible{ - dir = 4 - }, -/obj/machinery/meter, -/obj/machinery/power/apc/hyper{ - alarms_hidden = 1; - name = "VB APC - South"; - pixel_y = -24 - }, -/obj/structure/cable/yellow, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_star) -"fp" = ( -/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/tiled/techmaint, -/area/ship/ert/barracks) -"fr" = ( -/obj/structure/cable/yellow{ - 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/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/eng_storage) -"fx" = ( -/obj/structure/table/steel_reinforced, -/obj/machinery/light/no_nightshift{ - dir = 8 - }, -/obj/machinery/firealarm/alarms_hidden{ - pixel_y = 26 - }, -/obj/machinery/light_switch{ - dir = 4; - pixel_x = -23 - }, -/obj/item/rig_module/sprinter{ - pixel_x = -4; - pixel_y = 4 - }, -/obj/item/rig_module/sprinter{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/rig_module/rescue_pharm{ - pixel_y = -2 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/mech_bay) -"fE" = ( -/obj/structure/table/steel_reinforced, -/obj/item/rig_module/mounted{ - pixel_x = -4; - pixel_y = -4 - }, -/obj/item/rig_module/mounted/egun{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/rig_module/mounted/egun, -/obj/item/rig_module/mounted/egun{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/rig_module/mounted/egun{ - pixel_x = 4; - pixel_y = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/mech_bay) -"fP" = ( -/obj/structure/table/steel_reinforced, -/obj/item/rig_module/chem_dispenser/combat, -/obj/item/rig_module/chem_dispenser/combat, -/obj/item/rig_module/chem_dispenser/injector, -/obj/item/rig_module/chem_dispenser/injector, -/obj/item/rig_module/device/healthscanner, -/obj/item/rig_module/device/healthscanner, -/obj/item/rig_module/device/healthscanner, -/obj/item/rig_module/device/healthscanner, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/mech_bay) -"fU" = ( -/obj/structure/table/steel_reinforced, -/obj/item/rig_module/device/rcd{ - pixel_x = -4; - pixel_y = -4 - }, -/obj/item/rig_module/device/rcd{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/rig_module/device/plasmacutter{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/rig_module/device/plasmacutter{ - pixel_x = 4; - pixel_y = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/mech_bay) -"fZ" = ( -/obj/structure/table/steel_reinforced, -/obj/item/rig_module/device/drill{ - pixel_y = -4 - }, -/obj/item/rig_module/device/drill{ - pixel_y = 4 - }, -/obj/item/rig_module/maneuvering_jets{ - pixel_x = -5 - }, -/obj/item/rig_module/maneuvering_jets{ - pixel_x = -2 - }, -/obj/item/rig_module/maneuvering_jets{ - pixel_x = 1 - }, -/obj/item/rig_module/maneuvering_jets{ - pixel_x = 4 - }, -/obj/item/rig_module/maneuvering_jets{ - pixel_x = 7 - }, -/obj/item/rig_module/maneuvering_jets{ - pixel_x = 10 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/mech_bay) -"ga" = ( -/obj/structure/sign/department/operational{ - name = "MEDICAL & SURGERY" - }, -/turf/simulated/wall/shull, -/area/ship/ert/med_surg) -"gf" = ( -/obj/machinery/bodyscanner{ - dir = 8 - }, -/obj/machinery/light/no_nightshift{ - dir = 8 - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"gh" = ( -/obj/machinery/light/no_nightshift{ - dir = 8 - }, -/obj/machinery/button/remote/blast_door{ - description_fluff = "\\(OOC) DO NOT TOUCH THIS BUTTON WITHOUT THE EXPLICIT PERMISSION OF AN ADMINISTRATOR."; - dir = 4; - id = "NRV_MECHS"; - name = "MECH BAY CONTROL"; - pixel_x = -25; - req_one_access = list(108) - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/gunnery) -"gk" = ( -/obj/machinery/shieldwallgen, -/obj/effect/floor_decal/industrial/outline/blue, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"gl" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"gn" = ( -/obj/machinery/light/no_nightshift, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 + dir = 9 }, /obj/machinery/light_switch{ dir = 1; pixel_y = -23 }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"go" = ( +/obj/structure/table/hardwoodtable, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"jz" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"jA" = ( +/obj/machinery/door/blast/shutters{ + density = 0; + dir = 2; + icon_state = "shutter0"; + id = "braun_cells_privacy"; + name = "Privacy Shutters"; + opacity = 0 + }, +/obj/structure/grille, +/obj/structure/window/titanium/full, +/obj/structure/window/titanium{ + dir = 1 + }, +/obj/structure/window/titanium, +/obj/structure/window/titanium{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable/yellow, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/brig) +"jB" = ( +/obj/machinery/alarm/alarms_hidden{ + dir = 8; + pixel_x = 26 + }, +/turf/simulated/floor/tiled/techfloor/grid, +/area/ship/ert/brig) +"jD" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"jJ" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/machinery/porta_turret/stationary/CIWS, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/eng_storage) +"jK" = ( /obj/structure/cable/yellow{ d1 = 1; d2 = 2; icon_state = "1-2" }, -/turf/simulated/wall/rshull, -/area/ship/ert/eng_storage) -"gx" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/melee/baton{ - pixel_x = -6 - }, -/obj/item/weapon/melee/baton{ - pixel_x = -2 - }, -/obj/item/weapon/melee/baton{ - pixel_x = 2 - }, -/obj/item/weapon/melee/baton{ - pixel_x = 6 - }, -/obj/item/weapon/shield/riot{ - pixel_x = -6 - }, -/obj/item/weapon/shield/riot{ - pixel_x = -2 - }, -/obj/item/weapon/shield/riot{ - pixel_x = 2 - }, -/obj/item/weapon/shield/riot{ - pixel_x = 6 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/machinery/recharger/wallcharger{ - pixel_x = -23; - pixel_y = 5 - }, -/obj/machinery/recharger/wallcharger{ - pixel_x = -23; - pixel_y = -4 - }, -/obj/machinery/recharger/wallcharger{ - pixel_x = -23; - pixel_y = -12 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_st) -"gA" = ( -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"gF" = ( -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/effect/floor_decal/industrial/warning{ - dir = 10 - }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"jQ" = ( +/obj/structure/ship_munition/disperser_charge/emp, +/obj/effect/floor_decal/industrial/warning, /obj/structure/railing, /turf/simulated/floor/reinforced, /area/ship/ert/gunnery) -"gN" = ( +"jU" = ( +/obj/structure/ship_munition/disperser_charge/emp, +/obj/effect/floor_decal/industrial/warning, +/turf/simulated/floor/reinforced, +/area/ship/ert/gunnery) +"jY" = ( +/obj/machinery/atmospherics/unary/vent_pump/on, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"jZ" = ( /obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" + d1 = 1; + d2 = 2; + icon_state = "1-2" }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 +/obj/structure/table/steel_reinforced, +/obj/item/device/laser_pointer/upgraded, +/obj/item/device/laser_pointer/upgraded, +/obj/item/device/flash, +/obj/item/device/flash, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"kg" = ( +/obj/structure/ship_munition/disperser_charge/emp, +/obj/effect/floor_decal/industrial/warning, +/obj/structure/railing, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/reinforced, +/area/ship/ert/gunnery) +"kh" = ( +/obj/machinery/firealarm/alarms_hidden{ + pixel_y = 26 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"kk" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/engine) +"kl" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/obj/machinery/alarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_port) +"km" = ( +/obj/machinery/chem_master, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"kp" = ( +/obj/machinery/light/no_nightshift{ + dir = 4 + }, +/obj/machinery/atmospherics/portables_connector/fuel{ + dir = 8 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/floor_decal/industrial/outline/red, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"kt" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/gun/energy/netgun{ + pixel_y = -4 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/weapon/gun/energy/sniperrifle{ + battery_lock = 0; + pixel_y = 6 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_st) +"kw" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/teleporter) +"kx" = ( +/obj/structure/table/steel_reinforced, +/obj/item/weapon/storage/box/pillbottles, +/obj/item/weapon/storage/box/pillbottles, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"ky" = ( +/obj/structure/table/steel_reinforced, +/obj/item/weapon/storage/firstaid/surgery, +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/obj/item/weapon/surgical/bone_clamp, +/obj/item/weapon/surgical/scalpel/manager, +/obj/item/weapon/surgical/circular_saw/manager, +/obj/item/stack/nanopaste, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"kz" = ( +/obj/effect/floor_decal/corner/red{ + dir = 6 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways) +"kE" = ( +/obj/machinery/light/no_nightshift, +/obj/machinery/firealarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/obj/machinery/power/port_gen/pacman/mrs, +/obj/effect/floor_decal/industrial/outline/yellow, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"kG" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/gun/projectile/automatic/z8{ + pixel_y = 3 + }, +/obj/item/weapon/gun/projectile/automatic/z8{ + pixel_y = -3 + }, +/obj/item/ammo_magazine/m762, +/obj/item/ammo_magazine/m762, +/obj/item/ammo_magazine/m762, +/obj/item/ammo_magazine/m762, +/obj/item/ammo_magazine/m762, +/obj/item/ammo_magazine/m762, +/obj/item/ammo_magazine/m762, +/obj/item/ammo_magazine/m762, +/obj/item/ammo_magazine/m762/ap, +/obj/item/ammo_magazine/m762/ap, +/obj/item/ammo_magazine/m762/ap, +/obj/item/ammo_magazine/m762/ap, +/obj/machinery/light_switch{ + dir = 1; + pixel_y = -23 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_dl) +"kJ" = ( +/turf/simulated/wall/rshull, +/area/ship/ert/atmos) +"kL" = ( +/obj/machinery/atmospherics/pipe/tank/air, +/turf/simulated/floor/airless, +/area/ship/ert/gunnery) +"kM" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 1 + }, +/obj/effect/landmark{ + name = "Commando" + }, +/obj/effect/catwalk_plated/techmaint, +/turf/simulated/floor/plating, +/area/ship/ert/barracks) +"kO" = ( +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/dock_port) +"kP" = ( +/obj/machinery/atmospherics/pipe/simple/visible{ + dir = 10 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"kQ" = ( +/obj/structure/sink{ + dir = 4; + pixel_x = 12; + pixel_y = 8 + }, +/obj/structure/medical_stand, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"kS" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"kT" = ( +/obj/machinery/atmospherics/pipe/simple/visible{ dir = 6 }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/atmos) -"gR" = ( -/obj/machinery/power/apc/hyper{ - alarms_hidden = 1; - dir = 4; - name = "VB APC - East"; - pixel_x = 24 - }, -/obj/structure/cable/yellow{ - d2 = 2; - icon_state = "0-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"gW" = ( -/obj/machinery/disposal/deliveryChute{ - dir = 8 - }, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/obj/structure/railing, -/obj/effect/floor_decal/industrial/warning, -/turf/simulated/floor/reinforced, -/area/ship/ert/gunnery) -"gX" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/storage/box/emps{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/weapon/storage/box/emps{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_dl) -"gZ" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"ha" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"hj" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/simulated/wall/rshull, -/area/ship/ert/gunnery) -"hk" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/door/firedoor/border_only, -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced{ +"kW" = ( +/obj/machinery/computer/teleporter{ dir = 1 }, -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/simple/visible, -/turf/simulated/floor/airless, -/area/ship/ert/gunnery) -"hs" = ( -/obj/machinery/pointdefense_control{ - id_tag = "vonbraun_pd" - }, -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"hv" = ( -/obj/machinery/sleeper{ - dir = 8 - }, -/obj/machinery/light/no_nightshift{ - dir = 8 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"hx" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/light/no_nightshift{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_port) -"hH" = ( -/obj/machinery/airlock_sensor{ - pixel_y = 21 - }, -/obj/effect/map_helper/airlock/sensor/int_sensor, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_port) -"hN" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/alarm/alarms_hidden{ - pixel_y = 26 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engineering) -"hP" = ( -/obj/machinery/autolathe{ - desc = "Your typical Autolathe. It appears to have much more options than your regular one, however..."; - hacked = 1; - name = "Unlocked Autolathe" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"hS" = ( -/obj/structure/closet/crate/freezer, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/machinery/light_switch{ - dir = 1; - pixel_y = -23 - }, -/obj/effect/floor_decal/industrial/outline, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"hU" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/unary/vent_pump/on, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_port) -"hV" = ( -/obj/effect/floor_decal/corner/red{ - dir = 9 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"hY" = ( -/obj/structure/hull_corner{ - dir = 4 - }, +/area/ship/ert/teleporter) +"kX" = ( +/obj/machinery/porta_turret/stationary/CIWS, /turf/simulated/floor/reinforced/airless, -/area/ship/ert/dock_star) -"ia" = ( +/area/ship/ert/engine) +"lm" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/wall/shull, +/area/ship/ert/hallways_aft) +"ls" = ( +/obj/machinery/door/airlock/glass_external, +/obj/effect/map_helper/airlock/door/int_door, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_port) +"lv" = ( +/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{ + dir = 8; + id_tag = "von_braun_port"; + master_tag = "von_braun_master"; + name = "Port Docking Control"; + pixel_x = 22 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_port) +"lx" = ( /obj/structure/table/rack/steel, /obj/item/clothing/accessory/holster/leg{ pixel_x = -4; @@ -1710,493 +2277,136 @@ /obj/effect/floor_decal/industrial/outline/grey, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/barracks) -"ib" = ( -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/hangar) -"if" = ( +"lz" = ( /obj/structure/cable/yellow{ d1 = 1; d2 = 8; icon_state = "1-8" }, -/turf/simulated/wall/rshull, -/area/ship/ert/gunnery) -"ij" = ( -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"ik" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_port) -"ip" = ( -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"iu" = ( -/obj/machinery/power/pointdefense{ - id_tag = "vonbraun_pd" - }, /obj/structure/cable/yellow{ + d1 = 1; d2 = 4; - dir = 4; - icon_state = "0-4" + icon_state = "1-4" }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/hallways_aft) -"ix" = ( -/obj/machinery/door/firedoor/border_only, -/obj/machinery/door/airlock/glass{ - req_one_access = list(103) - }, -/obj/structure/sign/warning/airlock{ - pixel_y = -32 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_star) -"iy" = ( -/obj/machinery/alarm/alarms_hidden{ - dir = 1; - pixel_y = -26 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"iz" = ( -/obj/structure/ship_munition/disperser_charge/emp, -/obj/effect/floor_decal/industrial/warning, -/turf/simulated/floor/reinforced, -/area/ship/ert/gunnery) -"iB" = ( -/turf/simulated/wall/shull, -/area/ship/ert/dock_port) -"iC" = ( -/obj/item/device/healthanalyzer/phasic{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/device/healthanalyzer/phasic, -/obj/item/device/healthanalyzer/phasic{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/structure/table/rack/steel, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/obj/effect/floor_decal/industrial/outline, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"iO" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"iR" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"iW" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"iX" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"jn" = ( -/obj/machinery/chem_master, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"jv" = ( -/obj/machinery/computer/cryopod/ert{ - pixel_y = 32 - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"jz" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"jA" = ( -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/teleporter) -"jD" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"jI" = ( -/obj/machinery/teleport/station, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/teleporter) -"jK" = ( -/obj/machinery/door/airlock/glass_engineering{ - name = "Engineering"; - req_access = list(103) - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/mech_bay) -"jQ" = ( -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/mech_bay) -"jU" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/mech_bay) -"jY" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/mech_bay) -"kf" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/gun/projectile/automatic/pdw{ - pixel_y = 6 - }, -/obj/item/weapon/gun/projectile/automatic/pdw{ - pixel_y = 4 - }, -/obj/item/weapon/gun/projectile/automatic/pdw{ - pixel_y = 2 - }, -/obj/item/weapon/gun/projectile/automatic/pdw, -/obj/item/weapon/gun/projectile/automatic/pdw{ - pixel_y = -2 - }, -/obj/item/weapon/gun/projectile/automatic/pdw{ - pixel_y = -4 - }, -/obj/item/ammo_magazine/m9mml{ - pixel_x = 10 - }, -/obj/item/ammo_magazine/m9mml{ - pixel_x = 8 - }, -/obj/item/ammo_magazine/m9mml{ - pixel_x = 6 - }, -/obj/item/ammo_magazine/m9mml{ - pixel_x = 4 - }, -/obj/item/ammo_magazine/m9mml{ - pixel_x = 2 - }, -/obj/item/ammo_magazine/m9mml, -/obj/item/ammo_magazine/m9mml{ - pixel_x = -2 - }, -/obj/item/ammo_magazine/m9mml{ - pixel_x = -4 - }, -/obj/item/ammo_magazine/m9mml{ - pixel_x = -6 - }, -/obj/item/ammo_magazine/m9mml{ - pixel_x = -8 - }, -/obj/item/ammo_magazine/m9mml{ - pixel_x = -10 - }, -/obj/item/ammo_magazine/m9mml{ - pixel_x = -12 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_st) -"kg" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/wall/rshull, -/area/ship/ert/hallways_aft) -"kh" = ( -/obj/machinery/light/no_nightshift{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways_aft) -"kl" = ( -/obj/effect/landmark{ - name = "Commando" - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"km" = ( -/obj/effect/floor_decal/corner/white{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"kt" = ( -/obj/machinery/door/blast/regular/open{ - id = "ERT_Shuttle_Rear"; - name = "Boarding Hatch" - }, -/obj/machinery/button/remote/blast_door{ - id = "ERT_Shuttle_Rear"; - name = "ERT Shuttle Access"; - pixel_y = 24; - req_access = list(103) - }, -/turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"kx" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/firedoor/border_only, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"ky" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/simulated/wall/shull, -/area/ship/ert/med_surg) -"kz" = ( -/obj/structure/closet/crate{ - dir = 1 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/item/weapon/plastique, -/obj/item/weapon/plastique, -/obj/item/weapon/plastique, -/obj/item/weapon/plastique, -/obj/effect/floor_decal/industrial/outline/red, -/obj/item/weapon/plastique, -/obj/item/weapon/plastique, -/obj/item/weapon/plastique, -/obj/item/weapon/plastique, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_dl) -"kG" = ( -/obj/effect/floor_decal/corner/white{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"kJ" = ( -/turf/simulated/wall/rshull, -/area/ship/ert/atmos) -"kL" = ( -/obj/machinery/light/no_nightshift{ - dir = 4 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/engine) -"kM" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"kO" = ( -/obj/structure/hull_corner{ - dir = 8 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/barracks) -"kP" = ( -/obj/machinery/atmospherics/pipe/tank/air{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"kS" = ( -/obj/machinery/atmospherics/pipe/simple/visible{ - dir = 10 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"kT" = ( -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"kW" = ( -/turf/simulated/wall/shull, -/area/ship/ert/dock_star) -"kX" = ( -/obj/machinery/atmospherics/pipe/manifold/visible{ - dir = 1 - }, -/turf/simulated/wall/shull, -/area/ship/ert/dock_star) -"kY" = ( -/obj/machinery/atmospherics/pipe/simple/visible{ - dir = 6 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"lm" = ( -/obj/effect/floor_decal/industrial/outline/blue, -/obj/machinery/portable_atmospherics/canister/carbon_dioxide/engine_setup, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"lq" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/obj/effect/floor_decal/industrial/warning, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/teleporter) -"ls" = ( -/obj/machinery/atmospherics/portables_connector{ - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/empty, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"lu" = ( -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways_aft) -"lv" = ( -/obj/structure/closet/wardrobe/ert, -/obj/item/modular_computer/tablet/preset/custom_loadout/elite, -/obj/item/weapon/storage/box/survival/comp{ - starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi) - }, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/modular_computer/laptop/preset/custom_loadout/elite, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"lx" = ( -/obj/machinery/door/airlock/external, -/obj/machinery/airlock_sensor/airlock_exterior{ - pixel_x = 24; - pixel_y = -11 - }, -/obj/effect/map_helper/airlock/door/ext_door, -/obj/effect/map_helper/airlock/sensor/ext_sensor, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_star) -"lz" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) +/obj/machinery/atmospherics/pipe/manifold/hidden/supply, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, +/obj/effect/catwalk_plated/techmaint, +/turf/simulated/floor/plating, +/area/ship/ert/eng_storage) "lB" = ( -/obj/item/modular_computer/console/preset/engineering{ - dir = 4 +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/engineering) -"lL" = ( -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_port) -"lO" = ( -/obj/machinery/alarm/alarms_hidden{ - dir = 1; - pixel_y = -26 +"lE" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 10 + }, +/obj/machinery/light_switch{ + pixel_y = 23 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/teleporter) +"lR" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 9 }, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/hallways_aft) -"lR" = ( +"lU" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"lZ" = ( +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/engine) +"md" = ( +/obj/structure/table/rack/steel, +/obj/item/ammo_magazine/ammo_box/b12g/pellet, +/obj/item/ammo_magazine/ammo_box/b12g/pellet, +/obj/item/ammo_magazine/ammo_box/b12g, +/obj/item/ammo_magazine/ammo_box/b12g, +/obj/item/ammo_magazine/ammo_box/b12g/emp, +/obj/item/ammo_magazine/ammo_box/b12g/flash, +/obj/item/ammo_magazine/ammo_box/b12g/beanbag, +/obj/item/ammo_magazine/ammo_box/b12g/beanbag, +/obj/item/ammo_magazine/ammo_box/b12g/stunshell, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/weapon/gun/projectile/automatic/as24{ + pixel_y = 3 + }, +/obj/item/weapon/gun/projectile/automatic/as24{ + pixel_y = -3 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_dl) +"mg" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 4 + }, +/obj/machinery/button/remote/blast_door{ + dir = 8; + id = "ERT_Blast_Windows"; + name = "Emergency Blast Shields"; + pixel_x = 55; + req_one_access = list(101) + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/ert_ship_boat) +"mh" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/med) +"mj" = ( +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_port) +"ml" = ( +/obj/machinery/light/no_nightshift, +/obj/structure/sign/vacuum{ + pixel_y = -32 + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"mp" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"mq" = ( /obj/machinery/firealarm/alarms_hidden{ dir = 1; pixel_y = -26 }, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/dock_port) -"lV" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/obj/machinery/alarm/alarms_hidden{ - dir = 1; - pixel_y = -26 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_port) -"lX" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/light_switch{ - dir = 8; - pixel_x = 23 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_port) -"lZ" = ( -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/engine) -"mb" = ( +"mr" = ( /obj/structure/table/rack/steel, /obj/item/weapon/storage/belt/security/tactical{ pixel_x = -4; @@ -2243,65 +2453,17 @@ /obj/effect/floor_decal/industrial/outline/grey, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/barracks) -"mh" = ( -/obj/structure/closet/crate/freezer, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/item/weapon/reagent_containers/blood/OMinus, -/obj/effect/floor_decal/industrial/outline, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"mj" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/obj/effect/landmark{ - name = "Commando" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"mq" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/obj/effect/landmark{ - name = "Commando" - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"mr" = ( -/obj/structure/reagent_dispensers/water_cooler/full, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) "mt" = ( -/obj/structure/cable/green, /obj/structure/cable/green{ - d2 = 2; - icon_state = "0-2" + d1 = 1; + d2 = 8; + icon_state = "1-8" }, -/obj/structure/cable/green{ - d2 = 4; - icon_state = "0-4" +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + dir = 4; + name = "VB APC - East"; + pixel_x = 24 }, /obj/structure/cable/green{ d2 = 8; @@ -2309,15 +2471,63 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/engineering) -"my" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, +"mv" = ( /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_dl) +/area/shuttle/ert_ship_boat) +"mz" = ( +/obj/machinery/button/flasher{ + pixel_x = -9; + pixel_y = 22 + }, +/obj/machinery/button/remote/blast_door{ + id = "braun_cells_privacy"; + name = "Privacy Shutter Controls"; + pixel_x = 8; + pixel_y = 25; + req_access = list(103) + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) "mC" = ( +/obj/effect/landmark{ + name = "Commando" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"mI" = ( +/obj/effect/landmark{ + name = "Commando" + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"mJ" = ( +/obj/machinery/teleport/station, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/teleporter) +"mN" = ( +/obj/structure/medical_stand, +/obj/structure/sink{ + dir = 4; + pixel_x = 12; + pixel_y = 8 + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"mR" = ( /obj/structure/cable/yellow{ d1 = 2; d2 = 4; @@ -2332,109 +2542,6 @@ }, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/barracks) -"mF" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"mH" = ( -/obj/structure/bed/chair/bay/shuttle, -/obj/machinery/recharger/wallcharger{ - pixel_x = -23; - pixel_y = 5 - }, -/obj/machinery/recharger/wallcharger{ - pixel_x = -23; - pixel_y = -4 - }, -/obj/machinery/recharger/wallcharger{ - pixel_x = -23; - pixel_y = -12 - }, -/turf/simulated/floor/tiled/techfloor, -/area/shuttle/ert_ship_boat) -"mI" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor/multi_tile{ - dir = 1; - req_one_access = list(103) - }, -/obj/machinery/door/airlock/multi_tile/glass{ - dir = 1; - req_one_access = list(103) - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"mJ" = ( -/obj/structure/table/steel_reinforced, -/obj/fiftyspawner/durasteel, -/obj/fiftyspawner/durasteel, -/obj/fiftyspawner/durasteel, -/obj/fiftyspawner/durasteel, -/obj/fiftyspawner/titanium_glass, -/obj/fiftyspawner/titanium_glass, -/obj/fiftyspawner/titanium_glass, -/obj/fiftyspawner/titanium_glass, -/obj/fiftyspawner/plastitanium_glass, -/obj/fiftyspawner/plastitanium_glass, -/obj/fiftyspawner/plastitanium_glass, -/obj/fiftyspawner/plastitanium_glass, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"mN" = ( -/obj/machinery/sleep_console{ - dir = 4 - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"mO" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"mP" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"mR" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"mT" = ( -/obj/structure/cable/yellow{ - 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 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) "mV" = ( /obj/structure/cable/yellow{ d1 = 4; @@ -2449,7 +2556,84 @@ }, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/barracks) +"mX" = ( +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/obj/effect/floor_decal/industrial/warning, +/obj/structure/table/steel_reinforced, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) "mZ" = ( +/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/tiled/techmaint, +/area/ship/ert/barracks) +"nb" = ( +/obj/structure/table/steel_reinforced, +/obj/machinery/atmospherics/unary/vent_pump/on, +/obj/item/weapon/storage/box/cdeathalarm_kit{ + pixel_x = -1; + pixel_y = -1 + }, +/obj/item/weapon/storage/box/cdeathalarm_kit{ + pixel_x = 1; + pixel_y = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"nc" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"nl" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/firedoor/border_only, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med_surg) +"nn" = ( +/obj/structure/cable/yellow{ + 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/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"np" = ( /obj/structure/cable/yellow{ d1 = 4; d2 = 8; @@ -2466,11 +2650,277 @@ }, /obj/machinery/door/airlock/multi_tile/glass{ dir = 1; + name = "Outfitting"; req_one_access = list(103) }, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/barracks) -"na" = ( +"nq" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/wall/rshull, +/area/ship/ert/barracks) +"nt" = ( +/obj/structure/table/steel_reinforced, +/obj/machinery/atmospherics/unary/vent_scrubber/on, +/obj/item/weapon/storage/box/backup_kit{ + pixel_x = -1; + pixel_y = -1 + }, +/obj/item/weapon/storage/box/backup_kit{ + pixel_x = 1; + pixel_y = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"nv" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, +/obj/effect/catwalk_plated/techmaint, +/turf/simulated/floor/plating, +/area/ship/ert/barracks) +"nx" = ( +/obj/machinery/vending/fitness{ + prices = list() + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"nz" = ( +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/obj/machinery/button/remote/blast_door{ + description_fluff = "\\(OOC) DO NOT TOUCH THIS BUTTON WITHOUT THE EXPLICIT PERMISSION OF AN ADMINISTRATOR."; + dir = 4; + id = "NRV_MECHS"; + name = "MECH BAY CONTROL"; + pixel_x = -25; + req_one_access = list(108) + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/gunnery) +"nB" = ( +/obj/structure/cable/yellow{ + 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/techmaint, +/area/ship/ert/mech_bay) +"nC" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/gunnery) +"nM" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 10 + }, +/obj/structure/railing, +/turf/simulated/floor/reinforced, +/area/ship/ert/gunnery) +"nS" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/floor_decal/corner/red{ + dir = 8 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"nU" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/obj/machinery/button/remote/blast_door{ + dir = 1; + id = "ERT_Shuttle_Fore"; + name = "ERT Deployment Access"; + pixel_y = -25; + req_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/ert_ship_boat) +"nX" = ( +/obj/machinery/atmospherics/pipe/simple/visible/fuel{ + dir = 10 + }, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/blast/regular/open{ + id = "VB_Rear_Blast"; + name = "Blast Shield" + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/simulated/floor/plating, +/area/ship/ert/engine) +"nY" = ( +/obj/machinery/door/blast/regular/open{ + dir = 4; + id = "braun_blast_shields"; + name = "Blast Shield" + }, +/turf/space, +/area/space) +"ob" = ( +/obj/structure/cable/green{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engineering) +"oi" = ( +/obj/machinery/disposal/deliveryChute{ + dir = 8 + }, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/obj/structure/railing, +/obj/effect/floor_decal/industrial/warning, +/turf/simulated/floor/reinforced, +/area/ship/ert/gunnery) +"ok" = ( +/obj/machinery/firealarm/alarms_hidden{ + pixel_y = 26 + }, +/obj/machinery/atmospherics/pipe/simple/visible/yellow{ + dir = 6 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"om" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/gun/launcher/grenade{ + pixel_y = 3 + }, +/obj/item/weapon/gun/launcher/grenade{ + pixel_y = -3 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_dl) +"oo" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/gun/energy/taser{ + pixel_y = 3 + }, +/obj/item/weapon/gun/energy/taser{ + pixel_y = 1 + }, +/obj/item/weapon/gun/energy/taser{ + pixel_y = -1 + }, +/obj/item/weapon/gun/energy/taser{ + pixel_y = -3 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_st) +"op" = ( +/obj/machinery/atmospherics/pipe/tank/phoron{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"ot" = ( +/obj/machinery/door/airlock/glass_engineering{ + name = "Engineering Control"; + req_access = list(103) + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/door/firedoor/border_only, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/engineering) +"ox" = ( +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + dir = 4; + name = "VB APC - East"; + pixel_x = 24 + }, +/obj/machinery/vending/nifsoft_shop{ + categories = 111; + desc = "For all your mindware and mindware accessories. Now paid for by Central!"; + dir = 8; + emagged = 1; + name = "ERT NIFSoft Vendor" + }, +/obj/structure/cable/yellow{ + d2 = 8; + icon_state = "0-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways) +"oy" = ( +/obj/machinery/atmospherics/portables_connector{ + dir = 8 + }, +/obj/machinery/portable_atmospherics/canister/empty, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"oz" = ( +/obj/machinery/atmospherics/unary/vent_pump/on, +/obj/structure/table/steel_reinforced, +/obj/item/weapon/rcd/advanced/loaded{ + desc = "A device used to rapidly build and deconstruct. This version works faster, and has a much larger capacity than a standard model, but doesn't work at range. Reload with compressed matter cartridges."; + name = "emergency rapid construction device"; + pixel_y = 3; + ranged = 0 + }, +/obj/item/weapon/rcd/advanced/loaded{ + desc = "A device used to rapidly build and deconstruct. This version works faster, and has a much larger capacity than a standard model, but doesn't work at range. Reload with compressed matter cartridges."; + name = "emergency rapid construction device"; + pixel_y = -3; + ranged = 0 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"oC" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 6 + }, +/obj/machinery/alarm/alarms_hidden{ + pixel_y = 26 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_star) +"oN" = ( +/obj/effect/shuttle_landmark/premade/ert_ship_near_fore, +/turf/space, +/area/space) +"oO" = ( /obj/machinery/airlock_sensor{ pixel_y = -23 }, @@ -2482,119 +2932,13 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/dock_star) -"nb" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/gun/energy/xray{ - pixel_y = -3 - }, -/obj/item/weapon/gun/energy/xray{ - pixel_y = 3 - }, -/obj/machinery/light/no_nightshift, -/obj/machinery/firealarm/alarms_hidden{ - dir = 1; - pixel_y = -26 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_dl) -"nc" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, -/obj/effect/catwalk_plated/techmaint, -/turf/simulated/floor/plating, -/area/ship/ert/barracks) -"nl" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/firedoor/border_only, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med_surg) -"nn" = ( -/obj/machinery/door/airlock/glass_engineering{ - name = "Engineering"; - req_access = list(103) - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ +"oV" = ( +/obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/door/firedoor/multi_tile{ - dir = 1 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/mech_bay) -"no" = ( -/obj/machinery/photocopier, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"np" = ( -/obj/structure/cable/yellow{ - 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/techmaint, -/area/ship/ert/mech_bay) -"nq" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, /turf/simulated/wall/rshull, -/area/ship/ert/barracks) -"nr" = ( -/obj/machinery/porta_turret/stationary/CIWS, -/turf/simulated/floor/reinforced/airless, /area/ship/ert/gunnery) -"nt" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/mech_bay) -"nv" = ( -/obj/structure/cable/yellow{ - 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/techmaint, -/area/ship/ert/mech_bay) -"nx" = ( +"oX" = ( /obj/structure/cable/yellow{ d1 = 1; d2 = 2; @@ -2602,231 +2946,126 @@ }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/door/firedoor/border_only, -/obj/machinery/door/airlock/glass_engineeringatmos{ - req_one_access = list(103) - }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/atmos) -"nz" = ( -/obj/structure/cable/yellow{ - 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/glass_security{ - req_one_access = list(103) - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/mech_bay) -"nB" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/gunnery) -"nC" = ( -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/dock_star) -"nM" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engineering) -"nX" = ( -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/machinery/atmospherics/unary/engine{ - dir = 4 - }, +/area/ship/ert/barracks) +"pf" = ( +/obj/effect/landmark/map_data/ert_ship, /turf/space, -/area/ship/ert/engine) -"nY" = ( -/obj/structure/ship_munition/disperser_charge/emp, -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/reinforced, -/area/ship/ert/hallways_aft) -"oa" = ( -/obj/structure/table/rack, -/obj/item/weapon/hand_tele, -/obj/item/device/perfect_tele, -/obj/item/device/binoculars, -/obj/item/device/survivalcapsule{ - pixel_x = 3 - }, -/obj/item/device/survivalcapsule{ - pixel_x = -3 - }, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"og" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced, -/obj/machinery/door/blast/regular/open{ - dir = 8; - id = "ERT_Blast_Windows"; - name = "Blast Shield" - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/shuttle/ert_ship_boat) -"oi" = ( -/turf/simulated/wall/shull, -/area/ship/ert/hangar) -"oj" = ( -/obj/machinery/alarm/alarms_hidden{ - pixel_y = 26 +/area/space) +"pg" = ( +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/airlock/glass{ + req_one_access = list(103) }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways_aft) -"ok" = ( -/obj/machinery/alarm/alarms_hidden{ - pixel_y = 26 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"op" = ( -/obj/machinery/firealarm/alarms_hidden{ - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/visible/yellow{ - dir = 6 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"os" = ( -/obj/machinery/atmospherics/pipe/manifold/visible{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"oy" = ( -/obj/machinery/atmospherics/pipe/manifold/visible{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"oC" = ( +/area/ship/ert/dock_port) +"pm" = ( /obj/machinery/portable_atmospherics/canister/air, /obj/effect/floor_decal/industrial/outline, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/eng_storage) -"oN" = ( -/obj/effect/shuttle_landmark/premade/ert_ship_near_fore, -/turf/space, -/area/space) -"oO" = ( +"pn" = ( +/obj/item/modular_computer/console/preset/engineering{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engineering) +"po" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 + dir = 4 + }, +/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 = 4; d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/eng_storage) -"oQ" = ( -/obj/effect/floor_decal/corner/white{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" + icon_state = "2-8" }, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/med) -"oV" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" +"pq" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -4; + pixel_y = -6 }, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -4; + pixel_y = -2 + }, +/obj/item/weapon/storage/toolbox/electrical{ + pixel_x = -4; + pixel_y = 2 + }, +/obj/item/weapon/storage/toolbox/electrical{ + pixel_x = -4; + pixel_y = 6 + }, +/obj/item/weapon/storage/briefcase/inflatable{ + pixel_x = 4; + pixel_y = -6 + }, +/obj/item/weapon/storage/briefcase/inflatable{ + pixel_x = 4; + pixel_y = -2 + }, +/obj/item/weapon/storage/briefcase/inflatable{ + pixel_x = 4; + pixel_y = 2 + }, +/obj/item/weapon/storage/briefcase/inflatable{ + pixel_x = 4; + pixel_y = 6 + }, +/obj/effect/floor_decal/industrial/outline/yellow, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"pr" = ( /obj/machinery/light/no_nightshift{ dir = 8 }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_port) -"oW" = ( +/obj/structure/ship_munition/disperser_charge/explosive, +/obj/machinery/firealarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/structure/railing{ + dir = 1 + }, +/turf/simulated/floor/reinforced, +/area/ship/ert/gunnery) +"pt" = ( /obj/structure/table/rack/steel, -/obj/item/clothing/accessory/storage/black_vest{ - pixel_x = -4; - pixel_y = -4 - }, -/obj/item/clothing/accessory/storage/black_vest{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/clothing/accessory/storage/black_vest, -/obj/item/clothing/accessory/storage/black_vest{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/clothing/accessory/storage/black_vest{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/clothing/accessory/storage/black_vest{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/machinery/power/apc/hyper{ - alarms_hidden = 1; - dir = 4; - name = "VB APC - East"; - pixel_x = 24 - }, -/obj/structure/cable/yellow, -/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/weapon/rig/ert/security, +/obj/item/weapon/rig/ert/security, +/obj/item/weapon/rig/ert/security, +/obj/item/weapon/rig/ert/security, +/obj/item/weapon/rig/ert/security, +/obj/item/weapon/rig/ert/security, +/obj/item/clothing/suit/armor/vest/ert/security, +/obj/item/clothing/suit/armor/vest/ert/security, +/obj/item/clothing/suit/armor/vest/ert/security, +/obj/item/clothing/suit/armor/vest/ert/security, +/obj/item/clothing/suit/armor/vest/ert/security, +/obj/item/clothing/suit/armor/vest/ert/security, +/obj/item/clothing/head/helmet/ert/security, +/obj/item/clothing/head/helmet/ert/security, +/obj/item/clothing/head/helmet/ert/security, +/obj/item/clothing/head/helmet/ert/security, +/obj/item/clothing/head/helmet/ert/security, +/obj/item/clothing/head/helmet/ert/security, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/barracks) -"oX" = ( +"pv" = ( /obj/structure/table/rack/steel, /obj/effect/floor_decal/industrial/outline/grey, /obj/item/clothing/gloves/yellow{ @@ -2863,35 +3102,269 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/barracks) -"pb" = ( -/obj/structure/medical_stand, -/obj/structure/sink{ - dir = 4; - pixel_x = 12; - pixel_y = 8 +"pw" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"pf" = ( -/obj/effect/landmark/map_data/ert_ship, -/turf/space, -/area/space) -"pg" = ( -/obj/effect/landmark{ - name = "Commando" +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/door/blast/regular/open{ + dir = 2; + id = "braun_blast_shields"; + name = "Blast Shield" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"px" = ( +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/airlock/glass{ + req_one_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_star) +"pA" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/simple/visible, +/turf/simulated/floor/airless, +/area/ship/ert/gunnery) +"pD" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/ert_ship_boat) +"pE" = ( +/obj/machinery/button/remote/blast_door{ + dir = 1; + id = "Von_Braun_Cannon"; + name = "Cannon Port Access"; + pixel_y = -24; + req_one_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/gunnery) +"pG" = ( +/obj/machinery/alarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/obj/structure/table/rack/steel, +/obj/item/weapon/rig/ert/engineer, +/obj/item/weapon/rig/ert/engineer, +/obj/item/weapon/rig/ert/engineer, +/obj/item/weapon/rig/ert/engineer, +/obj/item/weapon/rig/ert/engineer, +/obj/item/weapon/rig/ert/engineer, +/obj/item/clothing/suit/armor/vest/ert/engineer, +/obj/item/clothing/suit/armor/vest/ert/engineer, +/obj/item/clothing/suit/armor/vest/ert/engineer, +/obj/item/clothing/suit/armor/vest/ert/engineer, +/obj/item/clothing/suit/armor/vest/ert/engineer, +/obj/item/clothing/suit/armor/vest/ert/engineer, +/obj/item/clothing/head/helmet/ert/engineer, +/obj/item/clothing/head/helmet/ert/engineer, +/obj/item/clothing/head/helmet/ert/engineer, +/obj/item/clothing/head/helmet/ert/engineer, +/obj/item/clothing/head/helmet/ert/engineer, +/obj/item/clothing/head/helmet/ert/engineer, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"pK" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/storage/backpack/ert/medical{ + pixel_y = -3 + }, +/obj/item/weapon/storage/backpack/ert/medical, +/obj/item/weapon/storage/backpack/ert/medical{ + pixel_y = 3 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/machinery/light/no_nightshift, +/obj/item/weapon/storage/backpack/ert/medical{ + pixel_y = 6 + }, +/obj/item/weapon/storage/backpack/ert/medical{ + pixel_y = 9 + }, +/obj/item/weapon/storage/backpack/ert/medical{ + pixel_y = 12 + }, +/obj/item/clothing/suit/space/void/responseteam/medical, +/obj/item/clothing/suit/space/void/responseteam/medical, +/obj/item/clothing/suit/space/void/responseteam/medical, +/obj/item/clothing/suit/space/void/responseteam/medical, +/obj/item/clothing/suit/space/void/responseteam/medical, +/obj/item/clothing/suit/space/void/responseteam/medical, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"pM" = ( +/obj/item/weapon/storage/belt/medical/emt{ + pixel_y = -4 + }, +/obj/item/weapon/storage/belt/medical/emt{ + pixel_y = -2 + }, +/obj/item/weapon/storage/belt/medical/emt, +/obj/item/weapon/storage/belt/medical/emt{ + pixel_y = 2 + }, +/obj/item/weapon/storage/belt/medical/emt{ + pixel_y = 4 + }, +/obj/item/weapon/storage/belt/medical/emt{ + pixel_y = 6 + }, +/obj/item/clothing/accessory/storage/white_vest{ + pixel_y = -4 + }, +/obj/item/clothing/accessory/storage/white_vest{ + pixel_y = -2 + }, +/obj/item/clothing/accessory/storage/white_vest, +/obj/item/clothing/accessory/storage/white_vest{ + pixel_y = 2 + }, +/obj/item/clothing/accessory/storage/white_vest{ + pixel_y = 4 + }, +/obj/item/clothing/accessory/storage/white_vest{ + pixel_y = 6 + }, +/obj/structure/table/rack/steel, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/weapon/storage/belt/explorer/pathfinder{ + name = "ERT belt" + }, +/obj/item/weapon/storage/belt/explorer/pathfinder{ + name = "ERT belt" + }, +/obj/item/weapon/storage/belt/explorer/pathfinder{ + name = "ERT belt" }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/barracks) -"pm" = ( -/obj/effect/floor_decal/corner/yellow{ - dir = 9 +"pN" = ( +/obj/structure/disposaloutlet, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/effect/floor_decal/industrial/warning, +/turf/simulated/floor/airless, +/area/ship/ert/gunnery) +"pO" = ( +/obj/machinery/light/no_nightshift, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/gunnery) +"pP" = ( +/obj/machinery/atmospherics/pipe/simple/visible{ + dir = 5 + }, +/turf/simulated/wall/rshull, +/area/ship/ert/dock_star) +"pQ" = ( +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/structure/table/steel_reinforced, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"pS" = ( +/obj/effect/shuttle_landmark/premade/ert_ship_near_port, +/turf/space, +/area/space) +"pU" = ( +/obj/structure/sign/department/medbay{ + name = "MEDICAL OUTFITTING & SUPPLIES" + }, +/turf/simulated/wall/shull, +/area/ship/ert/med) +"pV" = ( +/turf/simulated/wall/shull, +/area/ship/ert/atmos) +"pY" = ( +/obj/machinery/power/pointdefense{ + id_tag = "vonbraun_pd" + }, +/obj/structure/cable/yellow{ + d2 = 4; + icon_state = "0-4" + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/engine) +"pZ" = ( +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/airlock/glass_security{ + name = "Delta Armoury"; + req_one_access = list(103) + }, +/obj/machinery/door/blast/regular{ + closed_layer = 4; + id = "NRV_DELTA"; + layer = 4 }, /turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_dl) +"qa" = ( +/obj/structure/closet/crate/medical, +/obj/item/weapon/storage/mre/menu11, +/obj/item/weapon/storage/mre/menu11, +/obj/item/weapon/storage/mre/menu11, +/obj/item/weapon/storage/mre/menu11, +/obj/item/stack/nanopaste/advanced, +/obj/item/stack/nanopaste/advanced, +/obj/item/stack/nanopaste/advanced, +/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/glucose, +/obj/item/weapon/storage/pill_bottle/iron, +/obj/item/weapon/storage/pill_bottle/iron, +/obj/item/weapon/storage/pill_bottle/sleevingcure/full, +/obj/item/weapon/storage/box/syringes, +/obj/item/weapon/storage/box/syringes{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 23 + }, +/obj/effect/floor_decal/industrial/outline, +/turf/simulated/floor/tiled/techfloor, /area/ship/ert/med) -"po" = ( -/obj/machinery/door/airlock/glass_medical{ - name = "Medical Bay"; - req_access = list(103) +"qc" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"ql" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -2900,50 +3373,13 @@ dir = 4 }, /obj/structure/cable/yellow{ - d1 = 4; + d1 = 2; d2 = 8; - icon_state = "4-8" + icon_state = "2-8" }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"pq" = ( -/obj/structure/table/steel_reinforced, -/obj/item/bodybag/cryobag{ - pixel_x = -4; - pixel_y = -4 - }, -/obj/item/bodybag/cryobag{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/bodybag/cryobag, -/obj/item/bodybag/cryobag{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/bodybag/cryobag{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/bodybag/cryobag{ - pixel_x = 6; - pixel_y = 6 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"pr" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/firedoor/border_only, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/simulated/floor/airless, -/area/ship/ert/gunnery) -"pt" = ( +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/eng_storage) +"qo" = ( /obj/structure/table/rack/steel, /obj/item/clothing/suit/space/void/responseteam/janitor{ pixel_y = -2 @@ -2968,12 +3404,51 @@ /obj/machinery/light/no_nightshift, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/barracks) -"pv" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +"qp" = ( +/obj/machinery/door/airlock/glass_engineering{ + name = "Engineering"; + req_access = list(103) + }, +/obj/structure/cable/yellow{ + 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/border_only, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"pz" = ( +/area/ship/ert/engineering) +"qq" = ( +/obj/machinery/power/thermoregulator, +/obj/effect/floor_decal/industrial/outline, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"qt" = ( +/obj/structure/cable/green, +/obj/structure/cable/green{ + d2 = 2; + icon_state = "0-2" + }, +/obj/structure/cable/green{ + d2 = 4; + icon_state = "0-4" + }, +/obj/structure/cable/green{ + d2 = 8; + icon_state = "0-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engineering) +"qw" = ( +/obj/structure/bed/pod, +/turf/simulated/floor/tiled/techfloor/grid, +/area/ship/ert/brig) +"qy" = ( /obj/structure/cable/yellow{ d1 = 4; d2 = 8; @@ -2985,112 +3460,20 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, -/obj/machinery/door/firedoor/multi_tile{ - dir = 1 - }, -/obj/machinery/door/airlock/multi_tile/glass{ - dir = 1; - req_one_access = list(103) +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) -"pA" = ( -/obj/structure/ship_munition/disperser_charge/explosive, -/obj/effect/floor_decal/industrial/warning, -/turf/simulated/floor/reinforced, -/area/ship/ert/hallways_aft) -"pE" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/gunnery) -"pG" = ( -/obj/structure/closet{ - name = "custodial" - }, -/obj/item/weapon/reagent_containers/spray/cleaner{ - pixel_x = -6 - }, -/obj/item/weapon/reagent_containers/spray/cleaner{ - pixel_x = -2 - }, -/obj/item/weapon/reagent_containers/spray/cleaner{ - pixel_x = 2 - }, -/obj/item/weapon/reagent_containers/spray/cleaner{ - pixel_x = 6 - }, -/obj/item/weapon/reagent_containers/glass/bucket{ - pixel_x = 6 - }, -/obj/item/weapon/reagent_containers/glass/bucket{ - pixel_x = 2 - }, -/obj/item/weapon/reagent_containers/glass/bucket{ - pixel_x = -2 - }, -/obj/item/weapon/reagent_containers/glass/bucket{ - pixel_x = -6 - }, -/obj/item/weapon/mop{ - pixel_x = 6 - }, -/obj/item/weapon/mop{ - pixel_x = 2 - }, -/obj/item/weapon/mop{ - pixel_x = -2 - }, -/obj/item/weapon/mop{ - pixel_x = -6 - }, -/obj/item/weapon/rig/ert/janitor, -/obj/item/device/lightreplacer{ - pixel_y = -2 - }, -/obj/item/device/lightreplacer{ - pixel_y = 2 - }, -/obj/item/weapon/storage/box/lights/mixed{ - pixel_x = -1; - pixel_y = -1 - }, -/obj/item/weapon/storage/box/lights/mixed{ - pixel_x = 1; - pixel_y = 1 - }, -/obj/machinery/light/no_nightshift, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"pI" = ( -/obj/structure/table/rack/steel, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/weapon/gun/energy/pulse_rifle{ - pixel_y = 6 - }, -/obj/item/weapon/gun/energy/pulse_rifle{ - pixel_y = 4 - }, -/obj/item/weapon/gun/energy/pulse_rifle{ - pixel_y = 2 - }, -/obj/item/weapon/gun/energy/pulse_rifle, -/obj/item/weapon/gun/energy/pulse_rifle{ - pixel_y = -2 - }, -/obj/item/weapon/gun/energy/pulse_rifle{ - pixel_y = -4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_dl) -"pK" = ( +/area/ship/ert/mech_bay) +"qz" = ( /obj/structure/sign/department/eng{ name = "RIG AND MECH BAY" }, /turf/simulated/wall/shull, /area/ship/ert/mech_bay) -"pM" = ( +"qD" = ( /obj/structure/table/steel_reinforced, /obj/item/rig_module/mounted/taser{ pixel_x = -4; @@ -3122,281 +3505,146 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/mech_bay) -"pN" = ( -/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{ - dir = 8; - id_tag = "von_braun_star"; - master_tag = "von_braun_master"; - name = "Starboard Docking Control"; - pixel_x = 22 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_star) -"pO" = ( -/obj/machinery/light/no_nightshift, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/gunnery) -"pS" = ( -/obj/effect/shuttle_landmark/premade/ert_ship_near_port, -/turf/space, -/area/space) -"pU" = ( -/obj/machinery/body_scanconsole, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"pV" = ( -/turf/simulated/wall/shull, -/area/ship/ert/atmos) -"pW" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/gun/energy/plasmastun{ - pixel_y = -3 - }, -/obj/item/weapon/gun/energy/plasmastun{ - pixel_y = 3 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_dl) -"pY" = ( -/obj/structure/table/steel_reinforced, -/obj/item/weapon/cell/hyper, -/obj/item/weapon/cell/hyper, -/obj/item/weapon/cell/hyper, -/obj/item/weapon/cell/hyper, -/obj/item/weapon/cell/hyper, -/obj/item/weapon/cell/hyper, -/obj/item/weapon/cell/hyper, -/obj/item/weapon/cell/hyper, -/obj/machinery/cell_charger, -/obj/item/weapon/cell/hyper, -/obj/item/weapon/cell/hyper, -/obj/item/weapon/cell/hyper, -/obj/item/weapon/cell/hyper, -/obj/item/weapon/tool/screwdriver, -/obj/item/weapon/tool/wrench, -/obj/item/weapon/tool/crowbar, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/mech_bay) -"qa" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/wall/shull, -/area/ship/ert/med_surg) -"ql" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) -"qo" = ( -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/mech_bay) -"qt" = ( -/obj/structure/cable/green{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/table/steel_reinforced, -/obj/fiftyspawner/uranium, -/obj/fiftyspawner/uranium, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engineering) -"qy" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/gunnery) -"qz" = ( -/obj/machinery/light/no_nightshift{ - dir = 8 - }, -/obj/structure/ship_munition/disperser_charge/explosive, -/obj/machinery/firealarm/alarms_hidden{ - dir = 1; - pixel_y = -26 - }, -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/obj/structure/railing{ - dir = 1 - }, -/turf/simulated/floor/reinforced, -/area/ship/ert/gunnery) -"qA" = ( -/obj/effect/floor_decal/corner/white{ - dir = 8 - }, -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/machinery/alarm/alarms_hidden{ - pixel_y = 26 - }, -/obj/machinery/recharge_station, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"qD" = ( -/obj/structure/ship_munition/disperser_charge/explosive, -/obj/machinery/alarm/alarms_hidden{ - dir = 1; - pixel_y = -26 - }, -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/turf/simulated/floor/reinforced, -/area/ship/ert/gunnery) "qF" = ( /obj/machinery/light/no_nightshift{ dir = 1 }, /obj/machinery/porta_turret/stationary/CIWS, /turf/simulated/floor/reinforced/airless, -/area/ship/ert/eng_storage) +/area/ship/ert/dock_star) "qJ" = ( -/obj/structure/table/rack/steel, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/ammo_magazine/m545{ - pixel_x = -8 - }, -/obj/item/ammo_magazine/m545{ - pixel_x = -5 - }, -/obj/item/ammo_magazine/m545{ - pixel_x = -2 - }, -/obj/item/ammo_magazine/m545{ - pixel_x = 1 - }, -/obj/item/ammo_magazine/m545{ - pixel_x = 4 - }, -/obj/item/ammo_magazine/m545{ - pixel_x = 7 - }, -/obj/item/weapon/gun/projectile/automatic/sts35{ - pixel_y = -2 - }, -/obj/item/weapon/gun/projectile/automatic/sts35{ - pixel_y = 2 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_st) +/turf/simulated/wall/shull, +/area/ship/ert/hallways) "qP" = ( +/obj/structure/cable/yellow{ + 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/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/gunnery) -"qR" = ( -/obj/machinery/recharge_station, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"rn" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ +/obj/machinery/door/firedoor/multi_tile{ dir = 1 }, +/obj/machinery/door/airlock/glass_engineering{ + name = "RIG Bay & ORB Access"; + req_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/mech_bay) +"qR" = ( +/obj/machinery/light/no_nightshift, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/obj/machinery/light_switch{ + dir = 1; + pixel_y = -23 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"ra" = ( +/obj/machinery/power/pointdefense{ + id_tag = "vonbraun_pd" + }, /obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" + d2 = 8; + icon_state = "0-8" + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/med_surg) +"rc" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/gun/projectile/automatic/l6_saw{ + pixel_y = 3 + }, +/obj/item/weapon/gun/projectile/automatic/l6_saw{ + pixel_y = -3 + }, +/obj/item/ammo_magazine/m545saw{ + pixel_x = 6 + }, +/obj/item/ammo_magazine/m545saw{ + pixel_x = 2 + }, +/obj/item/ammo_magazine/m545saw{ + pixel_x = -2 + }, +/obj/item/ammo_magazine/m545saw{ + pixel_x = -6 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_dl) +"rh" = ( +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/med) +"rn" = ( +/obj/machinery/alarm/alarms_hidden{ + dir = 1; + pixel_y = -26 }, /turf/simulated/floor/tiled/white, /area/ship/ert/med_surg) "rp" = ( -/obj/structure/disposaloutlet, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/effect/floor_decal/industrial/warning, -/turf/simulated/floor/airless, +/turf/simulated/floor/tiled/techfloor, /area/ship/ert/gunnery) "rr" = ( -/obj/machinery/door/airlock/glass_external, -/obj/effect/map_helper/airlock/door/ext_door, -/turf/simulated/floor/airless, +/obj/structure/cable/yellow{ + d2 = 2; + icon_state = "0-2" + }, +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + dir = 8; + name = "VB APC - West"; + pixel_x = -24 + }, +/turf/simulated/floor/tiled/techfloor, /area/ship/ert/gunnery) "rs" = ( -/obj/machinery/atmospherics/pipe/simple/visible/universal, +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + dir = 4; + name = "VB APC - East"; + pixel_x = 24 + }, +/obj/structure/cable/yellow{ + d2 = 2; + icon_state = "0-2" + }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/engine) "rt" = ( -/obj/machinery/atmospherics/pipe/tank/air{ - dir = 4; - start_pressure = 740.5 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_star) -"ry" = ( -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/obj/machinery/light_switch{ - pixel_y = 23 - }, -/obj/structure/table/steel_reinforced, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engineering) -"rA" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ - dir = 8 - }, -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"rB" = ( -/obj/structure/ship_munition/disperser_charge/emp, -/obj/effect/floor_decal/industrial/warning, -/obj/structure/railing, /obj/structure/cable/yellow{ d1 = 1; d2 = 2; icon_state = "1-2" }, -/turf/simulated/floor/reinforced, -/area/ship/ert/gunnery) -"rD" = ( +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/wall/rshull, +/area/ship/ert/engine) +"ry" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engineering) +"rA" = ( /obj/machinery/atmospherics/pipe/simple/hidden/fuel{ dir = 10 }, @@ -3407,47 +3655,136 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/engine) -"rM" = ( -/obj/machinery/atmospherics/pipe/tank/air, -/turf/simulated/floor/airless, -/area/ship/ert/gunnery) "rN" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" +/obj/structure/table/steel_reinforced, +/obj/item/rig_module/mounted{ + pixel_x = -4; + pixel_y = -4 + }, +/obj/item/rig_module/mounted/egun{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/rig_module/mounted/egun, +/obj/item/rig_module/mounted/egun{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/rig_module/mounted/egun{ + pixel_x = 4; + pixel_y = 4 }, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/gunnery) +/area/ship/ert/mech_bay) "rO" = ( -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/gunnery) -"rP" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/wall/rshull, -/area/ship/ert/med_surg) -"rR" = ( -/obj/machinery/atmospherics/pipe/tank/phoron{ +/obj/structure/table/steel_reinforced, +/obj/machinery/light/no_nightshift{ dir = 8 }, -/obj/machinery/light/no_nightshift{ - dir = 4 +/obj/machinery/firealarm/alarms_hidden{ + pixel_y = 26 + }, +/obj/machinery/light_switch{ + dir = 4; + pixel_x = -23 + }, +/obj/item/rig_module/sprinter{ + pixel_x = -4; + pixel_y = 4 + }, +/obj/item/rig_module/sprinter{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/rig_module/rescue_pharm{ + pixel_y = -2 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" }, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) +/area/ship/ert/mech_bay) +"rP" = ( +/obj/machinery/atmospherics/unary/vent_pump/on, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"rR" = ( +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/unary/vent_scrubber/on, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_port) "rS" = ( -/obj/machinery/atmospherics/portables_connector{ +/obj/machinery/atmospherics/pipe/manifold/visible{ dir = 4 }, -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/effect/floor_decal/industrial/outline/blue, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/atmos) "rV" = ( +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/airlock/glass{ + req_one_access = list(103) + }, +/obj/structure/sign/warning/airlock{ + pixel_y = 32 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_port) +"sc" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/blast/regular/open{ + id = "VB_Rear_Blast"; + name = "Blast Shield" + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engineering) +"sd" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/eng_storage) +"sf" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"sk" = ( /obj/machinery/door/airlock/glass_medical{ name = "Medical Bay"; req_access = list(103) @@ -3457,179 +3794,171 @@ /obj/machinery/door/firedoor/multi_tile, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/hangar) -"sd" = ( -/obj/effect/floor_decal/corner/yellow{ - dir = 9 +"sq" = ( +/obj/structure/table/rack, +/obj/item/weapon/storage/secure/briefcase/nsfw_pack_hybrid, +/obj/item/weapon/storage/belt/explorer/pathfinder{ + name = "ERT belt" }, -/obj/structure/cable/yellow{ - 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/techmaint, -/area/ship/ert/med) -"sf" = ( -/obj/structure/table/steel_reinforced, -/obj/machinery/chemical_dispenser/ert, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"so" = ( -/obj/machinery/light/no_nightshift, -/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"sr" = ( /obj/structure/table/rack/steel, -/obj/item/clothing/accessory/storage/brown_vest{ +/obj/item/clothing/glasses/night{ + pixel_x = -4; pixel_y = -4 }, -/obj/item/clothing/accessory/storage/brown_vest{ +/obj/item/clothing/glasses/night{ + pixel_x = -2; pixel_y = -2 }, -/obj/item/clothing/accessory/storage/brown_vest, -/obj/item/clothing/accessory/storage/brown_vest{ +/obj/item/clothing/glasses/night, +/obj/item/clothing/glasses/night{ + pixel_x = 2; pixel_y = 2 }, -/obj/item/clothing/accessory/storage/brown_vest{ +/obj/item/clothing/glasses/night{ + pixel_x = 4; pixel_y = 4 }, -/obj/item/clothing/accessory/storage/brown_vest{ +/obj/item/clothing/glasses/night{ + pixel_x = 6; pixel_y = 6 }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"sp" = ( -/turf/simulated/wall/rshull, -/area/ship/ert/commander) -"sq" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" +/obj/machinery/atm{ + pixel_y = 26 }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_port) -"sr" = ( -/obj/machinery/vending/food, /obj/effect/floor_decal/industrial/outline/grey, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/barracks) "sw" = ( -/obj/machinery/firealarm/alarms_hidden{ - pixel_y = 26 +/obj/machinery/door/blast/shutters{ + density = 0; + dir = 2; + icon_state = "shutter0"; + id = "braun_cells_privacy"; + name = "Privacy Shutters"; + opacity = 0 }, +/obj/machinery/door/airlock/glass{ + req_one_access = list(103) + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 1 + }, +/obj/machinery/door/firedoor/glass, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/teleporter) +/area/ship/ert/brig) +"sy" = ( +/obj/effect/floor_decal/corner/red{ + dir = 1 + }, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) "sz" = ( -/obj/structure/closet/wardrobe/ert, -/obj/item/modular_computer/tablet/preset/custom_loadout/elite, -/obj/item/weapon/storage/box/survival/comp{ - starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi) - }, -/obj/machinery/light/no_nightshift, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/modular_computer/laptop/preset/custom_loadout/elite, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) +/obj/structure/filingcabinet/filingcabinet, +/turf/simulated/floor/wood, +/area/ship/ert/commander) "sA" = ( +/obj/machinery/door/airlock/glass_command{ + req_one_access = list(103) + }, +/obj/structure/cable/yellow{ + 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/modular_computer/console/preset/medical{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"sB" = ( -/obj/structure/hull_corner, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/barracks) -"sC" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, +/obj/machinery/door/firedoor/border_only, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_star) -"sF" = ( -/obj/structure/table/rack/steel, -/obj/item/clothing/glasses/graviton{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/clothing/glasses/graviton, -/obj/item/clothing/glasses/graviton{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/clothing/glasses/graviton{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"sH" = ( -/obj/machinery/computer/ship/sensors, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/obj/structure/railing/grey{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, /area/ship/ert/bridge) -"sJ" = ( -/obj/structure/table/rack/steel, -/obj/item/clothing/accessory/storage/black_vest{ - pixel_x = -4; - pixel_y = -4 - }, -/obj/item/clothing/accessory/storage/black_vest{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/clothing/accessory/storage/black_vest, -/obj/item/clothing/accessory/storage/black_vest{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/clothing/accessory/storage/black_vest{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/clothing/accessory/storage/black_vest{ - pixel_x = 6; - pixel_y = 6 +"sE" = ( +/obj/structure/table/steel_reinforced, +/obj/machinery/light/no_nightshift{ + dir = 4 }, /obj/machinery/alarm/alarms_hidden{ + dir = 8; + pixel_x = 26 + }, +/obj/item/weapon/reagent_containers/spray/cleaner, +/obj/item/weapon/reagent_containers/spray/cleaner, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"sF" = ( +/obj/machinery/atmospherics/unary/vent_pump/on, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/mech_bay) +"sI" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/door/firedoor/multi_tile{ + dir = 1 + }, +/obj/machinery/door/airlock/glass_security{ + name = "Delta Armoury"; + req_one_access = list(103) + }, +/obj/machinery/door/blast/regular{ + closed_layer = 4; + id = "NRV_DELTA"; + layer = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_dl) +"sM" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 1 + }, +/obj/machinery/recharger/wallcharger{ + pixel_x = -23; + pixel_y = -12 + }, +/obj/machinery/recharger/wallcharger{ + pixel_x = -23; + pixel_y = -4 + }, +/obj/machinery/recharger/wallcharger{ + pixel_x = -23; + pixel_y = 5 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/ert_ship_boat) +"sN" = ( +/obj/machinery/light/no_nightshift{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/teleporter) +"sR" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/gun/energy/xray{ + pixel_y = -3 + }, +/obj/item/weapon/gun/energy/xray{ + pixel_y = 3 + }, +/obj/machinery/light/no_nightshift, +/obj/machinery/firealarm/alarms_hidden{ dir = 1; pixel_y = -26 }, /obj/effect/floor_decal/industrial/outline/grey, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"sS" = ( -/obj/machinery/shieldwallgen, -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/effect/floor_decal/industrial/outline/blue, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) +/area/ship/ert/armoury_dl) "sU" = ( /obj/structure/cable/yellow{ d1 = 4; @@ -3643,219 +3972,261 @@ dir = 4 }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) +/area/ship/ert/eng_storage) "sW" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, /obj/structure/cable/yellow{ d1 = 2; d2 = 4; icon_state = "2-4" }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/eng_storage) +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_star) "sX" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways) -"ta" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/door/firedoor/multi_tile, -/obj/machinery/door/airlock/multi_tile/glass{ - req_one_access = list(103) - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"tg" = ( -/obj/effect/floor_decal/corner/white{ - dir = 6 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) -"tp" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/light/no_nightshift{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_star) -"tx" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"tA" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_star) -"tE" = ( -/obj/structure/sign/department/dock{ - name = "ROBINEAU DOCK" - }, -/turf/simulated/wall/shull, -/area/ship/ert/hangar) -"tH" = ( -/turf/simulated/wall/rshull, -/area/ship/ert/armoury_st) -"tK" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, -/obj/machinery/door/window/brigdoor/northleft, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/hallways_aft) -"tL" = ( -/obj/machinery/atmospherics/pipe/simple/visible/fuel{ - dir = 9 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/blast/regular/open{ - id = "VB_Rear_Blast"; - name = "Blast Shield" - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/simulated/floor/plating, -/area/ship/ert/engine) -"tV" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/obj/machinery/light/no_nightshift, -/turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"tW" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/machinery/embedded_controller/radio/simple_docking_controller{ - id_tag = "ert_boarding_shuttle"; - pixel_x = -8; - pixel_y = 22 - }, -/turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"tX" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/firedoor/border_only, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/mech_bay) -"tZ" = ( -/obj/effect/floor_decal/industrial/warning, -/turf/simulated/floor/airless, -/area/ship/ert/gunnery) -"uf" = ( -/obj/structure/sign/nosmoking_1, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/wall/rshull, -/area/ship/ert/engine) -"ug" = ( -/obj/item/device/healthanalyzer/phasic{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/device/healthanalyzer/phasic, -/obj/item/device/healthanalyzer/phasic{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/structure/table/rack/steel, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/obj/effect/floor_decal/industrial/outline, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"uh" = ( -/obj/machinery/atmospherics/pipe/simple/visible/fuel{ - dir = 10 - }, -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/blast/regular/open{ - id = "VB_Rear_Blast"; - name = "Blast Shield" - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/simulated/floor/plating, -/area/ship/ert/engine) -"um" = ( -/obj/machinery/vending/engineering, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"un" = ( -/obj/machinery/door/airlock/glass_medical{ - name = "Medical Bay"; - req_access = list(103) - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ +/obj/structure/bed/chair/bay/comfy/captain{ dir = 4 }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/button/remote/blast_door{ + dir = 8; + id = "braun_blast_shields"; + name = "Blast Shields Control"; + pixel_x = 32; + pixel_y = 35; + req_one_access = list(101) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/bridge) +"ta" = ( +/obj/machinery/airlock_sensor{ + dir = 8; + pixel_x = 22; + pixel_y = -24 + }, +/obj/effect/map_helper/airlock/sensor/int_sensor, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/gunnery) +"th" = ( +/obj/structure/hull_corner{ + dir = 4 + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/med) +"tn" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"tp" = ( +/obj/machinery/door/airlock/glass_external, +/obj/effect/map_helper/airlock/door/int_door, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/gunnery) +"ts" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, +/obj/effect/floor_decal/corner/white, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"tv" = ( +/obj/effect/floor_decal/corner/white{ + dir = 8 + }, +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/machinery/alarm/alarms_hidden{ + pixel_y = 26 + }, +/obj/machinery/recharge_station, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"tx" = ( +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/effect/map_helper/airlock/sensor/chamber_sensor, +/obj/machinery/atmospherics/unary/vent_pump/high_volume{ + dir = 1 + }, +/obj/machinery/embedded_controller/radio/airlock/airlock_controller{ + id_tag = "vb_cannon_loader"; + pixel_x = 24; + pixel_y = 23 + }, +/obj/machinery/airlock_sensor{ + pixel_x = -25; + pixel_y = 22 + }, +/turf/simulated/floor/airless, +/area/ship/ert/gunnery) +"tA" = ( +/obj/machinery/door/airlock/glass_external, +/obj/effect/map_helper/airlock/door/ext_door, +/turf/simulated/floor/airless, +/area/ship/ert/gunnery) +"tE" = ( +/obj/effect/map_helper/airlock/sensor/ext_sensor, +/obj/machinery/airlock_sensor/airlock_exterior{ + dir = 4; + pixel_x = 24; + pixel_y = 24 + }, +/turf/simulated/floor/airless, +/area/ship/ert/gunnery) +"tH" = ( +/turf/simulated/wall/rshull, +/area/ship/ert/armoury_st) +"tW" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/firedoor/border_only, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/door/blast/regular/open{ + dir = 2; + id = "braun_blast_shields"; + name = "Blast Shield" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_st) +"tX" = ( +/turf/simulated/wall/shull, +/area/ship/ert/hangar) +"tZ" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9 + }, /obj/structure/cable/yellow{ d1 = 4; d2 = 8; icon_state = "4-8" }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) -"uq" = ( -/obj/structure/sign/department/medbay, -/turf/simulated/wall/shull, -/area/ship/ert/med_surg) -"us" = ( +/area/ship/ert/gunnery) +"ua" = ( +/obj/structure/table/steel_reinforced, +/obj/machinery/chemical_dispenser/full, +/obj/item/weapon/reagent_containers/glass/beaker/large, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"uu" = ( -/obj/machinery/firealarm/alarms_hidden{ - pixel_y = 26 +/area/ship/ert/med) +"uc" = ( +/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/machinery/light/no_nightshift{ + dir = 4 }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_star) -"ux" = ( +/area/ship/ert/bridge) +"ue" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"uf" = ( +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"uh" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"uj" = ( +/obj/structure/hull_corner{ + dir = 1 + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/eng_storage) +"uq" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/turf/simulated/floor/airless, +/area/ship/ert/gunnery) +"us" = ( +/obj/item/weapon/storage/box/trackimp, +/obj/item/weapon/storage/box/cdeathalarm_kit, +/obj/item/weapon/stamp/centcomm, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/table/hardwoodtable, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"ut" = ( +/obj/structure/cable/yellow{ + 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/techmaint, +/area/ship/ert/hallways_aft) +"uu" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 10 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"uD" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/fuel, -/obj/machinery/atmospherics/unary/vent_scrubber/on, /obj/structure/cable/yellow{ d1 = 1; d2 = 2; @@ -3864,81 +4235,40 @@ /turf/simulated/floor/tiled/techfloor, /area/ship/ert/engine) "uE" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 8 +/obj/structure/hull_corner/long_horiz{ + dir = 5 }, -/obj/effect/map_helper/airlock/atmos/chamber_pump, -/obj/effect/floor_decal/industrial/warning, -/obj/structure/sign/vacuum{ - pixel_x = -32 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_star) +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/hallways_aft) "uG" = ( -/obj/item/modular_computer/console/preset/sysadmin{ - dir = 1 +/obj/structure/window/reinforced, +/obj/effect/floor_decal/industrial/warning, +/obj/structure/cable/yellow, +/obj/machinery/shieldwallgen{ + anchored = 1; + name = "secured shield generator"; + req_access = list(103); + state = 1 }, +/obj/effect/floor_decal/industrial/outline/blue, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) +/area/ship/ert/teleporter) "uJ" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" +/obj/machinery/light/no_nightshift, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"uK" = ( +/obj/machinery/atmospherics/pipe/tank/phoron{ + dir = 8 }, /obj/machinery/light/no_nightshift{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_star) -"uK" = ( -/obj/machinery/atmospherics/pipe/manifold/visible/yellow{ - dir = 8 + dir = 4 }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/engine) "uS" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - 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" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"vb" = ( -/obj/machinery/sleeper{ - dir = 4 - }, -/obj/machinery/light/no_nightshift{ - dir = 4 - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"vd" = ( -/obj/machinery/atmospherics/pipe/tank/phoron{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"vg" = ( -/obj/machinery/atmospherics/pipe/simple/visible, -/obj/machinery/meter, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"vi" = ( /obj/machinery/door/airlock/glass_engineering{ - name = "Engineering"; + name = "Engine Bay"; req_access = list(103) }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ @@ -3959,121 +4289,354 @@ }, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/engineering) -"vt" = ( -/obj/effect/floor_decal/corner/yellow{ - dir = 8 - }, -/obj/effect/floor_decal/corner/red{ - dir = 6 - }, -/obj/machinery/light/no_nightshift, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ +"vb" = ( +/obj/machinery/light/no_nightshift{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/light_switch{ - dir = 1; - pixel_y = -23 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways) -"vv" = ( -/obj/machinery/firealarm/alarms_hidden{ - dir = 1; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways_aft) -"vw" = ( +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/engine) +"vd" = ( /obj/structure/cable/yellow{ d1 = 1; d2 = 2; icon_state = "1-2" }, -/turf/simulated/wall/shull, -/area/ship/ert/barracks) +/turf/simulated/wall/rshull, +/area/ship/ert/engine) +"vi" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/engineering) +"vn" = ( +/obj/machinery/recharge_station, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"vo" = ( +/obj/structure/window/reinforced, +/obj/machinery/computer/shuttle_control/explore/ert_ship_boat{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/ert_ship_boat) +"vp" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_star) +"vt" = ( +/obj/item/modular_computer/console/preset/sysadmin{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"vw" = ( +/obj/machinery/atmospherics/pipe/simple/visible{ + dir = 4 + }, +/obj/machinery/meter, +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + dir = 1; + name = "VB APC - North"; + pixel_y = 24 + }, +/obj/structure/cable/yellow{ + d2 = 2; + icon_state = "0-2" + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_port) "vK" = ( /turf/simulated/wall/rshull, /area/ship/ert/gunnery) -"vQ" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/obj/effect/floor_decal/industrial/warning, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/teleporter) "vX" = ( /turf/simulated/wall/shull, /area/ship/ert/engineering) "wd" = ( -/obj/structure/sign/department/conference_room{ - name = "OUTFITTING" +/obj/machinery/atmospherics/pipe/tank/air{ + dir = 4 }, -/turf/simulated/wall/rshull, -/area/ship/ert/bridge) +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) "wh" = ( -/obj/machinery/light/no_nightshift{ - dir = 1 +/obj/machinery/atmospherics/unary/vent_scrubber/on, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" }, -/turf/simulated/floor/airless, +/turf/simulated/floor/tiled/techfloor, /area/ship/ert/gunnery) "wi" = ( +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, /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/machinery/door/firedoor/multi_tile, -/obj/machinery/door/airlock/multi_tile/glass{ - req_one_access = list(103) - }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways) -"wl" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/gun/energy/gun{ - pixel_y = 6 - }, -/obj/item/weapon/gun/energy/gun{ - pixel_y = 4 - }, -/obj/item/weapon/gun/energy/gun{ - pixel_y = 2 - }, -/obj/item/weapon/gun/energy/gun, -/obj/item/weapon/gun/energy/gun{ - pixel_y = -2 - }, -/obj/item/weapon/gun/energy/gun{ - pixel_y = -4 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_st) -"wn" = ( -/obj/structure/sign/department/telecoms{ - name = "TELEPORTER" - }, -/turf/simulated/wall/rshull, -/area/ship/ert/teleporter) -"wo" = ( -/obj/machinery/light/no_nightshift, -/obj/machinery/teleport/hub, -/obj/effect/floor_decal/industrial/hatch/yellow, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/teleporter) +/area/ship/ert/hallways_aft) "wp" = ( -/obj/machinery/sleep_console, +/turf/simulated/wall/shull, +/area/ship/ert/med) +"wq" = ( +/obj/machinery/door/blast/shutters{ + density = 0; + dir = 2; + icon_state = "shutter0"; + id = "braun_cells_privacy"; + name = "Privacy Shutters"; + opacity = 0 + }, +/obj/structure/grille, +/obj/structure/window/titanium/full, +/obj/structure/window/titanium{ + dir = 1 + }, +/obj/structure/window/titanium, +/obj/structure/cable/yellow{ + d2 = 4; + icon_state = "0-4" + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/brig) +"wC" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 23 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_port) +"wG" = ( +/obj/structure/reagent_dispensers/water_cooler/full, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"wI" = ( +/obj/machinery/door/firedoor/multi_tile{ + dir = 1 + }, +/obj/machinery/door/airlock/glass_medical{ + name = "Medical Bay"; + req_access = list(103) + }, /turf/simulated/floor/tiled/white, /area/ship/ert/med_surg) -"wr" = ( +"wM" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/wall/shull, +/area/ship/ert/med_surg) +"wO" = ( +/obj/machinery/light/no_nightshift, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/engineering) +"wU" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"wX" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/med) +"wZ" = ( +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + name = "VB APC - South"; + pixel_y = -24 + }, +/obj/structure/cable/yellow, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"xc" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 6 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"xe" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/airlock/glass_security{ + name = "Prisoner Containment"; + req_one_access = list(103) + }, +/obj/machinery/door/firedoor/border_only, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/brig) +"xg" = ( +/obj/structure/sign/department/conference_room{ + name = "OUTFITTING" + }, +/turf/simulated/wall/rshull, +/area/ship/ert/bridge) +"xo" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/effect/floor_decal/corner/white{ + dir = 10 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"xq" = ( +/obj/structure/bed/chair/bay/shuttle, +/obj/machinery/light/no_nightshift{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/ert_ship_boat) +"xs" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/brig) +"xt" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"xv" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/melee/baton{ + pixel_x = -6 + }, +/obj/item/weapon/melee/baton{ + pixel_x = -2 + }, +/obj/item/weapon/melee/baton{ + pixel_x = 2 + }, +/obj/item/weapon/melee/baton{ + pixel_x = 6 + }, +/obj/item/weapon/shield/riot{ + pixel_x = -6 + }, +/obj/item/weapon/shield/riot{ + pixel_x = -2 + }, +/obj/item/weapon/shield/riot{ + pixel_x = 2 + }, +/obj/item/weapon/shield/riot{ + pixel_x = 6 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/machinery/recharger/wallcharger{ + pixel_x = -23; + pixel_y = 5 + }, +/obj/machinery/recharger/wallcharger{ + pixel_x = -23; + pixel_y = -4 + }, +/obj/machinery/recharger/wallcharger{ + pixel_x = -23; + pixel_y = -12 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_st) +"xx" = ( /obj/machinery/power/pointdefense{ id_tag = "vonbraun_pd" }, @@ -4083,7 +4646,7 @@ }, /turf/simulated/floor/reinforced/airless, /area/ship/ert/hallways_aft) -"wt" = ( +"xz" = ( /obj/structure/table/steel_reinforced, /obj/item/weapon/storage/firstaid/bonemed{ pixel_x = 4; @@ -4103,82 +4666,44 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/med) -"wC" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"wG" = ( -/obj/structure/hull_corner/long_horiz{ - dir = 5 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/engine) -"wO" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, +"xC" = ( /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/engineering) -"wU" = ( -/turf/simulated/wall/shull, -/area/ship/ert/hallways) -"wX" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 +/area/ship/ert/dock_star) +"xD" = ( +/obj/structure/table/rack/steel, +/obj/item/clothing/glasses/night{ + pixel_x = -4; + pixel_y = -4 }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) -"wZ" = ( -/obj/machinery/oxygen_pump/anesthetic, -/turf/simulated/wall/shull, -/area/ship/ert/med_surg) -"xc" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 +/obj/item/clothing/glasses/night{ + pixel_x = -2; + pixel_y = -2 }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 +/obj/item/clothing/glasses/night, +/obj/item/clothing/glasses/night{ + pixel_x = 2; + pixel_y = 2 }, -/obj/effect/landmark{ - name = "Commando" +/obj/item/clothing/glasses/night{ + pixel_x = 4; + pixel_y = 4 }, +/obj/item/clothing/glasses/night{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/machinery/firealarm/alarms_hidden{ + pixel_y = 26 + }, +/obj/effect/floor_decal/industrial/outline/grey, /obj/structure/cable/yellow{ d1 = 1; d2 = 2; icon_state = "1-2" }, -/turf/simulated/floor/tiled/techmaint, +/turf/simulated/floor/tiled/techfloor, /area/ship/ert/barracks) -"xe" = ( -/obj/structure/cable/yellow{ - 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/no_nightshift{ - dir = 1 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"xg" = ( +"xG" = ( /obj/structure/table/rack/steel, /obj/effect/floor_decal/industrial/outline/grey, /obj/item/weapon/gun/energy/gun/nuclear{ @@ -4199,7 +4724,21 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/armoury_st) -"xh" = ( +"xK" = ( +/obj/machinery/door/airlock/centcom{ + name = "Commander's Quarters"; + req_access = list(103) + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/door/firedoor/border_only, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/commander) +"xM" = ( /obj/structure/table/rack/steel, /obj/machinery/light_switch{ pixel_y = 23 @@ -4257,7 +4796,2068 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/armoury_st) -"xi" = ( +"xO" = ( +/obj/effect/floor_decal/industrial/warning, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"xR" = ( +/obj/machinery/light/no_nightshift{ + dir = 4 + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/structure/table/steel_reinforced, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"xU" = ( +/obj/effect/floor_decal/corner/white{ + dir = 9 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/med) +"xX" = ( +/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/effect/floor_decal/corner/blue{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/bridge) +"xZ" = ( +/obj/item/modular_computer/console/preset/ert{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"ya" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/gunnery) +"yf" = ( +/obj/structure/table/rack/steel, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/ammo_magazine/m545{ + pixel_x = -8 + }, +/obj/item/ammo_magazine/m545{ + pixel_x = -5 + }, +/obj/item/ammo_magazine/m545{ + pixel_x = -2 + }, +/obj/item/ammo_magazine/m545{ + pixel_x = 1 + }, +/obj/item/ammo_magazine/m545{ + pixel_x = 4 + }, +/obj/item/ammo_magazine/m545{ + pixel_x = 7 + }, +/obj/item/weapon/gun/projectile/automatic/sts35{ + pixel_y = -2 + }, +/obj/item/weapon/gun/projectile/automatic/sts35{ + pixel_y = 2 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_st) +"yg" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 8 + }, +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/machinery/embedded_controller/radio/simple_docking_controller{ + id_tag = "ert_boarding_shuttle"; + pixel_x = -8; + pixel_y = 22 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/ert_ship_boat) +"yi" = ( +/obj/structure/table/rack/steel, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/weapon/gun/projectile/automatic/z8{ + pixel_y = -3 + }, +/obj/item/weapon/gun/projectile/automatic/z8{ + pixel_y = 3 + }, +/obj/item/ammo_magazine/m762, +/obj/item/ammo_magazine/m762, +/obj/item/ammo_magazine/m762, +/obj/item/ammo_magazine/m762, +/obj/item/ammo_magazine/m762, +/obj/item/ammo_magazine/m762, +/obj/item/ammo_magazine/m762, +/obj/item/ammo_magazine/m762, +/obj/item/ammo_magazine/m762/ap, +/obj/item/ammo_magazine/m762/ap, +/obj/item/ammo_magazine/m762/ap, +/obj/item/ammo_magazine/m762/ap, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_dl) +"yj" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/storage/box/flashbangs, +/obj/item/weapon/storage/box/flashbangs, +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/machinery/alarm/alarms_hidden{ + pixel_y = 26 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/weapon/storage/box/flashbangs, +/obj/item/weapon/storage/box/smokes, +/obj/item/weapon/storage/box/smokes, +/obj/item/weapon/storage/box/teargas, +/obj/item/weapon/storage/box/empslite, +/obj/item/weapon/storage/box/empslite, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_st) +"yl" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/firedoor/border_only, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/door/blast/regular/open{ + dir = 4; + id = "braun_blast_shields"; + name = "Blast Shield" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"yo" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 9 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/gunnery) +"yr" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 1 + }, +/obj/machinery/light/no_nightshift{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/ert_ship_boat) +"ys" = ( +/obj/structure/hull_corner{ + dir = 1 + }, +/turf/simulated/shuttle/plating/airless/carry, +/area/shuttle/ert_ship_boat) +"yv" = ( +/obj/machinery/computer/ship/sensors, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/gunnery) +"yx" = ( +/obj/machinery/portable_atmospherics/canister/air, +/obj/machinery/alarm/alarms_hidden{ + pixel_y = 26 + }, +/obj/machinery/light_switch{ + dir = 4; + pixel_x = -23 + }, +/obj/effect/floor_decal/industrial/outline, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"yz" = ( +/turf/space, +/area/space) +"yB" = ( +/obj/structure/grille, +/obj/machinery/door/firedoor/border_only, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced, +/turf/simulated/floor/airless, +/area/ship/ert/gunnery) +"yD" = ( +/obj/effect/floor_decal/industrial/warning, +/turf/simulated/floor/airless, +/area/ship/ert/gunnery) +"yF" = ( +/obj/machinery/sleeper{ + dir = 4 + }, +/obj/machinery/light/no_nightshift{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"yG" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/machinery/atmospherics/unary/engine{ + dir = 4 + }, +/turf/space, +/area/ship/ert/engine) +"yH" = ( +/obj/machinery/alarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"yJ" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"yM" = ( +/obj/machinery/atmospherics/pipe/tank/air{ + dir = 4; + start_pressure = 740.5 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_star) +"yP" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"yR" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_port) +"yU" = ( +/obj/structure/table/rack/steel, +/obj/effect/floor_decal/corner/red, +/obj/item/device/radio/off{ + pixel_x = -4; + pixel_y = -4 + }, +/obj/item/device/radio/off{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/device/radio/off, +/obj/item/device/radio/off{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/device/radio/off{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/device/radio/off{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways) +"yX" = ( +/obj/effect/floor_decal/industrial/warning, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/embedded_controller/radio/simple_docking_controller{ + id_tag = "ert_boarding_shuttle_dock"; + pixel_y = 22 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"yY" = ( +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/barracks) +"za" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/obj/machinery/button/remote/blast_door{ + id = "ERT_Shuttle_Fore"; + name = "ERT Deployment Access"; + pixel_y = 24; + req_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/ert_ship_boat) +"zb" = ( +/obj/effect/floor_decal/corner/white{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/med) +"zg" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 6 + }, +/obj/machinery/alarm/alarms_hidden{ + pixel_y = 26 + }, +/obj/machinery/porta_turret/industrial/teleport_defense, +/obj/effect/floor_decal/industrial/outline/red, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/teleporter) +"zh" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 6 + }, +/obj/machinery/light_switch{ + pixel_y = 23 + }, +/obj/structure/table/steel_reinforced, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engineering) +"zk" = ( +/obj/machinery/atmospherics/pipe/manifold/visible/yellow{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"zo" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, +/obj/effect/floor_decal/industrial/warning, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/teleporter) +"zs" = ( +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/bridge) +"zO" = ( +/obj/machinery/vending/engivend, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"zR" = ( +/obj/machinery/alarm/alarms_hidden{ + pixel_y = 26 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"zT" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"Ad" = ( +/obj/structure/closet/crate/freezer, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/effect/floor_decal/industrial/outline, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"Af" = ( +/obj/machinery/light/no_nightshift, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/structure/table/rack/steel, +/obj/item/clothing/accessory/storage/brown_vest{ + pixel_y = -4 + }, +/obj/item/clothing/accessory/storage/brown_vest{ + pixel_y = -2 + }, +/obj/item/clothing/accessory/storage/brown_vest, +/obj/item/clothing/accessory/storage/brown_vest{ + pixel_y = 2 + }, +/obj/item/clothing/accessory/storage/brown_vest{ + pixel_y = 4 + }, +/obj/item/clothing/accessory/storage/brown_vest{ + pixel_y = 6 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"Ao" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"Ap" = ( +/obj/machinery/vending/coffee{ + dir = 1; + prices = list() + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"Aq" = ( +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"Ar" = ( +/obj/effect/floor_decal/industrial/outline/grey, +/obj/structure/table/rack/steel, +/obj/structure/table/rack/steel, +/obj/item/weapon/storage/belt/utility/chief/full{ + pixel_y = -2 + }, +/obj/item/weapon/storage/belt/utility/chief/full, +/obj/item/weapon/storage/belt/utility/chief/full{ + pixel_y = 2 + }, +/obj/item/weapon/storage/belt/utility/chief/full{ + pixel_y = 4 + }, +/obj/item/weapon/storage/belt/utility/chief/full{ + pixel_y = 6 + }, +/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/storage/belt/explorer/pathfinder{ + name = "ERT belt" + }, +/obj/item/weapon/storage/belt/explorer/pathfinder{ + name = "ERT belt" + }, +/obj/item/weapon/storage/belt/explorer/pathfinder{ + name = "ERT belt" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"Av" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/unary/vent_scrubber/on, +/obj/item/weapon/implantpad, +/obj/item/weapon/implanter, +/obj/item/weapon/storage/box/admints, +/obj/structure/table/hardwoodtable, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"Ax" = ( +/obj/effect/floor_decal/industrial/warning, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/teleporter) +"Ay" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"Az" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"AC" = ( +/obj/structure/bed/chair/bay/shuttle, +/obj/machinery/recharger/wallcharger{ + pixel_x = -23; + pixel_y = 5 + }, +/obj/machinery/recharger/wallcharger{ + pixel_x = -23; + pixel_y = -4 + }, +/obj/machinery/recharger/wallcharger{ + pixel_x = -23; + pixel_y = -12 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/ert_ship_boat) +"AI" = ( +/turf/simulated/wall/shull, +/area/ship/ert/eng_storage) +"AK" = ( +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + dir = 4; + name = "VB APC - East"; + pixel_x = 24 + }, +/obj/structure/cable/yellow{ + d2 = 8; + icon_state = "0-8" + }, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"AN" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/wall/rshull, +/area/ship/ert/engine) +"AS" = ( +/obj/structure/closet{ + name = "custodial" + }, +/obj/item/weapon/reagent_containers/spray/cleaner{ + pixel_x = -6 + }, +/obj/item/weapon/reagent_containers/spray/cleaner{ + pixel_x = -2 + }, +/obj/item/weapon/reagent_containers/spray/cleaner{ + pixel_x = 2 + }, +/obj/item/weapon/reagent_containers/spray/cleaner{ + pixel_x = 6 + }, +/obj/item/weapon/reagent_containers/glass/bucket{ + pixel_x = 6 + }, +/obj/item/weapon/reagent_containers/glass/bucket{ + pixel_x = 2 + }, +/obj/item/weapon/reagent_containers/glass/bucket{ + pixel_x = -2 + }, +/obj/item/weapon/reagent_containers/glass/bucket{ + pixel_x = -6 + }, +/obj/item/weapon/mop{ + pixel_x = 6 + }, +/obj/item/weapon/mop{ + pixel_x = 2 + }, +/obj/item/weapon/mop{ + pixel_x = -2 + }, +/obj/item/weapon/mop{ + pixel_x = -6 + }, +/obj/item/weapon/rig/ert/janitor, +/obj/item/device/lightreplacer{ + pixel_y = -2 + }, +/obj/item/device/lightreplacer{ + pixel_y = 2 + }, +/obj/item/weapon/storage/box/lights/mixed{ + pixel_x = -1; + pixel_y = -1 + }, +/obj/item/weapon/storage/box/lights/mixed{ + pixel_x = 1; + pixel_y = 1 + }, +/obj/machinery/light/no_nightshift, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"AT" = ( +/obj/item/device/healthanalyzer/phasic{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/device/healthanalyzer/phasic, +/obj/item/device/healthanalyzer/phasic{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/structure/table/rack/steel, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 + }, +/obj/effect/floor_decal/industrial/outline, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"AW" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/wall/rshull, +/area/ship/ert/engine) +"AX" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"AY" = ( +/obj/machinery/firealarm/alarms_hidden{ + pixel_y = 26 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/teleporter) +"Bb" = ( +/obj/machinery/firealarm/alarms_hidden{ + pixel_y = 26 + }, +/obj/item/modular_computer/console/preset/security, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"Bc" = ( +/obj/item/modular_computer/console/preset/security, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"Bf" = ( +/obj/item/modular_computer/console/preset/research, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"Bl" = ( +/obj/structure/ship_munition/disperser_charge/explosive, +/obj/machinery/alarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/turf/simulated/floor/reinforced, +/area/ship/ert/gunnery) +"Bo" = ( +/turf/simulated/wall/shull, +/area/ship/ert/barracks) +"Bp" = ( +/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/machinery/door/firedoor/multi_tile, +/obj/machinery/door/airlock/multi_tile/glass{ + req_one_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways) +"Bq" = ( +/obj/item/modular_computer/console/preset/medical, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"Br" = ( +/obj/machinery/shieldwallgen, +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/effect/floor_decal/industrial/outline/blue, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"Bx" = ( +/obj/structure/table/steel_reinforced, +/obj/machinery/alarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/obj/fiftyspawner/tritium, +/obj/fiftyspawner/tritium, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"BE" = ( +/obj/effect/floor_decal/corner/blue{ + dir = 8 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 8 + }, +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways) +"BF" = ( +/obj/structure/cable/yellow{ + 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/techmaint, +/area/ship/ert/hallways) +"BI" = ( +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/engineering) +"BK" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/engineering) +"BM" = ( +/obj/structure/cable/yellow{ + 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/techmaint, +/area/ship/ert/mech_bay) +"BU" = ( +/obj/effect/floor_decal/corner/red{ + dir = 6 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/light_switch{ + pixel_y = 23 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways) +"Cf" = ( +/turf/simulated/wall/shull, +/area/ship/ert/mech_bay) +"Ck" = ( +/obj/machinery/door/airlock/glass_medical{ + name = "Medical Bay"; + req_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"Cn" = ( +/obj/machinery/computer/ship/helm{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"Cr" = ( +/obj/machinery/door/airlock/glass_medical{ + name = "Medical Bay"; + req_access = list(103) + }, +/obj/machinery/door/firedoor/border_only, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/med_surg) +"Cv" = ( +/obj/machinery/door/firedoor/multi_tile{ + dir = 1 + }, +/obj/machinery/door/airlock/glass_medical{ + name = "Medical Bay"; + req_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/med) +"Cx" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"CC" = ( +/obj/machinery/shieldwallgen{ + anchored = 1; + name = "secured shield generator"; + req_access = list(103); + state = 1 + }, +/obj/structure/window/reinforced, +/obj/effect/floor_decal/industrial/warning, +/obj/structure/cable/yellow, +/obj/effect/floor_decal/industrial/outline/blue, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/teleporter) +"CH" = ( +/obj/machinery/door/firedoor, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced, +/obj/machinery/door/blast/regular/open{ + dir = 4; + id = "ERT_Blast_Windows"; + name = "Blast Shield" + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/ert_ship_boat) +"CK" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_star) +"CL" = ( +/obj/structure/cable/yellow{ + 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/techmaint, +/area/ship/ert/armoury_st) +"CM" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_st) +"CN" = ( +/obj/machinery/atmospherics/pipe/simple/visible/universal, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"CP" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"CR" = ( +/obj/machinery/computer/ship/disperser{ + dir = 8 + }, +/obj/item/weapon/paper/vonbraun_cannon, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/gunnery) +"CT" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"CZ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/firedoor/border_only, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/simulated/floor/airless, +/area/ship/ert/gunnery) +"Dd" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/tank/jetpack/oxygen{ + pixel_x = -4; + pixel_y = -4 + }, +/obj/item/weapon/tank/jetpack/oxygen{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/weapon/tank/jetpack/oxygen, +/obj/item/weapon/tank/jetpack/oxygen{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/tank/jetpack/oxygen{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/weapon/tank/jetpack/oxygen{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"Dh" = ( +/obj/machinery/button/remote/blast_door{ + id = "VB_Rear_Blast"; + name = "Emergency Blast Doors"; + pixel_y = 24; + req_access = list(103) + }, +/obj/structure/table/steel_reinforced, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engineering) +"Dk" = ( +/obj/structure/sign/nosmoking_1, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/wall/rshull, +/area/ship/ert/engine) +"Dm" = ( +/obj/structure/table/steel_reinforced, +/obj/item/stack/cable_coil, +/obj/item/stack/cable_coil, +/obj/item/stack/cable_coil, +/obj/item/stack/cable_coil, +/obj/item/stack/cable_coil, +/obj/item/stack/cable_coil, +/obj/item/weapon/grenade/chem_grenade/metalfoam, +/obj/item/weapon/grenade/chem_grenade/metalfoam, +/obj/item/weapon/grenade/chem_grenade/metalfoam, +/obj/item/weapon/grenade/chem_grenade/metalfoam, +/obj/item/weapon/grenade/chem_grenade/metalfoam, +/obj/item/weapon/grenade/chem_grenade/metalfoam, +/obj/machinery/light/no_nightshift, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"Dn" = ( +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"Do" = ( +/obj/machinery/light/no_nightshift, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/engine) +"Dp" = ( +/obj/item/device/perfect_tele_beacon/stationary{ + tele_name = "NRB Robineau"; + tele_network = "centcom" + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/ert_ship_boat) +"Dt" = ( +/obj/machinery/disperser/back{ + dir = 4 + }, +/turf/simulated/floor/airless, +/area/ship/ert/gunnery) +"Du" = ( +/obj/machinery/button/remote/blast_door{ + dir = 1; + id = "ERT_Shuttle_Rear"; + name = "ERT Shuttle Access"; + pixel_y = -25; + req_access = list(103) + }, +/obj/machinery/door/blast/regular/open{ + id = "ERT_Shuttle_Rear"; + name = "Boarding Hatch" + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/ert_ship_boat) +"Dx" = ( +/obj/machinery/disperser/middle{ + dir = 4 + }, +/turf/simulated/floor/airless, +/area/ship/ert/gunnery) +"Dy" = ( +/obj/machinery/door/window/brigdoor/southright, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"DJ" = ( +/obj/effect/floor_decal/corner/white{ + dir = 6 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/eng_storage) +"DK" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"DM" = ( +/obj/structure/table/steel_reinforced, +/obj/item/weapon/storage/firstaid/fire{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/weapon/storage/firstaid/fire{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/storage/firstaid/adv, +/obj/item/weapon/storage/firstaid/adv{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/effect/floor_decal/corner/yellow{ + dir = 8 + }, +/obj/machinery/firealarm/alarms_hidden{ + pixel_y = 26 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"DN" = ( +/obj/machinery/atmospherics/pipe/manifold4w/visible/fuel, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/blast/regular/open{ + id = "VB_Rear_Blast"; + name = "Blast Shield" + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/simulated/floor/plating, +/area/ship/ert/engine) +"DQ" = ( +/obj/machinery/disperser/front{ + dir = 4 + }, +/turf/simulated/floor/airless, +/area/ship/ert/gunnery) +"DS" = ( +/turf/simulated/wall/rshull, +/area/ship/ert/hallways_aft) +"Eb" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/airlock/glass_security{ + name = "Delta Armoury"; + req_one_access = list(103) + }, +/obj/machinery/door/blast/regular{ + closed_layer = 4; + id = "NRV_DELTA"; + layer = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_dl) +"Ed" = ( +/obj/machinery/door/blast/regular{ + id = "Von_Braun_Cannon"; + name = "Cannon Firing Port" + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/gunnery) +"Ee" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/gun/energy/plasmastun{ + pixel_y = -3 + }, +/obj/item/weapon/gun/energy/plasmastun{ + pixel_y = 3 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_dl) +"Em" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/blast/regular{ + closed_layer = 4; + dir = 4; + id = "NRV_DELTA"; + layer = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_dl) +"Eo" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_star) +"Eq" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 8 + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/gunnery) +"Ev" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/fuel, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"EB" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/gun/energy/sniperrifle{ + battery_lock = 0; + pixel_y = -3 + }, +/obj/item/weapon/gun/energy/sniperrifle{ + battery_lock = 0; + pixel_y = 3 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_dl) +"ED" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"EF" = ( +/obj/machinery/shield_capacitor, +/obj/effect/floor_decal/industrial/outline/blue, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"EP" = ( +/obj/machinery/atmospherics/unary/engine{ + dir = 4 + }, +/turf/space, +/area/ship/ert/engine) +"Fd" = ( +/obj/machinery/atmospherics/portables_connector{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/effect/floor_decal/industrial/outline/blue, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"Ff" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"Fg" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"Fl" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/storage/box/handcuffs{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/weapon/storage/box/handcuffs{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/effect/floor_decal/corner/red{ + dir = 4 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways) +"Fq" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/gun/energy/gun/burst{ + pixel_y = 3 + }, +/obj/item/weapon/gun/energy/gun/burst{ + pixel_y = -3 + }, +/obj/item/weapon/gun/energy/lasershotgun{ + pixel_y = -3 + }, +/obj/item/weapon/gun/energy/lasershotgun{ + pixel_y = 3 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/machinery/recharger/wallcharger{ + pixel_x = -23; + pixel_y = -12 + }, +/obj/machinery/recharger/wallcharger{ + pixel_x = -23; + pixel_y = -4 + }, +/obj/machinery/recharger/wallcharger{ + pixel_x = -23; + pixel_y = 5 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_dl) +"Fz" = ( +/obj/structure/bed/chair/comfy/black{ + dir = 8 + }, +/obj/machinery/light/no_nightshift{ + dir = 4 + }, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"FF" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/machinery/alarm/alarms_hidden{ + pixel_y = 26 + }, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"FG" = ( +/obj/machinery/computer/operating, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"FK" = ( +/obj/structure/bed/chair/bay/chair/padded/blue{ + dir = 8 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/bridge) +"FM" = ( +/obj/machinery/firealarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/obj/item/modular_computer/console/preset/medical{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"FN" = ( +/obj/structure/bed/chair/bay/chair/padded/blue{ + dir = 1 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/bridge) +"FO" = ( +/obj/machinery/light_switch{ + pixel_y = 23 + }, +/obj/structure/table/woodentable, +/obj/item/device/flashlight/lamp, +/obj/item/device/holomap_beacon/ert, +/obj/item/device/holomap_beacon/ert, +/obj/item/device/mapping_unit/ert, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"FP" = ( +/obj/structure/table/steel_reinforced, +/obj/item/weapon/cell/hyper, +/obj/item/weapon/cell/hyper, +/obj/item/weapon/cell/hyper, +/obj/item/weapon/cell/hyper, +/obj/item/weapon/cell/hyper, +/obj/item/weapon/cell/hyper, +/obj/item/weapon/cell/hyper, +/obj/item/weapon/cell/hyper, +/obj/machinery/cell_charger, +/obj/item/weapon/cell/hyper, +/obj/item/weapon/cell/hyper, +/obj/item/weapon/cell/hyper, +/obj/item/weapon/cell/hyper, +/obj/item/weapon/tool/screwdriver, +/obj/item/weapon/tool/wrench, +/obj/item/weapon/tool/crowbar, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/mech_bay) +"FQ" = ( +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"FR" = ( +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_st) +"FS" = ( +/obj/item/modular_computer/console/preset/engineering{ + dir = 4 + }, +/obj/structure/panic_button{ + pixel_x = -32 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"FT" = ( +/obj/machinery/door/airlock/glass_command{ + req_one_access = list(103) + }, +/obj/machinery/door/firedoor/border_only, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/bridge) +"FV" = ( +/obj/structure/table/rack/steel, +/obj/item/ammo_magazine/ammo_box/b12g/pellet, +/obj/item/ammo_magazine/ammo_box/b12g/pellet, +/obj/item/ammo_magazine/ammo_box/b12g, +/obj/item/ammo_magazine/ammo_box/b12g, +/obj/item/ammo_magazine/ammo_box/b12g/emp, +/obj/item/ammo_magazine/ammo_box/b12g/flash, +/obj/item/ammo_magazine/ammo_box/b12g/beanbag, +/obj/item/ammo_magazine/ammo_box/b12g/beanbag, +/obj/item/ammo_magazine/ammo_box/b12g/stunshell, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/weapon/gun/projectile/shotgun/pump/combat{ + pixel_y = 3 + }, +/obj/item/weapon/gun/projectile/shotgun/pump/combat{ + pixel_y = -3 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_st) +"FW" = ( +/obj/structure/closet/walllocker/emerglocker{ + pixel_y = 32 + }, +/obj/structure/bed/pod, +/obj/item/weapon/bedsheet/blue, +/obj/structure/curtain/open/bed, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"FX" = ( +/obj/effect/floor_decal/corner/blue{ + dir = 9 + }, +/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, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways) +"FY" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/bridge) +"Gl" = ( +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways) +"Gn" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/wall/rshull, +/area/ship/ert/med_surg) +"Gs" = ( +/obj/machinery/vending/engineering, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"Gu" = ( +/obj/machinery/optable, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"Gv" = ( +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"Gw" = ( +/obj/machinery/atmospherics/unary/vent_pump/high_volume{ + dir = 8 + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_port) +"GE" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/obj/effect/shuttle_landmark/shuttle_initializer/ert_ship_boat, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/ert_ship_boat) +"GI" = ( +/obj/machinery/alarm/alarms_hidden{ + pixel_y = 26 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"GJ" = ( +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/dock_star) +"GK" = ( +/obj/effect/floor_decal/corner/red{ + dir = 6 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways) +"GO" = ( +/obj/machinery/photocopier, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"GQ" = ( +/obj/structure/cable/yellow{ + 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 + }, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"GR" = ( +/obj/structure/closet/crate{ + dir = 2 + }, +/obj/effect/floor_decal/industrial/outline/red, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_st) +"GS" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on, +/obj/structure/table/steel_reinforced, +/obj/item/weapon/rcd_ammo/large{ + pixel_x = -8; + pixel_y = -8 + }, +/obj/item/weapon/rcd_ammo/large{ + pixel_x = -6; + pixel_y = -6 + }, +/obj/item/weapon/rcd_ammo/large{ + pixel_x = -4; + pixel_y = -4 + }, +/obj/item/weapon/rcd_ammo/large{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/weapon/rcd_ammo/large, +/obj/item/weapon/rcd_ammo/large{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/rcd_ammo/large{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/weapon/rcd_ammo/large{ + pixel_x = 6; + pixel_y = 6 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"GT" = ( +/obj/effect/floor_decal/corner/white{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"GU" = ( +/obj/structure/table/rack/steel, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/weapon/gun/energy/pulse_rifle{ + pixel_y = 6 + }, +/obj/item/weapon/gun/energy/pulse_rifle{ + pixel_y = 4 + }, +/obj/item/weapon/gun/energy/pulse_rifle{ + pixel_y = 2 + }, +/obj/item/weapon/gun/energy/pulse_rifle, +/obj/item/weapon/gun/energy/pulse_rifle{ + pixel_y = -2 + }, +/obj/item/weapon/gun/energy/pulse_rifle{ + pixel_y = -4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_dl) +"GY" = ( +/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, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_port) +"GZ" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 8 + }, +/turf/simulated/floor/reinforced, +/area/shuttle/ert_ship_boat) +"Hf" = ( +/turf/simulated/wall/rshull, +/area/ship/ert/engine) +"Hg" = ( +/obj/effect/floor_decal/corner/yellow{ + dir = 9 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/med) +"Ho" = ( +/obj/machinery/power/emitter, +/obj/effect/floor_decal/industrial/outline/yellow, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"Hp" = ( +/obj/machinery/vending/medical{ + req_access = null + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"Hu" = ( +/obj/effect/floor_decal/corner/red{ + dir = 9 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"Hz" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/structure/ship_munition/disperser_charge/emp, +/turf/simulated/floor/reinforced, +/area/ship/ert/hallways_aft) +"HB" = ( +/obj/structure/closet/wardrobe/ert, +/obj/item/modular_computer/tablet/preset/custom_loadout/elite, +/obj/item/weapon/storage/box/survival/comp{ + starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi) + }, +/obj/machinery/light/no_nightshift, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/modular_computer/laptop/preset/custom_loadout/elite, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"HC" = ( +/obj/structure/table/steel_reinforced, +/obj/item/bodybag/cryobag{ + pixel_x = -4; + pixel_y = -4 + }, +/obj/item/bodybag/cryobag{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/bodybag/cryobag, +/obj/item/bodybag/cryobag{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/bodybag/cryobag{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/bodybag/cryobag{ + pixel_x = 6; + pixel_y = 6 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"HE" = ( +/obj/structure/table/rack/steel, +/obj/item/clothing/glasses/graviton{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/clothing/glasses/graviton, +/obj/item/clothing/glasses/graviton{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/clothing/glasses/graviton{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"HH" = ( +/obj/effect/floor_decal/corner/red{ + dir = 9 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"HK" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 8 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/ert_ship_boat) +"HL" = ( +/obj/machinery/door/blast/shutters{ + density = 0; + icon_state = "shutter0"; + id = "braun_cells_privacy"; + name = "Privacy Shutters"; + opacity = 0 + }, +/obj/machinery/door/airlock/glass{ + req_one_access = list(103) + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 1 + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"HO" = ( +/turf/simulated/wall/rshull, +/area/shuttle/ert_ship_boat) +"HR" = ( +/obj/structure/table/rack/steel, +/obj/item/clothing/accessory/storage/black_vest{ + pixel_x = -4; + pixel_y = -4 + }, +/obj/item/clothing/accessory/storage/black_vest{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/clothing/accessory/storage/black_vest, +/obj/item/clothing/accessory/storage/black_vest{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/clothing/accessory/storage/black_vest{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/clothing/accessory/storage/black_vest{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/machinery/alarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"HT" = ( +/obj/machinery/door/firedoor, +/obj/structure/grille, +/obj/structure/window/titanium/full, +/obj/structure/window/titanium, +/obj/structure/window/titanium{ + dir = 1 + }, +/obj/structure/window/titanium{ + dir = 4 + }, +/obj/effect/floor_decal/techfloor{ + dir = 8 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/brig) +"Ia" = ( +/obj/machinery/power/pointdefense{ + id_tag = "vonbraun_pd" + }, +/obj/structure/cable/yellow, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/engine) +"Id" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"If" = ( +/obj/machinery/door/airlock/glass_external, +/obj/effect/map_helper/airlock/door/int_door, +/obj/machinery/door/firedoor/multi_tile, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_star) +"Ii" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/door/firedoor/multi_tile, +/obj/machinery/door/airlock/multi_tile/glass{ + req_one_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"Il" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 8 + }, +/obj/machinery/light/no_nightshift, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/ert_ship_boat) +"Io" = ( +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + dir = 4; + name = "VB APC - East"; + pixel_x = 24 + }, +/obj/structure/cable/yellow{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/alarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"Ip" = ( +/obj/structure/sign/department/dock{ + name = "ROBINEAU DOCK" + }, +/turf/simulated/wall/shull, +/area/ship/ert/hangar) +"Is" = ( +/obj/structure/cable/yellow{ + 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/techmaint, +/area/ship/ert/barracks) +"Iu" = ( +/obj/machinery/power/pointdefense{ + id_tag = "vonbraun_pd" + }, +/obj/structure/cable/yellow{ + d2 = 4; + dir = 4; + icon_state = "0-4" + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/med_surg) +"Ix" = ( +/obj/machinery/door/blast/shutters{ + density = 0; + icon_state = "shutter0"; + id = "braun_cells_privacy"; + name = "Privacy Shutters"; + opacity = 0 + }, +/obj/structure/grille, +/obj/structure/window/titanium/full, +/obj/structure/window/titanium{ + dir = 1 + }, +/obj/structure/window/titanium, +/obj/structure/window/titanium{ + dir = 8 + }, +/obj/structure/cable/yellow{ + d2 = 2; + icon_state = "0-2" + }, +/obj/structure/cable/yellow{ + d2 = 4; + icon_state = "0-4" + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/brig) +"II" = ( +/obj/machinery/door/firedoor/multi_tile{ + dir = 1 + }, +/obj/machinery/door/airlock/multi_tile/glass{ + dir = 1; + req_one_access = list(103) + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"IK" = ( +/obj/machinery/door/blast/shutters{ + density = 0; + icon_state = "shutter0"; + id = "braun_cells_privacy"; + name = "Privacy Shutters"; + opacity = 0 + }, +/obj/structure/grille, +/obj/structure/window/titanium/full, +/obj/structure/window/titanium{ + dir = 1 + }, +/obj/structure/window/titanium, +/obj/structure/cable/yellow{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/brig) +"Jd" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"Je" = ( +/obj/machinery/oxygen_pump/anesthetic, +/turf/simulated/wall/shull, +/area/ship/ert/med_surg) +"Jf" = ( +/obj/item/modular_computer/console/preset/command{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"Jg" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/med_surg) +"Jh" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"Jk" = ( +/obj/item/modular_computer/console/preset/medical{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"Js" = ( +/obj/structure/ship_munition/disperser_charge/explosive, +/obj/effect/floor_decal/industrial/warning, +/turf/simulated/floor/reinforced, +/area/ship/ert/hallways_aft) +"Jx" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/firedoor/border_only, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/mech_bay) +"Jy" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"Jz" = ( +/obj/structure/bed/chair/bay/chair/padded/blue{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"JA" = ( +/obj/machinery/button/flasher{ + pixel_x = -9; + pixel_y = -22 + }, +/obj/machinery/button/remote/blast_door{ + dir = 1; + id = "braun_cells_privacy"; + name = "Privacy Shutter Controls"; + pixel_x = 9; + pixel_y = -24; + req_access = list(103) + }, +/obj/effect/floor_decal/industrial/warning, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"JE" = ( /obj/structure/table/rack/steel, /obj/effect/floor_decal/industrial/outline/grey, /obj/item/ammo_magazine/m545{ @@ -4286,26 +6886,339 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/armoury_st) -"xt" = ( +"JF" = ( +/obj/machinery/vending/assist, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"JG" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 8 + }, +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/obj/machinery/porta_turret/stationary/CIWS, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/gunnery) +"JH" = ( +/obj/machinery/computer/ship/navigation{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/obj/structure/railing/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"JJ" = ( +/obj/machinery/light/no_nightshift, +/obj/machinery/atmospherics/unary/engine{ + dir = 4 + }, +/turf/space, +/area/ship/ert/engine) +"JM" = ( +/obj/structure/cable/yellow{ + 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 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"JW" = ( +/obj/machinery/atmospherics/pipe/simple/visible/fuel{ + dir = 9 + }, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/blast/regular/open{ + id = "VB_Rear_Blast"; + name = "Blast Shield" + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/simulated/floor/plating, +/area/ship/ert/engine) +"JX" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"JY" = ( +/obj/machinery/atmospherics/pipe/manifold/visible/fuel{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"Kb" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel, +/obj/machinery/atmospherics/unary/vent_scrubber/on, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"Kd" = ( +/obj/structure/cable/yellow{ + 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/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/effect/floor_decal/corner/red{ + dir = 9 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"Kj" = ( +/obj/machinery/telecomms/relay, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"Kk" = ( +/obj/machinery/door/airlock/glass_external, +/obj/effect/map_helper/airlock/door/int_door, +/obj/machinery/door/firedoor/multi_tile, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_port) +"Kq" = ( +/obj/machinery/ntnet_relay, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"Kr" = ( +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"Ks" = ( +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + dir = 4; + name = "VB APC - East"; + pixel_x = 24 + }, +/obj/structure/cable/yellow{ + d2 = 2; + icon_state = "0-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"Kt" = ( +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/teleporter) +"KB" = ( +/obj/machinery/atmospherics/unary/vent_pump/high_volume{ + dir = 8 + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/effect/floor_decal/industrial/warning, +/obj/structure/sign/vacuum{ + pixel_x = -32 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_star) +"KD" = ( +/obj/machinery/door/window/brigdoor/northright, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"KF" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"KG" = ( +/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{ + dir = 8; + id_tag = "von_braun_star"; + master_tag = "von_braun_master"; + name = "Starboard Docking Control"; + pixel_x = 22 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_star) +"KK" = ( +/mob/living/simple_mob/animal/passive/mimepet, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"KM" = ( +/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/effect/floor_decal/corner/blue, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/bridge) +"KN" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/wall/shull, +/area/ship/ert/barracks) +"KO" = ( +/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, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_star) +"KS" = ( /obj/structure/table/rack/steel, -/obj/item/weapon/storage/box/flashbangs, -/obj/item/weapon/storage/box/flashbangs, /obj/machinery/light/no_nightshift{ dir = 1 }, -/obj/machinery/alarm/alarms_hidden{ +/obj/machinery/firealarm/alarms_hidden{ pixel_y = 26 }, +/obj/item/weapon/gun/energy/laser{ + pixel_y = 6 + }, +/obj/item/weapon/gun/energy/laser{ + pixel_y = 4 + }, /obj/effect/floor_decal/industrial/outline/grey, -/obj/item/weapon/storage/box/flashbangs, -/obj/item/weapon/storage/box/smokes, -/obj/item/weapon/storage/box/smokes, -/obj/item/weapon/storage/box/teargas, -/obj/item/weapon/storage/box/empslite, -/obj/item/weapon/storage/box/empslite, +/obj/item/weapon/gun/energy/laser{ + pixel_y = 2 + }, +/obj/item/weapon/gun/energy/laser, +/obj/item/weapon/gun/energy/laser{ + pixel_y = -2 + }, +/obj/item/weapon/gun/energy/laser{ + pixel_y = -4 + }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/armoury_st) -"xv" = ( +"KT" = ( +/obj/machinery/atmospherics/unary/vent_pump/high_volume{ + dir = 8 + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_star) +"KW" = ( +/obj/structure/table/rack, +/obj/item/weapon/hand_tele, +/obj/item/device/perfect_tele, +/obj/item/device/binoculars, +/obj/item/device/survivalcapsule{ + pixel_x = 3 + }, +/obj/item/device/survivalcapsule{ + pixel_x = -3 + }, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"La" = ( +/obj/machinery/vending/coffee{ + prices = list() + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"Ld" = ( +/obj/structure/table/steel_reinforced, +/obj/machinery/button/remote/blast_door{ + dir = 4; + id = "braun_cells_privacy"; + name = "Privacy Shutter Controls"; + pixel_x = -24; + pixel_y = -9; + req_access = list(103) + }, +/obj/item/weapon/handcuffs, +/obj/item/weapon/handcuffs, +/obj/item/weapon/handcuffs, +/obj/item/weapon/handcuffs, +/obj/item/weapon/handcuffs/legcuffs, +/obj/item/weapon/handcuffs/legcuffs, +/obj/item/weapon/handcuffs/legcuffs, +/obj/item/weapon/handcuffs/legcuffs, +/obj/machinery/firealarm/alarms_hidden{ + dir = 8; + pixel_x = -26; + pixel_y = 5 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"Lh" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/med) +"Lk" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/obj/structure/railing/grey{ + dir = 1 + }, +/obj/structure/table/steel_reinforced, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"Lm" = ( /obj/structure/table/rack/steel, /obj/item/weapon/gun/energy/ionrifle/pistol{ pixel_y = 4 @@ -4330,274 +7243,113 @@ /obj/effect/floor_decal/industrial/outline/grey, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/armoury_st) -"xx" = ( -/obj/machinery/light/no_nightshift, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/hallways_aft) -"xz" = ( -/obj/structure/closet/medical_wall{ - pixel_x = 32 +"Lq" = ( +/obj/machinery/door/firedoor/border_only, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 4 }, -/obj/item/weapon/storage/firstaid/adv{ - pixel_x = 4; - pixel_y = 4 +/obj/structure/window/reinforced{ + dir = 8 }, -/obj/item/weapon/storage/firstaid/adv{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/weapon/storage/firstaid/fire{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/storage/firstaid/fire{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/storage/firstaid/o2, -/obj/item/weapon/storage/firstaid/o2, -/obj/item/weapon/storage/firstaid/toxin{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/weapon/storage/firstaid/toxin{ - pixel_x = -2; - pixel_y = -2 +/obj/machinery/door/blast/regular/open{ + dir = 2; + id = "braun_blast_shields"; + name = "Blast Shield" }, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"xA" = ( +/area/ship/ert/bridge) +"LA" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/material/knife/tacknife/combatknife{ + pixel_x = -7 + }, +/obj/item/weapon/material/knife/tacknife/combatknife{ + pixel_x = -4 + }, +/obj/item/weapon/material/knife/tacknife/combatknife{ + pixel_x = -1 + }, +/obj/item/weapon/material/knife/tacknife/combatknife{ + pixel_x = 2 + }, +/obj/item/weapon/material/knife/tacknife/combatknife{ + pixel_x = 5 + }, +/obj/item/weapon/material/knife/tacknife/combatknife{ + pixel_x = 8 + }, /obj/effect/floor_decal/industrial/outline/grey, -/obj/machinery/gear_dispenser/suit/ert, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"xC" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, -/obj/structure/table/steel_reinforced, -/obj/item/weapon/rcd/advanced/loaded{ - desc = "A device used to rapidly build and deconstruct. This version works faster, and has a much larger capacity than a standard model, but doesn't work at range. Reload with compressed matter cartridges."; - name = "emergency rapid construction device"; - pixel_y = 3; - ranged = 0 +/area/ship/ert/hallways) +"LB" = ( +/obj/effect/floor_decal/corner/white{ + dir = 9 }, -/obj/item/weapon/rcd/advanced/loaded{ - desc = "A device used to rapidly build and deconstruct. This version works faster, and has a much larger capacity than a standard model, but doesn't work at range. Reload with compressed matter cartridges."; - name = "emergency rapid construction device"; - pixel_y = -3; - ranged = 0 +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"xD" = ( -/obj/effect/landmark/late_antag/ert, -/obj/structure/table/bench/steel, /obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" + d1 = 4; + d2 = 8; + icon_state = "4-8" }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"xG" = ( -/obj/machinery/portable_atmospherics/canister/air, -/obj/machinery/alarm/alarms_hidden{ - pixel_y = 26 - }, -/obj/machinery/light_switch{ - dir = 4; - pixel_x = -23 - }, -/obj/effect/floor_decal/industrial/outline, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"xM" = ( +/area/ship/ert/med) +"LC" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 5 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/hangar) -"xO" = ( -/obj/effect/floor_decal/industrial/warning, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 +"LF" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"xU" = ( +/area/ship/ert/armoury_dl) +"LH" = ( +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"LI" = ( +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 5 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"LJ" = ( /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 1 }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"xZ" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/gun/launcher/grenade{ - pixel_y = 3 - }, -/obj/item/weapon/gun/launcher/grenade{ - pixel_y = -3 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_dl) -"ya" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways_aft) -"yf" = ( -/obj/effect/floor_decal/industrial/warning, -/obj/machinery/space_heater, -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"yg" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/blast/regular/open{ - dir = 2; - id = "ERT_Blast_Windows"; - name = "Blast Shield" - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/shield_diffuser, -/turf/simulated/floor/tiled/techfloor, -/area/shuttle/ert_ship_boat) -"yi" = ( -/obj/effect/floor_decal/corner/white{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"yj" = ( -/obj/effect/floor_decal/industrial/warning, -/obj/machinery/space_heater, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"yl" = ( -/obj/structure/ship_munition/disperser_charge/emp, -/obj/effect/floor_decal/industrial/warning, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/reinforced, -/area/ship/ert/hallways_aft) -"yo" = ( -/obj/machinery/door/airlock/external, -/obj/effect/map_helper/airlock/door/ext_door, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_star) -"yp" = ( -/obj/structure/table/steel_reinforced, -/obj/item/weapon/storage/firstaid/fire{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/weapon/storage/firstaid/fire{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/storage/firstaid/adv, -/obj/item/weapon/storage/firstaid/adv{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/effect/floor_decal/corner/yellow{ - dir = 8 - }, -/obj/machinery/firealarm/alarms_hidden{ - pixel_y = 26 - }, -/turf/simulated/floor/tiled/techfloor, /area/ship/ert/med) -"yv" = ( -/obj/effect/floor_decal/industrial/warning, -/obj/machinery/pipedispenser/orderable, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 +"LL" = ( +/obj/machinery/alarm/alarms_hidden{ + dir = 4; + pixel_x = -26 }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"yx" = ( -/obj/effect/floor_decal/industrial/warning, -/obj/machinery/pipedispenser/disposal/orderable, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"yz" = ( -/turf/space, -/area/space) -"yB" = ( -/obj/effect/floor_decal/industrial/warning, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/machinery/firealarm/alarms_hidden{ - pixel_y = 26 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"yC" = ( -/obj/machinery/vending/engivend, -/turf/simulated/floor/tiled/techfloor, +/turf/simulated/floor/tiled/techfloor/grid, +/area/ship/ert/brig) +"LM" = ( +/turf/simulated/floor/reinforced/airless, /area/ship/ert/eng_storage) -"yD" = ( -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/structure/sign/vacuum{ - pixel_y = 32 - }, -/obj/effect/floor_decal/industrial/warning, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"yG" = ( -/obj/structure/ship_munition/disperser_charge/explosive, -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/turf/simulated/floor/reinforced, -/area/ship/ert/hallways_aft) -"yI" = ( -/obj/structure/sign/department/medbay, -/turf/simulated/wall/shull, -/area/ship/ert/med) -"yJ" = ( +"LP" = ( /obj/structure/table/steel_reinforced, /obj/machinery/chemical_dispenser/biochemistry/full, /obj/machinery/light/no_nightshift, @@ -4609,7 +7361,489 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/med) -"yR" = ( +"LR" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/effect/floor_decal/industrial/warning/corner, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"LV" = ( +/obj/effect/floor_decal/corner/blue{ + dir = 9 + }, +/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/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, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways) +"LW" = ( +/obj/machinery/door/airlock/glass_external, +/obj/effect/map_helper/airlock/door/int_door, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/dock_star) +"LZ" = ( +/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/effect/catwalk_plated/techmaint, +/turf/simulated/floor/plating, +/area/ship/ert/med) +"Mb" = ( +/obj/machinery/sleeper{ + dir = 8 + }, +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"Md" = ( +/obj/machinery/door/firedoor/border_only, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/door/blast/regular/open{ + dir = 2; + id = "braun_blast_shields"; + name = "Blast Shield" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_st) +"Me" = ( +/obj/structure/table/rack/steel, +/obj/item/device/flash{ + pixel_x = -4; + pixel_y = -4 + }, +/obj/item/device/flash{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/device/flash, +/obj/item/device/flash{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/device/flash{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/device/flash{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways) +"Mi" = ( +/obj/machinery/door/window/brigdoor/southleft, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"Mj" = ( +/obj/machinery/door/airlock/glass_medical{ + name = "Medical Bay"; + req_access = list(103) + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/med) +"Mk" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/teleporter) +"Mm" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/table/steel_reinforced, +/obj/item/weapon/melee/baton/loaded, +/obj/item/weapon/melee/baton/loaded, +/obj/item/weapon/cell/device/weapon, +/obj/item/weapon/cell/device/weapon, +/obj/machinery/atmospherics/unary/vent_scrubber/on, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"Mq" = ( +/obj/effect/floor_decal/industrial/outline/yellow, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/ert_ship_boat) +"Mr" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/machinery/portable_atmospherics/powered/pump/filled, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"Mt" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/gun/projectile/automatic/pdw{ + pixel_y = 6 + }, +/obj/item/weapon/gun/projectile/automatic/pdw{ + pixel_y = 4 + }, +/obj/item/weapon/gun/projectile/automatic/pdw{ + pixel_y = 2 + }, +/obj/item/weapon/gun/projectile/automatic/pdw, +/obj/item/weapon/gun/projectile/automatic/pdw{ + pixel_y = -2 + }, +/obj/item/weapon/gun/projectile/automatic/pdw{ + pixel_y = -4 + }, +/obj/item/ammo_magazine/m9mml{ + pixel_x = 10 + }, +/obj/item/ammo_magazine/m9mml{ + pixel_x = 8 + }, +/obj/item/ammo_magazine/m9mml{ + pixel_x = 6 + }, +/obj/item/ammo_magazine/m9mml{ + pixel_x = 4 + }, +/obj/item/ammo_magazine/m9mml{ + pixel_x = 2 + }, +/obj/item/ammo_magazine/m9mml, +/obj/item/ammo_magazine/m9mml{ + pixel_x = -2 + }, +/obj/item/ammo_magazine/m9mml{ + pixel_x = -4 + }, +/obj/item/ammo_magazine/m9mml{ + pixel_x = -6 + }, +/obj/item/ammo_magazine/m9mml{ + pixel_x = -8 + }, +/obj/item/ammo_magazine/m9mml{ + pixel_x = -10 + }, +/obj/item/ammo_magazine/m9mml{ + pixel_x = -12 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_st) +"Mx" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/machinery/portable_atmospherics/powered/scrubber, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"My" = ( +/obj/effect/floor_decal/industrial/warning, +/obj/machinery/space_heater, +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"MC" = ( +/obj/effect/floor_decal/industrial/warning, +/obj/machinery/pipedispenser/orderable, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"MD" = ( +/obj/structure/table/rack/steel, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/weapon/gun/energy/locked/frontier/holdout/unlocked{ + pixel_y = 6 + }, +/obj/item/weapon/gun/energy/locked/frontier/holdout/unlocked{ + pixel_y = 4 + }, +/obj/item/weapon/gun/energy/locked/frontier/holdout/unlocked{ + pixel_y = 2 + }, +/obj/item/weapon/gun/energy/locked/frontier/holdout/unlocked, +/obj/item/weapon/gun/energy/locked/frontier/holdout/unlocked{ + pixel_y = -2 + }, +/obj/item/weapon/gun/energy/locked/frontier/holdout/unlocked{ + pixel_y = -4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_st) +"MK" = ( +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/fuel, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"ML" = ( +/obj/effect/floor_decal/industrial/warning, +/obj/machinery/pipedispenser/disposal/orderable, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"MQ" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 5 + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/eng_storage) +"MT" = ( +/obj/effect/floor_decal/corner/red{ + dir = 1 + }, +/obj/structure/reagent_dispensers/watertank/high, +/obj/effect/floor_decal/industrial/outline/blue, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"MX" = ( +/obj/machinery/flasher, +/turf/simulated/floor/tiled/techfloor/grid, +/area/ship/ert/brig) +"MZ" = ( +/turf/simulated/wall/rshull, +/area/ship/ert/med_surg) +"Nb" = ( +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/table/steel_reinforced, +/obj/fiftyspawner/uranium, +/obj/fiftyspawner/uranium, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engineering) +"Nd" = ( +/obj/structure/table/rack/steel, +/obj/effect/floor_decal/industrial/outline, +/obj/item/weapon/hand_labeler, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"Nf" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 10 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_st) +"Ng" = ( +/obj/machinery/door/blast/regular/open{ + id = "ERT_Shuttle_Rear"; + name = "Boarding Hatch" + }, +/obj/machinery/button/remote/blast_door{ + id = "ERT_Shuttle_Rear"; + name = "ERT Shuttle Access"; + pixel_y = 24; + req_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/ert_ship_boat) +"Nh" = ( +/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/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/brig) +"Nk" = ( +/obj/effect/floor_decal/industrial/warning, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/obj/machinery/firealarm/alarms_hidden{ + pixel_y = 26 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"Np" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 8 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/effect/catwalk_plated/techfloor, +/turf/simulated/floor/plating, +/area/ship/ert/engine) +"Nq" = ( +/obj/machinery/door/airlock/glass_engineering{ + name = "RIG Bay & ORB Access"; + req_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/mech_bay) +"Nu" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/obj/structure/sign/vacuum{ + pixel_y = 32 + }, +/obj/effect/floor_decal/industrial/warning, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"NH" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/binary/pump/fuel/on, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"NJ" = ( +/obj/machinery/body_scanconsole, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"NN" = ( +/obj/machinery/computer/operating{ + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"NP" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + 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" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"NR" = ( /obj/structure/cable/yellow{ d1 = 2; d2 = 4; @@ -4630,100 +7864,498 @@ /obj/effect/catwalk_plated/techmaint, /turf/simulated/floor/plating, /area/ship/ert/engineering) -"yX" = ( -/turf/simulated/wall/rshull, -/area/ship/ert/hangar) -"yY" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/firedoor/border_only, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ +"NU" = ( +/obj/effect/floor_decal/corner/yellow{ + dir = 10 + }, +/obj/effect/floor_decal/corner/blue{ dir = 1 }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"za" = ( -/obj/effect/floor_decal/industrial/warning{ +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 8 }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/hangar) -"zb" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 8 + }, +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways) +"NY" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, -/obj/machinery/firealarm/alarms_hidden{ - pixel_y = 26 +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/light/no_nightshift, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"NZ" = ( +/obj/structure/cable/yellow{ + 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/techmaint, +/area/ship/ert/engineering) +"Oa" = ( +/obj/effect/floor_decal/corner/yellow{ + dir = 9 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" }, /obj/structure/cable/yellow{ d1 = 4; d2 = 8; icon_state = "4-8" }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"zc" = ( -/turf/simulated/wall/shull, -/area/ship/ert/eng_storage) -"zg" = ( -/obj/item/modular_computer/console/preset/engineering{ +/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, +/obj/effect/floor_decal/corner/red{ + dir = 6 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"Of" = ( +/turf/simulated/wall/rshull, +/area/ship/ert/hangar) +"Og" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/obj/structure/panic_button{ - pixel_x = -32 +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 }, -/turf/simulated/floor/tiled/techfloor, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/airlock/glass_security{ + name = "Prisoner Containment"; + req_one_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/brig) +"Oh" = ( +/obj/structure/cable/yellow{ + 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/techmaint, +/area/ship/ert/brig) +"Oi" = ( +/obj/structure/cable/yellow{ + 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/techmaint, /area/ship/ert/bridge) -"zh" = ( -/obj/machinery/button/remote/blast_door{ - id = "VB_Rear_Blast"; - name = "Emergency Blast Doors"; - pixel_y = 24; - req_access = list(103) +"Ok" = ( +/obj/effect/floor_decal/industrial/warning, +/obj/machinery/space_heater, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"Om" = ( +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/mech_bay) +"On" = ( +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_dl) +"Oq" = ( +/obj/machinery/firealarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"Ox" = ( +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" }, -/obj/structure/table/steel_reinforced, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/engineering) -"zk" = ( -/obj/machinery/light/no_nightshift{ - dir = 8 +"Oy" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" }, -/obj/machinery/atmospherics/pipe/simple/hidden/fuel, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/cable/yellow{ + 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/techmaint, +/area/ship/ert/brig) +"OA" = ( +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/med) +"OB" = ( /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, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways) +"OE" = ( +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/hangar) +"OF" = ( +/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" + }, +/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, +/obj/effect/catwalk_plated/techmaint, +/turf/simulated/floor/plating, +/area/ship/ert/hallways_aft) +"OG" = ( +/obj/machinery/shield_gen, +/obj/effect/floor_decal/industrial/outline/blue, /turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"OH" = ( +/obj/structure/cable/yellow, +/obj/machinery/power/smes/buildable/point_of_interest, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engineering) +"OM" = ( +/obj/structure/sign/nosmoking_1, +/turf/simulated/wall/rshull, /area/ship/ert/engine) -"zo" = ( -/obj/item/modular_computer/console/preset/command{ - dir = 1 +"ON" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" }, -/turf/simulated/floor/tiled/techfloor, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/mech_bay) +"OO" = ( +/obj/structure/sign/department/cargo{ + name = "ENGINEERING SUPPLIES" + }, +/turf/simulated/wall/rshull, /area/ship/ert/bridge) -"zr" = ( -/obj/effect/floor_decal/industrial/warning{ +"OR" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/bed/chair/bay/chair/padded/blue, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/bridge) +"OS" = ( +/obj/structure/cable/yellow{ + 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/no_nightshift{ dir = 1 }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"OT" = ( +/obj/item/device/multitool/station_buffered, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"OU" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" }, -/obj/machinery/alarm/alarms_hidden{ - dir = 1; - pixel_y = -26 +/obj/machinery/atmospherics/unary/vent_pump/on, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_port) +"OV" = ( +/obj/structure/hull_corner{ + dir = 4 }, -/obj/effect/floor_decal/corner/white{ +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/dock_star) +"OW" = ( +/obj/structure/cable/yellow{ + 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/border_only, +/obj/machinery/door/airlock/glass{ + req_one_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/bridge) +"OX" = ( +/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/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, +/obj/effect/catwalk_plated/techmaint, +/turf/simulated/floor/plating, +/area/ship/ert/bridge) +"OY" = ( +/obj/structure/grille, +/obj/structure/window/titanium/full, +/obj/structure/window/titanium, +/obj/structure/window/titanium{ + dir = 1 + }, +/obj/structure/window/titanium{ + dir = 4 + }, +/obj/machinery/door/firedoor, +/obj/effect/floor_decal/techfloor{ dir = 8 }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"zs" = ( +/area/ship/ert/brig) +"OZ" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/reagent_containers/hypospray{ + pixel_x = 6 + }, +/obj/item/weapon/reagent_containers/hypospray{ + pixel_x = 3 + }, +/obj/item/weapon/reagent_containers/hypospray, +/obj/item/weapon/reagent_containers/hypospray{ + pixel_x = -3 + }, +/obj/machinery/alarm/alarms_hidden{ + pixel_y = 26 + }, +/obj/effect/floor_decal/industrial/outline, +/obj/item/weapon/reagent_containers/hypospray{ + pixel_x = -6 + }, +/obj/item/weapon/reagent_containers/hypospray{ + pixel_x = -9 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"Pc" = ( +/obj/structure/table/rack, +/obj/item/ammo_magazine/m44{ + pixel_x = -3 + }, +/obj/item/ammo_magazine/m44{ + pixel_x = 3 + }, +/obj/item/weapon/gun/projectile/deagle, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"Pe" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/storage/box/emps{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/weapon/storage/box/emps{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_dl) +"Ph" = ( +/obj/item/device/healthanalyzer/phasic{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/device/healthanalyzer/phasic, +/obj/item/device/healthanalyzer/phasic{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/structure/table/rack/steel, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, +/obj/effect/floor_decal/industrial/outline, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"Pj" = ( +/obj/machinery/light/no_nightshift{ + dir = 4 + }, +/obj/effect/floor_decal/corner/yellow{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/effect/floor_decal/corner/red, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"Pl" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/blast/regular{ + closed_layer = 4; + dir = 4; + id = "NRV_DELTA"; + layer = 4 + }, +/obj/machinery/door/firedoor, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_dl) +"Pn" = ( +/obj/machinery/atmospherics/unary/vent_pump/on, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"Pq" = ( +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"Pw" = ( +/obj/machinery/light/no_nightshift, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/atmos) +"Px" = ( +/obj/structure/table/rack/steel, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/clothing/mask/gas{ + pixel_x = -4; + pixel_y = -4 + }, +/obj/item/clothing/mask/gas{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/clothing/mask/gas, +/obj/item/clothing/mask/gas{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/clothing/mask/gas{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/clothing/mask/gas{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/item/clothing/mask/gas/half, +/obj/item/clothing/mask/gas/half, +/obj/item/clothing/mask/gas/half, +/obj/item/clothing/mask/gas/half, +/obj/item/clothing/mask/gas/half, +/obj/item/clothing/mask/gas/half, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"Py" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/med) +"PA" = ( +/obj/structure/bed/chair/bay/chair/padded/blue, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"PC" = ( /obj/structure/cable/yellow{ d1 = 1; d2 = 2; @@ -4743,634 +8375,151 @@ /obj/effect/catwalk_plated/techmaint, /turf/simulated/floor/plating, /area/ship/ert/hallways) -"zB" = ( -/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/effect/floor_decal/corner/blue{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"zP" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"zT" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"Af" = ( -/obj/machinery/power/apc/hyper{ - alarms_hidden = 1; - dir = 4; - name = "VB APC - East"; - pixel_x = 24 - }, -/obj/structure/cable/yellow, -/obj/machinery/embedded_controller/radio/docking_port_multi{ - child_names_txt = "Port Airlock Control;Starboard Airlock Control"; - child_tags_txt = "von_braun_port;von_braun_star"; - dir = 1; - id_tag = "von_braun_master"; - pixel_y = -22 - }, -/obj/machinery/light/no_nightshift, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"Ah" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/obj/structure/table/woodentable, -/obj/item/weapon/implantpad, -/obj/item/weapon/implanter, -/obj/item/weapon/storage/box/admints, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"Ai" = ( -/obj/machinery/firealarm/alarms_hidden{ - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways_aft) -"An" = ( -/obj/machinery/power/apc/hyper{ - alarms_hidden = 1; - dir = 4; - name = "VB APC - East"; - pixel_x = 24 - }, -/obj/structure/cable/yellow{ - d2 = 8; - icon_state = "0-8" - }, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"Ao" = ( -/obj/item/modular_computer/console/preset/medical{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"Aq" = ( -/obj/machinery/firealarm/alarms_hidden{ - pixel_y = 26 - }, -/obj/item/modular_computer/console/preset/security, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"Ar" = ( +"PD" = ( /obj/structure/table/steel_reinforced, -/obj/fiftyspawner/phoron, -/obj/fiftyspawner/glass, -/obj/fiftyspawner/glass, -/obj/fiftyspawner/glass, -/obj/fiftyspawner/glass, -/obj/fiftyspawner/steel, -/obj/fiftyspawner/steel, -/obj/fiftyspawner/steel, -/obj/fiftyspawner/steel, -/obj/fiftyspawner/plasteel, -/obj/fiftyspawner/plasteel, -/obj/fiftyspawner/plasteel, -/obj/fiftyspawner/plasteel, -/obj/fiftyspawner/rglass, -/obj/fiftyspawner/rglass, -/obj/fiftyspawner/rglass, -/obj/fiftyspawner/phoronglass, -/obj/fiftyspawner/phoronglass, -/obj/fiftyspawner/rods, -/obj/fiftyspawner/rods, -/obj/fiftyspawner/rods, -/obj/fiftyspawner/rods, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"Av" = ( -/obj/item/modular_computer/console/preset/security, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"Ay" = ( -/obj/machinery/door/airlock/glass_security{ - req_one_access = list(103) +/obj/item/weapon/storage/firstaid/toxin{ + pixel_x = 4; + pixel_y = 4 }, -/obj/machinery/door/blast/regular{ - id = "NRV_DELTA" +/obj/item/weapon/storage/firstaid/toxin{ + pixel_x = 2; + pixel_y = 2 }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_dl) -"Az" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/simulated/wall/rshull, -/area/ship/ert/engine) -"AI" = ( -/obj/machinery/power/thermoregulator, -/obj/effect/floor_decal/industrial/outline, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"AK" = ( -/obj/item/modular_computer/console/preset/research, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"AL" = ( -/obj/structure/table/steel_reinforced, -/obj/item/weapon/storage/box/pillbottles, -/obj/item/weapon/storage/box/pillbottles, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"AS" = ( -/obj/item/modular_computer/console/preset/medical, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"AW" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/wall/rshull, -/area/ship/ert/engine) -"AX" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"AZ" = ( -/obj/machinery/alarm/alarms_hidden{ - pixel_y = 26 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"Bb" = ( -/obj/effect/floor_decal/corner/blue{ - dir = 8 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/light/no_nightshift{ - dir = 8 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways) -"Bc" = ( -/obj/structure/cable/yellow{ - 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/techmaint, -/area/ship/ert/hallways) -"Bf" = ( -/obj/effect/floor_decal/corner/red{ - dir = 6 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" +/obj/item/weapon/storage/firstaid/o2, +/obj/item/weapon/storage/firstaid/o2{ + pixel_x = -2; + pixel_y = -2 }, /obj/machinery/light/no_nightshift{ dir = 1 }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/light_switch{ - pixel_y = 23 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways) -"Bj" = ( -/obj/machinery/shieldgen, -/obj/effect/floor_decal/industrial/outline/blue, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"Bl" = ( -/obj/machinery/disperser/back{ - dir = 4 - }, -/turf/simulated/floor/airless, -/area/ship/ert/gunnery) -"Bo" = ( -/turf/simulated/wall/shull, -/area/ship/ert/barracks) -"Bp" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/gun/projectile/automatic/z8{ - pixel_y = 3 - }, -/obj/item/weapon/gun/projectile/automatic/z8{ - pixel_y = -3 - }, -/obj/item/ammo_magazine/m762, -/obj/item/ammo_magazine/m762, -/obj/item/ammo_magazine/m762, -/obj/item/ammo_magazine/m762, -/obj/item/ammo_magazine/m762, -/obj/item/ammo_magazine/m762, -/obj/item/ammo_magazine/m762, -/obj/item/ammo_magazine/m762, -/obj/item/ammo_magazine/m762/ap, -/obj/item/ammo_magazine/m762/ap, -/obj/item/ammo_magazine/m762/ap, -/obj/item/ammo_magazine/m762/ap, -/obj/machinery/light_switch{ - dir = 1; - pixel_y = -23 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_dl) -"Bq" = ( -/obj/machinery/door/airlock/glass_security{ - req_one_access = list(103) - }, -/obj/structure/cable/yellow{ - 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/techmaint, -/area/ship/ert/armoury_st) -"Br" = ( -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/eng_storage) -"Bx" = ( -/obj/structure/bed/chair/bay/chair/padded/blue, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/med) -"BE" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 +"PE" = ( +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/eng_storage) +"PG" = ( +/obj/effect/floor_decal/corner/white{ + dir = 6 }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_st) -"BF" = ( +/area/ship/ert/med) +"PH" = ( +/obj/machinery/pointdefense_control{ + id_tag = "vonbraun_pd" + }, +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"PO" = ( +/obj/machinery/power/pointdefense{ + id_tag = "vonbraun_pd" + }, /obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" + d2 = 2; + icon_state = "0-2" }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_st) -"BI" = ( +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/mech_bay) +"PP" = ( /obj/structure/hull_corner/long_horiz{ dir = 5 }, /turf/simulated/floor/reinforced/airless, /area/ship/ert/engineering) -"BK" = ( -/obj/machinery/shipsensors, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/engineering) -"BM" = ( -/obj/machinery/computer/ship/sensors, +"Qb" = ( +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/gunnery) -"BU" = ( +/area/ship/ert/teleporter) +"Qc" = ( /obj/structure/cable/yellow{ d1 = 4; d2 = 8; icon_state = "4-8" }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_st) -"BW" = ( -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways) -"Ce" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_st) -"Cf" = ( -/obj/structure/ship_munition/disperser_charge/emp, -/obj/effect/floor_decal/industrial/warning, -/obj/structure/railing, -/turf/simulated/floor/reinforced, -/area/ship/ert/gunnery) -"Ci" = ( -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/eng_storage) -"Cn" = ( -/obj/machinery/power/apc/hyper{ - alarms_hidden = 1; - dir = 4; - name = "VB APC - East"; - pixel_x = 24 - }, -/obj/machinery/vending/nifsoft_shop{ - categories = 111; - desc = "For all your mindware and mindware accessories. Now paid for by Central!"; - dir = 8; - emagged = 1; - name = "ERT NIFSoft Vendor" - }, -/obj/structure/cable/yellow{ - d2 = 8; - icon_state = "0-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/hallways) -"Cq" = ( -/obj/effect/floor_decal/corner/white{ - dir = 6 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) -"Cr" = ( -/obj/machinery/porta_turret/stationary/CIWS, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/med_surg) -"Cx" = ( -/turf/simulated/wall/shull, -/area/ship/ert/mech_bay) -"CH" = ( -/obj/machinery/door/firedoor/border_only, -/obj/structure/fans/hardlight, -/obj/machinery/door/blast/regular{ - id = "Von_Braun_Hangar"; - name = "Hangar Blast Door" - }, -/turf/simulated/floor/reinforced, -/area/ship/ert/hangar) -"CI" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/firedoor/border_only, -/obj/structure/window/reinforced{ +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/obj/structure/window/reinforced{ - dir = 8 +/obj/machinery/door/airlock/glass_security{ + name = "Armoury"; + req_one_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_st) +"Qd" = ( +/obj/machinery/light_switch{ + dir = 4; + pixel_x = -23 }, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_st) -"CL" = ( -/obj/effect/floor_decal/corner/red{ - dir = 8 +/area/ship/ert/bridge) +"Qz" = ( +/obj/machinery/atmospherics/pipe/manifold/visible{ + dir = 1 }, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 +/turf/simulated/wall/shull, +/area/ship/ert/dock_star) +"QE" = ( +/obj/machinery/door/firedoor/glass, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced, +/obj/machinery/door/blast/regular/open{ + dir = 4; + id = "ERT_Blast_Windows"; + name = "Blast Shield" + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/ert_ship_boat) +"QF" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 5 }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"CM" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 9 }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"CN" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/fuel, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/area/ship/ert/teleporter) +"QP" = ( +/turf/simulated/wall/rshull, +/area/ship/ert/armoury_dl) +"QR" = ( +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + dir = 8; + name = "VB APC - West"; + pixel_x = -24 + }, /obj/structure/cable/yellow{ - d1 = 1; d2 = 2; - icon_state = "1-2" + icon_state = "0-2" }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"CP" = ( -/obj/machinery/door/firedoor/multi_tile{ - dir = 1 - }, -/obj/machinery/door/airlock/multi_tile/glass{ - dir = 1; - req_one_access = list(103) - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"CR" = ( -/obj/machinery/light/no_nightshift, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/med_surg) -"CT" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"CZ" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/light/no_nightshift{ dir = 8 }, -/obj/machinery/atmospherics/pipe/simple/hidden/fuel, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"Dd" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/blast/regular{ - closed_layer = 4; - dir = 4; - id = "NRV_DELTA"; - layer = 4 - }, -/obj/machinery/door/firedoor, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"Dh" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/firedoor/border_only, -/obj/machinery/door/blast/regular/open{ - id = "VB_Rear_Blast"; - name = "Blast Shield" - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engineering) -"Di" = ( -/obj/machinery/vending/medical{ - req_access = null - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"Dn" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"Do" = ( -/obj/machinery/porta_turret/stationary/CIWS, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/engine) -"Dt" = ( -/obj/structure/railing/grey, -/obj/structure/railing/grey{ - dir = 4 - }, -/obj/structure/table/steel_reinforced, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"Du" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 4 - }, -/obj/machinery/button/remote/blast_door{ - dir = 1; - id = "ERT_Shuttle_Fore"; - name = "ERT Deployment Access"; - pixel_y = -25; - req_access = list(103) - }, /turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"Dx" = ( -/obj/machinery/door/firedoor/border_only, -/obj/machinery/door/airlock/glass{ - req_one_access = list(103) - }, -/obj/structure/sign/warning/airlock{ - pixel_y = 32 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_port) -"DJ" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) -"DK" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"DM" = ( -/obj/structure/table/steel_reinforced, -/obj/item/weapon/storage/firstaid/surgery, -/obj/item/weapon/storage/firstaid/surgery, -/obj/item/weapon/surgical/bone_clamp, -/obj/item/weapon/surgical/bone_clamp, -/obj/item/weapon/surgical/scalpel/manager, -/obj/item/weapon/surgical/scalpel/manager, -/obj/item/weapon/surgical/circular_saw/manager, -/obj/item/weapon/surgical/circular_saw/manager, -/obj/item/stack/nanopaste, -/obj/item/stack/nanopaste, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"DN" = ( -/obj/machinery/atmospherics/unary/engine{ - dir = 4 - }, -/turf/space, -/area/ship/ert/engine) -"DQ" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"DR" = ( +/area/ship/ert/hangar) +"QT" = ( /obj/structure/table/rack/steel, /obj/item/weapon/extinguisher/mini, /obj/item/weapon/extinguisher/mini, @@ -5393,84 +8542,144 @@ /obj/item/weapon/extinguisher/mini, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/med) -"DS" = ( -/turf/simulated/wall/rshull, +"QU" = ( +/obj/structure/ship_munition/disperser_charge/emp, +/obj/effect/floor_decal/industrial/warning, +/turf/simulated/floor/reinforced, /area/ship/ert/hallways_aft) -"Ed" = ( -/obj/machinery/light/no_nightshift{ - dir = 4 +"QV" = ( +/obj/machinery/door/firedoor/glass, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced, +/obj/machinery/door/blast/regular/open{ + dir = 8; + id = "ERT_Blast_Windows"; + name = "Blast Shield" }, -/obj/effect/floor_decal/corner/yellow{ +/obj/structure/window/reinforced{ dir = 1 }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/structure/sign/warning/engineering_access{ - pixel_x = -32 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/ert_ship_boat) +"QZ" = ( +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"Rc" = ( +/obj/machinery/door/blast/regular/open{ + id = "ERT_Shuttle_Rear"; + name = "Boarding Hatch" }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways_aft) -"Ee" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/obj/effect/floor_decal/corner/white{ - dir = 8 - }, -/obj/machinery/portable_atmospherics/powered/pump/filled, -/obj/machinery/light/no_nightshift, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"Eh" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"Eo" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, +/area/shuttle/ert_ship_boat) +"Rd" = ( +/obj/machinery/porta_turret/stationary/CIWS, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/engineering) +"Rh" = ( /obj/structure/cable/yellow{ d1 = 4; d2 = 8; icon_state = "4-8" }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/eng_storage) -"Eq" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 +/area/ship/ert/armoury_st) +"Rt" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" }, /turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"EA" = ( -/obj/structure/table/woodentable, -/obj/item/weapon/storage/box/trackimp, -/obj/item/weapon/storage/box/cdeathalarm_kit, -/obj/item/weapon/stamp/centcomm, +/area/ship/ert/armoury_st) +"Rv" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/med) +"Rw" = ( +/obj/effect/landmark/late_antag/ert, +/obj/structure/table/bench/steel, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"Rz" = ( +/obj/item/modular_computer/console/preset/engineering{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"RB" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"EB" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"RC" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 9 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"RJ" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 9 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"RN" = ( +/obj/structure/sign/department/medbay, +/turf/simulated/wall/shull, +/area/ship/ert/med_surg) +"RQ" = ( +/obj/effect/floor_decal/corner/red{ + dir = 8 + }, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"RU" = ( +/obj/machinery/light/no_nightshift, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/med_surg) +"RV" = ( +/obj/effect/floor_decal/corner/blue{ + dir = 1 + }, +/obj/structure/cable/yellow{ + 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/techmaint, +/area/ship/ert/hallways) +"RW" = ( +/obj/machinery/light/no_nightshift{ + dir = 1 + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/hallways_aft) +"RX" = ( /obj/effect/floor_decal/corner/white, /obj/machinery/portable_atmospherics/canister/air, /obj/machinery/firealarm/alarms_hidden{ @@ -5484,224 +8693,267 @@ /obj/effect/floor_decal/industrial/outline, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/hangar) -"EC" = ( -/obj/structure/bed/chair/comfy/black{ - dir = 8 - }, -/obj/machinery/light/no_nightshift{ - dir = 4 - }, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"ED" = ( -/obj/item/modular_computer/console/preset/ert{ - dir = 4 - }, -/obj/machinery/light/no_nightshift{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"EG" = ( -/obj/structure/bed/chair/bay/shuttle{ +"Sc" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, -/obj/machinery/light/no_nightshift{ +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engineering) +"Se" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/turf/simulated/floor/tiled/techfloor, -/area/shuttle/ert_ship_boat) -"EP" = ( -/obj/structure/closet/crate/medical, -/obj/item/weapon/storage/box/autoinjectors, -/obj/item/weapon/storage/box/beakers, -/obj/item/weapon/storage/box/bodybags, -/obj/item/weapon/storage/box/bodybags{ - pixel_x = 2; - pixel_y = 2 +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 1 }, -/obj/item/weapon/storage/box/gloves, -/obj/item/weapon/storage/box/freezer, -/obj/item/weapon/storage/box/masks, -/obj/effect/floor_decal/industrial/outline, -/obj/item/weapon/storage/box/bodybags, -/obj/item/weapon/storage/box/bodybags, -/turf/simulated/floor/tiled/techfloor, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, /area/ship/ert/med) -"Fd" = ( -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/med) -"Ff" = ( -/obj/machinery/light/no_nightshift, -/obj/structure/sign/vacuum{ - pixel_y = -32 - }, -/obj/effect/floor_decal/industrial/warning{ - dir = 1 +"Sh" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9 }, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/hangar) -"Fg" = ( -/obj/structure/bed/chair/bay/chair/padded/blue{ - dir = 8 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"Fp" = ( -/obj/structure/sign/nosmoking_1, -/turf/simulated/wall/rshull, -/area/ship/ert/engineering) -"Fq" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/storage/box/frags{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/weapon/storage/box/frags{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/machinery/power/apc/hyper{ - alarms_hidden = 1; - dir = 4; - name = "VB APC - East"; - pixel_x = 24 - }, -/obj/structure/cable/yellow, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_dl) -"Fz" = ( -/obj/structure/bed/chair/bay/chair/padded/blue{ - dir = 1 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"FD" = ( -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"FF" = ( -/obj/effect/shuttle_landmark/premade/ert_ship_port, -/turf/space, -/area/space) -"FG" = ( +"Si" = ( +/obj/structure/table/steel_reinforced, +/obj/machinery/recharger, /obj/structure/cable/yellow{ d1 = 4; d2 = 8; icon_state = "4-8" }, -/turf/simulated/wall/shull, -/area/ship/ert/med_surg) -"FJ" = ( -/obj/machinery/door/airlock/glass_command{ +/obj/machinery/atmospherics/unary/vent_scrubber/on, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_dl) +"Sj" = ( +/turf/simulated/wall/rshull, +/area/ship/ert/teleporter) +"Sl" = ( +/obj/structure/sign/department/telecoms{ + name = "TELEPORTER" + }, +/turf/simulated/wall/rshull, +/area/ship/ert/teleporter) +"Sn" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/airlock/glass_security{ + name = "Delta Armoury"; req_one_access = list(103) }, -/obj/machinery/door/firedoor/border_only, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"FK" = ( -/obj/effect/floor_decal/corner/blue{ - dir = 9 - }, -/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, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways) -"FL" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/wall/rshull, -/area/ship/ert/gunnery) -"FM" = ( -/obj/effect/floor_decal/corner/yellow{ - dir = 10 - }, -/obj/effect/floor_decal/corner/blue{ - dir = 1 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/light/no_nightshift{ - dir = 8 +/obj/machinery/door/blast/regular{ + closed_layer = 4; + id = "NRV_DELTA"; + layer = 4 }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways) -"FN" = ( -/obj/effect/floor_decal/corner/red{ +/area/ship/ert/armoury_dl) +"Sp" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 6 }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways) -"FO" = ( -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/machinery/porta_turret/stationary/CIWS, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/dock_star) -"FP" = ( -/obj/structure/ship_munition/disperser_charge/explosive, +/area/ship/ert/med) +"Sr" = ( /obj/effect/floor_decal/industrial/warning{ - dir = 5 - }, -/obj/structure/railing{ dir = 4 }, -/obj/structure/railing{ - dir = 1 +/turf/simulated/floor/reinforced, +/area/ship/ert/hangar) +"St" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 8 + }, +/obj/structure/railing/grey, +/obj/structure/table/steel_reinforced, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"Sx" = ( +/obj/structure/bed/chair/bay/chair/padded/blue{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/bridge) +"Sy" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/firedoor/border_only, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/door/blast/regular{ + closed_layer = 4; + id = "NRV_DELTA"; + layer = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_dl) +"Sz" = ( +/obj/machinery/vending/fitness{ + dir = 1; + prices = list() + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"SA" = ( +/obj/machinery/door/firedoor/border_only, +/obj/structure/fans/hardlight, +/obj/machinery/door/blast/regular{ + id = "Von_Braun_Hangar"; + name = "Hangar Blast Door" }, /turf/simulated/floor/reinforced, +/area/ship/ert/hangar) +"SB" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 8 + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/hangar) +"SD" = ( +/obj/machinery/door/window/brigdoor/southleft{ + req_access = list(150); + req_one_access = list(150) + }, +/obj/machinery/door/firedoor/glass, +/obj/effect/floor_decal/industrial/hatch/yellow, +/turf/simulated/floor/tiled/techfloor/grid, +/area/ship/ert/brig) +"SE" = ( +/obj/structure/sign/nosmoking_1, +/turf/simulated/wall/rshull, +/area/ship/ert/engineering) +"SF" = ( +/obj/machinery/alarm/alarms_hidden{ + pixel_y = 26 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"SG" = ( +/turf/simulated/wall/shull, +/area/ship/ert/dock_star) +"SI" = ( +/obj/machinery/firealarm/alarms_hidden{ + pixel_y = 26 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/dock_star) +"SJ" = ( +/obj/structure/bed/chair/bay/chair/padded/blue{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"SM" = ( +/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/structure/cable/yellow{ + 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/techmaint, +/area/ship/ert/brig) +"SN" = ( +/obj/machinery/atmospherics/unary/vent_pump/on, +/turf/simulated/floor/tiled/techfloor, /area/ship/ert/gunnery) -"FQ" = ( -/obj/machinery/door/airlock/glass_security{ - req_one_access = list(103) +"SO" = ( +/obj/effect/floor_decal/corner/white{ + dir = 4 }, -/obj/machinery/door/firedoor/multi_tile{ - dir = 1 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_st) -"FR" = ( -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_st) -"FT" = ( -/obj/structure/closet/crate{ - dir = 2 - }, -/obj/effect/floor_decal/industrial/outline/red, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_st) -"FW" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"SV" = ( +/obj/machinery/shield_gen/external, +/obj/effect/floor_decal/corner/white, +/obj/effect/floor_decal/industrial/outline/blue, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/eng_storage) +"SX" = ( +/obj/effect/shuttle_landmark/premade/ert_ship_star, +/turf/space, +/area/space) +"SY" = ( /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/machinery/door/firedoor/border_only, +/obj/machinery/door/airlock/glass_engineeringatmos{ + name = "Atmospherics"; + req_one_access = list(103) + }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways_aft) -"FX" = ( +/area/ship/ert/atmos) +"SZ" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"Td" = ( +/obj/effect/floor_decal/corner/yellow{ + dir = 9 + }, +/obj/structure/cable/yellow{ + 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/techmaint, +/area/ship/ert/med) +"Ti" = ( +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 8 + }, +/obj/item/weapon/pen{ + pixel_y = 4 + }, +/obj/machinery/firealarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/obj/item/toy/figure/ert, +/obj/structure/table/hardwoodtable, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"Tl" = ( /obj/structure/table/steel_reinforced, /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 1 @@ -5836,329 +9088,20 @@ }, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/armoury_st) -"FY" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_dl) -"Ga" = ( -/obj/structure/table/steel_reinforced, -/obj/machinery/recharger, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_st) -"Gl" = ( -/obj/structure/table/rack/steel, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/weapon/gun/projectile/automatic/z8{ - pixel_y = -3 - }, -/obj/item/weapon/gun/projectile/automatic/z8{ - pixel_y = 3 - }, -/obj/item/ammo_magazine/m762, -/obj/item/ammo_magazine/m762, -/obj/item/ammo_magazine/m762, -/obj/item/ammo_magazine/m762, -/obj/item/ammo_magazine/m762, -/obj/item/ammo_magazine/m762, -/obj/item/ammo_magazine/m762, -/obj/item/ammo_magazine/m762, -/obj/item/ammo_magazine/m762/ap, -/obj/item/ammo_magazine/m762/ap, -/obj/item/ammo_magazine/m762/ap, -/obj/item/ammo_magazine/m762/ap, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_dl) -"Gr" = ( -/obj/machinery/power/emitter, -/obj/effect/floor_decal/industrial/outline/yellow, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"Gu" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/wall/rshull, -/area/ship/ert/med_surg) -"Gv" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/obj/machinery/door/window/brigdoor/southleft, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/hallways_aft) -"Gw" = ( -/obj/structure/closet/wardrobe/ert, -/obj/item/modular_computer/tablet/preset/custom_loadout/elite, -/obj/item/weapon/storage/box/survival/comp{ - starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi) - }, -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/modular_computer/laptop/preset/custom_loadout/elite, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"GI" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"GJ" = ( -/obj/structure/hull_corner{ - dir = 1 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/eng_storage) -"GK" = ( -/obj/structure/closet/crate{ - dir = 1 - }, -/obj/effect/floor_decal/industrial/outline/red, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_st) -"GM" = ( -/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, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways) -"GO" = ( -/obj/machinery/door/airlock/glass_security{ - req_one_access = list(103) - }, -/obj/machinery/door/firedoor/border_only, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_st) -"GR" = ( -/obj/effect/floor_decal/corner/red{ - dir = 9 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"GS" = ( -/obj/effect/floor_decal/corner/white{ - dir = 6 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/eng_storage) -"GT" = ( -/obj/machinery/power/apc/hyper{ - alarms_hidden = 1; - name = "VB APC - South"; - pixel_y = -24 - }, -/obj/structure/cable/yellow, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"GU" = ( -/obj/effect/floor_decal/corner/red{ - dir = 8 - }, -/obj/structure/reagent_dispensers/foam, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/effect/floor_decal/industrial/outline, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"GY" = ( -/obj/machinery/cryopod/ert_ship, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"GZ" = ( -/obj/structure/bed/chair/bay/shuttle, -/obj/machinery/light/no_nightshift{ +"Tp" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, -/turf/simulated/floor/tiled/techfloor, -/area/shuttle/ert_ship_boat) -"Hf" = ( -/turf/simulated/wall/rshull, -/area/ship/ert/engine) -"Hp" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) -"Hq" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced, -/obj/machinery/door/blast/regular/open{ - dir = 4; - id = "ERT_Blast_Windows"; - name = "Blast Shield" - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/shuttle/ert_ship_boat) -"Hu" = ( -/obj/machinery/door/firedoor, -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced, -/obj/machinery/door/blast/regular/open{ - dir = 4; - id = "ERT_Blast_Windows"; - name = "Blast Shield" - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/shuttle/ert_ship_boat) -"HB" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/gun/energy/gun/burst{ - pixel_y = 3 - }, -/obj/item/weapon/gun/energy/gun/burst{ - pixel_y = -3 - }, -/obj/item/weapon/gun/energy/lasershotgun{ - pixel_y = -3 - }, -/obj/item/weapon/gun/energy/lasershotgun{ - pixel_y = 3 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/machinery/recharger/wallcharger{ - pixel_x = -23; - pixel_y = -12 - }, -/obj/machinery/recharger/wallcharger{ - pixel_x = -23; - pixel_y = -4 - }, -/obj/machinery/recharger/wallcharger{ - pixel_x = -23; - pixel_y = 5 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_dl) -"HC" = ( -/obj/structure/closet/crate/medical, -/obj/item/weapon/storage/mre/menu11, -/obj/item/weapon/storage/mre/menu11, -/obj/item/weapon/storage/mre/menu11, -/obj/item/weapon/storage/mre/menu11, -/obj/item/stack/nanopaste/advanced, -/obj/item/stack/nanopaste/advanced, -/obj/item/stack/nanopaste/advanced, -/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/glucose, -/obj/item/weapon/storage/pill_bottle/iron, -/obj/item/weapon/storage/pill_bottle/iron, -/obj/item/weapon/storage/pill_bottle/sleevingcure/full, -/obj/item/weapon/storage/box/syringes, -/obj/item/weapon/storage/box/syringes{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/machinery/light_switch{ - dir = 8; - pixel_x = 23 - }, -/obj/effect/floor_decal/industrial/outline, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"HE" = ( -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/dock_port) -"HH" = ( -/obj/structure/bed/chair/bay/shuttle{ - dir = 1 - }, -/obj/machinery/recharger/wallcharger{ - pixel_x = -23; - pixel_y = -12 - }, -/obj/machinery/recharger/wallcharger{ - pixel_x = -23; - pixel_y = -4 - }, -/obj/machinery/recharger/wallcharger{ - pixel_x = -23; - pixel_y = 5 - }, -/turf/simulated/floor/tiled/techfloor, -/area/shuttle/ert_ship_boat) -"HK" = ( -/obj/machinery/shield_diffuser, -/obj/machinery/door/blast/regular/open{ - dir = 2; - id = "ERT_Blast_Windows"; - name = "Blast Shield" - }, -/obj/machinery/door/blast/regular{ - id = "ERT_Shuttle_Fore" - }, -/turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"HO" = ( -/turf/simulated/wall/rshull, -/area/shuttle/ert_ship_boat) -"HR" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/obj/machinery/door/window/brigdoor/northright, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/hallways_aft) -"HZ" = ( -/obj/machinery/computer/ship/navigation{ - dir = 1 - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 + dir = 4 + }, +/obj/item/modular_computer/console/preset/medical{ + dir = 8 }, -/obj/structure/railing/grey, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/bridge) -"Ia" = ( -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/engine) -"Ib" = ( -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/hallways_aft) -"Id" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"Ig" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ - dir = 4 - }, +"Tx" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/structure/cable/yellow{ d1 = 1; @@ -6167,56 +9110,26 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/engine) -"Ii" = ( -/obj/machinery/atmospherics/portables_connector/fuel{ - dir = 8 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/effect/floor_decal/industrial/outline/red, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"Io" = ( +"TB" = ( /obj/structure/cable/yellow{ d1 = 4; d2 = 8; icon_state = "4-8" }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, /obj/machinery/firealarm/alarms_hidden{ - dir = 1; - pixel_y = -26 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"Ip" = ( -/obj/machinery/power/apc/hyper{ - alarms_hidden = 1; - dir = 4; - name = "VB APC - East"; - pixel_x = 24 + pixel_y = 26 }, /obj/structure/cable/yellow{ + d1 = 2; d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/alarm/alarms_hidden{ - dir = 1; - pixel_y = -26 + icon_state = "2-8" }, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"Is" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, +/area/ship/ert/engineering) +"TD" = ( +/turf/simulated/wall/rshull, +/area/ship/ert/mech_bay) +"TF" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, @@ -6224,121 +9137,17 @@ dir = 4 }, /obj/structure/cable/yellow{ - d1 = 1; + d1 = 4; d2 = 8; - icon_state = "1-8" + icon_state = "4-8" }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"TG" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/mech_bay) -"Iv" = ( -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"Ix" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"IA" = ( -/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, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"IF" = ( -/obj/structure/table/rack/steel, -/obj/effect/floor_decal/industrial/outline, -/obj/item/weapon/hand_labeler, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"IK" = ( -/obj/structure/cable/yellow{ - 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 - }, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"IL" = ( -/obj/structure/table/woodentable, -/obj/item/device/aicard, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/obj/machinery/light_switch{ - dir = 1; - pixel_y = -23 - }, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"IZ" = ( -/obj/structure/table/woodentable, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 8 - }, -/obj/item/weapon/pen{ - pixel_y = 4 - }, -/obj/machinery/firealarm/alarms_hidden{ - dir = 1; - pixel_y = -26 - }, -/obj/item/toy/figure/ert, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"Jb" = ( -/obj/machinery/door/firedoor/border_only, -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_st) -"Jc" = ( -/obj/structure/table/steel_reinforced, -/obj/item/weapon/storage/firstaid/toxin{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/weapon/storage/firstaid/toxin{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/storage/firstaid/o2, -/obj/item/weapon/storage/firstaid/o2{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"Jd" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"Jf" = ( +"TI" = ( /obj/effect/floor_decal/corner/yellow{ dir = 10 }, @@ -6350,79 +9159,86 @@ }, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/hallways) -"Jg" = ( -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/med_surg) -"Jk" = ( -/obj/machinery/door/firedoor/border_only, -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced{ +"TM" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 }, -/obj/structure/window/reinforced{ - dir = 8 - }, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"Jl" = ( -/obj/effect/floor_decal/corner/blue{ +/area/ship/ert/atmos) +"TQ" = ( +/obj/effect/floor_decal/industrial/warning{ dir = 1 }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ +/obj/effect/floor_decal/corner/white{ dir = 8 }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways) -"Js" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways) -"Jw" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/storage/box/handcuffs{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/weapon/storage/box/handcuffs{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/effect/floor_decal/corner/red{ - dir = 4 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/hallways) -"Jx" = ( -/obj/item/device/perfect_tele_beacon/stationary{ - tele_name = "NRB Robineau"; - tele_network = "centcom" - }, -/turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"JB" = ( -/turf/simulated/wall/rshull, -/area/ship/ert/dock_port) -"JE" = ( +/obj/machinery/portable_atmospherics/powered/pump/filled, +/obj/machinery/light/no_nightshift, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, -/obj/effect/floor_decal/industrial/warning/corner, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/hangar) -"JG" = ( +"TR" = ( +/obj/structure/railing/grey, +/obj/structure/railing/grey{ + dir = 4 + }, +/obj/structure/table/steel_reinforced, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"TU" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/firedoor/border_only, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/door/blast/regular/open{ + dir = 4; + id = "braun_blast_shields"; + name = "Blast Shield" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"TW" = ( +/obj/item/device/perfect_tele_beacon/stationary{ + tele_name = "NRV Von Braun Teleporter Room"; + tele_network = "centcom" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/teleporter) +"TZ" = ( +/obj/structure/grille, +/obj/structure/window/titanium/full, +/obj/structure/window/titanium, +/obj/structure/window/titanium{ + dir = 1 + }, +/obj/structure/window/titanium{ + dir = 8 + }, +/obj/machinery/door/firedoor, +/obj/effect/floor_decal/techfloor{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/brig) +"Ue" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"Ug" = ( +/obj/effect/floor_decal/industrial/warning, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"Uk" = ( /obj/structure/cable/green{ d1 = 1; d2 = 2; @@ -6431,7 +9247,523 @@ /obj/effect/floor_decal/industrial/warning, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/engineering) -"JJ" = ( +"Ul" = ( +/obj/effect/floor_decal/industrial/warning, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/teleporter) +"Un" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"Ut" = ( +/obj/machinery/door/blast/shutters{ + density = 0; + dir = 2; + icon_state = "shutter0"; + id = "braun_cells_privacy"; + name = "Privacy Shutters"; + opacity = 0 + }, +/obj/structure/grille, +/obj/structure/window/titanium/full, +/obj/structure/window/titanium{ + dir = 1 + }, +/obj/structure/window/titanium, +/obj/structure/window/titanium{ + dir = 8 + }, +/obj/structure/cable/yellow{ + d2 = 4; + icon_state = "0-4" + }, +/obj/structure/cable/yellow, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/brig) +"Ux" = ( +/obj/machinery/vending/fitness{ + prices = list() + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hallways_aft) +"Uy" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/gun/energy/gun{ + pixel_y = 6 + }, +/obj/item/weapon/gun/energy/gun{ + pixel_y = 4 + }, +/obj/item/weapon/gun/energy/gun{ + pixel_y = 2 + }, +/obj/item/weapon/gun/energy/gun, +/obj/item/weapon/gun/energy/gun{ + pixel_y = -2 + }, +/obj/item/weapon/gun/energy/gun{ + pixel_y = -4 + }, +/obj/effect/floor_decal/industrial/outline/grey, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/armoury_st) +"UD" = ( +/obj/structure/ship_munition/disperser_charge/explosive, +/obj/effect/floor_decal/industrial/warning{ + dir = 5 + }, +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/railing{ + dir = 1 + }, +/turf/simulated/floor/reinforced, +/area/ship/ert/gunnery) +"UE" = ( +/obj/structure/sign/warning/radioactive{ + desc = "WARNING: VON BRAUN PTTOS EMIT RADIATION WHILST OPERATIONAL."; + name = "\improper RADIOACTIVE GENERATORS BEHIND THESE DOORS"; + pixel_x = -16 + }, +/turf/simulated/wall/shull, +/area/ship/ert/engineering) +"UH" = ( +/obj/machinery/alarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"UI" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/wall/rshull, +/area/ship/ert/med) +"UJ" = ( +/obj/machinery/door/blast/shutters{ + density = 0; + dir = 2; + icon_state = "shutter0"; + id = "braun_cells_privacy"; + name = "Privacy Shutters"; + opacity = 0 + }, +/obj/structure/grille, +/obj/structure/window/titanium/full, +/obj/structure/window/titanium{ + dir = 1 + }, +/obj/structure/window/titanium, +/obj/structure/cable/yellow{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/brig) +"UK" = ( +/obj/structure/hull_corner/long_horiz{ + dir = 5 + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/engine) +"UN" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + dir = 4; + name = "VB APC - East"; + pixel_x = 24 + }, +/obj/structure/cable/yellow{ + d2 = 2; + icon_state = "0-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/cable/yellow{ + d2 = 4; + dir = 4; + icon_state = "0-4" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"UT" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_dl) +"UU" = ( +/obj/machinery/door/window/brigdoor/northleft{ + req_access = list(150); + req_one_access = list(150) + }, +/obj/machinery/door/firedoor/glass, +/obj/effect/floor_decal/industrial/hatch/yellow, +/turf/simulated/floor/tiled/techfloor/grid, +/area/ship/ert/brig) +"UY" = ( +/obj/structure/table/rack, +/obj/item/weapon/rig/ert, +/obj/item/weapon/cell/slime, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"Vc" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"Vd" = ( +/obj/structure/window/reinforced, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/ert_ship_boat) +"Vf" = ( +/obj/effect/floor_decal/industrial/warning, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"Vg" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways) +"Vh" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"Vn" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_dl) +"Vp" = ( +/obj/machinery/computer/ship/engines{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engineering) +"Vq" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/mech_bay) +"Vx" = ( +/obj/machinery/light/no_nightshift{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"VC" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Armoury"; + req_one_access = list(103) + }, +/obj/machinery/door/firedoor/multi_tile{ + dir = 1 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_st) +"VH" = ( +/obj/structure/table/steel_reinforced, +/obj/machinery/recharger, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_st) +"VI" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/floor_decal/corner/red{ + dir = 1 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"VJ" = ( +/obj/structure/cable/yellow{ + 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/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/med) +"VK" = ( +/obj/structure/hull_corner{ + dir = 1 + }, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/med) +"VN" = ( +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/gunnery) +"VO" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/bridge) +"VQ" = ( +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/bridge) +"Wh" = ( +/obj/structure/closet/crate{ + dir = 1 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/item/weapon/plastique, +/obj/item/weapon/plastique, +/obj/item/weapon/plastique, +/obj/item/weapon/plastique, +/obj/effect/floor_decal/industrial/outline/red, +/obj/item/weapon/plastique, +/obj/item/weapon/plastique, +/obj/item/weapon/plastique, +/obj/item/weapon/plastique, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_dl) +"Wl" = ( +/obj/structure/sign/department/medbay, +/turf/simulated/wall/shull, +/area/ship/ert/med) +"Wq" = ( +/turf/simulated/wall/rshull, +/area/ship/ert/commander) +"Wu" = ( +/obj/structure/closet/crate{ + dir = 1 + }, +/obj/effect/floor_decal/industrial/outline/red, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_st) +"Wv" = ( +/obj/effect/shuttle_landmark/premade/ert_ship_near_star, +/turf/space, +/area/space) +"WA" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_dl) +"WC" = ( +/turf/simulated/floor/reinforced, +/area/ship/ert/hangar) +"WE" = ( +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/airlock/glass_security{ + name = "Armoury"; + req_one_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_st) +"WF" = ( +/obj/structure/hull_corner{ + dir = 8 + }, +/turf/simulated/shuttle/plating/airless/carry, +/area/shuttle/ert_ship_boat) +"WH" = ( +/obj/structure/closet/wardrobe/ert, +/obj/item/modular_computer/tablet/preset/custom_loadout/elite, +/obj/item/weapon/storage/box/survival/comp{ + starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi) + }, +/obj/effect/floor_decal/industrial/outline/grey, +/obj/item/modular_computer/laptop/preset/custom_loadout/elite, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"WJ" = ( +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hangar) +"WK" = ( +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"WO" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"WP" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/ert_ship_boat) +"WS" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/bed/chair/bay/chair/padded/blue{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engineering) +"WT" = ( +/obj/machinery/door/firedoor/glass, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/blast/regular/open{ + dir = 2; + id = "ERT_Blast_Windows"; + name = "Blast Shield" + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/shield_diffuser, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/ert_ship_boat) +"WV" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, +/obj/effect/landmark{ + name = "Commando" + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/barracks) +"WW" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"WX" = ( +/obj/machinery/recharge_station, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/atmos) +"WZ" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"Xg" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engineering) +"Xh" = ( +/obj/machinery/door/blast/shutters{ + density = 0; + icon_state = "shutter0"; + id = "braun_cells_privacy"; + name = "Privacy Shutters"; + opacity = 0 + }, +/obj/structure/grille, +/obj/structure/window/titanium/full, +/obj/structure/window/titanium{ + dir = 1 + }, +/obj/structure/window/titanium, +/obj/structure/cable/yellow{ + d2 = 4; + icon_state = "0-4" + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/brig) +"Xo" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/med) +"Xu" = ( +/obj/machinery/power/smes/buildable/point_of_interest, +/obj/structure/cable/yellow, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engineering) +"Xv" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 9 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_dl) +"Xw" = ( +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/mech_bay) +"Xz" = ( /obj/structure/cable/yellow{ d1 = 1; d2 = 2; @@ -6443,1181 +9775,88 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/dock_star) -"JM" = ( -/obj/structure/cable/yellow{ - 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/techmaint, -/area/ship/ert/barracks) -"JN" = ( -/obj/structure/bed/chair/bay/shuttle, -/turf/simulated/floor/tiled/techfloor, -/area/shuttle/ert_ship_boat) -"JW" = ( -/obj/machinery/light/no_nightshift, -/obj/machinery/atmospherics/unary/engine{ - dir = 4 - }, -/turf/space, -/area/ship/ert/engine) -"JX" = ( -/obj/structure/cable/yellow{ - 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/border_only, -/obj/machinery/door/airlock/glass{ - req_one_access = list(103) - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"JY" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/fuel, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"JZ" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/gun/projectile/heavysniper, -/obj/item/ammo_magazine/ammo_box/b145, -/obj/item/ammo_magazine/ammo_box/b145, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/machinery/alarm/alarms_hidden{ +"XB" = ( +/obj/structure/table/steel_reinforced, +/turf/simulated/floor/tiled/techfloor/grid, +/area/ship/ert/brig) +"XG" = ( +/turf/simulated/wall/rshull, +/area/ship/ert/eng_storage) +"XH" = ( +/obj/machinery/firealarm/alarms_hidden{ dir = 1; pixel_y = -26 }, -/obj/machinery/light/no_nightshift, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_dl) -"Kb" = ( -/obj/structure/railing/grey{ - dir = 4 - }, -/obj/structure/railing/grey{ - dir = 1 - }, -/obj/item/weapon/paper/vonbraun_shields, -/obj/structure/table/steel_reinforced, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"Kf" = ( -/obj/machinery/computer/teleporter{ - dir = 1 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/teleporter) -"Kj" = ( -/obj/machinery/power/pointdefense{ - id_tag = "vonbraun_pd" - }, -/obj/structure/cable/yellow{ - d2 = 4; - icon_state = "0-4" - }, +/area/ship/ert/engine) +"XM" = ( /turf/simulated/floor/reinforced/airless, -/area/ship/ert/engine) -"Kk" = ( -/obj/effect/landmark/late_antag/ert, -/obj/structure/table/bench/steel, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"Kq" = ( -/obj/machinery/light/no_nightshift{ - dir = 4 - }, -/obj/machinery/atmospherics/portables_connector/fuel{ - dir = 8 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/effect/floor_decal/industrial/outline/red, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"Kr" = ( -/obj/machinery/light/no_nightshift{ - dir = 4 - }, -/obj/effect/floor_decal/corner/yellow{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techmaint, /area/ship/ert/hallways_aft) -"Ks" = ( -/obj/machinery/door/airlock/centcom{ - name = "Commander"; - req_access = list(103) - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/door/firedoor/border_only, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/commander) -"Kt" = ( -/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, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_star) -"Kw" = ( -/obj/structure/sign/department/eng, -/turf/simulated/wall/rshull, -/area/ship/ert/bridge) -"KB" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/firedoor/border_only, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"KG" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -4; - pixel_y = -6 - }, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -4; - pixel_y = -2 - }, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = -4; - pixel_y = 2 - }, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = -4; - pixel_y = 6 - }, -/obj/item/weapon/storage/briefcase/inflatable{ - pixel_x = 4; - pixel_y = -6 - }, -/obj/item/weapon/storage/briefcase/inflatable{ - pixel_x = 4; - pixel_y = -2 - }, -/obj/item/weapon/storage/briefcase/inflatable{ - pixel_x = 4; - pixel_y = 2 - }, -/obj/item/weapon/storage/briefcase/inflatable{ - pixel_x = 4; - pixel_y = 6 - }, -/obj/effect/floor_decal/industrial/outline/yellow, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"KI" = ( -/turf/simulated/wall/shull, -/area/ship/ert/med) -"KJ" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/structure/railing/grey{ - dir = 1 - }, -/obj/structure/table/steel_reinforced, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"KK" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/simulated/wall/rshull, -/area/ship/ert/engine) -"KM" = ( -/obj/structure/bed/chair/bay/chair/padded/blue{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"KN" = ( -/obj/structure/closet/wardrobe/ert, -/obj/item/modular_computer/tablet/preset/custom_loadout/elite, -/obj/item/weapon/storage/box/survival/comp{ - starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi) - }, -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/modular_computer/laptop/preset/custom_loadout/elite, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"KO" = ( -/obj/machinery/vending/tool, -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"KS" = ( -/obj/machinery/door/airlock/centcom{ - name = "Reactor Access"; - req_access = list(103) - }, -/obj/structure/cable/green{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/door/blast/regular/open{ - dir = 4; - id = "VB_Rear_Blast"; - name = "Blast Shield" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engineering) -"KT" = ( -/obj/structure/table/steel_reinforced, -/obj/item/stack/cable_coil, -/obj/item/stack/cable_coil, -/obj/item/stack/cable_coil, -/obj/item/stack/cable_coil, -/obj/item/stack/cable_coil, -/obj/item/stack/cable_coil, -/obj/item/weapon/grenade/chem_grenade/metalfoam, -/obj/item/weapon/grenade/chem_grenade/metalfoam, -/obj/item/weapon/grenade/chem_grenade/metalfoam, -/obj/item/weapon/grenade/chem_grenade/metalfoam, -/obj/item/weapon/grenade/chem_grenade/metalfoam, -/obj/item/weapon/grenade/chem_grenade/metalfoam, -/obj/machinery/light/no_nightshift, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"KW" = ( -/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, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"La" = ( -/obj/item/modular_computer/console/preset/ert{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"Lg" = ( -/obj/structure/table/rack/steel, -/obj/item/taperoll/engineering{ - pixel_x = -6; - pixel_y = -6 - }, -/obj/item/taperoll/engineering{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/taperoll/engineering{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/taperoll/engineering{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/effect/floor_decal/industrial/outline/yellow, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"Lh" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, +"XN" = ( /obj/structure/cable/yellow{ d1 = 4; d2 = 8; icon_state = "4-8" }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) -"Lk" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/material/knife/tacknife/combatknife{ - pixel_x = -7 - }, -/obj/item/weapon/material/knife/tacknife/combatknife{ - pixel_x = -4 - }, -/obj/item/weapon/material/knife/tacknife/combatknife{ - pixel_x = -1 - }, -/obj/item/weapon/material/knife/tacknife/combatknife{ - pixel_x = 2 - }, -/obj/item/weapon/material/knife/tacknife/combatknife{ - pixel_x = 5 - }, -/obj/item/weapon/material/knife/tacknife/combatknife{ - pixel_x = 8 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/hallways) -"Lm" = ( -/obj/machinery/ntnet_relay, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/atmos) -"Lq" = ( -/obj/structure/table/rack/steel, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/weapon/gun/energy/locked/frontier/holdout/unlocked{ - pixel_y = 6 - }, -/obj/item/weapon/gun/energy/locked/frontier/holdout/unlocked{ - pixel_y = 4 - }, -/obj/item/weapon/gun/energy/locked/frontier/holdout/unlocked{ - pixel_y = 2 - }, -/obj/item/weapon/gun/energy/locked/frontier/holdout/unlocked, -/obj/item/weapon/gun/energy/locked/frontier/holdout/unlocked{ - pixel_y = -2 - }, -/obj/item/weapon/gun/energy/locked/frontier/holdout/unlocked{ - pixel_y = -4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_st) -"LA" = ( -/obj/structure/table/rack/steel, -/obj/item/ammo_magazine/ammo_box/b12g/pellet, -/obj/item/ammo_magazine/ammo_box/b12g/pellet, -/obj/item/ammo_magazine/ammo_box/b12g, -/obj/item/ammo_magazine/ammo_box/b12g, -/obj/item/ammo_magazine/ammo_box/b12g/emp, -/obj/item/ammo_magazine/ammo_box/b12g/flash, -/obj/item/ammo_magazine/ammo_box/b12g/beanbag, -/obj/item/ammo_magazine/ammo_box/b12g/beanbag, -/obj/item/ammo_magazine/ammo_box/b12g/stunshell, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/weapon/gun/projectile/shotgun/pump/combat{ - pixel_y = 3 - }, -/obj/item/weapon/gun/projectile/shotgun/pump/combat{ - pixel_y = -3 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_st) -"LB" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, +/obj/machinery/door/firedoor/multi_tile{ + dir = 1 + }, +/obj/machinery/door/airlock/multi_tile/glass{ + dir = 1; + req_one_access = list(103) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/med) +"XQ" = ( +/obj/structure/table/steel_reinforced, +/obj/machinery/chemical_dispenser/ert, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/med) +"XS" = ( /obj/structure/cable/yellow{ d1 = 2; d2 = 8; icon_state = "2-8" }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"LC" = ( -/obj/structure/table/rack/steel, -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/machinery/firealarm/alarms_hidden{ +/obj/machinery/alarm/alarms_hidden{ pixel_y = 26 }, -/obj/item/weapon/gun/energy/laser{ - pixel_y = 6 - }, -/obj/item/weapon/gun/energy/laser{ - pixel_y = 4 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/weapon/gun/energy/laser{ - pixel_y = 2 - }, -/obj/item/weapon/gun/energy/laser, -/obj/item/weapon/gun/energy/laser{ - pixel_y = -2 - }, -/obj/item/weapon/gun/energy/laser{ - pixel_y = -4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_st) -"LH" = ( -/obj/machinery/shield_gen/external, -/obj/effect/floor_decal/corner/white, -/obj/effect/floor_decal/industrial/outline/blue, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"LJ" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"LM" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/wall/rshull, -/area/ship/ert/med) -"LR" = ( -/obj/machinery/door/airlock/external, -/obj/effect/map_helper/airlock/door/ext_door, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_port) -"LV" = ( -/obj/structure/table/steel_reinforced, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/unary/vent_pump/on, -/obj/machinery/button/remote/blast_door{ - description_fluff = "\\(OOC) DO NOT TOUCH THIS BUTTON WITHOUT THE EXPLICIT PERMISSION OF AN ADMINISTRATOR."; - dir = 1; - id = "NRV_DELTA"; - name = "DELTA ACCESS CONTROL"; - req_one_access = list(108) - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_dl) -"LX" = ( -/obj/structure/hull_corner/long_horiz{ - dir = 6 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/hallways_aft) -"LZ" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"Mb" = ( -/obj/machinery/computer/operating{ - dir = 1 - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"Md" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/gun/energy/taser{ - pixel_y = 3 - }, -/obj/item/weapon/gun/energy/taser{ - pixel_y = 1 - }, -/obj/item/weapon/gun/energy/taser{ - pixel_y = -1 - }, -/obj/item/weapon/gun/energy/taser{ - pixel_y = -3 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_st) -"Me" = ( -/obj/structure/table/rack/steel, -/obj/item/ammo_magazine/ammo_box/b12g/pellet, -/obj/item/ammo_magazine/ammo_box/b12g/pellet, -/obj/item/ammo_magazine/ammo_box/b12g, -/obj/item/ammo_magazine/ammo_box/b12g, -/obj/item/ammo_magazine/ammo_box/b12g/emp, -/obj/item/ammo_magazine/ammo_box/b12g/flash, -/obj/item/ammo_magazine/ammo_box/b12g/beanbag, -/obj/item/ammo_magazine/ammo_box/b12g/beanbag, -/obj/item/ammo_magazine/ammo_box/b12g/stunshell, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/weapon/gun/projectile/automatic/as24{ - pixel_y = 3 - }, -/obj/item/weapon/gun/projectile/automatic/as24{ - pixel_y = -3 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_dl) -"Mm" = ( -/turf/simulated/wall/rshull, -/area/ship/ert/teleporter) -"Ms" = ( -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/teleporter) -"Mt" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/gun/energy/netgun{ - pixel_y = -4 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/weapon/gun/energy/sniperrifle{ - battery_lock = 0; - pixel_y = 6 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_st) -"Mv" = ( -/obj/item/device/perfect_tele_beacon/stationary{ - tele_name = "NRV Von Braun Teleporter Room"; - tele_network = "centcom" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/teleporter) -"Mx" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/effect/floor_decal/corner/white, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"My" = ( -/obj/structure/cable/green{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/power/apc/hyper{ - alarms_hidden = 1; - dir = 4; - name = "VB APC - East"; - pixel_x = 24 - }, -/obj/structure/cable/green{ - d2 = 8; - icon_state = "0-8" - }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/engineering) -"MC" = ( -/obj/structure/sink{ - dir = 4; - pixel_x = 12; - pixel_y = 8 - }, -/obj/structure/medical_stand, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"MD" = ( -/obj/effect/floor_decal/corner/red{ - dir = 1 - }, -/obj/structure/reagent_dispensers/watertank/high, -/obj/effect/floor_decal/industrial/outline/blue, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"MK" = ( -/obj/structure/sign/nosmoking_1, -/turf/simulated/wall/rshull, -/area/ship/ert/engine) -"ML" = ( -/obj/machinery/door/blast/regular/open{ - id = "ERT_Shuttle_Rear"; - name = "Boarding Hatch" - }, -/turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"MQ" = ( +"XU" = ( /obj/effect/floor_decal/corner/white{ - dir = 6 - }, -/obj/structure/cable/yellow{ - 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/techmaint, -/area/ship/ert/eng_storage) -"MT" = ( -/turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"MU" = ( -/obj/structure/window/reinforced, -/turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"MZ" = ( -/turf/simulated/wall/rshull, -/area/ship/ert/med_surg) -"Na" = ( -/obj/machinery/door/firedoor/border_only, -/obj/machinery/door/airlock/glass{ - req_one_access = list(103) - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_port) -"Nb" = ( -/obj/structure/cable/green{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engineering) -"Nd" = ( -/obj/effect/floor_decal/corner/white{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"Nf" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"Ng" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 4 - }, -/obj/machinery/button/remote/blast_door{ - id = "ERT_Shuttle_Fore"; - name = "ERT Deployment Access"; - pixel_y = 24; - req_access = list(103) - }, -/turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"Nk" = ( -/obj/machinery/power/pointdefense{ - id_tag = "vonbraun_pd" - }, -/obj/machinery/light/no_nightshift{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d2 = 4; - icon_state = "0-4" - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/engine) -"Np" = ( -/obj/machinery/light/no_nightshift{ - dir = 8 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"Nq" = ( -/obj/structure/cable/yellow{ - d2 = 2; - icon_state = "0-2" - }, -/obj/machinery/power/apc/hyper{ - alarms_hidden = 1; - dir = 8; - name = "VB APC - West"; - pixel_x = -24 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/gunnery) -"Nu" = ( -/obj/structure/hull_corner/long_horiz{ - dir = 6 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/engine) -"Nz" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/obj/machinery/portable_atmospherics/powered/scrubber, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"NH" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/fuel, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/effect/catwalk_plated/techfloor, -/turf/simulated/floor/plating, -/area/ship/ert/engine) -"NI" = ( -/obj/structure/table/rack, -/obj/item/weapon/storage/secure/briefcase/nsfw_pack_hybrid, -/obj/item/weapon/storage/belt/explorer/pathfinder{ - name = "ERT belt" - }, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"NJ" = ( -/obj/machinery/optable, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"NP" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/binary/pump/fuel/on, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"NR" = ( -/obj/machinery/light/no_nightshift, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/engineering) -"NU" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_dl) -"NY" = ( -/obj/machinery/door/airlock/glass_command{ - req_one_access = list(103) - }, -/obj/structure/cable/yellow{ - 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/border_only, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"NZ" = ( -/obj/structure/cable/yellow{ - 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/techmaint, -/area/ship/ert/engineering) -"Oa" = ( -/obj/machinery/door/airlock/glass_engineering{ - name = "Engineering"; - req_access = list(103) - }, -/obj/structure/cable/yellow{ - 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/border_only, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/engineering) -"Of" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/fuel, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"Og" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/effect/floor_decal/corner/yellow{ - dir = 9 - }, -/obj/structure/cable/yellow{ - 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/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways_aft) -"Oh" = ( -/obj/structure/cable/yellow{ - 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/border_only, -/obj/machinery/door/airlock/glass{ - req_one_access = list(103) - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways_aft) -"Oi" = ( -/obj/structure/cable/yellow{ - 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/techmaint, -/area/ship/ert/bridge) -"Ok" = ( -/obj/effect/floor_decal/industrial/warning, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/embedded_controller/radio/simple_docking_controller{ - id_tag = "ert_boarding_shuttle_dock"; - pixel_y = 22 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"Om" = ( -/obj/machinery/power/pointdefense{ - id_tag = "vonbraun_pd" - }, -/obj/structure/cable/yellow{ - d2 = 2; - icon_state = "0-2" - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/gunnery) -"On" = ( -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_dl) -"Oq" = ( -/obj/machinery/light/no_nightshift{ - dir = 8 + dir = 10 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 6 }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways_aft) -"Ox" = ( -/obj/structure/cable/green{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/hangar) +"XW" = ( +/turf/simulated/wall/rshull, /area/ship/ert/engineering) -"Oy" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" +"XX" = ( +/turf/simulated/wall/rshull, +/area/ship/ert/brig) +"XZ" = ( +/obj/machinery/door/airlock/external, +/obj/machinery/airlock_sensor/airlock_exterior{ + pixel_x = 24; + pixel_y = -11 }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, -/obj/effect/catwalk_plated/techmaint, -/turf/simulated/floor/plating, -/area/ship/ert/bridge) -"OA" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) -"OE" = ( -/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/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, -/obj/effect/catwalk_plated/techmaint, -/turf/simulated/floor/plating, -/area/ship/ert/bridge) -"OF" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"OH" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/effect/map_helper/airlock/door/ext_door, +/obj/effect/map_helper/airlock/sensor/ext_sensor, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engineering) -"OM" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/obj/machinery/light/no_nightshift{ - dir = 8 - }, -/obj/machinery/porta_turret/stationary/CIWS, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/gunnery) -"ON" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/gunnery) -"OO" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/gun/energy/sniperrifle{ - battery_lock = 0; - pixel_y = -3 - }, -/obj/item/weapon/gun/energy/sniperrifle{ - battery_lock = 0; - pixel_y = 3 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_dl) -"OR" = ( -/obj/effect/floor_decal/corner/red{ - dir = 6 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways) -"OS" = ( -/obj/structure/bed/chair/bay/comfy/captain{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"OT" = ( -/obj/machinery/computer/ship/helm{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"OU" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/effect/landmark{ - name = "Commando" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"OW" = ( +/area/ship/ert/dock_star) +"Yd" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, @@ -7634,20 +9873,221 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/bridge) -"OX" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ +"Ye" = ( +/turf/simulated/wall/rshull, +/area/ship/ert/dock_port) +"Yf" = ( +/obj/machinery/atmospherics/pipe/simple/visible{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ +/obj/machinery/meter, +/obj/machinery/power/apc/hyper{ + alarms_hidden = 1; + name = "VB APC - South"; + pixel_y = -24 + }, +/obj/structure/cable/yellow, +/obj/machinery/light/small{ dir = 4 }, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"OY" = ( -/obj/effect/shuttle_landmark/premade/ert_ship_star, -/turf/space, -/area/space) -"OZ" = ( +/area/ship/ert/dock_star) +"Yk" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/barracks) +"Ys" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/hallways_aft) +"Yt" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/teleporter) +"Yu" = ( +/obj/effect/floor_decal/corner/blue{ + dir = 8 + }, +/obj/structure/cable/yellow{ + 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/techmaint, +/area/ship/ert/hallways) +"Yv" = ( +/obj/machinery/power/port_gen/pacman/super/potato, +/obj/structure/cable/green, +/obj/machinery/light/no_nightshift, +/obj/effect/decal/cleanable/greenglow, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engineering) +"Yx" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/teleporter) +"YC" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/med) +"YK" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"YN" = ( +/obj/machinery/door/airlock/centcom{ + name = "Reactor Access"; + req_access = list(103) + }, +/obj/structure/cable/green{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/blast/regular/open{ + dir = 4; + id = "VB_Rear_Blast"; + name = "Blast Shield" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engineering) +"YO" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 10 + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"YP" = ( +/obj/machinery/atmospherics/portables_connector/fuel{ + dir = 8 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/floor_decal/industrial/outline/red, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"YR" = ( +/obj/machinery/shipsensors, +/turf/simulated/floor/reinforced/airless, +/area/ship/ert/engineering) +"YS" = ( +/obj/machinery/sleep_console, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"YU" = ( +/obj/structure/table/rack, +/obj/item/weapon/storage/backpack/ert/commander, +/obj/item/clothing/suit/space/void/responseteam/command, +/obj/item/clothing/head/helmet/ert/command, +/obj/item/clothing/suit/armor/vest/ert/command, +/turf/simulated/floor/wood, +/area/ship/ert/commander) +"YW" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_dl) +"YX" = ( +/obj/machinery/vending/wallmed1/public{ + dir = 4; + pixel_x = -23 + }, +/obj/structure/table/steel_reinforced, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/brig) +"YZ" = ( +/obj/structure/closet/crate/freezer, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/machinery/light_switch{ + dir = 1; + pixel_y = -23 + }, +/obj/effect/floor_decal/industrial/outline, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) +"Za" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/ert_ship_boat) +"Zb" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/engine) +"Zc" = ( /obj/structure/table/standard, /obj/item/weapon/soap{ pixel_x = -6; @@ -7691,1374 +10131,36 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/med) -"Pc" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/door/firedoor/border_only, -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"Pe" = ( -/obj/machinery/button/remote/blast_door{ - dir = 1; - id = "ERT_Shuttle_Rear"; - name = "ERT Shuttle Access"; - pixel_y = -25; - req_access = list(103) - }, -/obj/machinery/door/blast/regular/open{ - id = "ERT_Shuttle_Rear"; - name = "Boarding Hatch" - }, -/turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"Pl" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/blast/regular{ - closed_layer = 4; - dir = 4; - id = "NRV_DELTA"; - layer = 4 - }, -/obj/machinery/door/firedoor, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_dl) -"Pn" = ( -/obj/item/modular_computer/console/preset/engineering{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"Pq" = ( -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"Pw" = ( -/obj/machinery/shipsensors{ - dir = 1 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/atmos) -"Px" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/wall/shull, -/area/ship/ert/mech_bay) -"Py" = ( -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/machinery/porta_turret/stationary/CIWS, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/med) -"PA" = ( -/obj/machinery/recharge_station, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"PC" = ( -/obj/machinery/door/blast/regular{ - dir = 4; - id = "NRV_DELTA" - }, -/obj/machinery/door/firedoor, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_dl) -"PD" = ( -/obj/structure/sign/department/medbay{ - name = "MEDICAL OUTFITTING & SUPPLIES" - }, -/turf/simulated/wall/shull, -/area/ship/ert/med) -"PE" = ( -/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/machinery/atmospherics/pipe/manifold/hidden/supply, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, -/obj/effect/catwalk_plated/techmaint, -/turf/simulated/floor/plating, -/area/ship/ert/eng_storage) -"PG" = ( -/obj/machinery/alarm/alarms_hidden{ - dir = 1; - pixel_y = -26 - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"PH" = ( -/obj/machinery/power/smes/buildable/point_of_interest, -/obj/structure/cable/yellow, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engineering) -"PO" = ( -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/gunnery) -"PP" = ( -/obj/machinery/porta_turret/stationary/CIWS, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/engineering) -"PS" = ( -/obj/machinery/shield_capacitor, +"Zi" = ( +/obj/machinery/shieldwallgen, /obj/effect/floor_decal/industrial/outline/blue, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/eng_storage) -"PX" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/teleporter) -"Qc" = ( -/obj/machinery/power/apc/hyper{ - alarms_hidden = 1; - dir = 8; - name = "VB APC - West"; - pixel_x = -24 - }, -/obj/structure/cable/yellow{ - d2 = 2; - icon_state = "0-2" - }, -/obj/machinery/light/no_nightshift{ - dir = 8 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"Qh" = ( -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/machinery/alarm/alarms_hidden{ - pixel_y = 26 - }, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"Ql" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/obj/machinery/alarm/alarms_hidden{ - pixel_y = 26 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_star) -"Qz" = ( -/obj/item/weapon/circuitboard/aiupload, -/obj/item/weapon/circuitboard/borgupload, -/obj/item/weapon/circuitboard/smes, -/obj/item/weapon/aiModule/nanotrasen, -/obj/item/weapon/aiModule/reset, -/obj/item/weapon/aiModule/freeformcore, -/obj/item/weapon/aiModule/protectStation, -/obj/item/weapon/aiModule/quarantine, -/obj/item/weapon/aiModule/paladin, -/obj/item/weapon/aiModule/robocop, -/obj/item/weapon/aiModule/safeguard, -/obj/structure/table/steel_reinforced, -/obj/item/weapon/smes_coil, -/obj/item/weapon/smes_coil, -/obj/item/device/t_scanner/advanced{ - pixel_x = -3 - }, -/obj/item/device/t_scanner/advanced{ - pixel_x = 3 - }, -/obj/machinery/power/apc/hyper{ - alarms_hidden = 1; - name = "VB APC - South"; - pixel_y = -24 - }, -/obj/structure/cable/yellow, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"QE" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 4 - }, -/turf/simulated/floor/reinforced, -/area/ship/ert/hangar) -"QM" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_dl) -"QP" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"QR" = ( -/obj/effect/floor_decal/industrial/outline/yellow, -/turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"QS" = ( -/obj/structure/bed/chair/bay/shuttle{ - dir = 4 - }, -/obj/machinery/button/remote/blast_door{ - dir = 8; - id = "ERT_Blast_Windows"; - name = "Emergency Blast Shields"; - pixel_x = 55; - req_one_access = list(101) - }, -/turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"QT" = ( -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) -"QV" = ( -/obj/structure/hull_corner{ - dir = 1 - }, -/turf/simulated/shuttle/plating/airless/carry, -/area/shuttle/ert_ship_boat) -"QX" = ( -/obj/structure/window/reinforced, -/obj/machinery/computer/shuttle_control/explore/ert_ship_boat{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"QY" = ( -/obj/structure/table/rack, -/obj/item/weapon/rig/ert, -/obj/item/weapon/cell/slime, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"QZ" = ( -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"Rc" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 4 - }, -/obj/effect/shuttle_landmark/shuttle_initializer/ert_ship_boat, -/turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"Rd" = ( -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/engineering) -"Rh" = ( -/obj/machinery/door/airlock/glass_external, -/obj/effect/map_helper/airlock/door/int_door, -/obj/machinery/door/firedoor/multi_tile, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_star) -"Rt" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"Rv" = ( -/obj/machinery/door/firedoor/multi_tile{ - dir = 1 - }, -/obj/machinery/door/airlock/glass_medical{ - name = "Medical Bay"; - req_access = list(103) - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"Rw" = ( -/obj/machinery/vending/security, -/turf/simulated/floor/tiled/techfloor, +"Zo" = ( +/turf/simulated/wall/rshull, /area/ship/ert/barracks) -"Rz" = ( -/obj/machinery/door/airlock/glass_security{ - req_one_access = list(103) - }, -/obj/machinery/door/blast/regular{ - id = "NRV_DELTA" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/door/firedoor/multi_tile{ - dir = 1 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_dl) -"RB" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"RC" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"RO" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ - dir = 9 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"RQ" = ( -/obj/machinery/door/airlock/glass_engineering{ - name = "Engineering"; - req_access = list(103) - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/door/firedoor/border_only, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/engineering) -"RS" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/door/firedoor/border_only, -/obj/machinery/door/airlock/highsecurity{ - name = "Teleporter Chamber"; - req_one_access = list(103) - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/teleporter) -"Sc" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engineering) -"Sh" = ( -/obj/machinery/door/airlock/glass_medical{ - name = "Medical Bay"; - req_access = list(103) - }, -/obj/machinery/door/firedoor/border_only, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med_surg) -"Sj" = ( -/obj/machinery/light_switch{ - dir = 4; - pixel_x = -23 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"Sl" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/obj/structure/railing/grey, -/obj/structure/table/steel_reinforced, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"Sp" = ( -/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/effect/catwalk_plated/techmaint, -/turf/simulated/floor/plating, -/area/ship/ert/med) -"Sr" = ( -/obj/machinery/light/no_nightshift, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/barracks) -"St" = ( -/obj/structure/table/rack/steel, -/obj/item/device/flash{ - pixel_x = -4; - pixel_y = -4 - }, -/obj/item/device/flash{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/device/flash, -/obj/item/device/flash{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/device/flash{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/device/flash{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/hallways) -"Sx" = ( -/obj/structure/table/rack/steel, -/obj/item/ammo_magazine/m9mmp90{ - pixel_x = 12 - }, -/obj/item/ammo_magazine/m9mmp90{ - pixel_x = 10 - }, -/obj/item/ammo_magazine/m9mmp90{ - pixel_x = 8 - }, -/obj/item/ammo_magazine/m9mmp90{ - pixel_x = 6 - }, -/obj/item/ammo_magazine/m9mmp90{ - pixel_x = 4 - }, -/obj/item/ammo_magazine/m9mmp90{ - pixel_x = 2 - }, -/obj/item/ammo_magazine/m9mmp90, -/obj/item/ammo_magazine/m9mmp90{ - pixel_x = -2 - }, -/obj/item/ammo_magazine/m9mmp90{ - pixel_x = -4 - }, -/obj/item/ammo_magazine/m9mmp90{ - pixel_x = -6 - }, -/obj/item/ammo_magazine/m9mmp90{ - pixel_x = -8 - }, -/obj/item/ammo_magazine/m9mmp90{ - pixel_x = -10 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/obj/item/weapon/gun/projectile/automatic/p90{ - pixel_y = -6 - }, -/obj/item/weapon/gun/projectile/automatic/p90{ - pixel_y = -2 - }, -/obj/item/weapon/gun/projectile/automatic/p90{ - pixel_y = 2 - }, -/obj/item/weapon/gun/projectile/automatic/p90{ - pixel_y = 6 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_dl) -"Sy" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/gun/projectile/automatic/l6_saw{ - pixel_y = 3 - }, -/obj/item/weapon/gun/projectile/automatic/l6_saw{ - pixel_y = -3 - }, -/obj/item/ammo_magazine/m545saw{ - pixel_x = 6 - }, -/obj/item/ammo_magazine/m545saw{ - pixel_x = 2 - }, -/obj/item/ammo_magazine/m545saw{ - pixel_x = -2 - }, -/obj/item/ammo_magazine/m545saw{ - pixel_x = -6 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_dl) -"Sz" = ( +"Zv" = ( /turf/simulated/wall/rshull, /area/ship/ert/dock_star) -"SA" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/power/apc/hyper{ - alarms_hidden = 1; - dir = 4; - name = "VB APC - East"; - pixel_x = 24 - }, -/obj/structure/cable/yellow{ - d2 = 2; - icon_state = "0-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/cable/yellow{ - d2 = 4; - dir = 4; - icon_state = "0-4" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways_aft) -"SB" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"SD" = ( -/obj/structure/table/rack, -/obj/item/ammo_magazine/m44{ - pixel_x = -3 - }, -/obj/item/ammo_magazine/m44{ - pixel_x = 3 - }, -/obj/item/weapon/gun/projectile/deagle, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"SE" = ( -/obj/machinery/light/no_nightshift{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"SF" = ( -/obj/structure/cable/yellow{ - 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/techmaint, -/area/ship/ert/armoury_st) -"SG" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"SI" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/obj/structure/table/steel_reinforced, -/obj/item/weapon/rcd_ammo/large{ - pixel_x = -8; - pixel_y = -8 - }, -/obj/item/weapon/rcd_ammo/large{ - pixel_x = -6; - pixel_y = -6 - }, -/obj/item/weapon/rcd_ammo/large{ - pixel_x = -4; - pixel_y = -4 - }, -/obj/item/weapon/rcd_ammo/large{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/weapon/rcd_ammo/large, -/obj/item/weapon/rcd_ammo/large{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/weapon/rcd_ammo/large{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/weapon/rcd_ammo/large{ - pixel_x = 6; - pixel_y = 6 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"SJ" = ( -/obj/machinery/atmospherics/pipe/simple/visible{ - dir = 5 - }, -/turf/simulated/wall/rshull, -/area/ship/ert/dock_star) -"SN" = ( -/obj/effect/map_helper/airlock/sensor/ext_sensor, -/obj/machinery/airlock_sensor/airlock_exterior{ - dir = 4; - pixel_x = 24; - pixel_y = 24 - }, -/turf/simulated/floor/airless, -/area/ship/ert/gunnery) -"SV" = ( -/obj/structure/table/rack/steel, -/obj/item/weapon/reagent_containers/hypospray{ - pixel_x = 6 - }, -/obj/item/weapon/reagent_containers/hypospray{ - pixel_x = 3 - }, -/obj/item/weapon/reagent_containers/hypospray, -/obj/item/weapon/reagent_containers/hypospray{ - pixel_x = -3 - }, -/obj/machinery/alarm/alarms_hidden{ - pixel_y = 26 - }, -/obj/effect/floor_decal/industrial/outline, -/obj/item/weapon/reagent_containers/hypospray{ - pixel_x = -6 - }, -/obj/item/weapon/reagent_containers/hypospray{ - pixel_x = -9 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"SZ" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/simulated/floor/tiled/techmaint, -/area/shuttle/ert_ship_boat) -"Tl" = ( -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"Tx" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"TB" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engineering) -"TD" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/simulated/wall/rshull, -/area/ship/ert/gunnery) -"TF" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"TG" = ( -/obj/machinery/airlock_sensor{ - dir = 8; - pixel_x = 22; - pixel_y = -24 - }, -/obj/effect/map_helper/airlock/sensor/int_sensor, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/gunnery) -"TI" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_dl) -"TM" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways_aft) -"TR" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/firedoor/border_only, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/door/blast/regular{ - closed_layer = 4; - id = "NRV_DELTA"; - layer = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/armoury_dl) -"TU" = ( -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/med) -"TZ" = ( -/obj/effect/floor_decal/industrial/warning, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/teleporter) -"Ue" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/mech_bay) -"Ul" = ( -/obj/machinery/firealarm/alarms_hidden{ - dir = 1; - pixel_y = -26 - }, -/obj/item/modular_computer/console/preset/medical{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"Un" = ( -/obj/machinery/door/firedoor/border_only, -/obj/machinery/door/airlock/glass{ - req_one_access = list(103) - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_star) -"Ut" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/obj/machinery/alarm/alarms_hidden{ - pixel_y = 26 - }, -/obj/machinery/porta_turret/industrial/teleport_defense, -/obj/effect/floor_decal/industrial/outline/red, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/teleporter) -"UD" = ( -/obj/machinery/disperser/middle{ - dir = 4 - }, -/turf/simulated/floor/airless, -/area/ship/ert/gunnery) -"UH" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_dl) -"UI" = ( -/obj/structure/hull_corner{ - dir = 1 - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/med) -"UJ" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/teleporter) -"UK" = ( -/obj/machinery/power/pointdefense{ - id_tag = "vonbraun_pd" - }, -/obj/structure/cable/yellow, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/engine) -"UN" = ( -/obj/machinery/power/pointdefense{ - id_tag = "vonbraun_pd" - }, -/obj/structure/cable/yellow{ - d2 = 4; - dir = 4; - icon_state = "0-4" - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/med_surg) -"UT" = ( -/obj/machinery/door/airlock/glass_security{ - req_one_access = list(103) - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor/border_only, -/obj/machinery/door/blast/regular{ - closed_layer = 4; - id = "NRV_DELTA"; - layer = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_dl) -"UU" = ( -/obj/machinery/shieldwallgen{ - anchored = 1; - name = "secured shield generator"; - req_access = list(103); - state = 1 - }, -/obj/structure/window/reinforced, -/obj/effect/floor_decal/industrial/warning, -/obj/structure/cable/yellow, -/obj/effect/floor_decal/industrial/outline/blue, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/teleporter) -"UY" = ( -/obj/structure/table/steel_reinforced, -/obj/machinery/chemical_dispenser/full, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"Vg" = ( -/obj/structure/table/steel_reinforced, -/obj/machinery/recharger, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_dl) -"Vm" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/obj/machinery/light_switch{ - pixel_y = 23 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/teleporter) -"Vn" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"Vq" = ( -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/gunnery) -"Vx" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ - dir = 9 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"VC" = ( -/obj/machinery/power/port_gen/pacman/super/potato, -/obj/structure/cable/green, -/obj/machinery/light/no_nightshift, -/obj/effect/decal/cleanable/greenglow, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engineering) -"VH" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/wall/rshull, -/area/ship/ert/mech_bay) -"VJ" = ( -/obj/machinery/door/firedoor/multi_tile{ - dir = 1 - }, -/obj/machinery/door/airlock/glass_medical{ - name = "Medical Bay"; - req_access = list(103) - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) -"VN" = ( -/obj/machinery/disperser/front{ - dir = 4 - }, -/turf/simulated/floor/airless, -/area/ship/ert/gunnery) -"VO" = ( -/obj/effect/floor_decal/corner/blue{ - dir = 8 - }, -/obj/structure/cable/yellow{ - 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/techmaint, -/area/ship/ert/hallways) -"VP" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hallways) -"VQ" = ( -/obj/structure/table/rack/steel, -/obj/effect/floor_decal/corner/red, -/obj/item/device/radio/off{ - pixel_x = -4; - pixel_y = -4 - }, -/obj/item/device/radio/off{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/device/radio/off, -/obj/item/device/radio/off{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/device/radio/off{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/device/radio/off{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/effect/floor_decal/industrial/outline/grey, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/hallways) -"Wa" = ( -/obj/structure/closet/walllocker/emerglocker{ - pixel_y = 32 - }, -/obj/structure/bed/pod, -/obj/item/weapon/bedsheet/blue, -/obj/structure/curtain/open/bed, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"Wj" = ( -/obj/machinery/light/no_nightshift{ - dir = 8 - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/teleporter) -"Wl" = ( -/obj/structure/table/steel_reinforced, -/obj/machinery/light/no_nightshift{ - dir = 1 - }, -/obj/item/device/defib_kit/compact/combat/loaded{ - pixel_y = -3 - }, -/obj/item/device/defib_kit/compact/combat/loaded{ - pixel_y = 3 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) -"Wo" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"Wq" = ( -/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/effect/floor_decal/corner/blue, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"Wu" = ( -/obj/machinery/door/airlock/glass_security{ - req_one_access = list(103) - }, -/obj/machinery/door/firedoor/border_only, -/obj/machinery/door/blast/regular{ - closed_layer = 4; - id = "NRV_DELTA"; - layer = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/armoury_dl) -"Wv" = ( -/obj/effect/shuttle_landmark/premade/ert_ship_near_star, -/turf/space, -/area/space) -"WA" = ( -/obj/effect/floor_decal/corner/red{ - dir = 1 - }, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"WC" = ( -/turf/simulated/floor/reinforced, -/area/ship/ert/hangar) -"WE" = ( -/obj/effect/floor_decal/corner/red{ - dir = 9 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"WF" = ( -/obj/machinery/power/pointdefense{ - id_tag = "vonbraun_pd" - }, -/obj/structure/cable/yellow{ - d2 = 4; - dir = 4; - icon_state = "0-4" - }, -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/med) -"WH" = ( -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/barracks) -"WJ" = ( -/obj/structure/bed/chair/bay/shuttle{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/shuttle/ert_ship_boat) -"WK" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/light_switch{ - dir = 8; - pixel_x = 23 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/dock_star) -"WO" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/fuel, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"WR" = ( -/obj/structure/filingcabinet/filingcabinet, -/turf/simulated/floor/wood, -/area/ship/ert/commander) -"WS" = ( -/obj/machinery/computer/ship/engines{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engineering) -"WV" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/barracks) -"WX" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, -/obj/effect/landmark{ - name = "Commando" - }, -/obj/effect/catwalk_plated/techmaint, -/turf/simulated/floor/plating, -/area/ship/ert/barracks) -"WZ" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/wall/rshull, -/area/ship/ert/engine) -"Xg" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/structure/bed/chair/bay/chair/padded/blue{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engineering) -"Xh" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/obj/machinery/door/window/brigdoor/southright, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/hallways_aft) -"Xo" = ( +"Zw" = ( /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, /turf/simulated/floor/tiled/techmaint, /area/ship/ert/med) -"Xu" = ( -/obj/structure/cable/yellow, -/obj/machinery/power/smes/buildable/point_of_interest, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engineering) -"Xw" = ( -/obj/machinery/button/remote/blast_door{ - dir = 1; - id = "Von_Braun_Cannon"; - name = "Cannon Port Access"; - pixel_y = -24; - req_one_access = list(103) +"Zx" = ( +/obj/effect/floor_decal/corner/white{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/effect/floor_decal/industrial/warning/corner{ + dir = 4 }, /turf/simulated/floor/tiled/techmaint, -/area/ship/ert/gunnery) -"Xx" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/teleporter) -"Xz" = ( -/obj/machinery/shield_capacitor, -/obj/effect/floor_decal/industrial/outline/blue, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"XB" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/teleporter) -"XG" = ( -/turf/simulated/wall/rshull, -/area/ship/ert/eng_storage) -"XH" = ( -/obj/machinery/alarm/alarms_hidden{ - dir = 1; - pixel_y = -26 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"XM" = ( -/obj/effect/map_helper/airlock/sensor/chamber_sensor, -/obj/machinery/airlock_sensor{ - pixel_x = 24 - }, -/obj/effect/floor_decal/industrial/warning, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/dock_star) -"XN" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) -"XS" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/firealarm/alarms_hidden{ - pixel_y = 26 - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engineering) -"XW" = ( -/turf/simulated/wall/rshull, -/area/ship/ert/engineering) -"XX" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/teleporter) -"Yd" = ( -/turf/simulated/wall/rshull, -/area/ship/ert/armoury_dl) -"Ye" = ( -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/barracks) -"Yf" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/simulated/wall/shull, -/area/ship/ert/eng_storage) -"Yk" = ( -/obj/structure/cable/yellow{ - d2 = 2; - icon_state = "0-2" - }, -/obj/machinery/power/apc/hyper{ - alarms_hidden = 1; - dir = 4; - name = "VB APC - East"; - pixel_x = 24 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/mech_bay) -"Yq" = ( +/area/ship/ert/hangar) +"ZC" = ( /obj/machinery/power/apc/hyper{ alarms_hidden = 1; dir = 4; @@ -9076,157 +10178,21 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/teleporter) -"Yr" = ( -/obj/machinery/light/no_nightshift{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/teleporter) -"Ys" = ( -/obj/structure/window/reinforced, -/obj/effect/floor_decal/industrial/warning, -/obj/structure/cable/yellow, -/obj/machinery/shieldwallgen{ - anchored = 1; - name = "secured shield generator"; - req_access = list(103); - state = 1 - }, -/obj/effect/floor_decal/industrial/outline/blue, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/teleporter) -"Yt" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/structure/bed/chair/bay/chair/padded/blue{ - dir = 8 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"Yx" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/bridge) -"YC" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/white, -/area/ship/ert/med_surg) -"YN" = ( -/obj/structure/sign/warning/radioactive{ - desc = "WARNING: VON BRAUN PTTOS EMIT RADIATION WHILST OPERATIONAL."; - name = "\improper RADIOACTIVE GENERATORS BEHIND THESE DOORS"; - pixel_x = -16 - }, -/turf/simulated/wall/shull, -/area/ship/ert/engineering) -"YO" = ( -/obj/structure/hull_corner{ - dir = 1 - }, -/turf/space, -/area/space) -"YP" = ( -/obj/machinery/atmospherics/pipe/manifold/visible/fuel{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/engine) -"YR" = ( -/turf/simulated/floor/reinforced/airless, -/area/ship/ert/engineering) -"YU" = ( -/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/machinery/light/no_nightshift{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"YW" = ( -/obj/structure/shuttle/engine/propulsion{ - dir = 8 - }, -/turf/simulated/floor/reinforced, -/area/shuttle/ert_ship_boat) -"Zi" = ( -/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, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/eng_storage) -"Zo" = ( -/turf/simulated/wall/rshull, -/area/ship/ert/barracks) -"Zv" = ( -/turf/simulated/floor/tiled/techfloor, -/area/ship/ert/eng_storage) -"Zx" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/hangar) -"ZC" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/bed/chair/bay/chair/padded/blue, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) "ZF" = ( -/obj/item/roller_holder, -/obj/item/roller/adv, -/obj/item/roller/adv{ - pixel_y = 6 +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/firedoor/border_only, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 }, -/obj/item/roller/adv{ - pixel_y = 12 - }, -/obj/machinery/light/no_nightshift, -/obj/effect/floor_decal/industrial/outline, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" +/obj/machinery/door/blast/regular/open{ + dir = 4; + id = "braun_blast_shields"; + name = "Blast Shield" }, /turf/simulated/floor/tiled/techfloor, -/area/ship/ert/med) +/area/ship/ert/eng_storage) "ZI" = ( /obj/machinery/power/terminal{ dir = 1 @@ -9237,13 +10203,26 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/engineering) -"ZL" = ( -/obj/machinery/power/pointdefense{ - id_tag = "vonbraun_pd" - }, +"ZK" = ( +/obj/structure/table/steel_reinforced, /obj/structure/cable/yellow{ - d2 = 2; - icon_state = "0-2" + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/unary/vent_pump/on, +/obj/machinery/button/remote/blast_door{ + description_fluff = "\\(OOC) DO NOT TOUCH THIS BUTTON WITHOUT THE EXPLICIT PERMISSION OF AN ADMINISTRATOR."; + dir = 1; + id = "NRV_DELTA"; + name = "DELTA ACCESS CONTROL"; + req_one_access = list(108) + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/armoury_dl) +"ZL" = ( +/obj/structure/hull_corner/long_horiz{ + dir = 6 }, /turf/simulated/floor/reinforced/airless, /area/ship/ert/engine) @@ -9252,71 +10231,61 @@ /area/ship/ert/bridge) "ZP" = ( /obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" + 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/ship/ert/bridge) +"ZQ" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/ship/ert/med_surg) "ZT" = ( /turf/simulated/wall/rshull, /area/ship/ert/med) "ZU" = ( -/obj/machinery/light/no_nightshift, -/obj/machinery/firealarm/alarms_hidden{ - dir = 1; - pixel_y = -26 - }, -/obj/machinery/power/port_gen/pacman/mrs, -/obj/effect/floor_decal/industrial/outline/yellow, /obj/structure/cable/yellow{ d1 = 1; d2 = 2; icon_state = "1-2" }, -/turf/simulated/floor/tiled/techfloor, +/turf/simulated/wall/shull, /area/ship/ert/eng_storage) "ZW" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/med) -"ZX" = ( -/obj/machinery/door/airlock/glass_command{ - req_one_access = list(103) - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/door/firedoor/border_only, -/turf/simulated/floor/tiled/techmaint, -/area/ship/ert/bridge) -"ZY" = ( -/obj/effect/floor_decal/corner/blue{ - dir = 9 - }, -/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/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" + 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/ship/ert/hallways) +/area/ship/ert/eng_storage) +"ZX" = ( +/obj/item/modular_computer/console/preset/ert{ + dir = 4 + }, +/obj/machinery/light/no_nightshift{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/ship/ert/bridge) +"ZY" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/bed/chair/bay/chair/padded/blue{ + dir = 8 + }, +/turf/simulated/floor/tiled/techmaint, +/area/ship/ert/bridge) (1,1,1) = {" yz @@ -13933,7 +14902,7 @@ yz yz yz yz -yz +hA yz yz yz @@ -14071,15 +15040,15 @@ yz yz yz yz +kX yz yz yz -yz -Nk -yz +AW yz yz yz +kX yz yz yz @@ -14207,27 +15176,27 @@ yz yz yz yz +lZ +pY +vb yz yz yz -yz -yz -yz -Do -yz -yz -yz +Hf +yG +EP +JJ AW +yG +EP +JJ +Hf yz yz yz -Do -yz -yz -yz -yz -yz -yz +lZ +pY +lZ yz yz yz @@ -14350,11 +15319,11 @@ yz yz yz lZ -Kj -kL -yz -yz -yz +AW +Hf +yG +EP +JJ Hf nX DN @@ -14364,11 +15333,11 @@ nX DN JW Hf -yz -yz -yz -lZ -Kj +yG +EP +JJ +Hf +AW lZ yz yz @@ -14491,7 +15460,7 @@ yz yz yz yz -lZ +kX AW Hf nX @@ -14500,18 +15469,18 @@ JW Hf uh et -tL -AW +uh +Dk uh et -tL +uh Hf nX DN JW Hf AW -lZ +kX yz yz yz @@ -14638,22 +15607,22 @@ AW Hf uh et -tL -Hf -GI -rA -GI +uh +OM +QZ +WO +Vc uf -GI -rA -GI -Hf +Vc +WO +QZ +OM uh et -tL +uh Hf AW -Do +kk yz yz yz @@ -14776,25 +15745,25 @@ yz yz yz aj -AW -Hf +rt +vd GI rA -GI +Kb MK -QZ +Tx Id RB Np -RB -Id -QZ -MK -GI -rA -GI -Hf -AW +mp +ii +uD +Ev +Zb +RJ +yH +vd +AN Ia yz yz @@ -14918,25 +15887,25 @@ yz yz yz ZL -Az -WZ +Hf +Hf ok -rD -ux +zk +zk zk CN -Ig +JY JY NH RC -Tx -WO -CZ -Of +QZ +QZ +QZ +QZ Vx XH -WZ -KK +Hf +Hf UK yz yz @@ -15059,27 +16028,27 @@ yz yz yz yz -Nu +lZ Hf Hf op uK -uK -uK +op +op rs YP -YP +kp NP -RO +Vx QZ QZ QZ QZ -SE -cY Hf Hf -wG +Hf +Hf +lZ yz yz yz @@ -15200,29 +16169,29 @@ yz yz yz yz -yz -lZ -Hf -Hf -vd -rR -vd -vd -gR -Ii -Kq +bW +kJ +kJ +kJ +kJ +kJ +kJ +kJ +kJ +kJ +kJ uS SE -QZ -QZ -QZ -QZ -Hf -Hf -Hf -Hf -lZ -yz +sc +sc +sc +sc +SE +XW +XW +XW +XW +BI yz yz yz @@ -15344,24 +16313,24 @@ yz yz bO kJ -kJ -kJ -kJ -kJ -kJ -kJ -kJ -kJ -kJ +pV +wd +wd +Fd +Kj +OT +TM +WX +pV vi -Fp +vX Dh -Dh -Dh -Dh -Fp -XW -XW +Vp +pn +ob +YN +Uk +Yv XW XW YR @@ -15488,7 +16457,7 @@ Pw kJ pV kP -kP +rS rS aq aJ @@ -15501,9 +16470,9 @@ zh WS lB Ox -KS -JG -VC +vX +XW +XW XW XW BK @@ -15630,20 +16599,20 @@ bR kJ pV kS -os -os -vg -bp +Dn +Dn +Dn +Dn Dn gn -pV +SY NR -vX +ot ry Xg Sc Nb -vX +UE XW XW XW @@ -15774,20 +16743,20 @@ pV kT gA gA -gA -gA -gA +aq +aJ +Ue gN -nx -yR -RQ +pV +NZ +vX TB OH -nM +ZI qt YN -XW -XW +Uk +Yv XW XW PP @@ -15913,11 +16882,11 @@ yz bW kJ pV -kY oy oy -vg -bp +oy +Kq +Dn DK Io pV @@ -15927,9 +16896,9 @@ XS Xu ZI mt -KS -JG -VC +vX +XW +XW XW XW BI @@ -16051,31 +17020,31 @@ yz yz yz yz -yz -bO -kJ +cs +DS +DS pV -ls -ls -ls -Lm -gA -DQ -Ip pV -NZ +pV +pV +pV +pV +pV +pV +pV +qp +vX +vX +vX +vX +vX +vX +vX vX -hN -PH -ZI -My vX XW XW -XW -XW -YR -yz +RW yz yz yz @@ -16194,29 +17163,29 @@ yz yz yz xx -DS -DS -pV -pV -pV -pV -pV -pV -pV -pV -pV +gx +lm +rP +wi +yJ +yJ +yJ +yJ +UN +WZ +Pj Oa -vX -vX -vX -vX -vX -vX -vX -vX -vX -XW -XW +be +Jy +Jy +Jy +Jy +Jy +yJ +LI +cb +lm +gx cJ yz yz @@ -16335,31 +17304,31 @@ yz yz yz yz -wr -kg -yl -tK +XM +DS +cS +Gv Oq -ya -ya -ya -ya -SA -FW -Kr +XX +XX +XX +XX +XX +XX +XX Og -Ed -TM -TM -TM -TM -TM -ya +XX +XX +XX +XX +XX +XX +XX kh Gv -nY -kg -iu +cS +DS +XM yz yz yz @@ -16477,31 +17446,31 @@ yz yz yz yz -LX -DS -pA -HR -vv -DS -DS -DS -DS -DS -DS -DS -Oh -DS -DS -DS -DS -DS -DS -DS -Ai +XM +yl +La +Gv +Un +XX +XB +LL +OY +pQ Xh -yG -DS -bU +Ld +Oh +YX +wq +mX +HT +LL +XB +XX +Un +Gv +Ap +yl +XM yz yz yz @@ -16619,31 +17588,31 @@ yz yz yz yz -Ib -DS -cS -cS -lu -DS -NI -oa +XM +yl +SJ +Gv +Un +XX +qw +MX SD -QY +cz ds -sp -Oi Mm +Nh +jZ jA -Wj +Vf UU -jA -jA -DS -lu -cS -cS -DS -Ib +MX +qw +XX +Un +Gv +SJ +yl +XM yz yz yz @@ -16760,33 +17729,33 @@ yz yz yz yz -Ib -DS -DS -cS -cS -oj -DS -Qh -Iv -Iv -Iv -Iv -sp -bt -Mm +yz +XM +yl +cM +Gv +Un +XX +XX +XX +XX +mz +HL +xs +gY +xs sw -Xx -eF -Ms -Kf -DS -lO -cS -DS -DS -DS -Ib +JA +XX +XX +XX +XX +Un +Gv +cM +yl +XM +yz yz yz yz @@ -16902,33 +17871,33 @@ yz yz yz yz -HE -JB -iB -iB -cS -lu -DS -as -Iv -zP -Eh +yz +XM +yl +Jz +Gv +Un +XX +qw +MX +SD +zT Ix -sp -Oi -Mm +WW +SM +iK Ut -XB -vQ -Ms -jI -DS -lu -cS -Sz -Sz -Sz -nC +Ug +UU +MX +qw +XX +Un +Gv +Jz +yl +XM +yz yz yz yz @@ -17044,33 +18013,33 @@ yz yz yz yz -ac -JB -cs -iB -iB -Na -JB -Wa -eL -zT -at +yz +XM +yl +Ux +Gv +fS +XX +XB +jB +TZ +xR IK Ks Oy -RS +sE UJ -PX +fo TZ -Mv -wo +jB +XB +XX +zR +Gv Sz -Un -kW -kW -rt -Sz -FO +yl +XM +yz yz yz yz @@ -17186,33 +18155,33 @@ yz yz yz yz -ad -JB -cW -dX +yz +XM +DS +cS hx -lL -JB -WR -Iv -Ah -EA -IL -sp -xe -Mm -Vm +Un XX -lq -jA -jA -Sz -ck +XX +XX +XX +XX +XX +XX +xe +XX +XX +XX +XX +XX +XX +XX +Un uJ -JJ -fk -Sz -hY +cS +DS +XM +yz yz yz yz @@ -17328,33 +18297,33 @@ yz yz yz yz -JB -ak -dd -iB -hH +yz +xx +gx +lm +fu lR -JB -no -Iv -An -EC -IZ -sp -Oi -wn -jA -Yq Ys -Yr -jA -Sz +Ys +Ys +tn +Ys +Ys +nS +Kd +VI +Ys +Ys +tn +Ys +Ys +Ys uu -na -kW -kX -SJ -Sz +lU +lm +gx +cJ +yz yz yz yz @@ -17468,37 +18437,37 @@ yz yz yz yz -FF yz -LR +yz +yz al -dg -dY -hU -lV -JB -JB -ZM -ZM -ZM -ZM -ZM +DS +DS +DS +WK +DS +DS +DS +DS +DS +DS +DS JX -ZM -ZM -ZM -ZM -ZM -Sz -Sz -Ql -sC -Rh -bJ +DS +DS +DS +DS +DS +DS +DS +WK +DS +DS +DS uE -yo yz -OY +yz +yz yz yz yz @@ -17612,33 +18581,33 @@ yz yz yz yz -ae -am -dn -ee -ik -lX -oV +yz +XM +DS +QU +iw +WK +DS sq KW -KW -KW +Pc +UY YU Wq -OE -zB -YU -KW -KW -KW +ut +Sj Kt -tp +Qb +CC +Kt +Kt +DS WK -tA -ch -pN +Mi +Hz +DS XM -lx +yz yz yz yz @@ -17754,33 +18723,33 @@ yz yz yz yz -JB -JB -iB -JB -Dx -iB -iB -iB -ZM -ZM -ZM -ZM -Kw +XM +DS +DS +Js +KD +WK +DS +FF +Kr +Kr +Kr +Kr +Wq NY -ZM -ZM -ZM -ZM -ZM +Sj +AY +kw +Ax +hF kW -kW -kW -ix -kW -kW -Sz -Sz +DS +WK +Dy +hU +DS +DS +XM yz yz yz @@ -17897,31 +18866,31 @@ yz yz yz kO -Zo -Bo +Ye ia -ip -mb -mb -Bo -ZM -ZM +Ye +DS +WK +DS +FO +Kr +Pn ED Ao -cP -Oi +Wq +ut Sj zg -ED -ZM -ZM +Mk +gP +hF mJ -Ar -hP -Br -PS -zc -XG +DS +WK +cS +Zv +Zv +Zv GJ yz yz @@ -18038,32 +19007,32 @@ yz yz yz yz -cu -Zo -Bo +ae +Ye +gR +ia ia -ip pg -Kk -lv -ZM +Ye +FW +KK Aq Fg -FD -FD +GQ +xK OF ha -ha +QF Yt Ul -ZM +TW gk Zv +px +SG +SG +yM Zv -Br -PS -zc -XG qF yz yz @@ -18180,33 +19149,33 @@ yz yz yz yz -ab -nq +af +Ye vw ef iO mj -Kk +Ye sz -ZM +Kr Av us -FD -sH +jy +Wq OS -HZ -FD +Sj +lE Yx zo -ZM -sS +Kt +Kt Zv xC sW Xz Yf -go -aV +Zv +OV yz yz yz @@ -18323,32 +19292,32 @@ yz yz yz Ye -Zo -Bo -eg +cW +hs +ia iR mq -Kk -lv -ZM +Ye +GO +Kr AK Fz -FD -KJ -OT +Ti +Wq +ut Sl -FD +Kt ZC uG -ZM -Bj +sN +Kt Zv SI oO SG Qz -XG -Ci +pP +Zv yz yz yz @@ -18462,37 +19431,37 @@ yz yz yz yz +ac yz -yz -Ye -Zo +ag +cY Gw Kk OU kl -Kk -lv +Ye +Ye +ZM +ZM +ZM +ZM ZM -AS -us -FD -Kb OW -Dt -FD -Yx -Pn ZM -um +ZM +ZM +ZM +ZM +Zv Zv oC Eo -Zv +If KT KB -Ci -yz +gs yz +SX yz yz yz @@ -18606,33 +19575,33 @@ yz yz yz yz -Ye -yY +au +dd lv -Kk -OU -kl -Kk -sz -ZM -AZ -FD -FD +ls +rR +wC +yR +GY +ZP +ZP +ZP +uc KM OX -KM -FD +xX +uc +ZP +ZP ZP -iy -ZM KO -Zv -oC -Eo -Zv +vp +hq +CK +LW KG -KB -Ci +gp +XZ yz yz yz @@ -18749,32 +19718,32 @@ yz yz yz Ye -yY -lv -Kk -OU -kl -Kk -lv +Ye +ia +Ye +rV +ia +ia +ia +ZM +ZM +ZM +ZM ZM -hs -FD -La -La sA -La -La -Rt -Af ZM -yC -Zv -Gr +ZM +ZM +ZM +ZM +SG +SG +SG eI +SG +SG +Zv Zv -Lg -KB -Ci yz yz yz @@ -18890,33 +19859,33 @@ yz yz yz yz -Ye -yY -lv -Kk -OU +ah +Zo +Bo +lx +ip mr -WH -sF -wd +mr +Bo ZM -FJ -Jk -Jk -Pc -Jk +ZM +ZX Jk +dZ +Oi +Qd +FS ZX ZM -eH +ZM cV -Zv -Gr -eI -Zv +aZ +jb +PE +EF AI -KB -Ci +XG +uj yz yz yz @@ -19032,33 +20001,33 @@ yz yz yz yz -Ye -yY -lv -Kk -WX +ad +Zo +Bo +lx +ip mC -IA -IA -wi +Rw +WH +ZM Bb FK -Jl -GM +VQ +VQ zs -GM +VO VO ZY FM -wi -Zi -Zi +ZM Zi +LH +LH PE -Zv +EF AI XG -Ci +jJ yz yz yz @@ -19180,24 +20149,24 @@ KN xD xc fp -ip -ip -BW +Rw +HB +ZM Bc -BW -Js -BW -sX -BW -VP +FQ +VQ +jt sX +JH +VQ +Ay Jf -BW -Br -Br +ZM Br +LH +oz fr -SG +dR ZU go aV @@ -19316,33 +20285,33 @@ yz yz yz yz -cu +yY Zo Bo sr Jd WV -oW -sJ -wU +Rw +WH +ZM Bf FN -Jw +VQ Lk Cn St VQ OR vt -wU +ZM cv LH GS MQ -cC +iC aD XG -qF +LM yz yz yz @@ -19458,33 +20427,33 @@ yz yz yz yz -sB +yY Zo -Bo -Bo -Jd +hN +Rw +gl mI -Bo -tH -tH +Rw +WH +ZM Bq FQ -Jb -Jb +VQ +bI Yd TR -TR +VQ Ay Rz -Yd -ZT -yI -QT -pz -KI -KI -ZT -eD +ZM +Gs +LH +pm +sd +LH +Dm +ZF +LM yz yz yz @@ -19599,35 +20568,35 @@ yz yz yz yz -Sr -Zo -Zo -xA -xA -Jd -mF -az -tH -gx +yz +yY +ap +WH +Rw +gl +mI +Rw +HB +ZM SF -FR -FR -kf -Pl +VQ +VQ Sx -On +iD +Sx +VQ FY UH -HB -ZT -yp +ZM +iG +LH pm sd -wt +LH pq -ZT -ZT -Fd +ZF +LM +yz yz yz yz @@ -19741,35 +20710,35 @@ yz yz yz yz -ab -nq -an -Wo -Wo +nY +yY +ap +WH +Rw gl -fp -so -tH -LC -SF -FR -FR -wl -Pl +mI +Rw +WH +ZM +PH +VQ xZ -On -FY -UH -nb -ZT -Jc -QT -bS -mO -mO +xZ +Tp +xZ +xZ +dC +hd +ZM +zO +LH +Ho +sU +LH +dj ZF LM -WF +yz yz yz yz @@ -19883,35 +20852,35 @@ yz yz yz yz -Ye +yz yY -ao +ap WH Rw -Jd -mF -aA -tH +gl +wG +dV +HE xg -SF +ZM FT -FR Lq -Pl -pI -On +Lq +pw +Lq +Lq es -UH +ZM OO -ZT -Di -QT +JF +LH +Ho sU -IF -Pq -AL -kx -TU +LH +qq +ZF +LM +yz yz yz yz @@ -20025,35 +20994,35 @@ yz yz yz yz -Ye +yz yY ap WH -eP +Rw kM mR oX -tH -xh +oX +Bp BE FX -FR -FR +RV +OB PC -On -On +OB +Yu LV NU Bp -ZT -Di +ZW +ZW ZW lz -ug -Pq -EP -kx -TU +LH +qq +XG +LM +yz yz yz yz @@ -20167,35 +21136,35 @@ yz yz yz yz -Ye -yY -lm -WH +yz +ab +nq +hS eX iX -mT -aB -tH -xi +mZ +ip +ip +Gl BF -Ga -FR -FR -PC -On -On +Gl +iT +Gl +Vg +Gl +fe Vg TI Gl -ZT -DR -aI +PE +PE +PE ql iC -Pq -UY -kx -TU +kE +go +aV +yz yz yz yz @@ -20309,35 +21278,35 @@ yz yz yz yz -Ye -yY -br -WH +yz +ad +Zo +Bo ff -ip -mV +AX +wU aE -tH +HR qJ BU GK -FR +Fl LA -Pl +ox Me -On +yU kz -On -pW -ZT +fW +qJ +OG SV DJ -QT +gV jn Bx -sf -kx -TU +XG +jJ +yz yz yz yz @@ -20451,35 +21420,35 @@ yz yz yz yz -ab -nq -au -Wo -Wo +yz +aB +Zo +Bo +Bo AX eG -aG +Bo tH -xt -BU -FR -FR +tH +Qc +VC Md -Pl +Md +QP Sy -On -FY -On -JZ +Sy +Sn +sI +QP ZT Wl OA XN -mO -mO -yJ -LM -WF +wp +wp +ZT +th +yz yz yz yz @@ -20596,27 +21565,27 @@ yz cu Zo Zo -aw ay -ip -mV +ay +AX +xt aH tH xv -Ce +CL FR FR Mt Pl gX On -QM -my +UT +WA Fq ZT DM -DJ -QT +Hg +Td xz HC ZT @@ -20735,35 +21704,35 @@ yz yz yz yz -yz -kO -Zo -Bo -Bo -ip +ab +nq +dg +Cx +Cx +sf mZ -Bo +Af tH -tH -CI -GO -GO -CI -Yd -TR -Wu +KS +CL +FR +FR +Uy +Pl +om +On UT -TR -Yd +WA +sR ZT PD -un +OA VJ -KI -KI -ZT +Vh +Vh +co UI -yz +fn yz yz yz @@ -20877,35 +21846,35 @@ yz yz yz yz -yz -Ye +yY +ap Dd -dp +dV fj -ip -mV +AX +xt pt -oi +tH xG CL GR -GR +FR MD -Qc +Pl GU -WE +On hV WA EB -oi -qA -oQ +ZT +Hp +OA dx Nd -PA +Pq kx TU -yz +rh yz yz yz @@ -21019,35 +21988,35 @@ yz yz yz yz -yz -Ye -Dd -ar -fj +yY +ap +dn +dV +nb jz nc pv -ta +tH xM CM Tl -Tl -Tl -Tl -Tl -Tl -Tl +FR +FR +Em +On +On +ZK Vn kG -rV +ZT Hp Sp wX +AT Pq -Pq -kx +gi TU -yz +rh yz yz yz @@ -21161,35 +22130,35 @@ yz yz yz yz -yz -Ye -Dd -dB -fj +yY +ap +dA +dV +nt jD JM -ip -Tl +Ar +tH JE Nf -Nf -Nf -Nf -Nf -Nf -Nf -Nf -Nf +VH +FR +FR +Em +On +On +Si +Xv yi -dA +ZT QT Lh Xo +Ph Pq -Pq -kx +ua TU -yz +rh yz yz yz @@ -21303,35 +22272,35 @@ yz yz yz yz -yz -Ye -Dd +yY +ap +dX dV -fj +nx ip mV pG -tE +tH yf -WC -WC -WC -WC -WC -WC -WC -WC -WC +Rh +Wu +FR +FV +Pl +md +On +Wh +On Ee -tE +ZT OZ -Cq -tg +YC +OA km PA -kx +XQ TU -yz +rh yz yz yz @@ -21445,35 +22414,35 @@ yz yz yz yz -yz -af +ab +nq bM Cx Cx jK nn pK -Cx +tH yj -WC -WC -YW -WC -WC -WC -YW -WC -WC +Rh +FR +FR +oo +Pl +rc +On +UT +On dk -uq +ZT ga po Rv -dq -dq -MZ -Jg -yz +Vh +Vh +LP +UI +fn yz yz yz @@ -21587,35 +22556,35 @@ yz yz yz yz -yz -ag -VH +ad +Zo +Zo Px fx -Ue -Is +ip +mV pM -Cx -yj -WC -YW -HO +tH +Lm +Rt +FR +FR kt -ML +Pl Pe -HO +On YW -WC -dk -dq +LF +bw +ZT gf YC -mP +OA hv qa -rP -UN -yz +ZT +ZT +cR yz yz yz @@ -21731,32 +22700,32 @@ yz yz yz ah -bM -Cx -fE -jQ +Zo +Bo +Bo +ip np -pY -tX -yv -WC -HO -HO +Bo +tH +tH +tW +WE +WE tW QP -tV -HO -HO -WC -Nz -nl +Sy +pZ +Eb +Sy +QP +ZT pU -TF -ij +Mj +Cv wp -dq -MZ -ci +wp +ZT +VK yz yz yz @@ -21872,33 +22841,33 @@ yz yz yz yz -ah -bM -Cx -fP -jU -nt +yY +dY +hY +fZ +ip +mV qo tX yx -WC +RQ +Hu Hu -mH MT QR -MT +hl HH dT -WC -Nz -nl -ij +sy +RX +tX +tv LB xU GT -dq -MZ -ci +vn +TU +rh yz yz yz @@ -22014,33 +22983,33 @@ yz yz yz yz -ai -bM -Cx -fU +yY +dY +ik +fZ jY nv -qo -tX -xO -WC -Hq -JN -MT -QS -MT +Az +Ii +LC +Sh WJ -og -WC -Nz -nl +WJ +WJ +WJ +WJ +WJ +WJ +yP +XU +sk mh LZ LJ -hS -dq -MZ -Cr +Pq +Pq +TU +rh yz yz yz @@ -22156,33 +23125,33 @@ yz yz yz yz -ah -bM -Cx +yY +dY +ix fZ Yk Is -qo -tX -xO -WC -Hu -JN -MU -QX -SZ +ip WJ -dT -WC +LR +SZ +SZ +SZ +SZ +SZ +SZ +SZ +SZ +SZ Zx -nl -pb -TF -ij -MC -dq -MZ -ci +Ck +OA +Se +Zw +Pq +Pq +TU +rh yz yz yz @@ -22298,33 +23267,33 @@ yz yz yz yz -ah -bM -bM -bM -bM -nz -bM -bM -xO +yY +dY +jv +fZ +ip +mV +AS +Ip +My WC -Hq -JN -MU -Eq -SZ -WJ -og WC -Zx -nl -dq +WC +WC +WC +WC +WC +WC +WC +TQ +Ip +Zc zb PG -dq -dq -MZ -ci +SO +vn +TU +rh yz yz yz @@ -22440,30 +23409,30 @@ yz yz yz yz -pO -vK +aG +TD +Cf Cf -gh Nq qP qz -vK +Cf Ok WC -Hu -GZ -MT -Jx -MT -EG -dT WC -Zx -nl -aQ -TF -ij +GZ +WC +WC +WC +GZ +WC +WC +Mr +RN aQ +hQ +wI +dq dq MZ Jg @@ -22583,32 +23552,32 @@ yz yz yz PO -vK +ee iz rO ON qy qD -vK -xO +Cf +Ok WC -HO +GZ HO Ng Rc Du HO -HO +GZ WC -Zx -nl -cO -TF -ij -Mb +Mr dq -MZ -ci +cO +iY +Jh +Mb +ir +hb +Iu yz yz yz @@ -22724,30 +23693,30 @@ yz yz yz yz -PO +Om TD -rB +Cf rN av nB FP -vK -xO +Jx +MC WC HO HO yg HK -yg +Il HO HO WC -Zx +Mx nl NJ TF ij -NJ +YS dq MZ ci @@ -22866,33 +23835,33 @@ yz yz yz yz -nr -FL -vK +Om +TD +Cf gF -rO +sF Vq -Vq -vK -xO +Xw +Jx +ML WC -HO -HO -WC -WC -WC -HO -HO +CH +AC +mv +Mq +mv +sM +gQ WC Mx -dq -wZ +nl +ij gZ CP wZ dq MZ -Cr +ci yz yz yz @@ -23008,33 +23977,33 @@ yz yz yz yz -PO -FL -vK +br +TD +Cf gW TG BM -Vq -vK +Xw +Jx xO WC -ax -HO -WC -WC -WC -HO +QE +fV +mv +mg +mv +Za QV WC -aK -Sh -ij -TF -ij -ij +Mx +nl +Ad +gq +qc +YZ dq MZ -ci +iF yz yz yz @@ -23150,30 +24119,30 @@ yz yz yz yz -PO -FL -vK +Om +TD +Cf hj db -vK +qy Xw -vK -yB +Jx +xO WC +CH +fV +Vd +vo +pD +Za +gQ WC -WC -WC -WC -WC -WC -WC -WC -zr -dq -mN -SB -tx +Ff +nl mN +TF +ij +kQ dq MZ ci @@ -23293,32 +24262,32 @@ yz yz yz Om -if -rM -hk -eO +TD +TD +TD +TD bv -cH -vK -yD -QE -QE -QE -QE -QE -QE -QE -QE +TD +TD +xO +WC QE +fV +Vd +WP +pD +Za +QV +WC Ff +nl dq -vb iW rn -ca -qa -rP -UN +dq +dq +MZ +ci yz yz yz @@ -23436,30 +24405,30 @@ yz yz pO vK -vK -hj +jQ +nz rr -vK +ya pr vK yX +WC CH -CH -CH -CH -CH -CH -CH -CH -CH -yX -MZ +xq +mv +Dp +mv +yr +gQ +WC +Ff +nl ky -wC +TF ij +ky dq MZ -MZ Jg yz yz @@ -23576,33 +24545,33 @@ yz yz yz yz -yz -vK +bJ vK +jU rp SN tZ Bl vK -ib +xO +WC +HO +HO za -za -za -za -za -za -za -za -za -ib -MZ +GE +nU +HO +HO +WC +Ff +nl FG -jv +TF ij +NN dq MZ -MZ -yz +ci yz yz yz @@ -23718,33 +24687,33 @@ yz yz yz yz -yz +bJ dW -vK -vK +kg +nC wh -tZ +yo UD vK -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -MZ +xO +WC +HO +HO +WT +eJ +WT +HO +HO +WC +Ff +nl Gu -GY -GY +TF +ij +Gu +dq MZ -MZ -YO -yz +ci yz yz yz @@ -23860,33 +24829,33 @@ yz yz yz yz -yz -yz -dW +ca +eH vK -vK -tZ +nM +rp +VN VN vK -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz +xO +WC +HO +HO +WC +WC +WC +HO +HO +WC +ts +dq +Je +bG +II +Je +dq MZ -Gu -MZ -MZ -MZ -YO -yz -yz +iF yz yz yz @@ -24002,33 +24971,33 @@ yz yz yz yz -yz -yz -yz -dW +bJ +eH vK +oi +ta +yv +VN vK -ej -vK -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz +xO +WC +WF +HO +WC +WC +WC +HO +ys +WC +xo Cr -Gu +ij +TF +ij +ij +dq MZ -MZ -YO -yz -yz -yz +ci yz yz yz @@ -24144,33 +25113,33 @@ yz yz yz yz -yz -yz -yz -yz -dW +bJ +eH +vK +oV +tp vK pE -OM -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -CR -Gu +vK +Nk +WC +WC +WC +WC +WC +WC +WC +WC +WC +bn +dq +hc +KF +ZQ +hc +dq MZ -YO -yz -yz -yz -yz +ci yz yz yz @@ -24286,33 +25255,33 @@ yz yz yz yz -yz -yz -yz -yz -yz -dW -PO -PO -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -ci -Gu +ch +fk +kL +pA +tx +yB +CR +vK +Nu +Sr +Sr +Sr +Sr +Sr +Sr +Sr +Sr +Sr +ml +dq +yF YO -yz -yz -yz -yz -yz +ue +ft +ir +hb +Iu yz yz yz @@ -24428,33 +25397,33 @@ yz yz yz yz -yz -yz -yz -yz -yz -yz -PO -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz +pO +vK +vK +oV +tA +vK +CZ +vK +Of +SA +SA +SA +SA +SA +SA +SA +SA +SA +Of +MZ aC -yz -yz -yz -yz -yz -yz +YK +ij +dq +MZ +MZ +Jg yz yz yz @@ -24571,31 +25540,31 @@ yz yz yz yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz +vK +vK +pN +tE +yD +Dt +vK +OE +SB +SB +SB +SB +SB +SB +SB +SB +SB +OE +MZ +wM +is +ij +dq +MZ +MZ yz yz yz @@ -24713,6 +25682,13 @@ yz yz yz yz +fE +vK +vK +uq +yD +Dx +vK yz yz yz @@ -24724,20 +25700,13 @@ yz yz yz yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz +MZ +Gn +gT +gT +MZ +MZ +bB yz yz yz @@ -24856,6 +25825,12 @@ yz yz yz yz +fE +vK +vK +yD +DQ +vK yz yz yz @@ -24867,18 +25842,12 @@ yz yz yz yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz +MZ +Gn +MZ +MZ +MZ +bB yz yz yz @@ -24999,6 +25968,11 @@ yz yz yz yz +fE +vK +vK +Ed +vK yz yz yz @@ -25010,16 +25984,11 @@ yz yz yz yz -yz -yz -yz -yz -yz -yz -yz -yz -yz -yz +iF +Gn +MZ +MZ +bB yz yz yz @@ -25142,6 +26111,10 @@ yz yz yz yz +fE +vK +Eq +JG yz yz yz @@ -25153,14 +26126,10 @@ yz yz yz yz -yz -yz -yz -yz -yz -yz -yz -yz +RU +Gn +MZ +bB yz yz yz @@ -25285,6 +26254,9 @@ yz yz yz yz +fE +bJ +bJ yz yz yz @@ -25296,12 +26268,9 @@ yz yz yz yz -yz -yz -yz -yz -yz -yz +ci +Gn +bB yz yz yz @@ -25428,6 +26397,7 @@ yz yz yz yz +bJ yz yz yz @@ -25441,8 +26411,7 @@ yz yz yz yz -yz -yz +ra yz yz yz diff --git a/maps/submaps/surface_submaps/mountains/mountains.dm b/maps/submaps/surface_submaps/mountains/mountains.dm index 2fffd44a723..dfa0ca65acc 100644 --- a/maps/submaps/surface_submaps/mountains/mountains.dm +++ b/maps/submaps/surface_submaps/mountains/mountains.dm @@ -362,7 +362,7 @@ name = "spatial anomaly" desc = "A strange section of the caves that seems twist and turn in ways that shouldn't be physically possible." mappath = 'maps/submaps/surface_submaps/mountains/spatial_anomaly.dmm' - cost = 20 + cost = INFINITY /// Prevent spawning. fixed_orientation = TRUE /datum/map_template/surface/mountains/normal/Speakeasy //VOREStation add diff --git a/maps/submaps/surface_submaps/wilderness/Blackshuttledown.dmm b/maps/submaps/surface_submaps/wilderness/Blackshuttledown.dmm index 426c4c67bfd..2f60fca5d9f 100644 --- a/maps/submaps/surface_submaps/wilderness/Blackshuttledown.dmm +++ b/maps/submaps/surface_submaps/wilderness/Blackshuttledown.dmm @@ -158,4 +158,4 @@ aaabababababababadadafabababafababababacabadadadafabababababababababaa aaabababafababadadadababababababababafabadadadadabababababababafababaa aaabababababababadadabacabababababababababababadaeabacafababababababaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -"} \ No newline at end of file +"} diff --git a/maps/submaps/surface_submaps/wilderness/wilderness.dm b/maps/submaps/surface_submaps/wilderness/wilderness.dm index 37b5830aded..5b0253f2d38 100644 --- a/maps/submaps/surface_submaps/wilderness/wilderness.dm +++ b/maps/submaps/surface_submaps/wilderness/wilderness.dm @@ -178,7 +178,7 @@ desc = "The surprisingly high-tech home of Sif Free Radio, the only radio station run by mindless clones." mappath = 'maps/submaps/surface_submaps/wilderness/DJOutpost4.dmm' template_group = "Sif Free Radio" - cost = 10 + cost = INFINITY /// Prevent spawning. /datum/map_template/surface/wilderness/deep/Boombase name = "Boombase" @@ -197,7 +197,7 @@ name = "Blue Shuttle Down" desc = "You REALLY shouldn't be near this. Mostly because they're Police." mappath = 'maps/submaps/surface_submaps/wilderness/Blueshuttledown.dmm' - cost = 50 + cost = INFINITY /// Prevent spawning. template_group = "Shuttle Down" /datum/map_template/surface/wilderness/deep/Rockybase diff --git a/maps/tether/submaps/tether_centcom.dmm b/maps/tether/submaps/tether_centcom.dmm index fe47120d78d..85049a7f99c 100644 --- a/maps/tether/submaps/tether_centcom.dmm +++ b/maps/tether/submaps/tether_centcom.dmm @@ -624,6 +624,9 @@ }, /turf/simulated/floor/plating, /area/shuttle/ccboat) +"bI" = ( +/turf/simulated/floor/reinforced, +/area/shuttle/centcom/ccbay) "bJ" = ( /obj/structure/table/rack, /obj/item/weapon/storage/box/pillbottles, @@ -5038,9 +5041,6 @@ /obj/effect/floor_decal/industrial/outline/yellow, /turf/simulated/floor/tiled/dark, /area/centcom/security) -"sX" = ( -/turf/simulated/floor/reinforced/airless, -/area/shuttle/centcom/ccbay) "sY" = ( /obj/machinery/button/remote/blast_door{ id = "ArmouryC4"; @@ -25748,12 +25748,12 @@ ZQ ac nJ px -sX -sX -sX -sX -sX -sX +bI +bI +bI +bI +bI +bI fE gn mY @@ -25761,8 +25761,8 @@ zN uf bG uf -sX -sX +bI +bI pR nJ ac @@ -25890,8 +25890,8 @@ ZQ ac nJ px -sX -sX +bI +bI WO uf uf @@ -27026,9 +27026,9 @@ ZQ ac nJ px -sX -sX -sX +bI +bI +bI uf uf bG @@ -27168,12 +27168,12 @@ ZQ ac nJ px -sX -sX -sX -sX -sX -sX +bI +bI +bI +bI +bI +bI fE UC uf @@ -27181,8 +27181,8 @@ uf uf bG uf -sX -sX +bI +bI pR nJ ic diff --git a/maps/tether/tether-03-surface3.dmm b/maps/tether/tether-03-surface3.dmm index 85e772261d8..dc4620fa0a1 100644 --- a/maps/tether/tether-03-surface3.dmm +++ b/maps/tether/tether-03-surface3.dmm @@ -5329,6 +5329,9 @@ pixel_x = -4; pixel_y = 5 }, +/obj/machinery/injector_maker{ + pixel_x = -27 + }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/triage) "ahP" = ( @@ -7069,8 +7072,8 @@ /obj/machinery/light{ dir = 4 }, -/obj/structure/sign/poster{ - dir = 4 +/obj/machinery/injector_maker{ + pixel_x = 28 }, /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/chemistry) diff --git a/sound/voice/Croak.ogg b/sound/voice/croak_frog.ogg similarity index 100% rename from sound/voice/Croak.ogg rename to sound/voice/croak_frog.ogg diff --git a/sound/voice/croak_skrell.ogg b/sound/voice/croak_skrell.ogg new file mode 100644 index 00000000000..e9dd96dafe0 Binary files /dev/null and b/sound/voice/croak_skrell.ogg differ diff --git a/sound/voice/croon1.ogg b/sound/voice/croon1.ogg new file mode 100644 index 00000000000..08964be8b79 Binary files /dev/null and b/sound/voice/croon1.ogg differ diff --git a/sound/voice/croon2.ogg b/sound/voice/croon2.ogg new file mode 100644 index 00000000000..1342ade7236 Binary files /dev/null and b/sound/voice/croon2.ogg differ diff --git a/sound/voice/lwarble.ogg b/sound/voice/lwarble.ogg new file mode 100644 index 00000000000..70f3e959173 Binary files /dev/null and b/sound/voice/lwarble.ogg differ diff --git a/tgui/packages/tgui/interfaces/IDCard.js b/tgui/packages/tgui/interfaces/IDCard.js index 8d9d40ef8cf..854a43b9c16 100644 --- a/tgui/packages/tgui/interfaces/IDCard.js +++ b/tgui/packages/tgui/interfaces/IDCard.js @@ -6,10 +6,11 @@ import { RankIcon } from './common/RankIcon'; export const IDCard = (props, context) => { const { data } = useBackend(context); - const { registered_name, sex, age, assignment, fingerprint_hash, blood_type, dna_hash, photo_front } = data; + const { registered_name, sex, species, age, assignment, fingerprint_hash, blood_type, dna_hash, photo_front } = data; const dataIter = [ { name: 'Sex', val: sex }, + { name: 'Species', val: species }, { name: 'Age', val: age }, { name: 'Blood Type', val: blood_type }, { name: 'Fingerprint', val: fingerprint_hash }, diff --git a/tgui/packages/tgui/interfaces/NtosFileManager.js b/tgui/packages/tgui/interfaces/NtosFileManager.js index da0d5894d66..70314bc2f69 100644 --- a/tgui/packages/tgui/interfaces/NtosFileManager.js +++ b/tgui/packages/tgui/interfaces/NtosFileManager.js @@ -1,7 +1,7 @@ /* eslint react/no-danger: "off" */ import { Fragment } from 'inferno'; import { useBackend } from '../backend'; -import { Button, Section, Table } from '../components'; +import { Button, Section, Table, Flex } from '../components'; import { NtosWindow } from '../layouts'; export const NtosFileManager = (props, context) => { @@ -10,7 +10,7 @@ export const NtosFileManager = (props, context) => { return ( - {((filename || error) && ( + {(filename && (
{
{(usbconnected && ( @@ -50,15 +49,16 @@ export const NtosFileManager = (props, context) => { usbmode files={usbfiles} usbconnected={usbconnected} - onUpload={(file) => act('PRG_copyfromusb', { name: file })} - onDelete={(file) => act('PRG_deletefile', { name: file })} + onUpload={(file) => act('PRG_copyfromusb', { uid: file })} + onDelete={(file) => act('PRG_deletefile', { uid: file })} + onOpen={(file) => act('PRG_openfile', { uid: file })} onRename={(file, newName) => act('PRG_rename', { - name: file, + uid: file, new_name: newName, }) } - onDuplicate={(file) => act('PRG_clone', { file: file })} + onDuplicate={(file) => act('PRG_clone', { uid: file })} /> )) || @@ -70,6 +70,18 @@ export const NtosFileManager = (props, context) => { )} + {error && ( + + +
+
+
+
+ {error} +
+
+ )}
); @@ -94,9 +106,9 @@ const FileTable = (props) => { content={file.name} currentValue={file.name} tooltip="Rename" - onCommit={(e, value) => onRename(file.name, value)} + onCommit={(e, value) => onRename(file.uid, value)} /> -
Search:" output += "
Ckey: Admin ckey: